[发明专利]一种Linux虚拟机Socket监听的检测方法及其系统有效
申请号: | 201911379815.4 | 申请日: | 2019-12-27 |
公开(公告)号: | CN111240924B | 公开(公告)日: | 2023-05-12 |
发明(设计)人: | 邓学华;史伟;闵宇 | 申请(专利权)人: | 广东睿江云计算股份有限公司 |
主分类号: | H04L67/12 | 分类号: | H04L67/12;H04L43/10;H04L41/0895 |
代理公司: | 佛山市禾才知识产权代理有限公司 44379 | 代理人: | 梁永健;资凯亮 |
地址: | 528000 广东省佛山市禅城区*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 linux 虚拟机 socket 监听 检测 方法 及其 系统 | ||
本发明公开一种Linux虚拟机Socket监听的检测方法及其系统,检测方法步骤包括:云平台通过连接TCP Socket常驻程序,并发出相关调用请求;云平台的TCP socket监听客户端对虚拟机的socket监听地址ip进行监听,或者云平台需要检测虚拟机上的unix socket文件监听,unix socket文件路径为path;TCP Socket常驻程序连接unix socket文件并发送监听命令;QEMU‑KVM进程将监听命令输入至虚拟机的qemu guest agent应用程序;qemu guest agent应用程序获取虚拟机相关文件,并将文件保存到TCP Socket常驻程序内且另存为字符串;TCP Socket常驻程序在字符串的local_address列中搜索socket地址的关键字ip,或者在字符串的Path列中搜索socket地址的关键字path,从而确定socket在是否监听中。本发明无需使用Socket客户端去连接虚拟机Socket监听,无需登录虚拟机操作系统,达到简单高效用时短效果。
技术领域
本发明涉及云平台上Linux虚拟机技术领域,特别涉及一种Linux虚拟机Socket监听的检测方法及其系统。
背景技术
KVM(全称是Kernel-based Virtual Machine)是基于虚拟化扩展(Intel VT或者AMD-V)的X86硬件的开源的Linux原生的全虚拟化解决方案。
Socket又称套接字,一组编程接口(API)。介于传输层和应用层,向应用层提供统一的编程接口。应用层不必了解TCP/IP协议细节,直接通过对Socket接口函数的调用完成数据在IP网络的传输。Socket在创建时需要指定地址域和类型,只有当两个进程的地址和类型都相同时他们才可能进行通信。两种常见的地址域包括Unix域和Internet域,Unix域将socket当做文件系统下的一个文件,而Internet域适用于不同主机中的进程通信,在Internet域下,socket需要指定地址和端口号。
QemuGuestAgent,简称qga,是一个运行在虚拟机内部的普通应用程序(可执行文件名称默认为qemu-ga,服务名称默认为qemu-guest-agent),其目的是实现一种宿主机和虚拟机进行交互的方式,这种方式不依赖于网络,而是依赖于virtio-serial(默认首选方式)或者isa-serial,而QEMU则提供了串口设备的模拟及数据交换的通道,最终呈现出来的是一个串口设备(虚拟机内部)和一个unixsocket文件(宿主机上)。qga通过读写串口设备与宿主机上的socket通道进行交互,宿主机上可以使用普通的unix socket读写方式对socket文件进行读写,最终实现与qga的交互。
目前云平台上提供的镜像大部分都会包含有基于Socket的应用,这些应用服务会在虚拟机交付给客户时就已经开启。如何检测虚拟机里的Socket监听,目前通常的做法有以下两种:1、通过一个外部的Socket客户端去连接虚拟机里的Socket服务端来检测;2、登录虚拟机操作系统里查看。
上述方法存在以下弊端:1、外部连接无法排除网络环境,以及客户虚拟机开启防火墙等影响;2、登录虚拟机操作系统需要客户自行检查。
发明内容
本发明要解决的技术问题在于,提供一种Linux虚拟机Socket监听的检测方法及其系统,无需使用Socket客户端去连接虚拟机Socket监听,无需登录进去虚拟机操作系统,达到简单高效用时短效果,并且针对KVM虚拟化平台所有Linux操作系统都可以使用,保证了云管理平台交付虚拟机所承载基于Socket的应用服务可用性,提升了云管理平台的用户体验,为云管理平台实现面向应用的交付模式提供了一种检测保障的方式。
为解决上述技术问题,本发明提供如下技术方案:一种Linux虚拟机Socket监听的检测方法,包括以下步骤:
S1、云平台通过TCP socket监听客户端连接虚拟机所在宿主机的TCP Socket常驻程序,并发出相关调用请求;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广东睿江云计算股份有限公司,未经广东睿江云计算股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911379815.4/2.html,转载请声明来源钻瓜专利网。