设为首页 收藏本站
查看: 1397|回复: 1

[经验分享] kvm实现快速增量盘模式的克隆脚本

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-9-14 09:28:13 | 显示全部楼层 |阅读模式
要求:备份的img磁盘格式只有qcow2格式支持增量盘使用和快照功能
当你的一个虚拟机格式是raw格式时,请先格式转换
如:linux7.raw 是raw格式
qemu-img convert -c -O qcow2 linux7.raw linux7.qcow2

默认的img或硬盘存放在/var/lib/libvirt/images/
默认的xml文件存放在/etc/libvirt/qemu/

脚本:
先创建了一个模板机,怎么创建用KVM创建虚拟机这里省略,阿铭老师都讲的很详细。
我这里创建虚拟的信息如下
ls /var/lib/libvirt/images/
linux7.img   
ls /etc/libvirt/qemu/
linux7.xml   
作为模板机,我不允许或不让别人知道上面那两个文件。
mv /var/lib/libvirt/images/linux7.img /var/lib/libvirt/images/.linux7.img
mv /etc/libvirt/qemu/linux7.xml /etc/libvirt/qemu/.linux7.xml
修改vim /etc/libvirt/qemu/.linux7.xml
在这行修改

后续,当要克隆机器后,直接运行脚本克隆即可!
解决问题:
解决了每次克隆完后还要修改xml文件,进系统后还要进行>/etc/udev/70*。
效果图,步骤
1.步骤一
[iyunv@room liuwenzhi]# kvm_clone    #运行脚本
      ###########KVM clone ###########
      #                              #
      #       Welcome Use            #
      #                              #
      ################################
Enter a number :1
2.步骤二
[iyunv@room liuwenzhi]# virsh list --all  查看克隆机器
2    linux7-clone1                  closed
3.步骤三
[iyunv@room liuwenzhi]# virsh start linux7-clone1   开机
4.进入系统后修改ip搞定了
[iyunv@room liuwenzhi]#nmtui       #我的机器是centos7,所以setup没有,改成nmtui了

脚本代码
[iyunv@room liuwenzhi]# cat kvm_clone
#!/bin/bash

#定义磁盘放置目录
img_dir=/var/lib/libvirt/images/
#定义XML文件放置目录
xml_dir=/etc/libvirt/qemu/
#模板机器IMG
src_name=linux7
src_img=.linux7.img
src_xml=.linux7.xml
menu (){
        abc=3$[RANDOM%8]
        echo -e "\033[${abc};1m      ###########KVM clone ###########\033[0m"
        echo -e "\033[${abc};1m      #                              #\033[0m"
        echo -e "\033[${abc};1m      #       Welcome Use            #\033[0m"
        echo -e "\033[${abc};1m      #                              #\033[0m"
        echo -e "\033[${abc};1m      ################################\033[0m"
}
KVM_CLONE(){
read -p "Enter a number :" num
dst_name=$src_name-clone${num}
dst_img=$src_name-clone${num}.img
dst_xml=$src_name-clone${num}.xml
if [ -z $num ] ;then
        echo -e "\033[33mplease input a number !\033[0m"
        exit 10
fi
expr $num "+" 1 &>/dev/null
if [ $? -ne 0 ] ;then
        echo -e "\033[33mplease input a number !\033[0m"
        exit 11
fi
if [ $num -eq 0 ] ;then
        echo -e "\033[33minput a number not range !\033[0m"
        exit 12
fi
if [ -f $img_dir$dst_img -o -f $xml_dir$dst_xml ] ;then
        echo -e "\033[33mclone--->clone${num} exists,fail!\033[0m"
        exit 13
fi
echo -en "wait ... clone KVM image\t"
qemu-img create -f qcow2 -b $img_dir$src_img $img_dir$dst_img  &>/dev/null
echo -e "\033[32;1m[OK]\033[0m"
echo -en "wait ... Copy KVM xml\t\t"
cat /etc/libvirt/qemu/.linux7.xml > /tmp/kvm.xml
sed -i "//s/$src_name/$dst_name/" /tmp/kvm.xml
sed -i "//c\$(uuidgen)" /tmp/kvm.xml
sed -i "//dev/null
echo -e "\033[32;1m[OK]\033[0m"
echo  "done"
}
while :
do
        menu
        KVM_CLONE        
        exit 0
done



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-272011-1-1.html 上篇帖子: KVM安装与配置 下篇帖子: kvm主机做网卡桥接br0出错
累计签到:1 天
连续签到:1 天
发表于 2016-9-19 14:39:08 | 显示全部楼层
楼主好人楼主好人楼主好人楼主好人楼主好人

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表