K8s配置文件搭建参考https://blog.csdn.net/s7799653/article/details/88903545
jumpserver文档https://docs.jumpserver.org/zh/master/install/docker_install/
创建数据库
create database jumpserver default charset 'utf8' collate 'utf8_bin';
grant all on jumpserver.* to 'jumpserver'@'%' identified by 'weakPassword';
容器启动指令
docker run --name jms_all -d \
-v /opt/jumpserver/data:/opt/jumpserver/data \
-p 80:80 \
-p 2222:2222 \
-e SECRET_KEY=xxxxxx \
-e BOOTSTRAP_TOKEN=xxx \
-e DB_HOST=192.168.x.x \
-e DB_PORT=3306 \
-e DB_USER=root \
-e DB_PASSWORD=xxx \
-e DB_NAME=jumpserver \
-e REDIS_HOST=192.168.x.x \
-e REDIS_PORT=6379 \
-e REDIS_PASSWORD=xxx \
--privileged=true \
jumpserver/jms_all:v2.2.1
搭建主要分四步:
1.搭建NFS服务器,用于挂载存储mysql和Redis数据,以及jumpserver数据。
2.创建mysql
3.创建Redis
4.创建jumpserver
搭建NFS服务器
创建存储路径
# mkdir /opt/nfs/
# cd /opt/nfs
# mkdir jumpserver mysql redis
安装nfs服务
# yum install nfs-utils -y
# vim /etc/exports
/opt/nfs 10.1.1.0/24(rw,sync,no_root_squash,no_all_squash)
# systemctl start nfs-server
# systemctl enable nfs-server
在RancherUI上创建三个持久卷(PV)
在集群中部署mysql和Redis服务
Redis
设置pod类型为StatefulSet,docker镜像为redis:5.0.9,端口映射为主机端口。
设置环境变量:(我这里就没设置密码了,默认就是空密码)
LANG=“en_US.UTF-8”
TZ=“Asia/Shanghai”
添加新的PVC,挂载容器中数据路径为/data
Mysql
通用设置pod类型也为有状态应用。docker镜像为mysql:5.7,端口映射为主机的3306端口。
设置环境变量:
MYSQL_ROOT_PASSWORD=“mysqlpasswd”
TZ=“Asia/Shanghai”
添加新的PVC,挂载容器中的数据路径为/var/lib/mysql
设置jumpserver服务
设置pod类型为Deployment,docker镜像为jumpserver/jms_all:v2.2.0。端口映射80(web)和2222(ssh)端口。
设置环境变量:
BOOTSTRAP_TOKEN=“*****” #生成方式: cat /dev/urandom | tr -dc A-Za-z0-9 head -c 50
SECRET_KEY=“***” #生成方式: cat /dev/urandom | tr -dc A-Za-z0-9 | head -c 16
DB_HOST=“mysql所在主机IP地址”
DB_NAME=“jumpserver”
DB_PASSWORD=“jumppasswd”
DB_PORT=“3306”
DB_USER=“jump”
REDIS_HOST=“redis所在主机IP”
REDIS_PASSWORD=“” #没有就设置为空
REDIS_PORT=“6379”
添加新的PVC,挂载容器中的数据路径为/opt/jumpserver/data
保存成功后,等待片刻部署,访问我的部署主机节点的30080端口(http://10.1.1.124:30080)就可以开始使用jumpserver了。当然也可以给jumpserver配置一个ingress-nginx,使用域名来访问。