現在存在するすべてのリソースの数を得る
$ kubectl get all --no-headeres | wc -lget all コマンドはすべてのリソースを得るコマンド。--no-headers オプションを渡すとヘッダーの行が出力されなくなるので、行数を数えればそれがリソースの数と一致することになる。
パイプで wc コマンドに渡して行数をカウントを出力する。-l オプションは外業の数を表示する。
作成するリソースのひな形をyamlとして出力する
$ kubectl run nginx --image nginx -0=yaml --dry-run=client > nginx.yaml- nginx.yaml
apiVersion: v1
kind: Pod
metadata:
creationTimestamp: null
labels:
run: nginx
name: nginx
spec:
containers:
- image: nginx
name: nginx
resources: {}
dnsPolicy: ClusterFirst
restartPolicy: Always
status: {}ドライラン(--dry-run=client)した結果を yaml として出力(-o=yaml)して、結果をファイルに保存 > nginx.yaml することで簡単に yaml ファイルのひな形を出力できる。
その他の例
- deployment
$ kubectl create deployment nginx --image nginx -o=yaml --dry-run=client > deployment.yamlpiVersion: apps/v1
kind: Deployment
metadata:
creationTimestamp: null
labels:
app: nginx
name: nginx
spec:
replicas: 1
selector:
matchLabels:
app: nginx
strategy: {}
template:
metadata:
creationTimestamp: null
labels:
app: nginx
spec:
containers:
- image: nginx
name: nginx
resources: {}
status: {}- service
$ kubectl expose deployment nginx --port=80 --dry-run=client -o=yaml > service.yamlエイリアス
エイリアスを登録しておくと、コマンドを打つ時間を短縮できる。
$ alias k="kubectl"describeの出力結果を絞り込む
例えば、deployment に適用されている Image を出力したいとき。
$ kubectl describe deployment some-deployment | grep -i imageパイプで出力結果を grep に渡す。-i オプションは、大文字小文字を区別しない。
