Keystone Too Many Connections Problem

環境 OpenStack HA 3 controllers
我的keystone服務是關閉的。由httpd來接管keystone服務

[root@controller1 ~]# systemctl stop openstack-keystone
[root@controller1 ~]# systemctl start httpd

但是我的keystone連不上數據庫了。打開log

vi /var/log/httpd/keystone_wsgi_admin_error.log
keystone.common.wsgi OperationalError: (pymysql.err.OperationalError) (1040, u'Too many connections')

數據庫連接數太多了。但是我的數據庫的連接數設置是1024。我把值改爲-1。重啓mariadb。仍然連不上數據庫。

由於使用HAProxy。controller2上的數據庫服務關閉了。虛擬IP飄到了controller2上。導致集羣連不上數據庫

DEBUG方法

首先看虛擬IP在哪個controller上。在那個controller上檢查服務用沒有起來

[root@controller1 ~]# netstat -plunt | grep 3305
tcp        0      0 192.168.56.200:3305     0.0.0.0:*               LISTEN      17977/haproxy
[root@controller1 ~]# netstat -plunt | grep 3306
tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN      14862/mysqld

我的haproxy配置文件如下

listen galera-cluster
    bind controller:3305
    balance source
    server controller1 controller1:3306 check port 4567 inter 2000 rise 2 fall 5
    server controller2 controller2:3306 check port 4567 inter 2000 rise 2 fall 5 backup

通過vip測試keystone數據庫連接

mysql -ukeystone_admin -pf15c18d2db7a4804 -h controller -P 3305

通過真實IP測試keystone數據庫連接

mysql -ukeystone_admin -pf15c18d2db7a4804 -h controller1 -P 3306

最後讓虛擬IP飄到controller1上,或者啓動controller2的數據庫服務就可以了。

發佈了91 篇原創文章 · 獲贊 55 · 訪問量 41萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章