安装k8s
参考官网文档 play-with-k8s play-with-docker
手动搭建高可用的kubernetes 集群(qikqiak.com)
注意:安装k8s前需要先安装docker,Latest validated version: 18.09;主机操作系统我用的是centOS7
安装完成后
kubeadm init --kubernetes-version=1.14.0 --apiserver-advertise-address=$(hostname -i) --pod-network-cidr=10.244.0.0/16
若要重新初始化集群状态:kubeadm reset,然后再进行上述操作

kubadm join xxxxxx 命令复制到worker节点执行,例如:kubeadm join 192.168.31.150:6443 --token t2b4aw.64lr943ied2nrz09 \
--discovery-token-ca-cert-hash sha256:ad6206961e5cfc6ec807c3e5d0d11e5c0720499c2d0bdf309dbd6c5037ad73e1
安装网络插件
如用calico插件:kubectl apply -f https://docs.projectcalico.org/v3.11/manifests/calico.yaml
使用k8s
yum list kubeadm --showduplicates | sort -r --列出kubeadm的各种版本
kubeadm config images list --查看kubeadm需要的镜像
kubectl get pods -n kube-system -w --查看pods
kubectl get nodes --查看节点
kubectl delete pod [NAME]
kubectl scale rc [nginx] --replicas=5 --扩缩容
kubectl apply -f xxx.yaml
kubectl delete -f xxx.yaml
#service:Cluster IP 可以供集群内访问,对很多Deployment[Pod]进行负载均衡;类型有:ClusterIP NodePort Load Ingress
#Ingress参考文档-》https://kubernetes.io/docs/concepts/services-networking/ingress/
kubectl expose deployment whoami-deployment --创建whoami-deployment名字的service
kubectl expose deployment whoami-deployment --type=NodePort --指定端口印射到宿主机的一个端口
kubectl delete svc [SVC_NAME]
kubectl get svc --查看service
kubectl describe svc [SVC_NAME]
kubectl label node worker1 name=ingress
kubectl get pods -n wordpress -o wide
kubectl describe pod [POD_NAME] -n wordpress --查看pod详情信息
kubectl create namespace wordpress --创建namespace
journalctl -u kubelet -f --查看kubelet的日志
systemctl restart kubelet && systemctl enable kubelet --重启kubelet服务
kubectl get pods --all-namespaces -o wide
kubectl get services --all-namespaces
kubeadm join-集群中加入新的master与worker节点
kubeadm token list
kubeadm token create --print-join-command //生成加入worker节点的命令
kubeadm token create --ttl 0 --print-join-command //可以创建一个永不过期的token
kubeadm init phase upload-certs --experimental-upload-certs或kubeadm init phase upload-certs --upload-certs //要添加master节点, 还要执行如上命令, 得到certificate-key
kubeadm join k8s-master-7-13:8443 --token fw6ywo.1sfp61ddwlg1we27 --discovery-token-ca-cert-hash sha256:52cab6e89be9881e2e423149ecb00e610619ba0fd85f2eccc3137adffa77bb04 --certificate-key 70f399e275cabef0bb2794ea76303da0220574f59e994e755378a359edb5a233 --control-plane --v=999 //使用第一步生成的worker的join命令, 加上上面生成的certificate-key, 拼接起来组成master的join命令.加上--control-plane --v=999