#云原生征文#Kubernetes集群部署 原创

Jack丶韦
发布于 2022-6-8 18:57
浏览
0收藏

一、环境要求

系统版本:CentOS7.x版本
硬件配置:内存2GB以上  cpu2核以上  硬盘大于30G
集群网络配置:集群中所有服务器内网必须互通,并且需要访问外网来拉取镜像
禁用swap分区

二、k8s基础环境操作:

1、关闭防火墙:

[root@localhost ~]# systemctl stop firewalld
[root@localhost ~]# systemctl disable firewalld  

2、关闭selinux:

[root@localhost ~]# sed -i 's/enforcing/disabled/' /etc/selinux/config
[root@localhost ~]# getenforce

3、关闭swap分区:

[root@localhost ~]# swapoff -a
**注意:永久关闭,需注释掉/etc/fstab文件中的swap行**

4、进行hosts文件编辑:

192.168.8.146     k8s-master
192.168.8.141      k8s-node1
192.168.8.129     k8s-node2 

5、将桥接的IPv4流量传递到iptables的链

[root@localhost ~]# cat > /etc/sysctl.d/k8s.conf << EOF
> net.bridge.bridge-nf-call-ip6tables = 1
> net.bridge.bridge-nf-call-iptables = 1
> EOF

[root@localhost ~]# sysctl --system

#云原生征文#Kubernetes集群部署-鸿蒙开发者社区

6、开启IP转发功能

[root@localhost ~]# echo "1" > /proc/sys/net/ipv4/ip_forward

三、安装docker(三台机器都操作)

1、卸载旧版docker

[root@localhost ~]# yum remove docker docker-common docker-selinux docker-engine

2、安装一些必要的系统工具

[root@localhost ~]# yum install -y yum-utils device-mapper-persistent-data lvm2

3、配置docker的稳定版本仓库

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

4、更新安装包索引

[root@localhost ~]# yum makecache fast

5、安装docker ce

[root@localhost ~]# yum -y install docker-ce-18.06.1.ce-3.el7

6、开机自启和启动docker

[root@localhost ~]# systemctl enable docker && systemctl start docker

7、查看docker版本

[root@localhost ~]# docker --version

#云原生征文#Kubernetes集群部署-鸿蒙开发者社区

8、添加阿里云YUM软件源

[root@localhost ~]# vim /etc/yum.repos.d/kubernetes.repo
[Kubernetes]
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg

9、清除缓存

[root@localhost ~]# yum clean all

10、重新加载

[root@localhost ~]# yum makecache

安装kubeadm,kubelet和kubectl

11、由于版本更新频繁,这里指定版本号部署:

[root@localhost ~]# yum install -y kubelet-1.15.0 kubeadm-1.15.0 kubectl-1.15.0
[root@localhost ~]# systemctl enable kubelet

四、部署Kubernetes Master(这个在master主机里操作):

[root@k8s-master~]#kubeadm init  --apiserver-advertise-address=192.168.8.146 --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
  注意:192.168.8.146ip是master主机的ip地址

#云原生征文#Kubernetes集群部署-鸿蒙开发者社区

五、配置kubectl访问集群(三台机器操作):

1、创建目录

[root@localhost ~]# mkdir -p $HOME/.kube

2、复制

[root@k8s-master ~]# cp -i /etc/kubernetes/admin.conf $HOME/.kube/config

3、给权限

[root@k8s-master ~]# chown $(id -u):$(id -g) $HOME/.kube/config

六、Master安装flannel(主机master里操作):

[root@k8s-master~]#kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

1、查看索引pod

[root@k8s-master ~]# kubectl get pod -n kube-system

2、查看节点

[root@k8s-master ~]# kubectl get node

七、加入node节点(在两台node上做):

[root@k8s-node1 ~]# kubeadm join 192.168.8.146:6443 --token vhykt2.0jjdgdcnclxhts41  --discovery-token-ca-cert-hash sha256:bf42d67996e593a1e5844ba717d97e1249ed85bf86d83322b88c108d2f6a3dc1

#云原生征文#Kubernetes集群部署-鸿蒙开发者社区

1、查看node1节点是否成功(在node1上做)

[root@k8s-node1 ~]# docker ps

#云原生征文#Kubernetes集群部署-鸿蒙开发者社区

八、查看节点信息(在master操作)

[root@k8s-master ~]# kubectl get node

#云原生征文#Kubernetes集群部署-鸿蒙开发者社区

九、部署dashboard(master主机操作)

[root@k8s-master~]#wget https://raw.githubusercontent.com/kubernetes/dashboard/v1.10.1/src/deploy/recommended/kubernetes-dashboard.yaml

1、编辑yaml文件

[root@k8s-master ~]# vim   kubernetes-dashboard.yaml

#云原生征文#Kubernetes集群部署-鸿蒙开发者社区
#云原生征文#Kubernetes集群部署-鸿蒙开发者社区

2、安装dashboard

[root@k8s-master ~]# kubectl apply -f kubernetes-dashboard.yaml

3、使用master节点ip地址+端口来访问,协议是https的

查看Dashboard端口信息:

[root@k8s-master ~]# kubectl --namespace=kube-system get service kubernetes-dashboard

#云原生征文#Kubernetes集群部署-鸿蒙开发者社区

4、以我自己的服务器为访问对象,使用https://172.16.204.130:30310即可访问

#云原生征文#Kubernetes集群部署-鸿蒙开发者社区

5、Token

[root@k8s-master ~]# kubectl create serviceaccount dashboard-admin -n kube-system
[root@k8s-master~]#kubectl create clusterrolebinding dashboard-admin --clusterrole=cluster-admin --serviceaccount=kube-system:dashboard-admin
[root@k8s-master ~]# kubectl  get secret -n kube-system

#云原生征文#Kubernetes集群部署-鸿蒙开发者社区

6、查看token的具体信息

[root@k8s-master~]# kubectl describe secret dashboard-admin-token-92djb -n kube-system

#云原生征文#Kubernetes集群部署-鸿蒙开发者社区

7、把密令输入在令牌中

#云原生征文#Kubernetes集群部署-鸿蒙开发者社区

8、登陆成功的页面:

#云原生征文#Kubernetes集群部署-鸿蒙开发者社区

【博主其它博文链接】
https://blog.51cto.com/u_15397018
https://www.woaijack.com

©著作权归作者所有,如需转载,请注明出处,否则将追究法律责任
分类
已于2023-1-9 08:50:17修改
7
收藏
回复
举报
1条回复
按时间正序
/
按时间倒序
mb62ce7f01b465f
mb62ce7f01b465f

写的挺好,期待你的分析

回复
2022-7-13 16:18:38
回复
    相关推荐