プロキシとファイアウォール ルール

このページでは、Anthos clusters on VMware(GKE On-Prem)のプロキシとファイアウォール ルールの設定方法について説明します。

プロキシのアドレスを許可リストに登録する

組織で送信トラフィックがプロキシ サーバーを通過する必要がある場合は、プロキシ サーバーで次のアドレスを許可リストに登録します。googleapis.com ではなく、www.googleapis.com が必要です。

  • dl.google.com(Google Cloud SDK インストーラで必要)
  • gcr.io
  • www.googleapis.com
  • accounts.google.com
  • cloudresourcemanager.googleapis.com
  • container.googleapis.com
  • gkeconnect.googleapis.com
  • gkehub.googleapis.com
  • iam.googleapis.com
  • iamcredentials.googleapis.com
  • logging.googleapis.com
  • monitoring.googleapis.com
  • oauth2.googleapis.com
  • securetoken.googleapis.com
  • servicecontrol.googleapis.com
  • serviceusage.googleapis.com
  • storage.googleapis.com
  • sts.googleapis.com
  • checkpoint-api.hashicorp.com
  • releases.hashicorp.com(省略可。Terraform を使用して管理ワークステーションを作成する場合のみ必要です)。

gkeadm を使用して Anthos clusters on VMware をインストールする場合、上述の Hashicorp URL を許可する必要はありません。

また、vCenter Server に外部 IP アドレスがある場合は、プロキシ サーバーでそのアドレスも許可リストに登録します。

ファイアウォール ルール

ファイアウォール ルールを設定して、次のトラフィックを許可します。

管理クラスタで使用可能な IP アドレスのファイアウォール ルール

管理クラスタで使用可能な IP アドレスは、IP ブロック ファイルに一覧表示されます。これらの IP アドレスは、管理クラスタのコントロールプレーン ノード、管理クラスタのアドオン ノード、ユーザー クラスタのコントロールプレーン ノードに使用されます。管理クラスタの IP アドレスは特定のノードに割り振られていないため、次の表に一覧表示されているすべてのファイアウォール ルールが、管理クラスタで使用可能なすべての IP アドレスに適用されている必要があります。

移行元

送信元ポート

終了日

ポート

プロトコル

説明

管理クラスタのコントロールプレーン ノード

1024 - 65535

vCenter Server API

443

TCP / https

クラスタのサイズ変更

管理クラスタのアドオンノード

1024 - 65535

vCenter Server API

443

TCP / https

ユーザー クラスタのライフサイクル管理

ユーザー クラスタのコントロールプレーン ノード

1024 - 65535

vCenter Server API

443

TCP / https

クラスタのサイズ変更

管理クラスタのアドオンノードで実行される Cloud Logging Collector

1024 - 65535

oauth2.googleapis.com
logging.googleapis.com
stackdriver.googleapis.com
servicecontrol.googleapis.com
storage.googleapis.com
www.googleapis.com

443

TCP / https

管理クラスタのアドオンノードで実行される Cloud Monitoring Collector

1024 - 65535

oauth2.googleapis.com
monitoring.googleapis.com
stackdriver.googleapis.com
servicecontrol.googleapis.com

443

TCP / https

管理クラスタのコントロールプレーン ノード

1024 - 65535

F5 BIG-IP API

443

TCP / https

ユーザー クラスタのコントロールプレーン ノード

1024 - 65535

F5 BIG-IP API

443

TCP / https

管理クラスタのコントロールプレーン ノード

1024 - 65535

オンプレミスのローカル Docker レジストリ

レジストリにより異なる

TCP / https

Anthos clusters on VMware が gcr.io ではなく、ローカルの非公開 Docker レジストリを使用するように構成されている場合は必須です。

ユーザー クラスタのコントロールプレーン ノード

1024 - 65535

オンプレミスのローカル Docker レジストリ

レジストリにより異なる

TCP / https

Anthos clusters on VMware が gcr.io ではなく、ローカルの非公開 Docker レジストリを使用するように構成されている場合は必須です。

管理クラスタのコントロールプレーン ノード

1024 - 65535

gcr.io
oauth2.googleapis.com
storage.googleapis.com
管理クラスタで有効化されたサービスに必要なすべての *.googleapis.com の URL

443

TCP / https

公開 Docker レジストリからイメージをダウンロードする。

非公開 Docker レジストリを使用する場合は不要。

ユーザー クラスタのコントロールプレーン ノード

1024 - 65535

gcr.io
oauth2.googleapis.com
storage.googleapis.com
管理クラスタで有効化されたサービスに必要なすべての *.googleapis.com の URL
443

TCP / https

公開 Docker レジストリからイメージをダウンロードする。

非公開 Docker レジストリを使用する場合は不要。

管理クラスタのワーカーノード

1024 - 65535

管理クラスタのワーカーノード

すべて

179 - bgp

443 - https

5473 - Calico/Typha

9443 - Envoy 指標

10250 - kubelet ノードポート

すべてのワーカーノードは、ファイアウォールなしでレイヤ 2 で隣接している必要がある。

管理クラスタノード

1024 - 65535

管理クラスタの Pod CIDR

すべて

任意

外部トラフィックは最初のノードで SNAT され、Pod IP に送信される。

管理クラスタのワーカーノード

すべて

ユーザー クラスタノード

22

ssh

SSH トンネルを介した API サーバーから kubelet への通信。

管理クラスタノード

1024 - 65535

管理クラスタの Seesaw LB VM の IP

20255、20257

TCP/http

LB 構成の push と指標のモニタリング。バンドルされた LB Seesaw を使用する場合にのみ必要。

ユーザー クラスタノードのファイアウォール ルール

ユーザー クラスタノードでは、IP アドレスが IP ブロック ファイルに一覧表示されます。

管理クラスタノードと同様に、どのノードにどの IP アドレスが使用されるかはわかりません。したがって、ユーザー クラスタノードのすべてのルールが、各ユーザー クラスタノードに適用されます。

移行元

送信元ポート

終了日

ポート

プロトコル

説明

ユーザー クラスタのワーカーノード

すべて

gcr.io
oauth2.googleapis.com
storage.googleapis.com
このクラスタで有効化されたサービスに必要な *.googleapis.com の URL

443

TCP / https

公開 Docker レジストリからイメージをダウンロードする。

非公開 Docker レジストリを使用する場合は不要。

ユーザー クラスタのワーカーノード

すべて

F5 BIG-IP API

443

TCP / https

ユーザー クラスタのワーカーノード

すべて

管理クラスタで実行される pushprox サーバーの VIP。

8443

TCP / https

Prometheus のトラフィック。

ユーザー クラスタのワーカーノード

すべて

ユーザー クラスタのワーカーノード

すべて

22 - ssh

179 - bgp

443 - https

5473 - calico-typha

9443 - Envoy 指標

10250 - kubelet ノードポート

すべてのワーカーノードは、ファイアウォールなしでレイヤ 2 で隣接している必要がある。

ユーザー クラスタノード

1024 - 65535

ユーザー クラスタの Pod CIDR

すべて

任意

外部トラフィックは最初のノードで SNAT され、Pod IP に送信される。

ランダムなユーザー クラスタのワーカーノードで実行される Cloud Logging Collector。

1024 - 65535

oauth2.googleapis.com
logging.googleapis.com
stackdriver.googleapis.com
servicecontrol.googleapis.com
www.googleapis.com

443

TCP / https

ランダムなユーザー クラスタのワーカーノードで実行される Connect Agent。

1024 - 65535

cloudresourcemanager.googleapis.com
gkeconnect.googleapis.com
gkehub.googleapis.com
www.googleapis.com
iam.googleapis.com
iamcredentials.googleapis.com
oauth2.googleapis.com
securetoken.googleapis.com
s.googleapis.com
accounts.google.com

443

TCP / https

トラフィックを接続する。

ランダムなユーザー クラスタのワーカーノードで実行される Cloud Monitoring Collector。

1024 - 65535

oauth2.googleapis.com
Monitoring.googleapis.com
stackdriver.googleapis.com
servicecontrol.googleapis.com

443

TCP / https

ユーザー クラスタノード

1024 - 65535

ユーザー クラスタの Seesaw LB VM の IP

20255、20257

TCP/http

LB 構成の push と指標のモニタリング。バンドルされた LB Seesaw を使用する場合にのみ必要。

残りのコンポーネントのファイアウォール ルール

これらのルールは、管理クラスタとユーザー クラスタノードの表に記載されていないその他すべてのコンポーネントに適用されます。

移行元

送信元ポート

終了日

ポート

プロトコル

説明

管理クラスタの Pod CIDR

1024 - 65535

管理クラスタの Pod CIDR

すべて

任意

Pod 間のトラフィックは、Pod CIDR 内の送信元 IP と宛先 IP を使用して、直接 L2 転送を行う。

管理クラスタの Pod CIDR

1024 - 65535

管理クラスタノード

すべて

任意

外部トラフィックの戻りトラフィック。

ユーザー クラスタの Pod CIDR

1024 - 65535

ユーザー クラスタの Pod CIDR

すべて

任意

Pod 間のトラフィックは、Pod CIDR 内の送信元 IP と宛先 IP を使用して、直接 L2 転送を行う。

ユーザー クラスタの Pod CIDR

1024 - 65535

ユーザー クラスタノード

すべて

任意

外部トラフィックの戻りトラフィック。

クライアントとアプリケーション エンドユーザー

すべて

Istio Ingress の VIP

80、443

TCP

ユーザー クラスタの Ingress サービスへのエンドユーザー トラフィック。

管理ワークステーションをデプロイするための踏み台サーバー

エフェメラル ポート範囲

checkpoint-api.hashicorp.com
releases.hashicorp.com
vCenter Server API
ターゲット クラスタ内のホストの ESXi VMkernel(mgt)IP

443

TCP / https

管理ワークステーションの Terraform デプロイ。(省略可。Terraform を使用して管理ワークステーションを作成する場合のみ必要です)。
`cat /proc/sys/net/ipv4/ip_local_port_range` からエフェメラル ポート範囲を確認します。

管理ワークステーション

32768- 60999

gcr.io
cloudresourcemanager.googleapis.com
oauth2.googleapis.com
storage.googleapis.com
このクラスタで有効化されたサービスに必要なすべての *.googleapis.com の URL

443

TCP / https

公開 Docker レジストリからイメージをダウンロードする。

管理ワークステーション

32768- 60999

gcr.io
cloudresourcemanager.googleapis.com
iam.googleapis.com
oauth2.googleapis.com
serviceusage.googleapis.com
storage.googleapis.com
管理者またはユーザー クラスタに対して有効化されたサービスに必要なすべての *.googleapis.com の URL

443

TCP / https

プリフライト チェック(検証)。

管理ワークステーション

32768- 60999

vCenter Server API

F5 BIG-IP API

443

TCP / https

クラスタのブートストラップ

管理ワークステーション

32768- 60999

ターゲット クラスタ内のホストの ESXi VMkernel(mgt)IP

443

TCP / https

管理ワークステーションは、ESXi ホストを介して、OVA をデータストアにアップロードする。

管理ワークステーション

32768- 60999

管理クラスタのコントロールプレーン VM のノード IP

443

TCP / https

クラスタのブートストラップ

管理ワークステーション

32768- 60999

管理クラスタの Kubernetes API サーバーの VIP

ユーザー クラスタの Kubernetes API サーバーの VIP

443

TCP / https

クラスタのブートストラップ

ユーザー クラスタの削除

管理ワークステーション

32768- 60999

管理クラスタのコントロールプレーン ノードとワーカーノード

443

TCP / https

クラスタのブートストラップ

コントロール プレーンのアップグレード

管理ワークステーション

32768- 60999

すべての管理クラスタノードとすべてのユーザー クラスタノード

443

TCP / https

gkectl check-config コマンドの一部としてのネットワーク検証。

管理ワークステーション

32768- 60999

管理クラスタの Istio Ingress の VIP

ユーザー クラスタの Istio Ingress の VIP

443

TCP / https

gkectl check-config コマンドの一部としてのネットワーク検証。

管理ワークステーション

32768- 60999

管理クラスタとユーザー クラスタの両方の Seesaw LB VM の IP

管理クラスタとユーザー クラスタの両方の Seesaw LB VIP

20256、20258

TCP / http / gRPC

LB のヘルスチェック。バンドルされた LB Seesaw を使用する場合にのみ必要。

管理ワークステーション

32768- 60999

クラスタ コントロール プレーンのノード IP

22

TCP

管理ワークステーションから管理クラスタ コントロール プレーンへの SSH アクセスが必要な場合は必須。

LB VM の IP

32768- 60999

対応するクラスタのノード IP

10256: ノードのヘルスチェック
30000 - 32767: healthCheckNodePort

TCP/http

ノードのヘルスチェック。healthCheckNodePort は、externalTrafficPolicy が Local に設定されているサービス用。バンドルされた LB Seesaw を使用する場合にのみ必要。

F5 の Self-IP

1024 - 65535

すべての管理クラスタノードとすべてのユーザー クラスタノード

30000~32767

任意

F5 BIG-IP が仮想サーバー VIP を介して Kubernetes クラスタノードのノードポートに負荷分散するデータプレーン トラフィックの場合。

通常、F5 Self-IP は Kubernetes クラスタノードと同じネットワーク / サブネット上にあります。