- node の中に pod がある
- deployment
- アプリケーションについての情報を持っている
- service
- deployment が外からアクセスを受けるためのワンクッション
概要を確認する
- nodes
- pods
- deployments
- services
オプションで変化させられる
-o
- 表示の仕方を変える
- wide
- もう少したくさん情報がもらえる
- go-template
- go のテンプレートスタイル
- json
- json
- go-template, json は
--template
からそれぞれのスタイルを書いて必要な情報だけフィルターできる
-l
- ラベルによるフィルタリング
get より更に細かい情報を取得することができる
- nodes
- pods
- services
- deployments
それぞれの後に個別の名前を渡すことでそれについてだけの細かい情報も取れる
ログを見る
pod 名を渡して実行する
pod 名を渡してコマンドを実行する。
bash なんかで入ってみることもできる
- deployment を作成する
- run の後に名前を渡す
--image
- image ファイルから読み込む
--port
- コンテナが使う port 番号
- pod への proxy を立てる
- service を作成する
- deployment 名が必要
--type
- service の type, 4種類ある
--port
- deployment が持ってる port 番号
- これと service が持つ port を紐付ける
- service SERVICE_NAME だと service を削除する
- pod とかも消せる
- pod をスケールさせる
kubectl scale deployments/kubernetes-bootcamp --replicas=4
- deployment 名が必要
--replicas
で必要な pod 数を指定する
kubectl set image deployments/kubernetes-bootcamp kubernetes-bootcamp=jocatalin/kubernetes-bootcamp:v2
set image deployments/DEPLOYMENT_NAME CONTAINER_NAME=NEW_IMAGE_URL
- この状態ではまだ完全にバージョンアップが完了していない
- 新しいバージョンの pod と古い pod が存在している
- アクセスは新しい方に流れるようになっている
- status
- 更新を確定させる
- terminate を削除するのかもしれない
- undo
- set image などを取り消してバージョンをもとに戻す