k8s常用命令
k8s常用命令整理
·
- 更新pod的副本数
kc scale deploy --replicas=<副本数量> <pod名>
示例:kc scale deploy --replicas=0 geoduck
- 重启pod
重启pod
可以先设置副本数
为0
再设置副本数为1
kc scale deploy --replicas=0 <pod名>
kc scale deploy --replicas=1 <pod名>
- 查看pod
get get pods | grep <pod名>
- 获取所有标签为 nginx的pod
kubectl get pods -l app=nginx
- 查看pod对象细节
kubectl describe pod <pod名>
$ kubectl describe pod nginx-deployment-67594d6bf6-9gdvr
Name: nginx-deployment-67594d6bf6-9gdvr
Namespace: default
Priority: 0
PriorityClassName: <none>
Node: node-1/10.168.0.3
Start Time: Thu, 16 Aug 2018 08:48:42 +0000
Labels: app=nginx
pod-template-hash=2315082692
Annotations: <none>
Status: Running
IP: 10.32.0.23
Controlled By: ReplicaSet/nginx-deployment-67594d6bf6
...
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal Scheduled 1m default-scheduler Successfully assigned default/nginx-deployment-67594d6bf6-9gdvr to node-1
Normal Pulling 25s kubelet, node-1 pulling image "nginx:1.7.9"
Normal Pulled 17s kubelet, node-1 Successfully pulled image "nginx:1.7.9"
Normal Created 17s kubelet, node-1 Created container
Normal Started 17s kubelet, node-1 Started container
在 kubectl describe 命令返回的结果中,你可以清楚地看到这个 Pod 的详细信息,比如它的 IP 地址等等。其中,有一个部分值得你特别关注,它就是Events(事件)。
在 Kubernetes 执行的过程中,对 API 对象的所有重要操作,都会被记录在这个对象的 Events 里,并且显示在 kubectl describe 指令返回的结果中。
比如,对于这个 Pod,我们可以看到它被创建之后,被调度器调度(Successfully assigned)到了 node-1,拉取了指定的镜像(pulling image),然后启动了 Pod 里定义的容器(Started container)。
所以,这个部分正是我们将来进行 Debug 的重要依据。如果有异常发生,你一定要第一时间查看这些 Events,往往可以看到非常详细的错误信息。
- 进入pod
kc exec -it <pod名> sh
- 删除deployment
kc delete -f nginx-deployment.yaml
- 检查节点上各系统pod的状态
kc get pos -n kube-system
- 查看pod 日志
kc -n <name_space> logs -f --tail 100 <pod nam>
示例
kc -n ns logs -f --tail 1 ad
更多推荐
已为社区贡献1条内容
所有评论(0)