修改虚拟机IP地址的方法和装置及计算机可读存储介质与流程

文档序号:11254146阅读:1803来源:国知局
修改虚拟机IP地址的方法和装置及计算机可读存储介质与流程

本发明涉及虚拟机技术,尤指一种修改虚拟机互联网协议(ip,internetprotocol)地址的方法和装置及计算机可读存储介质。



背景技术:

近些年,随着计算机技术的飞速发展,云计算技术和大数据技术在人们的生活和工作中应用越来越广泛。数据中心承载着各种不同业务,对整个数据中心的整体网络和虚拟机间的网络通信有了更高的要求。

在实际应用中,面对不同的业务场景,需要对虚拟机的ip地址进行动态修改,以满足业务场景需求,这就要求运维人员快速对目标虚拟机的ip地址进行修改,保证业务的运行。

传统的运维方式需要运维人员手动修改虚拟机的ip地址并重启网络,这种方式效率比较低并且还容易出错,耗时耗力,可能还会对整个数据中心的正常运行造成一定影响。



技术实现要素:

本发明实施例提供了一种修改虚拟机ip地址的方法和装置及计算机可读存储介质,能够提高效率。

本发明实施例提供了一种修改虚拟机互联网协议ip地址的方法,包括:

预先配置虚拟机信息和目标ip地址之间的对应关系;

根据对应关系生成每一个需要修改虚拟机ip地址的虚拟机对应的脚本文件;

与每一个需要修改ip地址的虚拟机建立连接,通过建立的连接将每一个需要修改ip地址的虚拟机对应的脚本文件发送给该需要修改ip地址的虚拟机,并向该需要修改ip地址的虚拟机发送远程指令,以使该需要修改ip地址的虚拟机执行结束到的脚本文件,完成对ip地址的修改。

可选的,该方法还包括:

完成对虚拟机的ip地址的修改后,检测修改ip地址后的虚拟机是否能正常通信,如果能,则修改成功;如果不能,则修改失败。

可选的,所述根据对应关系生成每一个需要修改ip地址的虚拟机对应的脚本文件包括:

根据所述虚拟机信息中的虚拟机媒体访问控制mac地址获取所述虚拟机信息对应的虚拟机的详细信息;

根据获得的虚拟机的详细信息和所述对应关系生成脚本文件。

可选的,该方法还包括:

所述根据所述虚拟机信息中的虚拟机媒体访问控制mac地址获取所述虚拟机信息对应的虚拟机的详细信息后,在所述根据获得的虚拟机的详细信息和所述对应关系生成脚本文件之前,检测所述虚拟机的详细信息的正确性,如果所述虚拟机的详细信息无误,则继续执行所述根据获得的虚拟机的详细信息和所述对应关系生成脚本文件的步骤。

可选的,该方法还包括:

当所述虚拟机的详细信息有误时,提示用户,并询问用户是否继续修改工作,当接收到来自用户的表示继续修改工作的指令时,继续执行所述根据获得的虚拟机的详细信息和所述对应关系生成脚本文件的步骤。

本发明实施例还提出了一种修改虚拟机互联网协议ip地址的装置,包括:

配置模块,用于预先配置虚拟机信息和目标ip地址之间的对应关系;

生成模块,用于根据对应关系生成每一个需要修改虚拟机ip地址的虚拟机对应的脚本文件;

修改模块,用于与每一个需要修改ip地址的虚拟机建立连接,通过建立的连接将每一个需要修改ip地址的虚拟机对应的脚本文件发送给该需要修改ip地址的虚拟机,并向该需要修改ip地址的虚拟机发送远程指令,以使该需要修改ip地址的虚拟机执行结束到的脚本文件,完成对ip地址的修改。

可选的,还包括:

检测模块,用于完成对虚拟机的ip地址的修改后,检测修改ip地址后的虚拟机是否能正常通信,如果能,则修改成功;如果不能,则修改失败。

可选的,所述生成模块具体用于:

根据所述虚拟机信息中的虚拟机媒体访问控制mac地址获取所述虚拟机信息对应的虚拟机的详细信息;

根据获得的虚拟机的详细信息和所述对应关系生成脚本文件。

可选的,所述生成模块具体用于:

根据所述虚拟机信息中的虚拟机媒体访问控制mac地址获取所述虚拟机信息对应的虚拟机的详细信息;检测所述虚拟机的详细信息的正确性,如果所述虚拟机的详细信息无误,则根据获得的虚拟机的详细信息和所述对应关系生成脚本文件。

可选的,所述生成模块还用于:

当所述虚拟机的详细信息有误时,提示用户,并询问用户是否继续修改工作,当接收到来自用户的表示继续修改工作的指令时,继续执行所述根据获得的虚拟机的详细信息和所述对应关系生成脚本文件的步骤。

本发明实施例还提出了一种终端,包括处理器和计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令被所述处理器执行时,实现上述任意一个修改虚拟机ip地址的方法。

本发明实施例还提出了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一个修改虚拟机ip地址的方法的步骤。

与相关技术相比,本发明实施例包括:预先配置虚拟机信息和目标ip地址之间的对应关系;根据对应关系生成每一个需要修改虚拟机ip地址的虚拟机对应的脚本文件;与每一个需要修改ip地址的虚拟机建立连接,通过建立的连接将每一个需要修改ip地址的虚拟机对应的脚本文件发送给该需要修改ip地址的虚拟机,并向该需要修改ip地址的虚拟机发送远程指令,以使该需要修改ip地址的虚拟机执行结束到的脚本文件,完成对ip地址的修改。通过本发明实施例的方案,根据配置的对应关系生成脚本文件实现批量虚拟机的ip地址的修改,从而大大提高了修改效率。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。

附图说明

附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。

图1为本发明实施例修改虚拟机ip地址的方法的流程图;

图2为本发明实施例修改虚拟机ip地址的装置的结构组成示意图;

图3为本发明实施例终端的结构组成示意图。

具体实施方式

下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。

在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

参见图1,本发明实施例提出了一种修改虚拟机ip地址的方法,包括:

步骤100、预先配置虚拟机信息和目标ip地址之间的对应关系。

本步骤中,虚拟机信息包括虚拟机媒体访问控制(mac,mediaaccesscontrol)地址。

可选的,虚拟机信息还包括:虚拟机原ip地址、登录虚拟机的用户名和密码等。

本步骤中,可以将对应关系配置在配置文件中。

步骤101、根据对应关系生成每一个需要修改ip地址的虚拟机对应的脚本文件。包括:

根据虚拟机信息中的虚拟机mac地址获取虚拟机信息对应的虚拟机的详细信息;根据获得的虚拟机的详细信息和对应关系生成脚本文件。

其中,可以云平台的资产管理模块中查找mac地址对应的虚拟机的详细信息。

其中,虚拟机的详细信息包括:虚拟机原ip地址、登录虚拟机的用户名和密码等。可选的,虚拟机的详细信息还包括:虚拟机的操作系统类型。

例如,当虚拟机的操作系统类型为ecntos6.4,虚拟机原ip地址为100.7.31.1,登录虚拟机的用户名为inspur,密码为111111,目标ip地址为100.7.32.2时,生成的脚本文件如下:

#!/bin/bash

rm–rf/etc/sysconfig/network-scripts/ifcfg-eth0

echo'device=eth0'>/etc/sysconfig/network-scripts/ifcfg-eth0

echo'onboot=yes'>>/etc/sysconfig/network-scripts/ifcfg-eth0

echo'type=ethernet'>>/etc/sysconfig/network-scripts/ifcfg-eth0

echo'bootproto=static'>>/etc/sysconfig/network-scripts/ifcfg-eth0

echo'ipaddr=10.2.202.23'>>/etc/sysconfig/network-scripts/ifcfg-eth0

echo'netmask=255.255.254.0'>>/etc/sysconfig/network-scripts/ifcfg-eth0

echo'gateway=10.2.203.176'>>/etc/sysconfig/network-scripts/ifcfg-eth0

servicenetworkrestart

其中,第一行定义了脚本文件的类型,第二行删除了原有的网络配置文件(即虚拟机网卡ip配置文件),第三行将网卡装置名称插入到新的网络配置文件/etc/sysconfig/network-scripts/ifcfg-eth0中,第四行为网络服务开机自启动,第五行定义了网络类型,第六行将ip配置为静态类型,不可动态获取,第七行为目标ip地址,第八行和第九行为子网掩码,第十行为默认路由,最后一行重启网络服务,使新的网络配置文件生效。

步骤102、与每一个需要修改ip地址的虚拟机建立连接,通过建立的连接将每一个需要修改ip地址的虚拟机对应的脚本文件发送给该需要修改ip地址的虚拟机,并向该需要修改ip地址的虚拟机发送远程指令,以使该需要修改ip地址的虚拟机执行结束到的脚本文件,完成对ip地址的修改。

本步骤中,可以利用安全壳(ssh,secureshell)远程连接技术与每一个需要修改ip地址的虚拟机建立连接。

本步骤中,可以以scp命令通过建立的连接将每一个需要修改ip地址的虚拟机对应的脚本文件发送给该需要修改ip地址的虚拟机。

在发送脚本文件时,将脚本文件发送到虚拟机的指定目录下;然后通过发送远程指令时虚拟机执行该指定目录下的脚本文件。

本步骤中,远程指令可以是sh/home/modifyip-mac.sh,其中,sh为远程指令,/home/modifyip-mac.sh为位于/home目录下的名称为modifyip-mac.sh的脚本文件。

可选的,该方法还包括:

根据虚拟机信息中的虚拟机媒体访问控制mac地址获取虚拟机信息对应的虚拟机的详细信息后,在根据获得的虚拟机的详细信息和对应关系生成脚本文件之前,检测虚拟机的详细信息的正确性,如果虚拟机的详细信息无误,则继续执行根据获得的虚拟机的详细信息和对应关系生成脚本文件的步骤。

其中,检测虚拟机的详细信息的正确性包括:

根据虚拟机的详细信息的虚拟机原ip地址、登录虚拟机的用户名和密码向虚拟机信息对应的虚拟机发起建立连接请求,若接收到该连接请求对应的响应,确定虚拟机的详细信息正确;若未接收到该连接请求对应的响应,确定虚拟机的详细信息有误。

其中,可以采用ssh远程连接技术向虚拟机信息对应的虚拟机发起建立连接请求。

可选的,当虚拟机的详细信息有误时,提示用户,并询问用户是否继续修改工作,当接收到来自用户的表示继续修改工作的指令时,继续执行根据获得的虚拟机的详细信息和所述对应关系生成脚本文件的步骤。

其中,当虚拟机的详细信息有误时,还可以保存信息有误的虚拟机的详细信息,以便用户后期对信息有误的虚拟机的详细信息进行修改。

可选的,当接收到来自用户的表示不继续修改工作的指令时,结束本流程。

可选的,该方法还包括:完成对虚拟机的ip地址的修改后,检测修改ip地址后的虚拟机是否能正常通信,如果能,则修改成功;如果不能,则修改失败。

其中,检测修改ip地址后的虚拟机是否能正常通信包括:

使用修改ip地址后的虚拟机的目标ip地址、登录虚拟机的用户名和密码通过ssh远程连接技术连接修改ip地址后的虚拟机,若能建立连接,则修改成功;若不能建立连接,则修改失败。

可选的,该方法还包括:

向用户返回信息有误的虚拟机信息、修改成功的虚拟机信息、修改失败的虚拟机信息。这样,用户就可以了解本次修改虚拟机的具体情况,以便用户采取后续的措施。

参见图2,本发明实施例还提出了一种修改虚拟机ip地址的装置,包括:

配置模块,用于预先配置虚拟机信息和目标ip地址之间的对应关系;

生成模块,用于根据对应关系生成每一个需要修改虚拟机ip地址的虚拟机对应的脚本文件;

修改模块,用于与每一个需要修改ip地址的虚拟机建立连接,通过建立的连接将每一个需要修改ip地址的虚拟机对应的脚本文件发送给该需要修改ip地址的虚拟机,并向该需要修改ip地址的虚拟机发送远程指令,以使该需要修改ip地址的虚拟机执行结束到的脚本文件,完成对ip地址的修改。

可选的,还包括:

检测模块,用于完成对虚拟机的ip地址的修改后,检测修改ip地址后的虚拟机是否能正常通信,如果能,则修改成功;如果不能,则修改失败。

可选的,生成模块具体用于:

根据虚拟机信息中的虚拟机媒体访问控制mac地址获取虚拟机信息对应的虚拟机的详细信息;根据获得的虚拟机的详细信息和对应关系生成脚本文件。

可选的,所述生成模块具体用于:

根据所述虚拟机信息中的虚拟机媒体访问控制mac地址获取所述虚拟机信息对应的虚拟机的详细信息;检测所述虚拟机的详细信息的正确性,如果所述虚拟机的详细信息无误,则根据获得的虚拟机的详细信息和所述对应关系生成脚本文件。

可选的,所述生成模块还用于:

当所述虚拟机的详细信息有误时,提示用户,并询问用户是否继续修改工作,当接收到来自用户的表示继续修改工作的指令时,继续执行所述根据获得的虚拟机的详细信息和所述对应关系生成脚本文件的步骤。

参见图3,本发明实施例还提出了一种终端,包括处理器和计算机可读存储介质,所述计算机可读存储介质中存储有指令,其特征在于,当所述指令被所述处理器执行时,实现上述任意一个修改虚拟机ip地址的方法。

本发明实施例还提出了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一个修改虚拟机ip地址的方法的步骤。

虽然本发明所揭露的实施方式如上,但所述的内容仅为便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属领域内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1