openstack horizon 極其緩慢的問題

2021-08-23 12:02:09 字數 1046 閱讀 4268

openstack執行一段時間後變慢了。登陸horizon變的很慢,與現有硬體環境差距太大,效果甚不理想。

首先,,檢視了下apache2日誌沒什麼報錯,感覺是認證的問題。執行了keystone user-list 好幾秒才返回結果,問題基本定位是keystone問題。

然後,檢視mysql資料庫,其cpu利用率一直非常高,進入資料庫show processlist看了下發現下面語句執行很長時間執行不完:

> use keystone;

> select id,expires,extra,valid from token;

肯定是token錶太大或者沒有索引造成,用explain看了下這條sql 一百多萬行全文掃瞄,看了下表內容都是臨時認證的token資訊,沒什麼大用直接清空了,然後執行keystone命令很快,清空瀏覽器快取後登陸飛快。
關於show processlist具體資訊,請參考這裡: 

上面只是暫時處理方法,線上用我覺得最好加索引,定期備份以前的資料到另外乙個表。

1、採用清除token表的方式解決問題 

2、memcached存放token(貌似我覺得redis更好) 

詳情,請參考該文:

1、可能伺服器負載太高。

2、可能是keystone資料庫裡的token表太久未清理,錶太大。刪除較早的token:

delete from token where not date_sub(curdate(),interval 2 day)<=expires;(2天前的token)
有時確實token錶太大執行這個語句會超時,可以直接刪除token表的全部內容:

truncate table token
注意:如果線上用的不要直接清空token,這樣不清瀏覽器快取有可能會導致登陸不了。 

補充:看了下原來nova和quantum的大多數功能都需要驗證token,當token數量太多時,導致在資料庫查詢token時要花費很多時間,而且有些功能牽涉到多個元件,就要多次查詢token。

openstack horizon 極其緩慢的問題

使用openstack o版本,但是發現horizon極其的慢,以至於懷疑機器不行。今天抽空專門研究了一下,記錄如下 vi etc keystone keystone.conf token 官方預設的只有下面這句話 provider fernet caching true provider uuid...

Mac啟動Springboot專案緩慢問題

第一步 開啟 etc hosts檔案 原內容 host database localhost is used to configure the loopback inte ce when the system is booting.do not change this entry.127.0.0.1...

極其有用的函式

如需使用sleep函式 那麼在程式的最開始加上下面這一行 注意呼叫的時候sleep的s要大寫 private declare sub sleep lib kernel32 byval dwmilliseconds as long 生成乙個指定範圍的隨機數 private function rndz ...