0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ちょっと便利なkubectlスニペット集

Last updated at Posted at 2023-02-21

kubectlをちょっと便利にするスニペット集

kubectlをちょっぴり便利にするためのコマンドを掲載していきます。

kubectl with HEREDOC

コピーアンドペーストで簡易にマニフェストを実行したいなどの用途で利用してください。

cat <<EOF | kubectl apply -f -
ここにYAMLファイルを記述する
複数行記述できます
EOF

注1)ヒアドキュメント終了符号は任意のものを用いることができます。変更する場合は「EOF」(2箇所)を置き換えてください。

curl即時実行(都度Pod破棄)

疎通確認等の目的で単発でcurlを実行したい、だけどPodの管理(破棄)はしたくないといった用途で利用してください。

kubectl run curl --image=curlimages/curl -n <TARGET_NAMESPACE> -it --rm -- curl -o - <URL>

注1)「-o」オプションで「」の結果を標準出力にリダイレクトしています。オプションはお好みで。
注2)「--rm」オプションによって実行後Podが削除されます。間を置かず本スニペットを連続実行すると下記のようなエラーが出ることがあります。これはPod削除が間に合わないためです。連続実行する場合は素直にPod内でcurlコマンドを実行しましょう。
Error from server (AlreadyExists): pods "curl" already exists

Pod内でcurl実行(ログアウト後Pod破棄)

切り分け等で連続的にcurlを実行したい、だけどPodの管理(破棄)はしたくないといった用途で利用してください。

kubectl run curl --image=curlimages/curl -n <TARGET_NAMESPACE> -it --rm -- /bin/sh
curl -o - <URL1> #例1
curl -o - <URL2> #例2

注1)Podへのログイン後、例1・例2のように自身でcurlコマンドを発行します。
注2)「exit+enter」「ctrl+d(同時押し)」でシェルを抜けることでPodが破棄されます。

CentOS7環境をサクッと立てる

何かと揃っている環境をサクッと立てたいときはこちら(CentOS7)。

cat <<EOF | kubectl apply -n <TARGET_NAMESPACE> -f -
apiVersion: v1
kind: Pod
metadata:
  name: centos7
spec:
  restartPolicy: OnFailure
  containers:
    - name: centos7
      image: centos:7
      command:
        - "/sbin/init"
EOF

/sbin/initが使えない場合はsleepコマンドを組み合わせるとよいでしょう。

cat <<EOF | kubectl apply -n <TARGET_NAMESPACE> -f -
apiVersion: v1
kind: Pod
metadata:
  name: awscli
spec:
  restartPolicy: OnFailure
  containers:
    - name: awscli
      image: amazon/aws-cli
      command: [ "/bin/bash", "-c", "--" ]
      args: [ "while true; do sleep 30; done;" ]
EOF

作成後、下記コマンドでPodにログインします。

kubectl exec -it centos7 -n <TARGET_NAMESPACE> -- /bin/bash

以上

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?