K8S部署

安装K8S折腾了好久,总算成功了,下面是安装全过程。

基础环境准备

准备CentOS虚拟机4台。全新安装。

master1     10.0.37.150【最低2核,不然KubeAdmin会报错】

master2     10.0.37.151【最低2核,不然KubeAdmin会报错】

node1      10.0.37.152

node2      10.0.37.153

所有虚拟机执行步骤1-3.

1.更新Centos.(避免Docker运行报错)

yum update -y

2.运行nmtui,设置IP地址和hostname.

3.运行环境准备脚本k8s-pre.sh。(主要用途:关闭selinux,关闭防火墙,关闭swap,修改/etc/hosts,修改iptables链接,安装docker,安装kubeadm,kubectl,kubelet V1.15)

4.登陆到10.0.37.150 master1 部署k8s master

kubeadm init \

--apiserver-advertise-address 10.0.37.150 \

--image-repository registry.aliyuncs.com/google_containers \

--kubernetes-version v1.15.0 \

--service-cidr 10.1.0.0/16 \

--pod-network-cidr 10.244.0.0/16

注意: 提示信息中包含node 加入到当前集群的命令。在部署node的时候需要。如果失败,可以使用kubeadm reset重新部署。常见问题请参考部署常见错误文档。

5.给当前用户赋权

mkdir -p $HOME/.kube

sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config

sudo chown $(id -u):$(id -g) $HOME/.kube/config

6.安装POD网络插件

kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/a70459be0084506e4ec919aa1c114638878db11b/Documentation/kube-flannel.yml

7.登陆到10.0.37.152 & 153 部署k8s node1 & k8s node2

先安装flannel

docker pull lizhenliang/flannel:v0.11.0-amd64

再加入集群

kubeadm join 10.0.37.150:6443 --token tt7879.ridi9k0uf0adihp8 \

    --discovery-token-ca-cert-hash sha256:1f381aec366336c21c4c2041882e581087b71f614f0781211f6b1bba35a359fa

8.返回10.0.37.150。运行如下命令查看集群状态,确保为Ready状态。

[root@k8s-master1 ~]# kubectl get nodes

NAME          STATUS  ROLES    AGE    VERSION

k8s-master1  Ready    master  117m  v1.15.0

k8s-node1    Ready      30m    v1.15.0

k8s-node2    Ready      27m    v1.15.0

9. 在Kubernetes集群中创建一个pod,验证是否正常运行:

创建nginx容器

kubectl create deployment nginx --image=nginx

暴露对外端口

kubectl expose deployment nginx --port=80 --type=NodePort

查看nginx是否运行成功

kubectl get pod,svc

在浏览器访问。三个结点都可访问,说明集群已经搭建完成,


参考连接:https://blog.csdn.net/heian_99/article/details/103888459

你可能感兴趣的:(K8S部署)