めもめもスマートフォン用の表示で見るめもめもこのブログに記載の内容は個人の見解であり、必ずしも所属組織の立場、戦略、意見を代表するものではありません。設定ファイルの書き方をざっくりまとめました。何の話かというと「アプリケーション環境構築の自動化をまじめに考えてみる(1)」と「アプリケーション環境構築の自動化をまじめに考えてみる(2)」で作った自動VMインストールスクリプト(virt-construct)を使い出したら、本気で便利でいろいろオプションを追加しだしたので、githubにあげてメンテナンスすることにしました。興味のある方は、こちらのgithubリポジトリを参照ください。本記事の説明は、タグ「article03」のバージョンに基づいています。次の条件下での利用を想定しています。・RHEL6.xのKVMホストで、デフォルトの仮想ネットワーク「default」が構成されている。・同ホストでhttpdが動いていて、/var/www/html/ks/以下(ks.cfgの一時的な置き場)が「default」に向けて公開されている。・EPELからpython-argpaseを追加。dryrunそれぞれの意味は、先のBlog記事を参照してください。-cオプションで指定する設定ファイルは、次の3つのセクションを持ちます。[variables]セクション設定ファイル内で利用できる一般的な変数を定義します。このセクションで定義した「name」という変数の値で、他のセクションの「${name}」の部分が置換されます。[virt-install]セクションvirt-installコマンドに与えるオプションです。kickstart用の設定と--noautoconsole(インストール中にコンソールを表示しない)、--noreboot(インストール後はVMを停止する)は自動的に付加されるので、ここには記載しません。[kickstart]セクションキックスタートファイル(ks.cfg)の中身を記載します。このセクション内では、任意の文字「x」に対して「\x」→「x」の置換が行われます。これは、次のような表記をエスケープする際に使用します。設定ファイル固有の変数置換ではなく、bashの変数表記として解釈されるようにするまた、設定ファイル内で環境変数の参照が可能です。[variables]セクションで、最後がアンダースコアで終わる変数名をこんな感じで定義したとします。gluster00.conf[variables]vmname_=gluster0_n_hostname_=gluster0_n_diskpath1_=/var/lib/libvirt/images/gluster0_n_-1.imgdiskpath2_=/var/lib/libvirt/images/gluster0_n_-2.imgip_=192.168.122.1_n_この例の場合、変数「vmname」(「vmname_」ではないので注意)に対して、「_n_」の部分が環境変数「n」に置き換えられた値が代入されます。すると、次のようにスクリプト実行時に環境変数経由で値を突っ込むことができます。同じ構成のVMを連番で複数作る場合などに便利になります。([variables]セクション以外に、直接に環境変数を入れこむことはできません。gluster00.confちなみに、githubに上がっているgluster00.confとdeploy_gluster.shを利用すると、ここに書かれたGlusterFS環境のVMが自動作成できます。probe」する直前の状態まで自動構成されます。)便利!※gluster00.confに入っているurlは、Private環境のリポジトリです。)スターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。