コンテナに ssh する
kubectl exec
からコンテ内で叩くコマンドを指定できる ( docker-compose exec とかと一緒
- tty stdin を有効にした上で shell を実行とすると中に入って作業できたりする
- 実用例
- 別コンテナへの疎通確認を行う
- DBなど外部サービスへの疎通確認を行う
- ローカルホストに対して curl して api 挙動を見る
- ConfigMap がちゃんと反映されてるか確認する
- ...... etc
kubectl exec pod/${pod} -- ls -al
...
...
...
kubectl exec --tty --stdin pod/${pod} -- /bin/sh
# ls
...
...
ホストからクラスタ内のリソースにポートフォワードする
kubectl port-forward
からポートフォワードできる ${hostport}:${remoteport}
- コンテナ内で走らせている api のポートにフォワードして動作を見れる
- 実用例
- Service を立てる前の動作チェック
- ドメイン経由だとなんかエラー起きるけど Deployment pod 単体だとどうなん?のチェック
- ...... etc
# console1
kubectl port-forward pod/${pod} 8888:3000
...
...
# console2
curl <http://localhost:8888>
...
エラーの発生を tail する
kubectl logs -f
あるいは stern
からコンテナの標準出力ログを tail できる
grep
と合わせることでエラーのみとかできる
- 実用例
stern ${service} | grep ERROR
...
...
Pod のマニフェストファイルを見る
kubectl get pod -o yaml
で Pod に当たってるマニフェスト yaml を見れる