Kubernetes 备忘录
列出资源
获取所有命名空间的列表
1 | kubectl get namespaces |
获取所有 pod 的列表
1 | kubectl get pods |
获取包含 IP、节点名称等详细信息的所有 pod 列表…
1 | kubectl get pods -o wide |
获取在特定节点服务器上运行的所有 pod 的列表
1 | kubectl get pods --field-selector=spec.nodeName=[server-name] |
获取所有复制控制器和服务的列表
1 | kubectl get replicationcontroller,services |
获取守护进程列表
1 | kubectl get daemonset |
创建资源
创建一个新的命名空间
1 | kubectl create namespace [namespace-name] |
从 JSON 或 YAML 文件创建一个新的命名空间
1 | kubectl create –f [filename] |
更新资源
要应用或更新资源,请使用该kubectl apply
命令
使用 [service-config].yaml 中包含的定义创建一个新服务
1 | kubectl apply -f [service-config].yaml |
使用 [controller-config].yaml 中包含的定义创建一个新的复制控制器
1 | kubectl apply -f [controller-config].yaml |
在目录中的任何 .yaml、.yml 或 .json 文件中创建定义的对象
1 | kubectl apply -f [yaml-file/directory-name] |
编辑服务配置
1 | kubectl edit svc/[service-name] |
上面的命令在默认编辑器中打开文件。要选择另一个编辑器,请在命令前指定它:
1 | KUBE_EDITOR=”[editor-name]” kubectl edit svc/[service-name] |
显示资源状态
获取有关特定节点的详细信息
1 | kubectl describe nodes [node-name] |
获取有关特定 pod 的详细信息
1 | kubectl describe pods [pod-name] |
获取有关名称和类型列在中的特定 pod 的详细信息 pod.json
1 | kubectl describe –f pod.json |
获取有关由特定复制控制器管理的特定 pod 的详细信息
1 | kubectl describe pods [replication-controller-name] |
获取有关所有 Pod 的详细信息
1 | kubectl describe pods |
删除资源
使用 pod.yaml 中提到的名称和类型删除 pod
1 | kubectl delete -f pod.yaml |
删除带有特定标签的所有 Pod 和服务
1 | kubectl delete pods,services -l [label-key]=[label-value] |
删除所有 Pod
1 | kubectl delete pods --all |
执行命令
从在 pod 中的第一个容器上运行的命令获取输出
1 | kubectl exec [pod-name] -- [command] |
从在 pod 中的特定容器上运行的命令获取输出
1 | kubectl exec [pod-name] -c [container-name] -- [command] |
从特定的 pod 运行 /bin/bash。接收到的输出来自第一个容器
1 | kubectl exec -ti [pod-name] -- /bin/bash |
打印容器日志
从 Pod 打印日志
1 | kubectl logs [pod-name] |
从 Pod 流式传输日志
1 | kubectl logs -f [pod-name] |
来自 Pod 的尾部日志(打印来自 Pod 的最后 200 条日志)
1 | kubectl logs --tail=200 [pod-name] |
修改 Kubeconfig
文件
kubectl config 命令允许您查看和修改 kubeconfig 文件。
获取上下文
1 | kubectl config current-context |
在 kubeconfig 中设置集群条目
1 | kubectl config set-cluster [cluster-name] --server=[server-name] |
在 kubeconfig 中取消设置条目
1 | kubectl config unset [property-name] |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 DOS/BAT!
评论