ERROR MariaDB ERROR 2002 (HY000): Can't connect to MySQL server on 'controller' (115)
解决方案:
vi /etc/my.cnf.d/openstack.cnf # 如果没有这个就修 my.cnf 或百度 'Centos 修改 MariaDB 配置文件'
将 bind-address 原有赋值注释掉
改为
bind-address=0.0.0.0
解决过程回溯
部署T版 keystone 时遇到老问题, 排查过程如下
PS: 双节点, hostname -> controller -> 10.0.0.11
1.排查MySQL指令访问权限
a. mysql -h localhost -u<db_name> -p<db_pass> -e 'show databases;'
b. mysql -h controller -u<db_name> -p<db_pass> -e 'show databases;'
c. mysql -h 192.168.75.128 -u<db_name> -p<db_pass> -e 'show databases;'
d. mysql -h 10.0.0.11 -u<db_name> -p<db_pass> -e 'show databases;'
结果: b、d 不通
2.排查 Mysql 表
MariaDB [(none)]> select host,user from mysql.user; # 官网 Grant 只配置 localhost & %
补上:
MariaDB [(none)]> GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'controller' IDENTIFIED BY 'keystone';
MariaDB [(none)]> flush privileges;
结果: 不行 (部署R版时 此方法解决过部分问题)
3.排查 Mysql 配置文件
vi /etc/my.cnf.d/openstack.cnf
bind-address=192.168.75.128 改为 bind-address=0.0.0.0
结果: ok
(☞゚ヮ゚)☞ ☜(゚ヮ゚☜))