k8s环境部署实战

K8s集群环境安装

集群搭建使用kubeadm方式,版本1.23.0,机器开通公网访问权限

  • k8s集群部署步骤:
  1. 安装脚本在文档同级目录,一键执行.
    脚本功能:执行过程中输入本机ip地址,在本机安装docker、k8s集群、k8s网络组件

sh k8s-install.sh

  1. 检查集群状态:

kubectl get no #安装nfs持久化存储,定义持久化目录

基础组件安装

  1. 上传部署包:

src_autodeploy.zip

  1. 上传至集群节点任意位置并解压:

unzip src_autodeploy.zip

  1. 执行以下命令编辑配置映射文件,修改可变参数(镜像版本、基础组件密码、存储类名称等):

cd src_autodeploy
vi env.conf

  1. 一键部署基础组件(基础组件包括 mysql、redis、minio、nacos、rocketmq),如果客户有提供基础组件,可根据情况去掉对应基础组件部署步骤,将基础组件对应账户信息在env.conf中修改即可

cd basic-middle
sh basic-middle-install.sh

  1. redis集群关联(需要查询redis服务状态为Running后,执行redis集群创建脚本)
    查询redis服务状态:

kubectl get po -A | grep redis-cluster

执行redis集群创建脚本(说明:脚本执行无报错则集群关联成功):

sh redis-cluster-create.sh

  1. mysql初始化脚本导入(需要查询mysql服务状态为Running后,将初始化脚本导入至mysql数据库中)
    查询mysql服务状态:

kubectl get po -A | grep mysql

将初始化脚本导入mysql数据库中(通过kubectl exec进入指定的pod中,连接mysql,执行脚本导入):

kubectl -n middle_namespace exec -i pod_mysql – mysql -uroot -pmysql_pwd < init-mysql/initTerminal.sql

  1. 验证基础组件服务状态:

kubectl get po -n $middle_namespace

查看日志命令:

kubectl logs $pod_name -n $middle_namespace

应用服务安装

  1. 修改应用可变参数(涉及镜像版本、命名空间等)编辑配置映射文件:

cd src_autodeploy
vi env.conf

  1. 一键部署应用服务,一键安装基础组件

cd src-deployment-app
sh src-app-install.sh

  1. 验证SRC应用服务状态,检查各服务状态是否正常

kubectl get po -n $app_namespace

查看日志命令:

kubectl logs $pod_name -n $app_namespace