docker的Kubernetes(k8s)集群搭建

安装与启动docker
安装包下载,提取码ggc9

server1:172.25.16.1(k8s-master)
server2:172.25.16.2(k8s-node1)
server3:172.25.16.3(k8s-node2)

清理swarm的服务,没有搭建可以跳过
server2和3

docker swarm leave
docker container prune

server1

docker swarm leave --force
docker container prune

在所有的server上安装kubelet服务并禁止swap分区开机自动挂载
k8s,提取码3xcu

cd ~/k8s/

yum install -y kubeadm-1.12.2-0.x86_64.rpm kubelet-1.12.2-0.x86_64.rpm kubectl-1.12.2-0.x86_64.rpm kubernetes-cni-0.6.0-0.x86_64.rpm cri-tools-1.12.0-0.x86_64.rpm

swapoff -a

vim /etc/fstab
#/dev/mapper/rhel-swap   swap                    swap    defaults        0 0

systemctl start kubelet.service
systemctl enable kubelet.service

docker的Kubernetes(k8s)集群搭建_第1张图片
在所有server上导入镜像

docker load -i kube-apiserver.tar

docker load -i kube-controller-manager.tar

docker load -i kube-scheduler.tar

docker load -i kube-proxy.tar

docker load -i pause.tar

docker load -i etcd.tar

docker load -i coredns.tar

docker load -i flannel.tar

初始化

kubeadm init --pod-network-cidr=10.244.0.0/16 --apiserver-advertise-address=172.25.16.1

这里可能会出现报错
docker的Kubernetes(k8s)集群搭建_第2张图片
我们需要用echo改变这个文件的内容
在这里插入图片描述
以下为正确的返回值
docker的Kubernetes(k8s)集群搭建_第3张图片

添加用户并且免密

useradd k8s
vim /etc/sudoers

docker的Kubernetes(k8s)集群搭建_第4张图片
设置环境变量,使我们使用k8s可以进行一个补全操作

vim /home/k8s/.bashrc

source <(kubectl completion bash)'

yum install bash-* -y

docker的Kubernetes(k8s)集群搭建_第5张图片
切换进k8s输入初始化叫我们输入的命令

su - k8s
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config

docker的Kubernetes(k8s)集群搭建_第6张图片
切换回root到根下的k8s复制配置文件到k8s的根下

ctrl+d
cd ~/k8s/
cp  kube-flannel.yml  /home/k8s

切换回k8s,根据配置文件开应用

su - k8s
kubectl apply -f kube-flannel.yml
sudo docker ps

docker的Kubernetes(k8s)集群搭建_第7张图片
把server2和3添加为节点
添加节点的命令是从master初始化的返回值复制过来的

swapon -s
modprobe ip_vs_wrr
modprobe ip_vs_sh
kubeadm join 172.25.16.1:6443 --token i0m1dj.zeobiqxin6vg9vu6 --discovery-token-ca-cert-hash sha256:654693e884e91cda7655ed5bcfd7fdf1db3e908b9147196502a867375f5043d9

可能会出现报错
docker的Kubernetes(k8s)集群搭建_第8张图片
同样是改这个文件
在这里插入图片描述
查看加入的节点

kubectl get nodes

docker的Kubernetes(k8s)集群搭建_第9张图片
注意此时要把网关设置好
docker的Kubernetes(k8s)集群搭建_第10张图片
真机开启火墙策略
docker的Kubernetes(k8s)集群搭建_第11张图片
确保虚拟机能上网
在这里插入图片描述
查看所有配置的状态

kubectl get pod --all-namespaces

docker的Kubernetes(k8s)集群搭建_第12张图片
如果多次刷新都不是全running,可以尝试删除报错的NAME,此时服务会自动重新添加,达到重启的效果

kubectl delete pod coredns-576cbf47c7-bx8cl -n kube-system

你可能感兴趣的:(企业级部署)