kubernetes operations command summary
When we use the Kubernetes platform,has many commands is important:
The
kcommand is alias to kubectl
-
label for nodes
kubectl label nodes host02 disktype=ssd -
view local config for kubernetes context
k config get-contexts -
switch context’s namespaces
kubectl config set-context my-vsphere-cluster --namespace=helm-test -
force delete pod, sometimes the pod still terminating.
k delete pods <pod> -n <namespace> --grace-period=0 --force -
get all resource in current kubernetes cluster
k get all --all-namespaces -
view job logs
k logs $(k get pods --selector=job-name=job-1598792400 --output=jsonpath={.items[*].metadata.name}) -
taint the master nodes no execute and no schedule
kubectl taint nodes <node-name> node-role.kubernetes.io/master=:NoExecutekubectl taint nodes <node-name> node-role.kubernetes.io/master=:NoSchedule -
no schedule on nodes: SchedulingDisabled
k get nodesk cordon <node name>k uncordon <node name># cancel cordon back to normal -
when shutdown the nodes first exec
k drain <node name> -
port forward
kubectl port-forward service/redis-master 7000:6379 -
Arbitrary proxy Kubernetes internal Service
kubectl proxythen browse the internal service for example: dashboard and metricshttp://localhost:8001/api/v1/namespaces/kube-system/services/kube-state-metrics:http-metrics/proxy/metrics http://localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/.
-
operate all resources
k delete all --all --namespace=kubesphere-logging-systemk get all --all-namespaces -
Change the current context default namespace
kubectl config set-context --current --namespace monitoring -
deployments an echoserver to kubernetes
1# create deployment
2kubectl create deployment hello-minikube --image=registry.cn-hangzhou.aliyuncs.com/google_containers/echoserver:1.10
3# expose the service
4kubectl expose deployment hello-minikube --type=NodePort --port=8080
- tag the nodes
1kubectl tag nodes kube-centos-ceph1 role=storage-node
2kubectl get nodes --show-labels
-
terminating pvc when delete pv stuck
kubectl patch pvc db-pv-claim -p '{"metadata":{"finalizers":null}}'kubectl patch pod db-74755f6698-8td72 -p '{"metadata":{"finalizers":null}}' -
Helm download charts source code archive format tgz helm pull –repo {repo-url} {chart-name} –version {chart-version}
helm pull --repo https://charts.bitnami.com/bitnami metrics-server --version 4.1.4 -
taints the node the effects: “NoSchedule,PreferNoSchedule,NoExecute”
kubectl taint node master node.kubernetes.io/unschedulable:NoSchedulekubectl taint nodes node1 key=value:NoSchedulekubectl taint node -l myLabel=X dedicated=foo:PreferNoSchedule -
remove taints
kubectl taint nodes foo dedicated-
Other usefuly commands
1# Create secrets from literal string pair
2kubectl create secret generic mysql-pass --from-literal=password=xxxxxxx -n wp