设为首页 收藏本站
查看: 2687|回复: 2

[经验分享] kvm的支持openstack的linux系统镜像制作

[复制链接]

尚未签到

发表于 2018-1-22 13:28:57 | 显示全部楼层 |阅读模式
                                                1.1   创建虚拟机
qemu-img create -f qcow2 /home/rhel7.0.qcow2 20G  //创建20G动态磁盘
//root权限执行
virt-install --os-variant list
//rhel7               : Red Hat Enterprise Linux 7
virt-install --connect=qemu:///system --name rhel7.0 --ram 4096 --vcpus 4 --network network=default --disk path=/home/rhel7.0.qcow2,format=qcow2,device=disk,bus=virtio,cache=writeback --cdrom /home/liutuan/iso/xxx.iso --vnc --os-type linux --os-variant rhel7
// Domain installation still in progress. You can reconnect to
the console to complete the installation process. //通过Virtual Machine Manager去连接操作系统安装界面
1.2   操作系统安装过程
图形界面安装、新增test登录用户,
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
[img]http://i2.51cto.com/images/blog/201801/20/1f384cde2590b3f6600fd0913a25d3e7.jpg?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naG![](http://i2.51cto.com/images/blog/ ... ess=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)VpdGk=[/img]
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
1.3   操作系统配置
#selinux
setenforce 0
sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
#iptables  //关闭防火墙
systemctl stop iptables.service
systemctl disable iptables.service
1.4   qemu-guest-agent安装和配置
#需要外部安装源 @updates
yum install qemu-guest-agent   
echo "NOZEROCONF=yes" >> /etc/sysconfig/network
1.5   配置虚拟机163 yum源
1.5.1   给虚拟机配置互联网IP

宿主机和虚拟机对应的网卡配置:
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=.jpg
1.5.2 配置yum源
vim /etc/sysconfig/network-scripts/ifcfg-eth0
修改eth0配置文件:留四行,删除各种uuid
#网络IP
[iyunv@localhost network-scripts]# cat ifcfg-eth0
NAME=eth0
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=dhcp
vim /etc/resolv.conf
#MAC
Nameserver 114.114.114.114
重启网络
ping baidu.com
rm -f /etc/yum.repos.d/*
wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
vim /etc/yum.repos.d/CentOS7-Base-163.repo
:%s/$releasever/7/g
:x
yum clean all
yum makecache
yum list
1.6   cloud-init安装和配置
#调通互联网,最后别忘了删除网络配置。
//针对RHEL-7
yum install cloud-init
yum install cloud-utils-growpart
vim /etc/cloud/cloud.cfg
users:
  • default
disable_root: 0
ssh_pwauth:   0
locale_configfile: /etc/sysconfig/i18n
mount_default_fields: [~, ~, 'auto', 'defaults,nofail', '0', '2']
resize_rootfs_tmp: /dev
ssh_deletekeys:   0
ssh_genkeytypes:  ~
syslog_fix_perms: ~
cloud_init_modules:
  • migrator
  • bootcmd
  • write-files
  • growpart
  • resizefs
  • set_hostname
  • update_hostname
  • update_etc_hosts
  • rsyslog
  • users-groups
  • ssh
cloud_config_modules:
  • mounts
  • locale
  • set-passwords
  • yum-add-repo
  • package-update-upgrade-install
  • timezone
  • puppet
  • chef
  • salt-minion
  • mcollective
  • disable-ec2-metadata
  • runcmd
cloud_final_modules:
  • rightscale_userdata
  • scripts-per-once
  • scripts-per-boot
  • scripts-per-instance
  • scripts-user
  • ssh-authkey-fingerprints
  • keys-to-console
  • phone-home
  • final-message
system_info:
default_user:
name: centos
lock_passwd: true
gecos: Cloud User
groups: [wheel, adm]
sudo: ["ALL=(ALL) NOPASSWD:ALL"]
shell: /bin/bash
distro: rhel
paths:
cloud_dir: /var/lib/cloud
templates_dir: /etc/cloud/templates
ssh_svcname: sshd
datasource_list: ['OpenStack','ConfigDrive']
_# vim:syntax=yaml
//If there is a defaults.cfg in /etc/cloud/cloud.cfg.d/, delete it.
#修改cloud-init配置文件:
Vim  /etc/default/grub
#删除GRUB_CMDLINE_LINUX=……这一行中的rhgb quiet配置项,添加console=tty0 console=ttyS0,115200n8
#使修改后的grub配置文件生效
Grub2-mkconfig –o /boot/grub2/grub.cfg
3.7 个性化配置和清理多余设置
个性化配置:略
清理多余的设置:
比如:DNS配置,磁盘分割,修改密码等。
vim /etc/resolv.conf
#MAC
Nameserver 114.114.114.114
#root密码
Passwd root
password
#管理开关虚拟机服务(可选)
yum install acpid
yum enable acpid
#配置硬盘重新分区(可选)
yum install cloud-utils-growpart
#配置本地YUM源,注意是否需要保留本地ISO源
在宿主机环境下挂载本地iso镜像
virsh destroy rhel7.0
virsh start rhel7.0
virsh attach-disk --type cdrom --mode readonly rhel7.0 "/home/liutuan/iso/xx7.0.iso" hdc
virsh dumpxml rhel7.0 > rhel7.0.xml   //方便virsh create *.xml
#进入虚拟机操作系统
#挂载本地iso
mkdir -p /mnt/cdrom  /mnt/iso
mount /dev/cdrom /mnt/iso     //如果出错,则需要先attach-disk
cp –frv /mnt/iso   /mnt/cdrom
rm –rf /mnt/iso
ls /mnt/cdrom
#配置本地yum源
cd /etc/yum.repos.d/
mv CentOS7-Base-163.repo CentOS7-Base-163.repo.bak
cat > /etc/yum.repos.d/local.repo <<EOF
[local]
name=local
baseurl=file:///mnt/cdrom
gpgcheck=0
enabled=1
EOF
Kill –s 9 xx(进程号)
yum clean all
yum makecache
yum repolist
#关机
shutdown
1.8   解除绑定
#安装工具软件
yum install -y libguestfs-tools-c
//ubuntu主机sudo apt-get install libguestfs-tools
//使用VM名称
virt-sysprep -d rhel7.0
virsh undefine  rhel7.0
#镜像制作完毕
md5sum rhel7.0.qcow2 > Rrhel7.0.qcow2.md5sum
cat rhel7.0.qcow2.md5sum
781ecc51dde344ffba0e04a7574e6190  rhel7.0.qcow2
1.9   镜像上传
  • scp rhel7.0.qcow2 controller:/home/  //也可以通过ftp工具上传到控制节点
  • ssh controller  上传镜像img到控制节点镜像压缩
    qemu-img convert -f qcow2 –O raw rhel7.0.qcow2 rhel7.0.raw
    1.9.1 上传到glance
source openrc
glance image-create --property os_type=linux --name " rhel7.0" --is-public true --disk-format raw --container-format bare --file /home/rhel7.0.raw

                                       


运维网声明 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-436014-1-1.html 上篇帖子: 部署kvm虚拟化平台及功能管理 下篇帖子: 【回报开源】云计算之KVM讲解
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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