8
8
9
9
<!-- overview -->
10
10
11
- 本ドキュメントは、APIサーバーとKubernetesクラスター間の通信経路をまとめたものです 。
11
+ 本ドキュメントは、{{< glossary_tooltip term_id="kube-apiserver" text="APIサーバー" >}}とKubernetes{{< glossary_tooltip text="クラスター" term_id="cluster" length="all" >}}間の通信経路をまとめたものです 。
12
12
その目的は、信頼できないネットワーク上(またはクラウドプロバイダー上の完全なパブリックIP)でクラスターが実行できるよう、ユーザーがインストールをカスタマイズしてネットワーク構成を強固にできるようにすることです。
13
13
14
14
<!-- body -->
@@ -18,10 +18,10 @@ aliases:
18
18
Kubernetesには「ハブアンドスポーク」というAPIパターンがあります。ノード(またはノードが実行するPod)からのすべてのAPIの使用は、APIサーバーで終了します。他のコントロールプレーンコンポーネントは、どれもリモートサービスを公開するようには設計されていません。APIサーバーは、1つ以上の形式のクライアント[ 認証] ( /ja/docs/reference/access-authn-authz/authentication/ ) が有効になっている状態で、セキュアなHTTPSポート(通常は443)でリモート接続をリッスンするように設定されています。
19
19
特に[ 匿名リクエスト] ( /ja/docs/reference/access-authn-authz/authentication/#anonymous-requests ) や[ サービスアカウントトークン] ( /ja/docs/reference/access-authn-authz/authentication/#service-account-token ) が許可されている場合は、1つ以上の[ 認可] ( /docs/reference/access-authn-authz/authorization/ ) 形式を有効にする必要があります。
20
20
21
- ノードは、有効なクライアント認証情報とともに、APIサーバーに安全に接続できるように、クラスターのパブリックルート証明書でプロビジョニングされる必要があります 。適切なやり方は、kubeletに提供されるクライアント認証情報が、クライアント証明書の形式であることです。kubeletクライアント証明書の自動プロビジョニングについては、[ kubelet TLSブートストラップ] ( /docs/reference/command-line-tools-reference/kubelet-tls-bootstrapping/ ) を参照してください。
21
+ ノードは、有効なクライアント認証情報とともに、APIサーバーに安全に接続できるように、クラスターのパブリックルート{{< glossary_tooltip text="証明書" term_id="certificate" >}}でプロビジョニングされる必要があります 。適切なやり方は、kubeletに提供されるクライアント認証情報が、クライアント証明書の形式であることです。kubeletクライアント証明書の自動プロビジョニングについては、[ kubelet TLSブートストラップ] ( /docs/reference/command-line-tools-reference/kubelet-tls-bootstrapping/ ) を参照してください。
22
22
23
- APIサーバーに接続したいPodは 、サービスアカウントを利用することで、安全に接続することができます。これにより、Podのインスタンス化時に、Kubernetesはパブリックルート証明書と有効なBearerトークンを自動的にPodに挿入します。
24
- ` kubernetes ` サービス(` デフォルト ` の名前空間)は、APIサーバー上のHTTPSエンドポイントに(` kube-proxy ` 経由で)リダイレクトされる仮想IPアドレスで構成されます。
23
+ APIサーバーに接続したい{{< glossary_tooltip text="Pod" term_id="pod" >}}は 、サービスアカウントを利用することで、安全に接続することができます。これにより、Podのインスタンス化時に、Kubernetesはパブリックルート証明書と有効なBearerトークンを自動的にPodに挿入します。
24
+ ` kubernetes ` サービス(` デフォルト ` の名前空間)は、APIサーバー上のHTTPSエンドポイントに(` {{< glossary_tooltip text=" kube-proxy" term_id="kube-proxy" >}} ` 経由で)リダイレクトされる仮想IPアドレスで構成されます。
25
25
26
26
また、コントロールプレーンのコンポーネントは、セキュアなポートを介してAPIサーバーとも通信します。
27
27
@@ -30,7 +30,7 @@ APIサーバーに接続したいPodは、サービスアカウントを利用
30
30
## コントロールプレーンからノードへの通信 {#control-plane-to-node}
31
31
32
32
コントロールプレーン(APIサーバー)からノードへの主要な通信経路は2つあります。
33
- 1つ目は、APIサーバーからクラスター内の各ノードで実行されるkubeletプロセスへの通信経路です 。
33
+ 1つ目は、APIサーバーからクラスター内の各ノードで実行される{{< glossary_tooltip text="kubelet" term_id="kubelet" >}}プロセスへの通信経路です 。
34
34
2つ目は、APIサーバーの _ プロキシー_ 機能を介した、APIサーバーから任意のノード、Pod、またはサービスへの通信経路です。
35
35
36
36
### APIサーバーからkubeletへの通信 {#api-server-to-kubelet}
@@ -56,7 +56,7 @@ APIサーバーからノード、Pod、またはサービスへの接続は、
56
56
57
57
### SSHトンネル {#ssh-tunnels}
58
58
59
- Kubernetesは、コントロールプレーンからノードへの通信経路を保護するために、SSHトンネルをサポートしています 。この構成では、APIサーバーがクラスター内の各ノードへのSSHトンネルを開始(ポート22でリッスンしているSSHサーバーに接続)し、kubelet、ノード、Pod、またはサービス宛てのすべてのトラフィックをトンネル経由で渡します。
59
+ Kubernetesは、コントロールプレーンからノードへの通信経路を保護するために、[ SSHトンネル ] ( https://www.ssh.com/academy/ssh/tunneling ) をサポートしています 。この構成では、APIサーバーがクラスター内の各ノードへのSSHトンネルを開始(ポート22でリッスンしているSSHサーバーに接続)し、kubelet、ノード、Pod、またはサービス宛てのすべてのトラフィックをトンネル経由で渡します。
60
60
このトンネルにより、ノードが稼働するネットワークの外部にトラフィックが公開されないようになります。
61
61
62
62
{{< note >}}
@@ -73,3 +73,12 @@ Konnectivityサービスを有効にすると、コントロールプレーン
73
73
74
74
[ Konnectivityサービスのセットアップ] ( /docs/tasks/extend-kubernetes/setup-konnectivity/ ) に従って、クラスターにKonnectivityサービスをセットアップしてください。
75
75
76
+ ## {{% heading "whatsnext" %}}
77
+
78
+ * [ Kubernetesコントロールプレーンコンポーネント] ( /ja/docs/concepts/overview/components/#control-plane-components ) について読む。
79
+ * [ HubsとSpokeモデル] ( https://book.kubebuilder.io/multiversion-tutorial/conversion-concepts.html#hubs-spokes-and-other-wheel-metaphors ) について学習する。
80
+ * [ クラスターのセキュリティ] ( /ja/docs/tasks/administer-cluster/securing-a-cluster/ ) について学習する。
81
+ * [ Kubernetes API] ( /ja/docs/concepts/overview/kubernetes-api/ ) について学習する。
82
+ * [ Konnectivityサービスを設定する] ( /docs/tasks/extend-kubernetes/setup-konnectivity/ )
83
+ * [ Port Forwardingを使用してクラスター内のアプリケーションにアクセスする] ( /docs/tasks/access-application-cluster/port-forward-access-application-cluster/ )
84
+ * [ Podログを調べます] ( /ja/docs/tasks/debug/debug-application/debug-running-pod/#examine-pod-logs ) と[ kubectl port-forwardを使用します] ( /docs/tasks/access-application-cluster/port-forward-access-application-cluster/#forward-a-local-port-to-a-port-on-the-pod ) について学習する。
0 commit comments