目前K8s微服务技术在企业中应用甚广,本案例旨在通过K8s部署论坛服务并实现服务的搭建,最终实现项目发布,相关操作流程如下。

第一步,配置项目所需数据库服务

准备数据库服务,相关的库、表需要提前授权,具体操作命令如下:

[root@database ~]# yum -y install mariadb mariadb-server

[root@database ~]# systemctl enabled mariadb.service --now

[root@database ~]#mysql

MariaDB [(none)]> create database bbs;

Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> grant all on bbs.* to runbbs@'%' identified by '123456';

Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> exit

Bye

第二步,配置项目相关业务镜像,使用镜像仓库进行管理。

提前准备好论坛所需要程序包,本案例中为discuz.tar.gz,书写Dockerfile文件,使用Docker build命令生成系统所需镜像,具体操作命令如下:

K8s部署论坛项目并实现服务发布_数据库

查看镜像并将镜像推送至harbor镜像仓库

[root@master discuz]# docker images

[root@master discuz]# docker push harbor:80/discuz/bbs:http

登录镜像仓库查看

K8s部署论坛项目并实现服务发布_资源文件_02

第三步

配置资源文件,实现pod服务的创建,,具体资源文件和执行命令如下。

创建业务pod的控制器,实现pod的创建和管理,资源文件如下:

K8s部署论坛项目并实现服务发布_数据库_03

配置资源文件,实现前端service服务的创建,承接前端业务流量,具体资源文件和执行命令如下。

K8s部署论坛项目并实现服务发布_数据库_04

执行资源文件,操作如下

[root@master discuz]# kubectl apply -f discuz.yaml

[root@master discuz]# kubectl apply -f discuz-server.yaml

验证如下:

K8s部署论坛项目并实现服务发布_资源文件_05

第四步

登录web页面,对论坛进行初始化操作,具体操作如下:

K8s部署论坛项目并实现服务发布_操作命令_06

同意后,进行系统环境检,具体如下:

K8s部署论坛项目并实现服务发布_数据库_07

最后输入数据库相关信息,完整安装配置,如下:

K8s部署论坛项目并实现服务发布_资源文件_08

K8s部署论坛项目并实现服务发布_资源文件_09

第五步,登录论坛测试,完成登录如下。

K8s部署论坛项目并实现服务发布_操作命令_10

登录完整,本项目完整。