温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

K8S 配置mysql配置文件不生效问题处理

发布时间:2020-06-18 12:11:05 来源:网络 阅读:857 作者:槑槑的嫑嫑 栏目:云计算

平台使用Rancher 2.x

问题原因是,一个测试用的mysql需要开启binlog日志,我想着这个不是挺简单的嘛~

于是,配置了一个config,挂载到对应的mysql配置文件下,然后重新部署一下~
然而进容器一看,配置文件是挂载上了,可是配置却未生效。。

具体如下:

1、因为使用Rancher平台,所以配置及挂载这一步是在web端进行的(祸根。)。

即添加一个configmap,覆盖掉原配置文件:

#开启binlog日志的配置文件~

[mysqld]
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
datadir = /var/lib/mysql
#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
log-bin=/var/lib/mysql/mysql-bin
server-id=1

挂载到mysql的/etc/mysql/mysql.conf.d/下,覆盖掉mysqld.cnf

2、然鹅并没生效,配置文件确实挂载了,有点怀疑人生...
3、于是修改其他配置,修改其他配置查看是不是binlog配置问题(怀疑人生。)
即随便修改了下datadir的路径:

[mysqld]
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
datadir = /home/mysql
#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
log-bin=/var/lib/mysql/mysql-bin
server-id=1

4、然后发现配置文件依然挂载了,这个也没生效!!!
5、查看yaml文件,如下:

 - configMap:
          defaultMode: 292
          name: mysql-config
          optional: false
        name: vol1

查看configMap的defaultMode:
kubectl explain deployment.spec.template.spec.volumes.configmag

defaultMode <integer>
Optional: mode bits to use on created files by default. Must be a value
between 0 and 0777. Defaults to 0644. Directories within the path are not
affected by this setting. This might be in conflict with other options that
affect the file mode, like fsGroup, and the result can be other mode bits
set.

6、对照查看,发现Rancher默认模式为400,修改成644后,重新部署~可以了!

之前nginx的配置使用默认模式400可以生效,mysql的配置文件并不可以~

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI