https://zhuanlan.zhihu.com/p/401179339 总结

https://www.jianshu.com/p/07455dbfd6bb 命令

1、linux命令

  1. 1、查看系统名称
  2. hostname
  3. 2、重新系统主机命名
  4. hostnamectl set-hostname k8s-master
  5. 3、配置host文件
  6. cat >> /etc/hosts << EOF
  7. 8.142.76.230 k8s-master
  8. EOF
  9. 4、杀死8081端口:
  10. yum install lsof
  11. sudo lsof -i:8081
  12. Python 11256 haha 3u IPv4 0xd74399cf9 0t0 TCP localhost:http-alt (LISTEN)
  13. kill -s 9 11256
  14. 5、文件看不到行数
  15. vim 执行后
  16. :set number
  17. 回车 就可以看到行数

2、kubectl 命令

  1. 创建
  2. kubectl create deployment nginx --image=nginx
  3. 启动
  4. kubectl expose deployment nginx --port=80 --type=NodePort
  5. 查看
  6. kubectl get pods,svc
  7. 查看所有pod
  8. kubectl get pods --all-namespaces
  9. 删除 pod
  10. kubectl delete deployment [pod名称]
  11. 获取列表
  12. kubectl get pod --show-labels
  13. 创建
  14. 删除
  15. kubectl delete pod

3、删除k8s 及组件

在卸载K8s组件前,先执行kubeadm reset命令,清空K8s集群设置

  1. kubeadm reset

卸载管理组件

  1. yum erase -y kubelet kubectl kubeadm kubernetes-cni

删除基础组件镜像。基础组件通过Docker镜像部署,因此只需要强制删除对应镜像即可卸载。

  1. docker rmi -f k8s.gcr.io/kube-apiserver:v1.15.1
  2. docker rmi -f k8s.gcr.io/kube-controller-manager:v1.15.1

4、报错解决

4.1、解决setenforce: SELinux is disabled

  1. 解决方法vim /etc/selinux/config
  2. 更改为:SELINUX=1
  3. 必须重启linux,不重启是没办法立刻开启selinux

4.2、pod镜像没有启动 单机版

0/1 nodes are available: 1 node(s) had taints that the pod didn’t tolerate.
image.png

  1. 是因为默认kubernetes默认不让pod部署到master节点,但是我在测试环境只有一个节点也是master节点,需要允许master节点部署pod
  2. kubectl taint nodes --all node-role.kubernetes.io/master-
  3. 如果想要禁止,则执行以下命令
  4. kubectl taint nodes k8s node-role.kubernetes.io/master=true:NoSchedule