首页 > 其他 > 详细

kubectl常用命令

时间:2019-03-28 13:45:38      阅读:471      评论:0      收藏:0      [点我收藏+]

kubectl常用命令

#通过检查Kubernetes集群的版本来确认kubectl正在运行
kubectl --kubeconfig kube_config_rancher-cluster.yml version
Client Version: version.Info{Major:"1", Minor:"13", GitVersion:"v1.13.0", GitCommit:"ddf47ac13c1a9483ea035a79cd7c10005ff21a6d", GitTreeState:"clean", BuildDate:"2018-12-03T21:04:45Z", GoVersion:"go1.11.2", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"13", GitVersion:"v1.13.4", GitCommit:"c27b913fddd1a6c480c229191a087698aa92f0b1", GitTreeState:"clean", BuildDate:"2019-02-28T13:30:26Z", GoVersion:"go1.11.5", Compiler:"gc", Platform:"linux/amd64"}


#查看节点是否处于Ready状态
kubectl --kubeconfig kube_config_rancher-cluster.yml get nodes
NAME STATUS ROLES AGE VERSION
192.168.18.140 Ready controlplane,etcd,worker 77m v1.13.4
192.168.18.141 Ready controlplane,etcd,worker 77m v1.13.4
192.168.18.142 Ready controlplane,etcd,worker 77m v1.13.4


export KUBECONFIG=/var/tmp/kube_config_rancher-cluster.yml #我这里想把这条加到环增变量里
#vim /etc/profile
#export KUBECONFIG=/var/tmp/kube_config_rancher-cluster.yml
#source /etc/profile

#检查Kubernetes集群的版本
[root@rke01 tmp]# kubectl version
Client Version: version.Info{Major:"1", Minor:"13", GitVersion:"v1.13.0", GitCommit:"ddf47ac13c1a9483ea035a79cd7c10005ff21a6d", GitTreeState:"clean", BuildDate:"2018-12-03T21:04:45Z", GoVersion:"go1.11.2", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"13", GitVersion:"v1.13.4", GitCommit:"c27b913fddd1a6c480c229191a087698aa92f0b1", GitTreeState:"clean", BuildDate:"2019-02-28T13:30:26Z", GoVersion:"go1.11.5", Compiler:"gc", Platform:"linux/amd64"}


#查看节点是否处于Ready状态
[root@rke01 tmp]# kubectl get nodes #需要配置环境变量
NAME STATUS ROLES AGE VERSION
192.168.18.140 Ready controlplane,etcd,worker 80m v1.13.4
192.168.18.141 Ready controlplane,etcd,worker 80m v1.13.4
192.168.18.142 Ready controlplane,etcd,worker 80m v1.13.4


#检查集群Pod的运行状况
[root@rke01 tmp]# kubectl get pods --all-namespaces
NAMESPACE NAME READY STATUS RESTARTS AGE
ingress-nginx default-http-backend-7f8fbb85db-gnwxp 1/1 Running 1 152m
ingress-nginx nginx-ingress-controller-fcxsf 1/1 Running 0 152m
ingress-nginx nginx-ingress-controller-hmrj6 1/1 Running 0 152m
ingress-nginx nginx-ingress-controller-tsl56 1/1 Running 1 152m
kube-system canal-5sgvx 2/2 Running 0 153m
kube-system canal-kqbrw 2/2 Running 0 153m
kube-system canal-s4dfz 2/2 Running 0 153m
kube-system kube-dns-5fd74c7488-rl6p7 3/3 Running 0 152m
kube-system kube-dns-autoscaler-c89df977f-zwwcj 1/1 Running 0 152m
kube-system metrics-server-7fbd549b78-mrfbc 1/1 Running 0 152m
kube-system rke-ingress-controller-deploy-job-hhmr2 0/1 Completed 0 152m
kube-system rke-kubedns-addon-deploy-job-v98rw 0/1 Completed 0 153m
kube-system rke-metrics-addon-deploy-job-5bpdv 0/1 Completed 0 152m
kube-system rke-network-plugin-deploy-job-n6bg8 0/1 Completed 0 153m


[root@rke01 ~]# kubectl get pods --namespace kube-system
NAME READY STATUS RESTARTS AGE
canal-5sgvx 2/2 Running 0 20h
canal-kqbrw 2/2 Running 0 20h
canal-s4dfz 2/2 Running 0 20h
kube-dns-5fd74c7488-rl6p7 3/3 Running 0 20h
kube-dns-autoscaler-c89df977f-zwwcj 1/1 Running 0 20h
metrics-server-7fbd549b78-mrfbc 1/1 Running 0 20h
rke-ingress-controller-deploy-job-hhmr2 0/1 Completed 0 20h
rke-kubedns-addon-deploy-job-v98rw 0/1 Completed 0 20h
rke-metrics-addon-deploy-job-5bpdv 0/1 Completed 0 20h
rke-network-plugin-deploy-job-n6bg8 0/1 Completed 0 20h
tiller-deploy-6d6cc8dcb5-w79fv 0/1 ContainerCreating 0 9s #没有正常运行,说明有问题

[root@rke01 ~]# kubectl describe pod tiller-deploy-6d6cc8dcb5-w79fv -n kube-system #查看tiller这个pod详细信息
Warning Failed 45s kubelet, 192.168.18.142 Failed to pull image "gcr.io/kubernetes-helm/
tiller:v2.13.0": rpc error: code = Unknown desc = Error response from daemon: Get https://gcr.io/v1/_ping: dial tcp
108.177.97.82:443: getsockopt: connection refused

原因是 无法拉取镜像

[root@rke01 ~]# kubectl delete deployment tiller-deploy --namespace kube-system #删除tiller
deployment.extensions "tiller-deploy" deleted

 

#获取集群状态
[root@rke01 tmp]# kubectl cluster-info
Kubernetes master is running at https://192.168.18.140:6443
KubeDNS is running at https://192.168.18.140:6443/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy

To further debug and diagnose cluster problems, use ‘kubectl cluster-info dump‘.

 

#配置Helm客户端访问权限
在kube-system命名空间中创建ServiceAccount(服务账号);
创建ClusterRoleBinding(集群角色绑定)以授予tiller帐户对集群的访问权限
helm初始化tiller服务

kubectl -n kube-system create serviceaccount tiller
kubectl create clusterrolebinding tiller --clusterrole cluster-admin --serviceaccount=kube-system:tiller


#要找出Tiller将安装到哪个群集,您可以运行
kubectl config current-context或kubectl cluster-info


#查看kubectl默认连接的K8S集群
[root@rke01 tmp]# kubectl config view
apiVersion: v1
clusters:
- cluster:
certificate-authority-data: DATA+OMITTED
server: https://192.168.18.140:6443
name: MYK8S
contexts:
- context:
cluster: MYK8S
user: kube-admin-MYK8S
name: MYK8S
current-context: MYK8S
kind: Config
preferences: {}
users:
- name: kube-admin-MYK8S
user:
client-certificate-data: REDACTED
client-key-data: REDACTED

 

#查看Tiller是否正在运行
kubectl get pods --namespace kube-system
NAME READY STATUS RESTARTS AGE
canal-5sgvx 2/2 Running 0 21h
canal-kqbrw 2/2 Running 0 21h
canal-s4dfz 2/2 Running 0 21h
kube-dns-5fd74c7488-rl6p7 3/3 Running 0 21h
kube-dns-autoscaler-c89df977f-zwwcj 1/1 Running 0 21h
metrics-server-7fbd549b78-mrfbc 1/1 Running 0 21h
rke-ingress-controller-deploy-job-hhmr2 0/1 Completed 0 21h
rke-kubedns-addon-deploy-job-v98rw 0/1 Completed 0 21h
rke-metrics-addon-deploy-job-5bpdv 0/1 Completed 0 21h
rke-network-plugin-deploy-job-n6bg8 0/1 Completed 0 21h
tiller-deploy-7b456d64bb-q76kh 1/1 Running 0 112s #显示running


#查看tiller这个pod详细信息
[root@rke01 ~]# kubectl describe pod tiller-deploy-6d6cc8dcb5-w79fv -n kube-system
Warning Failed 45s kubelet, 192.168.18.142 Failed to pull image "gcr.io/kubernetes-helm/
tiller:v2.13.0": rpc error: code = Unknown desc = Error response from daemon: Get https://gcr.io/v1/_ping: dial tcp
108.177.97.82:443: getsockopt: connection refused


#删除tiller
[root@rke01 ~]# kubectl delete deployment tiller-deploy --namespace kube-system
deployment.extensions "tiller-deploy" deleted

 

#检查pods 是否正在运行
[root@rke01 tmp]# kubectl -n cattle-system get pods
NAME READY STATUS RESTARTS AGE
cattle-cluster-agent-5bc9bdb6b8-srjb2 1/1 Running 8 20h
cattle-node-agent-95mfg 1/1 Running 2 20h
cattle-node-agent-jv8zq 1/1 Running 9 20h
cattle-node-agent-nwt9b 1/1 Running 9 20h
rancher-b5756ff49-6mrgj 1/1 Running 26 20h
rancher-b5756ff49-bm5mx 1/1 Running 23 20h
rancher-b5756ff49-jshsc 1/1 Running 33 20h


#describe在pod上运行并检查事件。
kubectl -n cattle-system describe pod #这里是pod的具体名称

#查看pod rancher-b5756ff49-6mrgj 的日志
kubectl -n cattle-system logs -f rancher-b5756ff49-6mrgj

kubectl常用命令

原文:https://www.cnblogs.com/dengmeinan/p/10614068.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!