1. suzukihi724

    No comment

    suzukihi724
Changes in body
Source | HTML | Preview
@@ -1,138 +1,141 @@
よく使うkubernetesのkuberctlコマンド一覧
##1) podを作成
`kubectl create -f [Pod定義ファイル]`
##2) rc(Replication Controller)を作成
`kubectl create -f [rc定義ファイル]`
rcを作成すると、複数のpodを一括管理できる。また、いくつpodを起動するかを規定し、podが停止すると、自動的に規定数のpodにリカバリしてくれる。
##3) Serviceを作成
`kubectl create -f [Service定義ファイル]`
Pod(コンテナ)を外部と通信させる場合はServiceを定義する。Serviceがプロキシとなり、例えばホストアドレス:Portへのアクセスを、Podの接続先内部アドレス:Portに変換し、相互接続が可能となる。
##4) pod一覧を確認
`kubectl get pod`
```
$ kubectl get pod
NAME READY STATUS RESTARTS AGE
jenkins-lf3br 1/1 Running 0 3d
```
STATUS
Running: 稼働中
Pending: Pod起動待ち
ImageNotReady: dockerイメージ取得中
PullImageError: dockerイメージ取得失敗
CreatingContainer: Pod(コンテナ)起動中
Error: エラー
etc.
-`kubectl get pods -o wide`
-とすると、各Podの実行ホストIPも表示できる
+`-o wide`
+オプションで、各Podの実行ホストIPも表示できる
+
+`-o yaml [pod名]`
+オプションで、指定podのyamlを確認できる
+
`-L [ラベル名]`
オプションで、指定ラベルキーと値も出力
`-l [ラベルフィルタ条件]`
オプションで、指定ラベル条件でフィルタ可能
##5) rc(Replication Controller)一覧を確認
`kubectl get rc`
##6) svc(Service)一覧を確認
`kubectl get svc`
##7) podを削除
`kubectl delete pod [Pod名]`
または
`kubectl delete -f [作成時のPod定義ファイル]`
強制的にすぐ削除したい場合は以下オプション
`—grace-period 0 —force`
##8) rc(Replication Controller)を削除
`kubectl delete rc [rc名]`
または
`kubectl delete -f [作成時のrc定義ファイル]`
※rcで作成されたpodを個別に削除しても、rcがpodを自動再生成するので、rc自体を削除する必要が有る
##9) svc(Service)を削除
`kubectl delete svc [svc名]`
または
`kubectl delete -f [作成時のsvc定義ファイル]`
##10) ログの確認
`kubectl logs [pod名]`
##11) pod/rc/svcの詳細を確認する
`kubectl describe [Pod名/rc名/svc名]`
##12) 起動したPodにログインする
`kubectl exec -it [コンテナ名] /bin/bash`
ログオフする時はexitコマンド
各種オプション
-i:コンテナへ標準入力(STDIN)を渡す
-t:標準入力(STDIN)をTTY(コンソール入力)とする
##13) Podの環境変数を確認
`kubectl exec [Pod名] env`
##14) Podのマウントされたボリュームを確認
`kubectl exec [Pod名] ls /[Path]`
##15) Pod(コンテナ)上でコマンドを実行
`kubectl exec [Pod名] [コマンド]`
例)
```
$kubectl get pod
NAME READY STATUS RESTARTS AGE
nginx 1/1 Running 0 6m
$kubectl exec nginx echo "Hello"
Hello
```
##16) rc: コンテナ(Pod)の複製数を変更(Scale)する
`kubectl scale rc [rc名] --replicas=[数]`
現状のレプリカ数が1で、上記で3を指定すると、新たに2個追加される