您好,登錄后才能下訂單哦!
小編給大家分享一下Centos如何制作Openstack虛擬機鏡像,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
# virsh vol-create-as lv3 Centos7.img 50G --format qcow2
Vol Centos7.img created
此處選擇qcow2格式,創建出來的img會較小,成功配置完成后大概在1.2G左右;如果是raw格式,創建完成img大概在51G左右。
# virt-install --connect qemu:///system -n Centos7 -r 4096 -f /vg0_lv3/Centos7.img --vnc --vcpus=2 --network bridge=br0 -c /vg0_lv1/openstack-image/CentOS-7-x86_64-Everything-1511.iso
Starting install...
Creating domain... | 0 B 00:00
Cannot open display:
Run 'virt-viewer --help' to see a full list of available command line options
Domain installation still in progress. You can reconnect to
the console to complete the installation process.
連接vnc,圖形化界面安裝centos7.2的系統,選擇最小化安裝,系統安裝完再繼續以下步驟。
# yum install acpid # systemctl enable acpid
# yum install http://download.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-7.noarch.rpm # yum install cloud-init
修改配置
# vi /etc/cloud/cloud.cfg
users: root
# echo "NOZEROCONF=yes" >> /etc/sysconfig/network
刪除rhgb quiet
添加 console=tty0console=ttyS0,115200n8
# vi /etc/default/grub
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=centos/root console=tty0 console=ttyS0,115200n8"
GRUB_DISABLE_RECOVERY="true"
讓配置生效
# grub2-mkconfig -o /boot/grub2/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-3.10.0-327.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-327.el7.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-8ad37cd5879289675a6517371665929a
Found initrd image: /boot/initramfs-0-rescue-8ad37cd5879289675a6517371665929a.img
done
8、刪除網卡配置信息
刪除mac信息和 UUID
# cd /etc/sysconfig/network-scripts/ # vi ifcfg-ens3
BOOTPROTO=dhcp
ONBOOT=yes
# shutdown -h now
# source ~/admin-openrc.sh # openstack image create "Centos-7.2-init" \ --file /data/Centos-7.2-init.img \ --disk-format qcow2 --container-format bare \ --public
11、創建云主機,查看日志
注意:
虛擬機創建完成后,在修改配置之前最好先給虛擬機做個快照
在創建centos6.6鏡像時,安裝cloud-init來獲取公鑰可能會導致無法連接進虛擬機的情況,所以,最好省去第5步。
# virsh vol-create-as lv3 Centos6.6.img 50G --format qcow2
2、創建虛擬機
# virt-install --connect qemu:///system -n Centos6.6 -r 4096 -f Centos6.6.img --vnc --vcpus=2 --network bridge=br0 -c /vg0_lv1/CentOS-6.6-x86_64-bin-DVD1.iso
Starting install...
Creating domain... | 0 B 00:00
Cannot open display:
Run 'virt-viewer --help' to see a full list of available command line options
Domain installation still in progress. You can reconnect to
the console to complete the installation process.
連接vnc,圖形化界面安裝centos6.6的系統,系統安裝完再繼續以下步驟。
4、安裝 ACPI 服務
為了讓虛擬化層能重啟和關閉虛擬機,必須在虛擬機內安裝并運行 acpid
服務。
在 CentOS虛擬機內運行以下命令安裝 ACPI 服務并配置為系統啟動時自動啟動。
# yum install acpid # chkconfig acpid on
安裝完cloud-init可能會導致無法連接進虛擬機的情況,所以,此步驟最好不做,有待繼續學習研究……
cloud-init
包自動從元數據服務獲取公鑰并保存到賬戶,你可以在 CentOS虛擬機添加 EPEL 安裝源來安裝 cloud-init
包,我發現其他自帶的yum源就可以安裝了,并不一定要安裝epel源。
# yum install http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm # yum install cloud-init
修改配置,添加root用戶
# vi /etc/cloud/cloud.cfg
users: root
要讓虛擬機訪問元數據服務,必須禁用 zeroconf 路由:
# echo "NOZEROCONF=yes" >> /etc/sysconfig/network
要使 nova console-log 命令在 CentOS 6.x
生效 ,你需要添加以下文字到 /boot/grub/menu.lst
文件:
在kernel最后面加上 console=tty0 console=ttyS0,115200n8
# vi /boot/grub/menu.lst
8、清理mac地址信息,最后的網卡配置信息如下
# cat /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 TYPE=Ethernet ONBOOT=yes NM_CONTROLLED=yes BOOTPROTO=dhcp
刪除記錄網卡MAC地址的文件
# cd /etc/udev/rules.d/ # rm -f 70-persistent-net.rules
9、關閉虛擬機
# shutdown -h now
10、上傳鏡像
# source ~/admin-openrc.sh # openstack image create "Centos-6.6-init-cloud" \ --file /data/Centos-6.6-init-cloud.img \ --disk-format qcow2 --container-format bare \ --public
11、創建云主機,檢查日志
以上是“Centos如何制作Openstack虛擬機鏡像”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。