工作原因接觸diskimage-builder有近1個月的時間,制作了ubuntu和centos7系列的鏡像,下面談談我對diskimage-builder這個工具的了解。
diskimage-builder是openstack的官方項目,是cloudimage鏡像的制作工具。學會用diskimage-builder我們就能定制屬于我們自己雲平台的鏡像,前提是了解并會用裡面的各種elements,這個需要時間多練習。
每個elements裡面可以包含這些内容:
environment.d:定義環境變量
preinstall.d :安裝前準備工作,如定義鏡像版本号
install.d :安裝過程中執行腳本
finalise.d root.d :安裝結束後執行腳本
element-deps :依賴的其他元素
element-provides:應該和系統有關,不太清楚
下面進入正題,下面幾個指令解釋了如何建立各種類型鏡像
1.建立一個ubuntu鏡像,允許密鑰注入,建立後門使用者密碼登入,分别為14.04和16.04兩個版本
export DIB_RELEASE='trusty'
export DIB_CLOUD_INIT_DATASOURCES="ConfigDrive, OpenStack"
export DIB_DEV_USER_USERNAME="Tom"
export DIB_DEV_USER_PWDLESS_SUDO=Yes
export DIB_DEV_USER_PASSWORD=yourpassword
以上為設定環境變量部分,下面建立
disk-image-create -o ubuntu-trusty -t raw ubuntu vm devuser cloud-init-datasources
ubuntu16.04隻需要将上面-DIB_RELEASE置空即可
2.建立centos7.4鏡像
centos7.4鏡像較ubuntu少些,直接建立即可
disk-image-create -o centos7 -t qcow2 centos7 vm