ポッドサービスの訪問
各ポッドは、コントローラーポッド障害のある置換が、新たに新しいIPアドレスに割り当てられた新しいポッド、ポッドで発生した場合に、自身のIPアドレスを持って、例えば:ポッドのグループは、HTTPサービスを提供し、彼らのIPは、おそらく変更することです、その後、クライアントは、どのように私たちのために、サービスがないアクセス、サービスを検索することができます。ラベルによる選択に固有の論理的ポッドのグループ、に代わってサービスが、サービスは、独自のIPを持っており、IPは同じですが、クライアントのみがアクセスサービスIPに関係なく、バックエンドポッド変化の、顧客に必要クライアントのアクセスは、確立と維持サービスやポッドのマッピングを担当するK8Sを任意の影響を与えることはありません。
サービスの作成1.
サンプルファイルを作成します。①
apiVersion:拡張/ v1beta1 種類:展開の メタデータ: 名前:httpdの スペック: レプリカ:3 テンプレート: メタデータ: ラベル: アプリ:httpdの #Service将会用这个ラベル来挑选ポッド 仕様: コンテナ: - 名前:httpdの 画像:httpdの ポート: - containerPort:80
Aからhttpdの展開アプリケーションを作成②
[ルート@ K8S-ノード1〜]#kubectl適用- httpd.yaml fを deployment.extensions " httpdの" 作成 [ルート@ K8S -node1〜]#kubectl GET -ポッドO広い NAME READY STATUSに再起動AGE IP NODE のhttpd -fcdb8b4d8-bzsq8 1 / 1 実行 0 2メートル 10.2。72.180 192.168。56.12 HTTPD -fcdb8b4d8-k5ds9 1 / 1 実行 0 2メートルを 10.2。72.182 192.168。56.12 HTTPD -fcdb8b4d8-ks4qq 1 / 1 実行 0 2メートル 10.2。72.181 192.168。56.12
図ポッドは、それぞれのIPを割り当てられたIPのみアクセスすることができ、容器K8Sクラスタノード
[ルート@ K8S-ノード2〜]#カール10.2。72.180 ます。<html> <body> <H1>これは!</ H1> </ body> </ html>この作品
③サービスのファイルの作成
apiVersion:V1の apiVersionのの#service 種類:サービス #リソースを入力 :メタデータ 名:httpdの - SVC #service名の スペック: セレクター: HTTPD:アプリ のポッドサービスのバックエンドとしてのhttpd:アプリ選択されたラベル#ラベルの選択を、 ポート: - プロトコル:TCP TCPプロトコル使用して、ポート80へのサービスポッドポートマッピングの#8080 ポートを:8080 TARGETPORT:80
④作成および表示サービス
[ルート@ K8S-ノード1〜]#kubectl -f httpd-適用svc.yaml サービス" のhttpd-SVC " 作成 [ルート@ K8S -node1〜]#kubectl GET サービス NAME TYPE CLUSTER -IP EXTERNAL- IP PORT(S)AGEを httpdの -svc CLUSTERIP 10.1。168.37 <なし> 8080 / TCP 7S kubernetes CLUSTERIP 10.1。0.1 <なし> 443 / TCP 8D
IP、ポッドはIPの後端を介してアクセスすることができ、クラスタに割り当てられたのhttpd-SVC
[ルート@ K8S-ノード2〜]#カール10.1。168.37:8080 <HTML> <BODY> <H1>これは</ H1> </ body> </ html>この作品!
ポッドとHTTPD-SVCのマッピングを確認してください⑤
[ルート@ K8S-ノード1〜]#は、サービスhttpd-を記述kubectl SVC 名:httpdの - SVC 名前空間: デフォルトの ラベル: <なし> 注釈:kubectl.kubernetes.io /最後の適用-設定= { " apiVersion ":" V1 "、" 種類":" サービス"、" メタデータ":{ " 注釈":{}、" 名前":"httpdの-SVC 」、" 名前空間":" デフォルト" }、" スペック":{ " ポート":[{ " ポート":8080、" プロトコル":" TC ... セレクター:アプリ= httpdの 種類:CLUSTERIP IP: 10.1。168.37 ポート: <解除> 8080 / TCP TargetPort: 80 / TCP エンドポイント: 10。2 。72.180:80、10.2。72.181:80、10.2。72.182:80 セッションアフィニティ:なし イベント: <なし>
クラスタのIPサービスは、iptablesのでポッドにマッピングされています