k8s基本命令
k8s基本命令
kubectl系列命令
kubectl describe描述资源命令
kubectl describe显示一个或多个资源的详细信息,包括事件以及资源状态
kubectl describe <resourcese> <resurouce-name>
kubectl describe po pod-name -n namesapce
kubectl logs打印容器日志命令
kubectl logs查看容器的日志
kubectl logs pod-name -n namespace
--tail 10 # 显示末尾10行
--since 1s # 显示5s前
-f # follow跟踪显示
kubectl exec执行容器命令
kubectl exec执行容器命令
kubectl exec -it pod-name -- sh # sh代表命令
kubectl edit编辑资源命令
kubectl edit编辑资源文件
kubectl edit po pod-name -n namespace # 编辑资源
kubectl get获取资源命令
kubectl get
kubectl get po -A -owide # 获取所有pod
-A # 所有命名空间
kubectl get po pod-name -o yaml # 以yaml格式输出内容
kubectl delete删除资源命令
kubectl delete
kubectl delete <resouce> <resouce-name>
kubectl delete po pod-name -n namespace # 删除资源
-f # 指定文件
kubectl top资源监控命令
kubectl top
kubectl apply应用改变命令
kubectl apply
kubectl apply -f xxx.yaml # 应用文件
kubectl apply -f dir/ # 应用目录下所有文件
kubectl apply -f '*.json' # 应用以后缀为.json的文件
--force # 立即应用
-o json # 指定文件输出格式,会将文件内容输出
kubectl patch修改资源命令
patch命令字面意思上是打补丁,包括三种模式:strategy patch、json merge patch, merge patch
kubectl patch pod valid-pod --type='json' -p='[{"op": "replace", "path":
"/spec/containers/0/image", "value":"new image"}]'
json patch适用于细粒度的控制,其中的op支持"replace", "add", "remove", "move", "copy", "test"
# move用于移动字段从A到B
{
"op": "move",
"from": "/spec/container/0/env/0",
"patch": "/spec/container/0/env/1"
}
# copy用于复制字段从A到B
{
"op": "copy",
"from": "/spec/container/0/env/0",
"patch": "/spec/container/0/env/1"
}
# remove用于删除字段
{
"op": "remove",
"path": "/spec/container/0/env/0"
}
# replace用于更新字段
{
"op": "replace",
"path": "/spec/container/0/env/0",
"value": 1
}
# add用于添加字段
{
"op": "replace",
"path": "/spec/container/0/env/0",
"value": {
"name": "ENV",
"value": "sx"
}
}
# test用于测试值是否符合要求
{
"op": "test",
"path": "/spec/container/0/env/0",
"value": "1"
}
kubeadm系列命令
kubeadm token管理token系列命令
kubeadm token create # 此时会生成1个随机token
kubeadm token create abcdef.0123456789abcdef # 创建特定token
kubeadm token create abcdef.0123456789abcdef --print-join-command # 创建token并打印节点加入命令
kubeadm config管理配置命令
kubeadm config 实际是上一个名为kubeadm-config的configmap,命名空间为kube-system
kubeadm config print init-defualts # 打印集群初始化配置
kubeadm config print join-defualts # 打印加入集群配置
kubeadm join加入集群命令
kubeadm join 192.168.137.131:6443 --token lsl805.benbjwo8lyluw533 --discovery-token-ca-cert-hash sha256:4017c3259ad8edecc71341527569525345b5d329e85b0db249011e499650af37 --node-name work5 # 添加参数--node-name之后,则不需要更改hostname
crictl系列命令
crictl 是一个与 k8s 容器运行时接口(CRI)兼容的命令行接口,用于检查和调试 Kubernetes 节点上的容器。
crictl pods # 列出所有pod
crictl images # 列出所有镜像
crictl pull hello:v1.0 # 拉取镜像
crictl create <pod_id> <container_config> <pod_config> # 创建容器
crictl start <container_id> # 启动容器
crictl logs <container_id> # 查看容器日志

浙公网安备 33010602011771号