導讀
今天來解鎖下vsphere的自定義規範管理器的功能:
通過vcenter自定義規範管理器可以實現對虛擬機模板的主機名、IP地址、網關、DNS等配置信息進行定製,使虛擬機上架的過程方便、快捷。
vsphere自定義規範管理器實現有兩種方式,一種是通過vsphere client界面化操作;另一種通過pyvmomi模塊實現代碼層面操作。
我們今天先來介紹下vsphere client端實現,pyvmomi方式我們後續介紹。
環境準備
本文主要以Cento7.5的定製進行講解
其中Centos7.5 是一個基礎模板,已經提前準備好,自定義管理規範就是對這個模板進行定製修改。
參考鏈接:
1.vCenter與操作系統自定義版本對應
http://partnerweb.vmware.com/programs/guestOS/guest-os-customization-matrix.pdf
2.Centos7安裝指南
http://partnerweb.vmware.com/GOSIG/CentOS_7.html
vsphere client端操作
1.創建自定義規範管理器
其中域名localhost 主要指的是在本地hosts中搜索域名。
2.自定義設置
其中我們已經將默認的網關及子網掩碼設置完畢,設置時區及dns設置可實際情況配置。
3.從模板部署虛擬機
1.輸入虛擬機名稱,選擇文件夾、集群、主機、存儲等
2.選擇我們創建的自定義規範Centos7.5
3.輸入主機名,即hostname;填寫新IP地址;
最後虛擬機依次將進行克隆、自定義,重啟直至完成。
到此或許大家認為熱乎乎的定製虛擬機已經完成,可結果讓大家非常失望:(1)hostname沒有設置成功;(2)ip地址也沒有設置設置成功,但是網卡里面的配置是OK的(某些情況會多出ifcfg-ether的網卡配置);
為什麼會出現這種問題呢?
我們根據官方的資料來分析下:
1.vCenter與操作系統自定義版本對應
當前測試環境的vCenter 為5.5u2,可支持的自定義為Centos6.x。因此我使用了一個Centos6.5模板進行克隆,結果證明自定義規範生效。
2.日誌分析
查看新建的虛擬機日誌/var/log/vmware-imc/toolsDeployPkg.log,看出警告識別不了Centos7操作系統版本
從以上兩點得出結論,vCenter5.5u2可以支持rhel7,那我們是否可以將Centos7.5的版本號改為rhel7的呢?
3.修改操作系統版本信息
我們重新將模板轉換為虛擬機並修改Centos7.5的版本信息,再轉換成模板:
<code>rm -f /etc/redhat-release && touch /etc/redhat-release && echo "Red Hat Enterprise Linux Server release 7.0 (Maipo)" > /etc/redhat-release/<code>
修改完成後,我們再從新從模板自定義克隆虛擬機,最終完美實現主機名和IP的定製,過程耗時大約1分6秒左右。
4.驗證
(1)操作系統版本信息
版本信息已經改成rhel7
(2)主機名修改為we123並自動添加至本地hosts
注意:
克隆模板時涉及到三個名稱,一是虛擬機名稱,二是域名,三是計算機名稱;
虛擬機名稱在此我們設置的和計算機名稱一樣,但是域名如果設置為test,搜索域名在hosts中將為we123.test
(3)IP地址由原來模板的192.168.3.253 已修改為 新的ip 192.168.3.254
總結
如果我們只是偶爾上架虛擬機,自定義規範管理器可能用處不大,但是如果我們將虛擬機上架流程自動化,這個功能會是一個捷徑。
後續的運維自動化的文章,我們會陸續介紹,把這個功能最大的優勢發揮出來。
閱讀更多 木訥大叔愛運維 的文章