ノード・プールおよびワーカー・ノード・プロパティの変更

Container Engine for Kubernetes (OKE)を使用して作成した既存のノード・プールおよびワーカー・ノードのプロパティを変更する方法を確認します。

Container Engine for Kubernetesを使用して、既存のKubernetesクラスタ内のノード・プールおよびワーカー・ノードのプロパティを変更できます。

次の変更が可能です:

  • ノード・プールの名前
  • 新しいワーカー・ノードで実行するKubernetesのバージョン
  • ノード・プール内のワーカー・ノードの数、およびそれらを配置する可用性ドメイン、フォルト・ドメインおよびサブネット
  • 新規ワーカー・ノードに使用するイメージ
  • 新規ワーカー・ノードに使用するシェイプ
  • 新規ワーカー・ノードに使用するブート・ボリューム・サイズおよび暗号化設定
  • ワーカー・ノードを終了するときに使用するcordonおよびdrainオプション
  • ワーカー・ノードをホストするインスタンスに使用するcloud-initスクリプト
  • 新規ワーカー・ノードへのアクセスに使用する公開SSHキー

Container Engine for Kubernetesによって作成されたリソースの自動生成された名前(ワーカー・ノードの名前など)は変更しないでください。

重要

ワーカー・ノード・プロパティに対する変更は、新しいワーカー・ノードにのみ適用されます。既存のワーカー・ノードのプロパティは変更できません。変更をすぐに有効にする場合は、必要な設定で新しいノード・プールを作成し、作業を元のノード・プールから新しいノード・プールにシフトすることを検討してください(「プロパティが更新されたワーカー・ノードの作成」を参照)。

また、次についても注意してください:

  • 状況によっては、ノード・プール内で起動する新しいワーカー・ノードのプロパティのみでなく、ノード・プール内のすべてのワーカー・ノードのプロパティを同時に更新することが必要な場合があります。たとえば、すべてのワーカー・ノードを新しいバージョンのOracle Linuxにアップグレードする場合です。この場合、必要なプロパティを持つワーカー・ノードで新しいノード・プールを作成し、kubectl drainコマンドおよびポッド中断予算を使用して、元のノード・プールから新しいノード・プールに作業をシフトできます。詳細は、「プロパティが更新されたワーカー・ノードの作成」を参照してください。
  • ノード・プールの配置構成(可用性ドメイン、フォルト・ドメインおよびワーカー・ノードが配置されているがノード・プールの容量タイプではないサブネット)を変更すると、既存のワーカー・ノードは終了し、新しい場所に新しいワーカー・ノードが作成されます。
  • UpdateNodePool API操作を使用して既存のノード・プールのプロパティを変更する場合は、更新されたノード・プール・プロパティと同期していないワーカー・ノード・プロパティの既知の問題およびその回避策に注意してください。
  • Container Engine for Kubernetesによって作成されたクラスタ内のワーカー・ノードのスケール・ダウンまたは終了には、kubectl delete nodeコマンドを使用しないでください。かわりに、コンソールまたはAPIを使用して、対応するノード・プールのプロパティを変更し、ワーカー・ノードの数を減らします。kubectl delete nodeコマンドでは、必要な状態(ワーカー・ノードの数を含む)を決定するノード・プールのプロパティは変更されません。また、kubectl delete nodeコマンドは、クラスタのetcdキー-値ストアからワーカー・ノードを削除しますが、基礎となるコンピュート・インスタンスは削除しません。

コンソール、CLIおよびAPIを使用して、ノード・プールおよびワーカー・ノードのプロパティを変更できます。詳細は、次を参照してください: