6.16. 静的 IP アドレスを使用したマシンのスケーリング
静的 IP アドレスを持つノードを実行するようにクラスターをデプロイした後、これらの静的 IP アドレスのいずれかを使用するようにマシンまたはマシンセットのインスタンスをスケーリングできます。
6.16.1. 静的 IP アドレスを使用するようにマシンをスケーリングする リンクのコピーリンクがクリップボードにコピーされました!
追加のマシンセットを拡張して、クラスター上で事前定義された静的 IP アドレスを使用できます。この設定では、マシンリソース YAML ファイルを作成し、このファイルに静的 IP アドレスを定義する必要があります。
前提条件
- 設定された静的 IP アドレスを持つ少なくとも 1 つのノードを実行するクラスターをデプロイしました。
手順
マシンリソースの YAML ファイルを作成し、
network
パラメーターに静的 IP アドレスのネットワーク情報を定義します。network
パラメーターで定義された静的 IP アドレス情報を含むマシンリソース YAML ファイルの例。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- ネットワークインターフェイスのデフォルトゲートウェイの IP アドレス。
- 2
- インストールプログラムがネットワークインターフェイスに渡す IPv4、IPv6、またはその両方の IP アドレスをリストします。どちらの IP ファミリーも、デフォルトネットワークに同じネットワークインターフェイスを使用する必要があります。
- 3
- DNS ネームサーバーをリストします。最大 3 つの DNS ネームサーバーを定義できます。1 つの DNS ネームサーバーが到達不能になった場合に、DNS 解決を利用できるように、複数の DNS ネームサーバーを定義することを検討してください。
ターミナルに次のコマンドを入力して、
machine
のカスタムリソース (CR) を作成します。oc create -f <file_name>.yaml
$ oc create -f <file_name>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
6.16.2. 静的 IP アドレスが設定されたマシンのマシンセットスケーリング リンクのコピーリンクがクリップボードにコピーされました!
マシンセットを使用して、設定された静的 IP アドレスを持つマシンをスケールすることができます。
マシンの静的 IP アドレスを要求するようにマシンセットを設定した後、マシンコントローラーは openshift-machine-api
namespace に IPAddressClaim
リソースを作成します。次に、外部コントローラーは IPAddress
リソースを作成し、静的 IP アドレスを IPAddressClaim
リソースにバインドします。
組織では、さまざまな種類の IP アドレス管理 (IPAM) サービスを使用している場合があります。OpenShift Container Platform で特定の IPAM サービスを有効にする場合は、YAML 定義で IPAddressClaim
リソースを手動で作成し、oc
CLI で次のコマンドを入力してこのリソースに静的 IP アドレスをバインドしないといけない場合があります。
oc create -f <ipaddressclaim_filename>
$ oc create -f <ipaddressclaim_filename>
次に、IPAddressClaim
リソースの例を示します。
マシンコントローラーはマシンを IPAddressClaimed
のステータスで更新し、静的 IP アドレスが IPAddressClaim
リソースに正常にバインドされたことを示します。マシンコントローラーは、バインドされた静的 IP アドレスをそれぞれに含む複数の IPAddressClaim
リソースを持つマシンに同じステータスを適用します。その後、マシンコントローラーは仮想マシンを作成し、マシンの設定の providerSpec
にリストされているすべてのノードに静的 IP アドレスを適用します。
6.16.3. マシンセットを使用して設定された静的 IP アドレスを持つマシンをスケールする リンクのコピーリンクがクリップボードにコピーされました!
マシンセットを使用して、設定された静的 IP アドレスを持つマシンをスケールすることができます。
この手順の例では、マシンセット内のマシンをスケーリングするためのコントローラーの使用方法を示します。
前提条件
- 設定された静的 IP アドレスを持つ少なくとも 1 つのノードを実行するクラスターをデプロイしました。
手順
マシンセットの YAML ファイルの
network.devices.addressesFromPools
スキーマに IP プール情報を指定して、マシンセットを設定します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 静的 IP アドレスまたは静的 IP アドレスの範囲をリストする IP プールを指定します。IP プールは、カスタムリソース定義 (CRD) への参照、または
IPAddressClaims
リソースハンドラーによってサポートされるリソースのいずれかになります。マシンコントローラーは、マシンセットの設定にリストされている静的 IP アドレスにアクセスし、各アドレスを各マシンに割り当てます。 - 2
- ネームサーバーをリストします。Dynamic Host Configuration Protocol (DHCP) ネットワーク設定は静的 IP アドレスをサポートしていないため、静的 IP アドレスを受け取るノードにはネームサーバーを指定する必要があります。
oc
CLI で次のコマンドを入力して、マシンセットをスケールします。oc scale --replicas=2 machineset <machineset> -n openshift-machine-api
$ oc scale --replicas=2 machineset <machineset> -n openshift-machine-api
Copy to Clipboard Copied! Toggle word wrap Toggle overflow または、以下を実行します。
oc edit machineset <machineset> -n openshift-machine-api
$ oc edit machineset <machineset> -n openshift-machine-api
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 各マシンがスケールアップされた後、マシンコントローラーが
IPAddressClaim
リソースを作成します。オプション: 次のコマンドを入力して、
IPAddressClaim
リソースがopenshift-machine-api
namespace に存在することを確認します。oc get ipaddressclaims.ipam.cluster.x-k8s.io -n openshift-machine-api
$ oc get ipaddressclaims.ipam.cluster.x-k8s.io -n openshift-machine-api
Copy to Clipboard Copied! Toggle word wrap Toggle overflow openshift-machine-api
namespace にリストされている 2 つの IP プールをリストするoc
CLI 出力の例NAME POOL NAME POOL KIND cluster-dev-9n5wg-worker-0-m7529-claim-0-0 static-ci-pool IPPool cluster-dev-9n5wg-worker-0-wdqkt-claim-0-0 static-ci-pool IPPool
NAME POOL NAME POOL KIND cluster-dev-9n5wg-worker-0-m7529-claim-0-0 static-ci-pool IPPool cluster-dev-9n5wg-worker-0-wdqkt-claim-0-0 static-ci-pool IPPool
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを入力して、
IPAddress
リソースを作成します。oc create -f ipaddress.yaml
$ oc create -f ipaddress.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次の例は、定義されたネットワーク設定情報と 1 つの静的 IP アドレスが定義された
IPAddress
リソースを示しています。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記デフォルトでは、外部コントローラーはマシンセット内のリソースを自動的にスキャンして、認識可能なアドレスプールタイプを探します。外部コントローラーが
IPAddress
リソースで定義されたkind: IPPool
を見つけると、コントローラーは静的 IP アドレスをIPAddressClaim
リソースにバインドします。IPAddress
リソースへの参照を使用してIPAddressClaim
ステータスを更新します。oc --type=merge patch IPAddressClaim cluster-dev-9n5wg-worker-0-m7529-claim-0-0 -p='{"status":{"addressRef": {"name": "cluster-dev-9n5wg-worker-0-m7529-ipaddress-0-0"}}}' -n openshift-machine-api --subresource=status
$ oc --type=merge patch IPAddressClaim cluster-dev-9n5wg-worker-0-m7529-claim-0-0 -p='{"status":{"addressRef": {"name": "cluster-dev-9n5wg-worker-0-m7529-ipaddress-0-0"}}}' -n openshift-machine-api --subresource=status
Copy to Clipboard Copied! Toggle word wrap Toggle overflow