Kubernetes(简称K8s)是一个开源的容器编排系统,用于自动化部署、扩展和管理容器化应用程序。Kubernetes提供了一个运行分布式系统的框架,能够无缝地扩展和管理跨主机集群的容器应用。目前k8s在企业中的应用非常普遍,接下来本文就K8S部署智慧充电桩小程序系统项目和后台管理系统,并实现服务发布,做一详细介绍。
- 首先,我们配置好本项目所需镜像仓库,制作好NGINX镜像文件和java环境镜像,上传至镜像服务器,如下图所示:
2.配置mysql数据库存储数据和redis缓存实现验证码的计算,具体操作步骤如下
首先配置mysql并配置好授权,操作命令如下
安全mysql数据库软件包并启动服务
yum -y install mysql mysql-server
systemctl enable mysqld --now
配置项目用户
[root@zhcd ~]# mysqladmin -uroot -p password '123456'
[root@zhcd ~]# mysql -uroot -p123456
mysql> create user prouser@’%’ identified by ‘123456’;
mysql> grant all privileges on *.* to prouser@localhost ;
配置项目数据库
[root@zhcd ~]# mysql -hlocalhost -uprouser -p'123456' < ./Charging/charge/BACKEND-SERVICE/RuoYi-Vue-master/sql/charging-deploy.sql
3.配置nfs服务,实现系统前后台数据的共享,具体如下
安装软件包
[root@zhcl ~]# yum -y install nfs-utils
标记修改配置文件如下
[root@Rocky8-200 ~]# tail -1 /etc/exports
/project/charge *(rw)
启动nfs服务
[root@Rocky8-200 ~]# systemctl enable nfs-server.service --now
将网站小程序页面、后台管理页以及后台服务软件相关数据文件拷贝至nfs共享目录
[root@Rocky8-200 ~]# ls /project/charge/
admin-page h5 jar
4.配置业务存储相关pv/pvc资源文件,实现业务数据存储和共享,资源文件yaml如下:
[root@master zhcd]# kubectl apply -f pv-pvc-charge.yaml
配置后端资源文件,配置java服务的service文件和运行程序pod的Deployment控制器的资源文件,实现后端业务服务pod的创建和后期版本控制,具体资源文件和执行命令如下:
[root@master zhcd]# kubectl apply -f zhcd-jar.yaml
创建后端程序的service服务,承接前端api转发过来的业务流量,具体资源文件和执行命令如下:
[root@master zhcd]# kubectl apply -f zhcd-service.yaml
5. 配置前端业务相关资源文件,实现前端小程序页面和后台管理服务构建,最终实现前后端数据的转发联动
创建configmap临时卷,用于共享前端nginx的配置文件,以便给前端pod注入配置文件数据
[root@master zhcd]# kubectl create configmap nginx-conf --from-file=/root/zhcd/nginx.conf
创建前端业务pod的控制器,实现前端pod的创建和控制,资源文件如下:
[root@master zhcd]# kubectl apply -f nginx.yaml
6.服务发布,创建前端业务服务,并且通过NodePort实现业务发布,通过30080端口发布小程序页面,通过30090发布后台管理页面,具体资源文件如下。
7. 服务访问登录测试,分别测试小程序页面和后端管理页面,
http://192.168.1.50:30080和http://192.168.1.50:30090,具体测试如下:
本次项目搭建和测试完成,即可交付!