Rancher2.5.7部署Mysql8.0.22

Rancher2.5.7部署Mysql8.0.22


1、安装NFS,配置NFS

###############以下命令在数据挂载服务器执行(157.16.1.15)
#安装nfs
yum -y install nfs-utils rpcbind
#创建数据挂载物理路径
mkdir -p /data/nfsdata
#分配目录权限为755
chmod 755 -R /data/nfsdata
#配置挂载
cat >> /etc/exports <*(rw,no_root_squash)
EOF
#启动rpc跟nfs
systemctl start rpcbind.service
systemctl status rpcbind.service
systemctl start nfs.service
systemctl status nfs.service
systemctl enable rpcbind.service
systemctl enable nfs.service

###############以下命令在其他服务器执行
#安装nfs
yum -y install nfs-utils rpcbind
#创建挂载的目录
mkdir -p /data/nfsdata
#启动rpc跟nfs
systemctl start rpcbind.service
systemctl status rpcbind.service
systemctl start nfs.service
systemctl status nfs.service
systemctl enable rpcbind.service
systemctl enable nfs.service

2、创建持久卷(PV)

使用Rancher创建PV
Rancher2.5.7部署Mysql8.0.22_第1张图片

填写名称,选择卷插件为NFS Share,填写容量,填写路径(在第一步创建的数据挂载路径),填写服务器(数据挂载服务器IP地址157.16.1.15),访问模式:单主机读写,多主机读写
Rancher2.5.7部署Mysql8.0.22_第2张图片

3、创建持久卷(PVC)

选择集群中的Default
Rancher2.5.7部署Mysql8.0.22_第3张图片

点击添加PVC
Rancher2.5.7部署Mysql8.0.22_第4张图片

填写名称,选择命名空间,如果不存在则点击创建新的命名空间,选择持久卷为上一步创建的mysqlpv,选择访问模式:单主机读写,多主机读写;填写完毕后点击创建
Rancher2.5.7部署Mysql8.0.22_第5张图片

4、创建配置映射

选择 资源/配置映射,点击添加配置映射
Rancher2.5.7部署Mysql8.0.22_第6张图片

添加配置映射,填写名称,选择命名空间mysql;配置内容为下

#配置映射键
mysqld.cnf

#值
[mysqld]
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
datadir = /var/lib/mysql
secure_file_priv=/var/lib/mysql
# secure-file-priv= NULL
#log-error = /var/log/mysql/error.log
# By default we only accept connections from localhost
#bind-address = 127.0.0.1
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
character-set-server=utf8
lower_case_table_names=1

Rancher2.5.7部署Mysql8.0.22_第7张图片

5、部署服务一(配置挂载方式)

点击部署服务
Rancher2.5.7部署Mysql8.0.22_第8张图片

填写服务信息:
名称,Docker 镜像(这里选择mysql:8.0.22),命名空间(选择mysql),填写端口映射,填写环境变量,添加PVC数据卷,添加配置映射卷

Rancher2.5.7部署Mysql8.0.22_第9张图片

设置数据卷
Rancher2.5.7部署Mysql8.0.22_第10张图片

设置配置卷
Rancher2.5.7部署Mysql8.0.22_第11张图片

点击启动后等待服务安装,待状态显示为Active后则表示服务安装成功
Rancher2.5.7部署Mysql8.0.22_第12张图片

6、部署服务二(非配置挂载方式,这种方式部署可以不用创建配置映射)

和第一种方式不同的是数据卷挂载方式配置不同需要在数据挂载服务创建好mysql配置
#nfs目录下面创建目录
mkdir -p /data/nfsdata/mysqlmaster/data  数据目录
mkdir -p /data/nfsdata/mysqlmaster/conf  配置文件目录


#创建配置文件
touch /data/nfsdata/mysqlmaster/conf/my.cnf
chmod 755 -R /data/nfsdata/mysqlmaster/conf/

#添加配置
vi /data/nfsdata/mysqlmaster/conf/my.cnf
#配置信息
[mysqld]
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
datadir = /var/lib/mysql
secure_file_priv=/var/lib/mysql
# secure-file-priv= NULL
#log-error = /var/log/mysql/error.log
# By default we only accept connections from localhost
#bind-address = 127.0.0.1
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
character-set-server=utf8
lower_case_table_names=1

创建完成后按照下图填写具体参数即可

#环境变量
MYSQL_ROOT_PASSWORD       zzx123456
TZ                        Asia/shanghai

#数据卷
/var/lib/mysql/           mysql/data
/etc/mysql/my.cnf         mysql/conf/my.cnf

Rancher2.5.7部署Mysql8.0.22_第13张图片

7、设置Mysql远程访问

服务部署成功后,选择mysql服务,点击执行命令行功能
Rancher2.5.7部署Mysql8.0.22_第14张图片
在弹出的命令行工具输入:mysql -uroot -pzzx123456
Rancher2.5.7部署Mysql8.0.22_第15张图片
进入之后切换至mysql库,查看user表中的用户信息

mysql> use mysql
mysql> select host, user, authentication_string, plugin from user;
+-----------+------------------+------------------------------------------------------------------------+-----------------------+
| host      | user             | authentication_string                                                  | plugin                |
+-----------+------------------+------------------------------------------------------------------------+-----------------------+
| localhost | mysql.infoschema | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED | caching_sha2_password |
| localhost | mysql.session    | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED | caching_sha2_password |
| localhost | mysql.sys        | $A$005$THISISACOMBINATIONOFINVALIDSALTANDPASSWORDTHATMUSTNEVERBRBEUSED | caching_sha2_password |
| localhost | root             | $A$005$)C%}|B/O#6>     cNUWhdcLdaapuvYsxy2VqkPkMwwU.0AM9tJ1iO5SVr7 | caching_sha2_password |
+-----------+------------------+------------------------------------------------------------------------+-----------------------+

修改root用户远程访问,刷新修改,赋予权限

mysql> update user set host='%' where user='root';
mysql> flush privileges;

如果防火墙关闭的话root已经可以连接了,我觉得下面这句命令应该是给其它用户授予的,root本身已经有这些权限

mysql> GRANT ALL ON *.* TO 'root'@'%'; 
#这个指令的意思是给予用户名为root主机名为任何的对象在任何库任何表上的所有权限,我自己理解的

你可能感兴趣的:(k8s,Docker命令,rancher)