2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题

1. 部署环境

Centos镜像版本:7.9

镜像下载地址:链接:https://pan.baidu.com/s/1uHIEmTv9sIdrvwYLLqUt_g 
提取码:1234 
 

硬件需求:CPU大于2核 内存大于2G

2. 节点设置

K8s-master:192.168.80.194

K8s-node01:192.168.80.200

K8s-node02:192.168.80.201

目录

1. 部署环境

2. 节点设置

3. 部署步骤(如没有说明则在全部节点执行)

安装docker(所有节点执行)

添加kubernetes YUM软件源(所有节点执行)

安装kubeadm,kubelet和kubectl(所有节点执行)

部署Kubernetes Master(只需要在master节点执行)

加入Kubernetes Node(只需要在node节点执行)

安装网络插件(只需要在master节点执行)

测试kubernetes集群

部署Dashboard(只需要在master节点执行)

解决其他浏览器不能访问的问题


3. 部署步骤(如没有说明则在全部节点执行)

关闭防火墙,关闭selinux

2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第1张图片

关闭swap分区

更改主机名以及配置hosts文件

2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第2张图片

内核调整,将桥接的ipv4流量传递到iptable链

使用sysctl--system执行

2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第3张图片

使用命令yum -y install ntpdate安装时间同步软件

使用命令ntpdate time.windows.com设置系统时区并同步时间服务器

安装docker(所有节点执行)

安装docker

2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第4张图片

设置开机启动并打开docker服务,查看docker版本

添加kubernetes YUM软件源(所有节点执行)

添加Kubernetes yum源2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第5张图片

安装kubeadm,kubelet和kubectl(所有节点执行)

安装kubeadm,kubelet,kubectl软件,由于软件更新频繁,这里指定版本号部署

设置开机自启动

部署Kubernetes Master(只需要在master节点执行)

这里的apiserver需要改为自己master地址

2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第6张图片

输出结果

2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第7张图片

根据输出提示操作

默认的token有效期为24小时,如果后续有新的node节点加入,解决方式如下

使用命令kubeadm token create,然后输入命令kubeadm token list查看多了一个node节点

2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第8张图片

获取ca证书sha256编码hash值

加入Kubernetes Node(只需要在node节点执行)

在2个node节点执行,使用kubeadm join注册Node节点到master

执行kubeadm join,刚刚master执行kubeadm init输出的结果

2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第9张图片

安装网络插件(只需要在master节点执行)

下载kube-flannel.yml文件

编辑kube-flannel.yml文件

输入/image 然后修改镜像地址,如下图

2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第10张图片2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第11张图片

查看集群node状态,安装完网络工具后,所有节点状态显示为Ready才行,查看查看ns的pod,状态显示为Running才能进行后续的操作

2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第12张图片

如果状态为flannel则需要检查网络情况,则需要输入以下命令,重新wget,修改镜像地址

2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第13张图片

然后输入kubectl apply -f kube-flannel.yml创建资源

2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第14张图片

测试kubernetes集群

在Kubernetes集群中创建一个pod,然后暴露端口,验证是否可以正常访问

2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第15张图片

访问地址 http://masterIP:31744(端口号为刚刚暴露的端口)

2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第16张图片

部署Dashboard(只需要在master节点执行)

下载kubernetes-dashboard.yaml文件

2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第17张图片

编辑文件

2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第18张图片

在112行修改 

2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第19张图片

增加158行和162的内容

2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第20张图片

输入kubectl apply -f kubernetes-dashboard.yaml创建资源

2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第21张图片

浏览器访问(火狐浏览器访问)https://masterIP:30001,成功后点击高级

2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第22张图片

点击接受风险并继续 

2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第23张图片

点击令牌

2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第24张图片

创建service account并绑定默认cluster-admin管理员集群角色,复制token输出的代码粘贴在刚刚网页访问令牌那里然后点击登录

2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第25张图片

访问成功

2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第26张图片

可以看见刚刚测试的nginx服务

2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第27张图片

解决其他浏览器不能访问的问题

输入以下指令来解决其他浏览器访问不了的问题

2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第28张图片

修改kubernetes-dashboard.yaml文件

2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第29张图片

输入/args然后在下面加证书两行,如下图

2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第30张图片

2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第31张图片

使用IE浏览器,测试可以成功访问

2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第32张图片

2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第33张图片

2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第34张图片

2023年最详细K8S部署(Kubernetes)+解决浏览器访问问题_第35张图片

你可能感兴趣的:(linux,k8s,kubernetes,运维,linux)