vSphere 5.5以降-テンプレートからCentos 7をデプロイするとカスタマイズが無視される


10

テンプレートからCentOS7をデプロイするときに、カスタマイズが有効にならないという問題がありました。VM OS設定の場合-私はCentOSではなくRHEL7をOSとして選択しました(以前、以前の仕事でOracle Linux 6.5でそのレッスンを学びました)。それは正しく機能するはずですか?ではない正確に。

症状
CentOS7テンプレートから新しいVMをデプロイした後、最初の起動時にサーバーが正しいホスト名で起動し、次にカスタマイズスクリプトが実行され、VMが再起動した後、元のテンプレートのホスト名が再び/ etc / sysconfig / network-scripts / ifcfg-etherには正しい設定があり、正しいnic(ifcfg-e *)のifcfg設定は実装されていません。

背景

CentOSのセットアップについては、VMWareの指示に従いました:http : //partnerweb.vmware.com/GOSIG/CentOS_7.html

いくつかのパッケージを追加した後(vSphereのカスタマイズに必要なnet-toolsを含む)、「templatizeスクリプト」(http://lonesysadmin.net/2013/03/26/preparingへのクレジット)を使用して、次のようにテンプレートにボタンを付けました-linux-template-vms /(手順):

#!/bin/bash    
# clean yum cache
/usr/bin/yum clean all
#remove udev hardware rules
/bin/rm -f /etc/udev/rules.d/70*
#remove nic mac addr and uuid from ifcfg scripts
/bin/sed -i '/^\(HWADDR\|UUID\)=/d' /etc/sysconfig/network-scripts/ifcfg-eth0
#remove host keys (important step security wise.  similar to system GUID in Windows)
/bin/rm /etc/ssh/ssh_host_*
#engage logrotate to shrink logspace used
/usr/sbin/logrotate -f /etc/logrotate.conf
#and lets shutdown
init 0

回避策が不要になったサポートバージョン

  • vSphere 5.5u3(ビルド3000241以降)
  • vSphere 6.0以降

VMWareの「ゲストOSカスタマイズサポートマトリックス」http : //partnerweb.vmware.com/programs/guestOS/guest-os-customization-matrix.pdf


sys-unconfigテンプレート作成プロセスに組み込む必要があります。
ewwhite 2014

@ewwhiteありがとう。良いヒント。これをツールキットに入れます。これを見ると、vSphereカスタマイズやVirt-Toolsが利用できるKVMがないベアメタルイメージに最も役立ちます。
ジェフバーンズ

あなたのesxアップデートバージョンは何ですか?
kikicarbonell 2016年

私のvcenter 5.5 2001466には、オプションとしてRedHat Enterprise 7が表示されません。
kikicarbonell 2016年

kikicarbonell-回避策が不要になった場所と、サポートされているゲストOSのバージョンを反映するように質問を更新しました。あなたのケースでは、5.5u3にアップグレードする必要があります。乾杯
ジェフバーンズ

回答:


5

更新:テスト済みですが、これはCentOS 7.1でもゲストOSオプションとしてRHEL 6と以下のコマンドを使用して機能します。

FYI redhat-releaseはcentos-releaseにシンボリックリンクされています。redhat-releaseを編集する場合、実際にはcentos-releaseを変更しています。

ディストリビューション固有のバージョンファイルを変更しないというソリューションの推奨に従うには、代わりに次のようにします。

rm -f /etc/redhat-release && touch /etc/redhat-release && echo "Red Hat Enterprise Linux Server release 7.0 (Maipo)" > /etc/redhat-release

ありがとうございました。それらがシンボリックリンクされていることに気付かなかったなんて信じられません...私が実際に意図していたものに対して、その簡潔で簡潔で正確な解決策をあなたの答えに移しました。
ジェフバーンズ

6

解決策:/ etc / redhat-releaseをvSphereで認識された「Red Hat Enterprise Linux Serverリリース7.0(Maipo)」の値に変更し、CentOS7テンプレートからカスタマイズを適切に適用してVMをデプロイできるようになりました。最初に既存の/ etc / redhat-releaseシンボリックリンクをrmしてください。エレガントなワンライナーソリューションについては、mjevangeの回答を参照してください。

背景:CentOS 7に対して上記と同じ方法を使用して新しいOracle Linux 7(OEL7)テンプレートを作成および展開し、それを機能させた後、問題が何であるかをすぐに理解しました。見てみな:

Centos7のデフォルトの/ etc / redhat-releaseファイル:

 cat /etc/redhat-release
 CentOS Linux release 7.0.1406 (Core)  

RHEL7 / OEL7のデフォルトの/ etc / redhat-releaseファイル:

 cat /etc/redhat-release
 Red Hat Enterprise Linux Server release 7.0 (Maipo)

(CentOSとOracle Linuxのバージョンファイルはそれぞれcentos-releaseとoracle-releaseです。これらはディストリビューション固有のバージョンファイルであるため、触れないでください。)

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.