zoukankan      html  css  js  c++  java
  • openstack封装镜像

    1.准备工作:
    准备你想要封装的各种镜像的iso,完整版本最简单版本都ok,只要能出虚拟机就行,这个大家去官网下载自己要的iso就可以,我这里用centos6.4最简版本,因为分给我的活让做这个的....
    支持虚拟化的centos7机器一台,vm里的就可以,但是你要开cpu支持虚拟化选项了
    有一些要求的就比如/要多大空间,/home要多大空间等等的也是可以做的,但是估计你用vm在自己电脑上分出来的小虚拟机这资源上就扛不住了,如果有一台比较专门装了centos的物理机这样最好

    2.正式开始:
    yum install virt-install virt-sparsify -y
    mkdir /openstack-images
    cd /openstack-images
    把你的iso镜像扔这里吧,其实放哪里都可以,就是自己记住路径就好
    qemu-img create -f qcow2 centos6.4.qcow2 20G(最后封装完成后不会这么大,现在只是这么意思意思#35)
    chown qemu:qemu /openstack-images -R
    systemctl start libvirtd
    virt-install -n vm1 -r 1024 --cpu host -c /openstack-images/CentOS-6.4-x86_64-minimal.iso --disk path=/openstack-images/centos6.4.qcow2,device=disk,bus=virtio,size=20,format=qcow2 --vnc --vncport=5900 --vnclisten=0.0.0.0 -v(创建完成后ssh会空住,可以在打开个ssh)
    virsh list你会看见刚才刚才创建的虚拟机vm1在run
    如果有错误需要删除虚拟机
    virsh destroy vm1
    virsh undefine vm1
    然后你就可以用vncviewer连接你的物理机的5900端口来操作这台虚拟机,我不喜欢用vnc,所以直接在图形界面打开了,如果端口被占用换一个端口就好

    virt-manager(会打开管理窗口,你刚才创建的vm1就在这里,在运行,双击它就打开了操作界面,其实跟vnc看到的一样了)

    VNC连接:

    装系统因人而异,也因系统而异,我就不写了,但是作为需要封装的镜像,一般都是最简安装的,如果有分区要求,就自定义分区去操作就好了
    系统装好后启动,此时还没完成,然后进到这台虚拟机的系统里操作,先做一些你需要自定制的东西,比如安装saltstack客户端,然后:
    rm -rf /etc/udev/rules.d/70-persistent-net.rules
    cat /etc/sysconfig/network-scripts/ifcfg-eth0应该是这样
    TYPE="Ethernet"
    DEVICE="eth0"
    BOOTPROTO="dhcp"
    ONBOOT="yes"
    NM_CONTROLLED="yes"

    sed -i s/^SELINUX=.*/SELINUX=disabled/g /etc/selinux/config
    service iptables stop && chkconfig iptables off(7系统应该是firewalld)
    service ip6tables stop && chkconfig ip6tables off
    init 0关机

    du -sh 你的镜像名
    可以看到这个img文件应该1g多左右,根据系统不同
    virt-sparsify --compress centos6.4.qcow2 centos6.4-cloud.qcow2 # 压缩一定要压缩!

    此时这个centos6.4-cloud.qcow2应该是不到300M
    把它传到你的openstack安装glance组件的服务器上
    openstack image create "centos6.4" --file centos6.4-cloud.qcow2 --disk-format qcow2 --container-format bare --public

    3.验证
    登录openstack的控制台用此镜像创建一个云主机,此时最小的套餐肯定是不行了,貌似才512M吧,用第二个创建,等一会就ok了,云主机登录就是你在qemu装系统时设置的账号密码

  • 相关阅读:
    远程连接Mysql报错 java.sql.SQLException:null,message from server ... is not allowed to connect
    使用 java.util.Properties 读取配置文件中的参数
    重载Prometheus配置
    Redis的 SLAVEOF 命令
    Redis为什么不能使用一主一从哨兵
    iptables添加开放端口
    解决172.17 或者172.18 机房环境下harbor服务器不通的问题
    利用sshpass批量导入ssh-key
    ZABBIX_PROXy
    zabbix_server.conf
  • 原文地址:https://www.cnblogs.com/bfmq/p/6044086.html
Copyright © 2011-2022 走看看