1.3.11. inventory.yml ファイル
inventory.yml
ファイルを使用して、インストールする OpenShift Container Platform クラスターの各種の要素を定義し、作成します。これには、Red Hat Enterprise Linux CoreOS(RHCOS) イメージ、仮想マシンテンプレート、ブートストラップマシン、コントロールプレーンノード、ワーカーノードなどの要素が含まれます。また、inventory.yml
を使用してクラスターを破棄します。
以下の inventory.yml
の例は、パラメーターとそれらのデフォルト値を示しています。これらのデフォルト値の量と数は、RHV 環境で実稼働用の OpenShift Container Platform クラスターを実行するための要件を満たしています。
inventory.yml
ファイルの例
--- all: vars: ovirt_cluster: "Default" ocp: assets_dir: "{{ lookup('env', 'ASSETS_DIR') }}" ovirt_config_path: "{{ lookup('env', 'HOME') }}/.ovirt/ovirt-config.yaml" # --- # {op-system} section # --- rhcos: image_url: "https://mirror.openshift.com/pub/openshift-v4/dependencies/rhcos/4.6/latest/rhcos-openstack.x86_64.qcow2.gz" local_cmp_image_path: "/tmp/rhcos.qcow2.gz" local_image_path: "/tmp/rhcos.qcow2" # --- # Profiles section # --- control_plane: cluster: "{{ ovirt_cluster }}" memory: 16GiB sockets: 4 cores: 1 template: rhcos_tpl operating_system: "rhcos_x64" type: high_performance graphical_console: headless_mode: false protocol: - spice - vnc disks: - size: 120GiB name: os interface: virtio_scsi storage_domain: depot_nvme nics: - name: nic1 network: lab profile: lab compute: cluster: "{{ ovirt_cluster }}" memory: 16GiB sockets: 4 cores: 1 template: worker_rhcos_tpl operating_system: "rhcos_x64" type: high_performance graphical_console: headless_mode: false protocol: - spice - vnc disks: - size: 120GiB name: os interface: virtio_scsi storage_domain: depot_nvme nics: - name: nic1 network: lab profile: lab # --- # Virtual machines section # --- vms: - name: "{{ metadata.infraID }}-bootstrap" ocp_type: bootstrap profile: "{{ control_plane }}" type: server - name: "{{ metadata.infraID }}-master0" ocp_type: master profile: "{{ control_plane }}" - name: "{{ metadata.infraID }}-master1" ocp_type: master profile: "{{ control_plane }}" - name: "{{ metadata.infraID }}-master2" ocp_type: master profile: "{{ control_plane }}" - name: "{{ metadata.infraID }}-worker0" ocp_type: worker profile: "{{ compute }}" - name: "{{ metadata.infraID }}-worker1" ocp_type: worker profile: "{{ compute }}" - name: "{{ metadata.infraID }}-worker2" ocp_type: worker profile: "{{ compute }}"
Enter から始まる説明のあるパラメーターの値を入力します。 それ以外の場合は、デフォルト値を使用するか、またはこえを新しい値に置き換えることができます。
General セクション
-
ovirt_cluster
: OpenShift Container Platform クラスターをインストールする既存の RHV クラスターの名前を入力します。 -
ocp.assets_dir
:openshift-install
インストールプログラムが生成するファイルを保存するために作成するディレクトリーのパス。 -
ocp.ovirt_config_path
: インストールプログラムが生成するovirt-config.yaml
ファイルのパス (./wrk/install-config.yaml
など)。このファイルには、Manager の REST API との対話に必要な認証情報が含まれます。
Red Hat Enterprise Linux CoreOS (RHCOS) セクション
-
image_url
: ダウンロード用に指定した RHCOS イメージの URL を入力します。 -
local_cmp_image_path
: 圧縮された RHCOS イメージのローカルダウンロードディレクトリーのパス。 -
local_image_path
: 展開した RHCOS イメージのローカルディレクトリーのパス。
Profiles セクション
このセクションは、2 つのプロファイルで設定されます。
-
control_plane
: ブートストラップおよびコントロールプレーンノードのプロファイル。 -
compute
: コンピュートプレーン内のワーカーノードのプロファイル。
これらのプロファイルには以下のパラメーターが含まれます。パラメーターのデフォルト値は、実稼働クラスターを実行するために必要な最小要件を満たします。これらの値は、ワークロードの要件に応じて増減したり、カスタマイズしたりできます。
-
cluster
: 値は、General セクションのovirt_cluster
からクラスター名を取得します。 -
memory
: 仮想マシンに必要なメモリーの量 (GB)。 -
sockets
: 仮想マシンのソケット数。 -
cores
: 仮想マシンのコア数。 -
template
: 仮想マシンテンプレートの名前。複数のクラスターをインストールする計画があり、これらのクラスターが異なる仕様が含まれるテンプレートを使用する場合には、テンプレート名の先頭にクラスターの ID を付けます。 -
operating_system
: 仮想マシンのゲストオペレーティングシステムのタイプ。oVirt/RHV バージョン 4.4 では、Ignition script
の値を仮想マシンに渡すことができるようにするために、この値をrhcos_x64
にする必要があります。 type
: 仮想マシンのタイプとしてserver
を入力します。重要type
パラメーターの値をhigh_performance
からserver
に変更する必要があります。-
disks
: ディスクの仕様。control_plane
とcompute
ノードには、異なるストレージドメインを設定できます。 -
size
: ディスクの最小サイズ。 -
name
: RHV のターゲットクラスターに接続されたディスクの名前を入力します。 -
interface
: 指定したディスクのインターフェイスタイプを入力します。 -
storage_domain
: 指定したディスクのストレージドメインを入力します。 -
nics
: 仮想マシンが使用するname
およびnetwork
を入力します。仮想ネットワークインターフェイスプロファイルを指定することもできます。デフォルトでは、NIC は oVirt/RHV MAC プールから MAC アドレスを取得します。
仮想マシンセクション
この最後のセクション vms
は、クラスターで作成およびデプロイする予定の仮想マシンを定義します。デフォルトで、実稼働環境用の最小数のコントロールプレーンおよびワーカーノードが提供されます。
vms
には 3 つの必須要素が含まれます。
-
name
: 仮想マシンの名前。この場合、metadata.infraID
は、仮想マシン名の先頭にmetadata.yml
ファイルのインフラストラクチャー ID を付けます。 -
ocp_type
: OCP クラスター内の仮想マシンのロール。使用できる値はbootstrap
、master
、worker
です。 profile
: それぞれの仮想マシンが仕様を継承するプロファイルの名前。この例で使用可能な値はcontrol_plane
またはcompute
です。仮想マシンがプロファイルから継承する値を上書きできます。これを実行するには、
inventory.yml
の仮想マシンに profile 属性の名前を追加し、これに上書きする値を割り当てます。この例を確認するには、直前のinventory.yml
の例のname: "{{ metadata.infraID }}-bootstrap"
仮想マシンを検査します。これには値がserver
のtype
属性があり、この仮想マシンがそれ以外の場合にcontrol_plane
プロファイルから継承するtype
属性の値を上書きします。
メタデータ変数
仮想マシンの場合、metadata.infraID
は、仮想マシンの名前の先頭に、Ignition ファイルのビルド時に作成する metadata.json
ファイルのインフラストラクチャー ID を付けます。
Playbook は以下のコードを使用して、ocp.assets_dir
にある特定のファイルから infraID
を読み取ります。
--- - name: include metadata.json vars include_vars: file: "{{ ocp.assets_dir }}/metadata.json" name: metadata ...