GKE ノードイメージ選択の確認

ノードイメージをワークロードの OS 要件とサポート方針に合わせて選んでください。

説明

Container-Optimized OS(COS)は、コンテナー向けに最小構成とセキュリティ強化を施したノード環境です。GKE は他のイメージもサポートしており、COS を使わないだけで脆弱とは判断できません。Windows ワークロードには Windows ノードが必要です。

サポート期間、パッチ状況、必要な OS 機能を併せて確認してください。不要なホストパッケージや不統一な更新管理はリスクを増やす場合があります。

想定される影響

  • 更新が欠けると OS の脆弱性が残る場合があります。
  • 互換性のないイメージへの交換で、ワークロードが起動しなかったり中断したりする場合があります。

対処方法

  • config.image_type にワークロードと GKE バージョンがサポートするイメージを指定してください。追加の OS 機能が不要な Linux ワークロードでは COS_CONTAINERD を検討してください。
  • 変更前に互換性をテストし、ノード交換時の容量と中断への対応を計画してください。ノードの更新も継続して管理してください。

例

異なる OS 向けのタスクの抜粋です。Windows ワークロードをそのまま Linux ノードに移すことはできません。実際の cluster 結果オブジェクト、プロジェクト、サービスアカウントの JSON ファイルを用意してください。

変更前

yaml
- name: 노드 풀 생성
  google.cloud.gcp_container_node_pool:
    name: my-pool
    initial_node_count: 4
    cluster: "{{ cluster }}"
    location: us-central1-a
    project: test_project
    auth_kind: serviceaccount
    service_account_file: /tmp/auth.pem
    state: present
    config:
      image_type: WINDOWS_LTSC_CONTAINERD

変更後

yaml
- name: 노드 풀 생성
  google.cloud.gcp_container_node_pool:
    name: my-pool
    initial_node_count: 4
    cluster: "{{ cluster }}"
    location: us-central1-a
    project: test_project
    auth_kind: serviceaccount
    service_account_file: /tmp/auth.pem
    state: present
    config:
      image_type: COS_CONTAINERD

補足:

  • 変更前: Windows with containerd を選びます。Windows ワークロードには適切な構成になり得ます。
  • 変更後: Linux 用の COS with containerd を選びます。ワークロードの互換性を確認せずに適用する代替設定ではありません。

参考資料