一、项目概述

使用Kuboard图形化页面部署Nginx工作负载,代理页面是Vue打包的todos任务记录页面,并且将nginx配置文件挂载到单独一台NFS服务器进行存储。

二、环境

现场环境使用一个管理节点,两个工作节点,一个NFS存储服务器 k8s部署可以使用Kuboard-Spray图形化页面安装,也可以使用kubeadm进行安装 参考地址Kuboard官网建议: 1.服务器版本最好在不要选择centos7.9版本,kuboard官网上面对这个版本好像只有Kuboard-Spray图形化页面安装方式 2.k8s版本最好选在v1.24以下版本,1.24以上版本需要对docker的cri环境的配置文件进行修改,不修改可能你的管理节点Master初始化会失败,从1.24版本以上就弃用了dokcer,改用containerd,后续拉取镜像,harbor镜像仓库联机都需要配置containerd,需要你需要装k8sV1.24以上版本,最好把containerd学习一下。 3.网上k8s安装教程很多,遇到错误自己去尝试,下面是自己安装时参考的地址: kubernetes新版本使用kubeadm init的超全问题解决和建议快速搭建k8s--单节点Masterkubernetes新版本使用kubeadm init的相关问题和解决方法

服务器

IP地址

备注

k8sMaster

192.168.2.138

centos7.9 k8s:V1.28

k8sWorker01

192.168.2.139

centos7.9 k8s:V1.28

k8sWorker02

192.168.2.140

centos7.9 k8s:V1.28

NFS

192.168.2.142

centos7.9

三、样式

3.1 nginx运行页面

在这里插入图片描述

3.2 nginx挂载存储页面

在这里插入图片描述

3.3 nginx服务service页面

在这里插入图片描述

3.4 Index代理网页

在这里插入图片描述

四、部署流程

  1. Kuboard导入集群

  2. 搭建NFS服务器

  3. 新建工作负载

  4. 配置容器镜像存储服务等信息

  5. 拷贝nginx配置文件到NFS

4.1 集群导入

导入集群这里有三种方式,使用token、kubeconfig、Kuboard Agent 这里没有在k8s集群里面安装kuboard,采用docker单独部署的方式,所以使用前两种方式导入,不过我用配置文件的方式有问题,就使用的token的方式 在这里插入图片描述

4.2 NFS服务器搭建

参考文档:搭建NFS服务器

#安装nfs软件包
yum install -y rpcbind nfs-utils
#将挂载目录写入文件,可以自定义目录
echo '/opt/k8s/nfs *(insecure,rw,sync,no_root_squash)' >> /etc/exports
​
# 创建共享目录,如果要使用自己的目录,请替换本文档中所有的 /opt/k8s/nfs
mkdir /root/nfs_root
​
systemctl enable rpcbind
systemctl enable nfs-server
​
systemctl start rpcbind
systemctl start nfs-server
exportfs -r
​

每个工作节点挂载nfs存储服务器的目录,下面两行是进行测试

#安装nfs软件包
yum install -y rpcbind nfs-utils \
&& mkdir /tmp/testnfs \
&& mount -t nfs 192.168.2.142:/opt/k8s/nfs /tmp/testnfs \
&& echo "hello nfs" >> /tmp/testnfs/test.txt \
&& cat /tmp/testnfs/test.txt

4.3 新建nginx工作负载配置

4.3.1 容器信息 在这里插入图片描述

4.3.2 存储信息在这里插入图片描述

4.3.3 服务应用路由 在这里插入图片描述

4.4 拷贝配置信息到NFS

在这里插入图片描述

五、总结

测试环境目前基本完成生产环境所需,k8s,Kuboard图形化页面,NFS存储服务器,还差一个本地私有化Harbor镜像仓库,管理配置文件的Nacos平台就差不多齐全了,之所以使用kuboard平台来进行部署是因为单个部署工作负载简单,如果需要批量部署很多微服务就需要使用yaml文件的方式。