K8S使用を取得

1.kubectlコマンドは、クライアントツールapiserverで、あなたが達成することができ、検索リソースノードを変更するには追加および削除を

#は、ノード情報を説明して
ノードK8S-node1のDESCRIBE kubectl 
クラスタ情報#ビューのK8Sを
kubectlクラスタ・情報
#はPODの作成と実行
#の--imageを:イメージ名を公式サイトのドッキングウィンドウ表し
#の--replicasを:作成を表しており、いくつかのポッドを起動し、デフォルトでは、書くことではない
、私は実際に実行しないことを、このパラメータを削除POD開始します:#1 --dry-実行を
kubectl RUN = nginxのnginxの-展開--image:1.14 -アルパイン--port = 80 = 1 --replicasを
kubectl実行--generator =展開/ apps.v1#が強く、将来にとに対向している。このパラメータを削除します、あなたが使用することができます。
kubectl --generator RUN = RUN-POD / v1またはkubectl INSTEAD作成
展開GET kubectl 
#1/1は、このことを示しますコンテナ内のポッド、および準備ができている、再起動します= 0が再起動されていない示し
ポッドをGET kubectl 
PODSワイド-o GET kubectl  
NAMEのAGEをSTATUS READY IPノードを再起動します
1/1 0 4h26m 10.244.2.2 K8S-node2でnginxの-展開-84cbfc56b6のランニング-w9n4jを 
#のnginxのは、ノードノード2で実行されている見ることができ、IPアドレスは、ノード2ノードのアドレスを使用して、10.244.2.2であるcni0 
#クラスタ利用可能なアクセスこのアドレスにアクセス外K8Sがされていない
-I 10.244.2.2カール
#はポッドを削除し、コントローラは、ポッド、ポッドは、コントローラはすぐに別の新しい作成されます実行し、削除を管理
kubectlはnginxの-デプロイ-ポッドを削除します84cbfc56b6-w9n4j

2. 公開されたポート

#略語:POD(PO)、サービス(SVC)、replicationcontroller(RC)、展開(展開)、さらにreplicaSet(RS)
という名前の#注意:小文字、数字、文字、または' - '構図は、下線ことができない
に#をコントローラ下のポッドは、私の名前は、nginxのサービスを作成する
ポッドポートをnginxの配備にマップされ#サービスポート(--port)80(--targetポート)ポートは80である
kubectlデプロイメントを露出しますnginx-マイ-nginxの--name =展開--port --target-ポート= 80 = 80 = --protocol TCP 
kubectl SVCのGET 
NAMEにCLUSTERをTYPE-EXTERNAL AGEのIP-IP PORT(S)
Kubernetes CLUSTERIP 10.96.0.1 <なし> 443 / TCP 7d11h 
マイ-nginxのCLUSTERIP 10.111.172.213 <なし> 80 / TCP 31S 

ポッドのそれぞれに対応する#iptablesの-サービスは、アクセスルールを生成、クラスタのIPアドレスとポートを関連付けるには終了タグセレクタ予定されている
私の-nginxのSVC説明kubectl 
名前:私の-nginxの
名前空間:デフォルト
ラベル:RUN =#nginxの-展開ポッドラベルであり、私の-nginxのは、ポッド上にマッピングされます
注釈:<なし> 
セレクター:RUN = nginxの-配布
タイプ:CLUSTERIP 
IP:10.111.172.213 
ポート:<解除> 80 / TCP 
TARGETPORT:80 / TCP 
エンドポイント:10.244.2.2:80#エンドポイント:ポッドに特有
なし:セッションアフィニティ
イベント:<なし> 
各ポッドのラベルの#ビュー
kubectl GETポッド--show-ラベル

3. DNS解決

#corednsを参照してください
ワイドkubectl GET PODS KUBE -n -o-システムを| grepをcoredns 
kubectl GET SVC -n-システムKUBE 
NAME CLUSTER TYPE-AGEの外部IP-IP PORT(S)
KUBE-DNS CLUSTERIP 10.96.0.10 <どれも> 53がありません/ UDP、53 / TCP 7d16h 
のyum -yバインド-utilsのインストール
、busyboxのから#を完全なドメイン名を見つける
--restart kubectlのRUNクライアントを--image busyboxの--replicas = = =決して1 -it 
場合は、コマンドプロンプトが表示されません、押してみてくださいを入力します。
/ CAT#1の/etc/resolv.conf 
ネームサーバ10.96.0.10 
検索default.svc.cluster.local svc.cluster.local cluster.local 
オプションのndotsは:5 
内部使用のクラスタDNS解決#私の-nginxの名前を 
DIGを-t A私-nginx.default.svc.cluster.local @ 10.96.0.10
nginx.default.svc.cluster.local-私の5にA 10.111.172.213 
#サービスので、どんなにポッド変更、SVC「一度作成し、永遠に使用します。」を達成、固定アクセスの入り口ポッドを提供する
だけでbusyboxのでは#をあなたはnginxのアクセスするためのドメイン名を使用することができます
wgetの-Oを-私の- nginxのを-q

4. ダイナミックアップグレード、パラメータを手動でSVCを変更

#展開コントローラはPODがタグセレクタによって管理される
DESCRIBE、展開配備nginxのがkubectl 
#動的レプリカのコピー数変更
V1 = 2 --replicas:kubectlのRUN = MyAppの--image ikubernetes / MyAppの
kubectl GET#モニタ展開-wを終了しないだろう
5つのに部数の#ダイナミックな展開を
--replicas 5 = myappのkubectl規模な展開
#3に減少
kubectlの規模に展開--replicas 3 = myappの
#サービスを作成する
-展開SVC-myappのmyappの--name =を公開kubectl = 80の-port 
busyboxの内部#1 SVC-myappのアクセス、ポーリング結果を見ることができる
のwget -O - -q SVC-のMyApp / hostname.htmlの
#ポッドは、MyAppの名前付き容器でこれを見ることができる
myapp-ポッドをDESCRIBE kubectl 9b4987d5-9sxgs 
#ポッド動的アップグレードバージョンは、第1のコントローラは、myappの名前である、第二ポッドmyappのコントロールコンテナの下であった
kubectlセットの画像展開myappのmyappの= ikubernetes / myappの:V2 
#動的に更新ステータス
kubectl展開状態の展開のMyApp 
のバージョンを指定していない、指定されたバージョンに#ロールバックポッドは、以前のバージョンにロールバックを表す
のV1:kubectl rollOutが使用アンドゥ展開myappの
ルール#iptablesのはサービスで見ることができるとされた
NAT -vnLの-t iptablesの
#が欲しいのポッドクラスタ外のアクセス、タイプ:NodePortにCLUSTERIP 
kubectl編集SVC SVC-MyAppの
SVC GET kubectl 
NAMEにクラスタを入力し、外部AGEのIP-IP PORT(S)
Kubernetes CLUSTERIP 10.96.0.1 TCP 7d17h <なし> 443 / 
SVC-のMyApp NodePort 10.102.101.70 <なし> 80:30515 / TCPの2H

  このとき、ノードのノードSVCは30515をリッスンし、ポートを開く、またはhttp://10.0.0.20:30515/ http://10.0.0.30:30515/を訪問するユーザーが入力したい場合は、nginxのページを取得することができます: NodePort CLUSTERIPに、何が悪かったのか、設定ファイルの最上部には、プロンプトになります

 

参考ブログ:http://blog.itpub.net/28916011/viewspace-2213635/

おすすめ

転載: www.cnblogs.com/fawaikuangtu123/p/11030137.html