This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.6.3. リソースのインフラストラクチャー MachineSet への移行
インフラストラクチャーリソースの一部はデフォルトでクラスターにデプロイされます。それらは、作成したインフラストラクチャー MachineSet に移行できます。
6.3.1. ルーターの移動 リンクのコピーリンクがクリップボードにコピーされました!
ルーター Pod を異なる MachineSet にデプロイできます。デフォルトで、この Pod はワーカーノードに表示されます。
前提条件
- 追加の MachineSet を OpenShift Container Platform クラスターに設定します。
手順
ルーター Operator の
IngressControllerカスタムリソースを表示します。oc get ingresscontroller default -n openshift-ingress-operator -o yaml
$ oc get ingresscontroller default -n openshift-ingress-operator -o yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow コマンド出力は以下のテキストのようになります。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ingresscontrollerリソースを編集し、nodeSelectorをinfraラベルを使用するように変更します。oc edit ingresscontroller default -n openshift-ingress-operator -o yaml
$ oc edit ingresscontroller default -n openshift-ingress-operator -o yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow 以下に示すように、
infraラベルを参照するnodeSelectorスタンザをspecセクションに追加します。spec: nodePlacement: nodeSelector: matchLabels: node-role.kubernetes.io/infra: ""spec: nodePlacement: nodeSelector: matchLabels: node-role.kubernetes.io/infra: ""Copy to Clipboard Copied! Toggle word wrap Toggle overflow ルーター Pod が
infraノードで実行されていることを確認します。ルーター Pod の一覧を表示し、実行中の Pod のノード名をメモします。
oc get pod -n openshift-ingress -o wide
$ oc get pod -n openshift-ingress -o wide NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES router-default-86798b4b5d-bdlvd 1/1 Running 0 28s 10.130.2.4 ip-10-0-217-226.ec2.internal <none> <none> router-default-955d875f4-255g8 0/1 Terminating 0 19h 10.129.2.4 ip-10-0-148-172.ec2.internal <none> <none>Copy to Clipboard Copied! Toggle word wrap Toggle overflow この例では、実行中の Pod は
ip-10-0-217-226.ec2.internalノードにあります。実行中の Pod のノードのステータスを表示します。
oc get node <node_name>
$ oc get node <node_name>1 NAME STATUS ROLES AGE VERSION ip-10-0-217-226.ec2.internal Ready infra,worker 17h v1.14.6+c4799753cCopy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- Pod の一覧より取得した
<node_name>を指定します。
ロールの一覧に
infraが含まれているため、Pod は正しいノードで実行されます。
6.3.2. デフォルトレジストリーの移行 リンクのコピーリンクがクリップボードにコピーされました!
レジストリー Operator を、その Pod を複数の異なるノードにデプロイするように設定します。
前提条件
- 追加の MachineSet を OpenShift Container Platform クラスターに設定します。
手順
config/instanceオブジェクトを表示します。oc get config/cluster -o yaml
$ oc get config/cluster -o yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow 出力は以下のテキストのようになります。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow config/instanceオブジェクトを編集します。oc edit config/cluster
$ oc edit config/clusterCopy to Clipboard Copied! Toggle word wrap Toggle overflow テキストの以下の行を、オブジェクトの
specセクションに追加します。nodeSelector: node-role.kubernetes.io/infra: ""nodeSelector: node-role.kubernetes.io/infra: ""Copy to Clipboard Copied! Toggle word wrap Toggle overflow レジストリー Pod がインフラストラクチャーノードに移動していることを確認します。
以下のコマンドを実行して、レジストリー Pod が置かれているノードを特定します。
oc get pods -o wide -n openshift-image-registry
$ oc get pods -o wide -n openshift-image-registryCopy to Clipboard Copied! Toggle word wrap Toggle overflow ノードに指定したラベルがあることを確認します。
oc describe node <node_name>
$ oc describe node <node_name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow コマンド出力を確認し、
node-role.kubernetes.io/infraがLABELS一覧にあることを確認します。
6.3.3. モニタリングソリューションの移動 リンクのコピーリンクがクリップボードにコピーされました!
デフォルトでは、Prometheus、Grafana、および AlertManager が含まれる Prometheus Cluster Monitoring スタックはクラスターモニタリングをデプロイするためにデプロイされます。これは Cluster Monitoring Operator によって管理されます。このコンポーネント異なるマシンに移行するには、カスタム ConfigMap を作成し、これを適用します。
手順
以下の ConfigMap 定義を
cluster-monitoring-configmap.yamlファイルとして保存します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow この ConfigMap を実行すると、モニタリングスタックのコンポーネントがインフラストラクチャーノードに再デプロイされます。
新規の ConfigMap を適用します。
oc create -f cluster-monitoring-configmap.yaml
$ oc create -f cluster-monitoring-configmap.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow モニタリング Pod が新規マシンに移行することを確認します。
watch 'oc get pod -n openshift-monitoring -o wide'
$ watch 'oc get pod -n openshift-monitoring -o wide'Copy to Clipboard Copied! Toggle word wrap Toggle overflow コンポーネントが
infraノードに移動していない場合は、このコンポーネントを持つ Pod を削除します。oc delete pod -n openshift-monitoring <pod>
$ oc delete pod -n openshift-monitoring <pod>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 削除された Pod からのコンポーネントが
infraノードに再作成されます。
追加リソース
- OpenShift Container Platform コンポーネントの移動についての一般的な情報は、モニタリングについてのドキュメントを参照してください。
6.3.4. クラスターロギングリソースの移動 リンクのコピーリンクがクリップボードにコピーされました!
すべてのクラスターロギングコンポーネント、Elasticsearch、Kibana、および Curator の Pod を異なるノードにデプロイするように Cluster Logging Operator を設定できます。Cluster Logging Operator Pod については、インストールされた場所から移動することはできません。
たとえば、Elasticsearch Pod の CPU、メモリーおよびディスクの要件が高いために、この Pod を別のノードに移動できます。
MachineSet を 6 つ以上のレプリカを使用するように設定する必要があります。
前提条件
- クラスターロギングおよび Elasticsearch がインストールされていること。これらの機能はデフォルトでインストールされません。
手順
openshift-loggingプロジェクトでクラスターロギングのカスタムリソースを編集します。oc edit ClusterLogging instance
$ oc edit ClusterLogging instanceCopy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
検証手順
コンポーネントが移動したことを確認するには、oc get pod -o wide コマンドを使用できます。
以下は例になります。
Kibana Pod を
ip-10-0-147-79.us-east-2.compute.internalノードから移動する必要がある場合、以下を実行します。oc get pod kibana-5b8bdf44f9-ccpq9 -o wide
$ oc get pod kibana-5b8bdf44f9-ccpq9 -o wide NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES kibana-5b8bdf44f9-ccpq9 2/2 Running 0 27s 10.129.2.18 ip-10-0-147-79.us-east-2.compute.internal <none> <none>Copy to Clipboard Copied! Toggle word wrap Toggle overflow Kibana Pod を、専用インフラストラクチャーノードである
ip-10-0-139-48.us-east-2.compute.internalノードに移動する必要がある場合、以下を実行します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow ノードには
node-role.kubernetes.io/infra: ''ラベルがあることに注意してください。Copy to Clipboard Copied! Toggle word wrap Toggle overflow Kibana Pod を移動するには、クラスターロギング CR を編集してノードセレクターを追加します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow CR を保存した後に、現在の Kibana Pod は終了し、新規 Pod がデプロイされます。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 新規 Pod が
ip-10-0-139-48.us-east-2.compute.internalノードに置かれます。oc get pod kibana-7d85dcffc8-bfpfp -o wide
$ oc get pod kibana-7d85dcffc8-bfpfp -o wide NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES kibana-7d85dcffc8-bfpfp 2/2 Running 0 43s 10.131.0.22 ip-10-0-139-48.us-east-2.compute.internal <none> <none>Copy to Clipboard Copied! Toggle word wrap Toggle overflow しばらくすると、元の Kibana Pod が削除されます。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow