本申请涉及计算机网络技术领域,特别是涉及一种服务探活方法及装置。
背景技术:
在云计算领域内,一台云物理服务器可以创建有多台以虚拟机方式运行的云服务器(Elastic Compute Service,ECS)。云服务器是一种简单高效、安全可靠、处理能力可弹性伸缩的计算服务。云服务器可以为用户提供多种线上服务,比如,云磁盘服务、简单缓存服务、负载均衡服务、对象存储服务、内容分发网络服务等。
现有技术中采用以下方法查看云服务器上的线上服务的运行状态(包括存活状态和非存活状态),以对线上服务进行管理:管理员需要手工连接线上服务所在的云服务器,并且查看线上运行服务的日志文件,从而根据日志文件人工判断线上服务的运行状态。若虚拟机上运行有几十甚至上百个线上服务时,则管理员需要逐个去查询日志文件,耗费大量的人力物力,对线上服务进行管理十分困难。
技术实现要素:
本申请实施例的目的在于提供一种服务探活方法及装置,以解决对服务的探活操作依赖用户,浪费人力资源的问题。具体技术方案如下:
第一方面,本申请实施例提供了一种服务探活方法,包括:
获取针对所述待探活服务的探活请求;
确定所述待探活服务的依赖组件,所述依赖组件为所述待探活服务运行过程中所需的组件;
向所述依赖组件发送访问请求,若访问成功,则确定针对所述待探活服务的探活结果为存活状态。
可选地,确定所述待探活服务的依赖组件,包括:
利用Actuator模块,获取所述待探活服务的依赖组件标识,其中,所述Actuator模块用于记录所述待探活服务的依赖组件标识;
确定所述依赖组件标识对应的依赖组件。
可选地,向所述依赖组件发送访问请求,包括:
从预设的配置文件中,获取所确定的依赖组件标识对应的访问地址,其中,所述配置文件中记录组件的标识与访问地址的对应关系;
依据所获取的访问地址,向所述依赖组件发送访问请求。
可选地,若访问成功,则确定针对所述待探活服务的探活结果为存活状态的步骤之前,还包括:
判断是否接收到所述依赖组件反馈的访问成功信息;
若接收到,则确定访问成功;
若未接收到,则确定访问失败,并确定针对所述待探活服务的探活结果为非存活状态。
可选地,所述方法还包括:
从预设的探活结果与键值的对应关系中,获取所确定出的探活结果的键值;
按照预先定义的类,将所获取的键值封装成为数据包;
将所述数据包反馈至发送所述探活请求的请求端。
可选地,所述电子设备上运行有至少一个虚拟机,每一个虚拟机上运行有至少一个服务;
获取针对所述待探活服务的探活请求的步骤之后,还包括:
基于所述探活请求携带的目的IP地址和端口号,确定运行所述待探活服务的虚拟机,作为目标虚拟机;
从所述目标虚拟机运行的服务中,确定所述待探活服务。
可选地,获取针对所述待探活服务的探活请求,包括:
接收代理服务器发送的针对所述待探活服务的探活请求,其中,所述代理服务器与每一虚拟机通信连接,所述代理服务器从负载均衡服务器接收所述探活请求,并从所述探活请求中获取所述目标虚拟机的IP地址和端口号,基于所述IP地址和所述端口号发送所述探活请求至所述目标虚拟机。
可选地,所述方法还包括:
将所述待探活服务的探活结果存储于预设数据库中,其中,所述预设数据库用于存储服务的探活结果。
第二方面,本申请实施例提供了一种服务探活装置,包括:
第一获取模块,用于获取针对待探活服务的探活请求;
第一确定模块,用于确定所述待探活服务的依赖组件,所述依赖组件为所述待探活服务运行过程中所需的组件;
发送模块,用于向所述依赖组件发送访问请求,若访问成功,则确定针对所述待探活服务的探活结果为存活状态。
可选地,所述第一确定模块具体用于:
利用Actuator模块,获取所述待探活服务的依赖组件标识,其中,所述Actuator模块用于记录所述待探活服务的依赖组件标识;
确定所述依赖组件标识对应的依赖组件。
可选地,所述发送模块具体用于:
从预设的配置文件中,获取所确定的依赖组件标识对应的访问地址,其中,所述配置文件中记录组件的标识与访问地址的对应关系;
依据所获取的访问地址,向所述依赖组件发送访问请求。
可选地,所述装置还包括:
判断模块,用于判断是否接收到所述依赖组件反馈的访问成功信息;
第二确定模块,用于当所述判断模块的判断结果为是时,则确定访问成功;
第三确定模块,用于当所述判断模块的判断结果为否时,则确定访问失败,并确定针对所述待探活服务的探活结果为非存活状态。
可选地,所述装置还包括:
第二获取模块,用于从预设的探活结果与键值的对应关系中,获取所确定出的探活结果的键值;
封装模块,用于按照预先定义的类,将所获取的键值封装成为数据包;
反馈模块,用于将所述数据包反馈至发送所述探活请求的请求端。
可选地,所述电子设备上运行有至少一个虚拟机,每一个虚拟机上运行有至少一个服务;所述装置还包括:
第四确定模块,用于基于所述探活请求携带的目的IP地址和端口号,确定运行所述待探活服务的虚拟机,作为目标虚拟机;
第五确定模块,用于从所述目标虚拟机运行的服务中,确定所述待探活服务。
可选地,所述第一获取模块具体用于:
接收代理服务器发送的针对所述待探活服务的探活请求,其中,所述代理服务器与每一虚拟机通信连接,所述代理服务器从负载均衡服务器