制作openstack centos7镜像

先安装好一个kvm虚拟机机器名CentOS7.4_v2磁盘类型.qcow2启动进入虚拟机里
由于安装了saltstack,先关闭salt-minion的开机启动,同时关闭NetworkManager

systemctl stop NetworkManager
systemctl disable NetworkManager
systemctl stop salt-minion.service 
systemctl disable salt-minion.service 

清空minion_id

> /etc/salt/minion_id
echo "NOZEROCONF=yes" >> /etc/sysconfig/network

安装工具

yum install -y acpid
systemctl enable acpid
yum install -y qemu-guest-agent
yum install -y cloud-init
yum install -y cloud-utils-growpart
rpm -qa kernel | sed 's/^kernel-//'  | xargs -I {} dracut -f /boot/initramfs-{}.img {}

配置cloud.cfg

vim /etc/cloud/cloud.cfg
 system_info:
  default_user:
    name: centos
    lock_passwd: true
    gecos: Cloud User
    groups: [wheel, adm, systemd-journal]
    sudo: ["ALL=(ALL) NOPASSWD:ALL"]
    shell: /bin/bash
  distro: rhel
  paths:
    cloud_dir: /var/lib/cloud
    templates_dir: /etc/cloud/templates
  ssh_svcname: sshd
#设置自动对磁盘调整
bootcmd:
 - [ cloud-init-per, once, grow-partition, growpart, /dev/vda, 2 ]
 - [ cloud-init-per, once, resize-filesystem, xfs_growfs, /dev/vda2 ]


 
设置DHCP

vim /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE=Ethernet
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=dhcp
NM_CONTROLLED=no

设置一个虚拟机开机自启动脚本执行初始化设置

[root@kvm010.eq-sg-2.apus.com tmp]# virt-cat -a v00-openstacktest01.qcow2 /root/vm_init.sh
#!/bin/bash
vname=`curl http://169.254.169.254/2009-04-04/meta-data/hostname/`
echo $vname > /etc/salt/minion_id
systemctl enable salt-minion
systemctl start salt-minion
sed -i '/vm_init/d' /etc/rc.local
rm -f $0

设置脚本权限

chmod 755  /root/vm_init.sh
chmod 755 /etc/rc.local

添加脚本开机执行

vim /etc/rc.local 
#!/bin/bash
touch /var/lock/subsys/local
/bin/bash /root/vm_init.sh


 /etc/fstab 文件中到 UUID 手工修改成系统设备 (将UUID改为设备路径)

[root@localhost ~]# blkid
    /dev/vda1: UUID="cb6377c4-3d3d-44e0-a02f-24e561e32df5" TYPE="xfs"      
[root@localhost ~]#cat /etc/fstab 
    /dev/vda1  /  xfs     defaults        0 0    #替换uuid


清除记录

echo > /var/log/wtmp
echo > /var/log/btmp
history -c
/sbin/shutdown -h now

宿主机执行

virt-sysprep -d v0-test8
virsh undefine v0-test8


上传镜像

. /home/mushengjun/admin-openrc
glance image-create --file CentOS7.4_v2.qcow2 --disk-format qcow2 --container-format bare --name CentOS7.4_v2 --progress
或
openstack image create "CentOS7.4_v2" --file CentOS7.4_v2.qcow2 --disk-format qcow2 --container-format bare  --public

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值