【技术实现步骤摘要】
云场景下虚机获取数据源的方法及系统
[0001]本专利技术涉及云计算
,具体地说是一种云场景下虚机获取数据源的方法及系统。
技术介绍
[0002]随着越来越多云厂商提供云业务,在云平台上创建云服务器并进行初始化配置也有了越来越多的方法,如cloud
‑
init,cloudbase
‑
init以及云厂商提供的云助手等工具。无论采用哪些工具,进行云服务器初始化配置均需要获取数据源,数据源中包含每台虚机启动时需要配置的参数,一般包含虚机名称、密码、网络信息等内容。
[0003]常用的数据源按照数据是否可以更新分为动态数据源和静态数据源,动态数据源可以根据虚机的配置变化,获取到更新后的配置,这种数据源的提供需要平台侧运行数据源的代理服务;静态数据源则在虚机创建或者启动时就已经确定,一般无法在虚机启动后或运行时进行数据的更新。
[0004]动态的数据源主要采用网络的方式和串口的方式。网络的方式为在虚机内对指定ip地址发起网络数据源的访问请求,平台侧对网卡的数据包进行处理,分析数据包来源的虚机,并为该虚机提供数据源服务,因此,从这种方式上看:
[0005]1)此过程会产生网络流量,占用小部分网络带宽;
[0006]2)整体过程依赖网络协议栈,当用户创建的虚机不需要网卡,或者网络不通的情况下,数据源访问会受阻。
[0007]使用串口的方式则会占用ttySX,X为数字,一般占用ttyS1,虚机对数据源的请求通过读写ttyS1设备来实现,传统串口设备有。 ...
【技术保护点】
【技术特征摘要】
1.一种云场景下虚机获取数据源的方法,其特征在于,该方法具体如下:在虚机所在的物理机节点部署数据源代理服务组件;数据源代理服务组件连接指定地址的Unix Socket,并对该Socket的文件描述符进行读写;数据源代理服务组件根据Socket地址通过虚拟机管理服务组件Hypervisor匹配到虚机的UUID,并根据虚机的UUID向数据源服务组件发起请求,获取到虚机的数据源数据,写入与虚机对应的Socket中;虚机创建时,为虚机创建一个或多个Virtio
‑
Serial设备,并指定Channel类型为Unix Socket,同时设置Unix Socket地址;在虚机镜像内安装虚机初始化软件,在虚机初始化软件中添加新的虚拟串口读写通信模块,虚拟串口读写通信模块用于与Virtio
‑
Serial设备进行通信,写操作对应控制通道,读操作对应数据通道;在虚机初始化软件中增加数据源列表项和以虚拟串口读写通信模块为基础的虚机内数据源请求组件,虚机内数据源请求组件发起对指定数据源地址的请求,调用虚拟串口读写通信模块发动数据源请求,并获取请求后的数据源数据内容。2.根据权利要求1所述的云场景下虚机获取数据源的方法,其特征在于,数据源代理服务组件具体如下:数据源代理服务组件通过查询虚拟机管理服务组件获取虚机Virtio
‑
Serial驱动的Channel设备和与设备对应的Unix Socket地址,并获取到虚机的UUID,其中,Channel设备用作控制和数据二合一通道或拆分为控制通道和数据通道。数据源代理服务组件接收Channel设备控制通道传来的虚机发起的数据源地址请求,根据请求地址和虚机的UUID向数据源服务发起数据源获取请求;数据源代理服务组件从数据源服务组件获取到返回数据后,将数据写入该虚机的Channel设备的数据通道。3.根据权利要求2所述的云场景下虚机获取数据源的方法,其特征在于,当数据源代理服务组件从Channel设备数据通道接收到指定信息或指定模式的输入时,向数据通道写入指定内容,完成认证过程,确保虚机内正确识别该Channel设备对接的是数据源代理服务组件。4.根据权利要求1所述的云场景下虚机获取数据源的方法,其特征在于,虚机创建具体如下:虚机创建时,配置Virtio
‑
Serial设备驱动的Channel设备;Channel设备指定设备类型为Unix,即Unix Socket;根据虚拟机管理服务组件以及计算节点服务配置,指定设备通信的Socket地址;将每台虚机的用于数据源获取的Channel设备配置为一个控制和数据二合一通道或者拆分为控制通道和数据通道两个通道。5.根据权利要求1所述的云场景下虚机获取数据源的方法,其特征在于,虚机内数据源请求组...
【专利技术属性】
技术研发人员:张金生,申嘉童,丁瑞,余礼渊,
申请(专利权)人:浪潮云信息技术股份公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。