Mysql-单节点
在Rancher上Mysql可以通过应用商店去安装,但因为应用商店里的版本没有时间去维护多套模板,所以对于开发使用,这里提供手工部署的方式。
1、配置密文卷(Secret)
一般我们将敏感信息配置为密文卷,这里配置mysql的root密码
名称:mysql8-pwd (自定义)
作用域:根据需要选择(如果不想所有命名空间使用,就自己选择一个命名空间)
键: MYSQL_ROOT_PASSWORD
值:xxx (自行定义密码)
如果有多个可以点击
添加密码
继续添加其他的,添加完点击保存
2、配置映射卷(ConfigMap)
配置映射卷跟密文卷从功能上差不多,只是一个明文,一个进行了简单的base64编码。
名称:mysql8-conf (自定义)
命名空间:dmm-lab(根据实际项目选择)
键值:这里为具体mysql的文件配置内容
- mysql.cnf
这里对mysql进行配置,相关的参数根据项目实际情况自行调整
[mysqld]
skip-name-resolve
skip-log-bin
host_cache_size=0
lower_case_table_names=1
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
init_connect='SET NAMES utf8mb4'
skip-character-set-client-handshake=true
default-time_zone='+8:00'
- timezone
设置默认时区,默认时区为UTC
,这里设置为CST
Asia/Shanghai
3、部署Mysql服务
名称:dmm-mysql8 (自定义名称)
Docker镜像:172.16.102.2:5000/library/mysql:8.0.30 (自行选择公共镜像的版本)
命名空间:项目分配的命名空间(建议以应用的英文简称)
端口映射:容器端口-3306 ,网络模式-NodePort (开发环境以
NodePort
方式,方便本地连接,生产环境建议以ClusterIP
,提升安全性)添加附加资源:类型-Secret,选择相应的键,前缀或别名-
MYSQL_ROOT_PASSWORD
(如果环境变量跟键一样,可以不配置)
配置数据卷,添加数据存储PVC卷与文件配置映射卷
容器路径:/var/lib/mysql
配置映射卷:
容器路径:这里需要配置子路径,这样就只会覆盖一个文件,如果没指定则会覆盖整个目录
/etc/mysql/conf.d/mysql.cnf 子路径:mysql.cnf
/etc/timezone 子路径:timezone
添加PVC
名称:dmm-mysql-pvc (自定义)
存储类:rook-ceph-block
容量:根据开发需要设置数据容量大小(建议不要设置得过大,以免浪费,ceph上存储资源有限)
4、测试连接
配置完成后,点击启动
,启动成功后,通过NodePort暴露的端口进行访问.
启动后,显示出来的端口,如:23802则为mysql映射出来的端口,测试集群通过:172.16.103.10 进行服务器连接
验证数据是否可以连接,账号为root
,密码为密文卷设置MYSQL_ROOT_PASSWORD
的值,实际应用中通过root账号再去创建相关应用的用户与数据库。