OpenStack-Ocata版+CentOS7.6 雲平台環境搭建 — 8.儀表盤 Dashboard(horizon)安裝配置


儀表盤
Dashboard(horizon)是一個web接口,使得雲平台管理員以及用戶可以管理不同的Openstack資源以及服務。
這個部署示例使用的是 Apache Web 服務器。

節點配置信息說明:

控制節點:controller:
IP:192.168.164.128
hostname&hosts:likeadmin

計算加點:Nova:

IP:192.168.164.129
hostname&hosts:likenode

塊存儲節點:cinder:

IP:192.168.164.136
hostname&hosts:likeblock

1.安裝和配置
這個部分將描述如何在控制節點上安裝和配置儀表板。

dashboard僅在核心服務中要求認證服務。你可以將dashboard與其他服務,如鏡像服務、計算服務和網絡服務等結合使用。你也可以在單擊服務環境如對象存儲中使用dashboard。
注解:這部分假設認證服務使用的Apache HTTP服務和Memcached服務,已經像在 :ref:`Install and configure the Identity service <keystone-install>`中描述的一樣正確的安裝,配置和操作。

2.安全並配置組件
注解:默認配置文件在各發行版本中可能不同。你可能需要添加這些部分,選項而不是修改已經存在的部分和選項。另外,在配置片段中的省略號(...)表示默認的配置選項你應該保留。

安裝軟件包:
# yum install openstack-dashboard

編輯文件 /etc/openstack-dashboard/local_settings 並完成如下動作:
在 controller 節點上配置儀表盤以使用 OpenStack 服務:

OPENSTACK_HOST = "likeadmin"
Allow your hosts to access the dashboard:

ALLOWED_HOSTS = ['*']
注解:ALLOWED_HOSTS也可以['*']接受所有主機。 這可能對開發工作有用,但可能不安全,不應在生產中使用。

配置 memcached 會話存儲服務:
SESSION_ENGINE = 'django.contrib.sessions.backends.cache'

CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
'LOCATION': 'likeadmin:11211',
}
}
注解

將其他的會話存儲服務配置注釋。

啟用第3版認證API:

OPENSTACK_KEYSTONE_URL = "http://%s:5000/v3" % OPENSTACK_HOST
啟用對域的支持

OPENSTACK_KEYSTONE_MULTIDOMAIN_SUPPORT = True
配置API版本:

OPENSTACK_API_VERSIONS = {
"identity": 3,
"image": 2,
"volume": 2,
}
將默認配置為您通過儀表板創建的用戶的默認域:

OPENSTACK_KEYSTONE_DEFAULT_DOMAIN = "Default"
通過儀表盤創建的用戶默認角色配置為 user :

OPENSTACK_KEYSTONE_DEFAULT_ROLE = "user"
如果您選擇網絡參數1,禁用支持3層網絡服務:

OPENSTACK_NEUTRON_NETWORK = {
...
'enable_router': False,
'enable_quotas': False,
'enable_distributed_router': False,
'enable_ha_router': False,
'enable_lb': False,
'enable_firewall': False,
'enable_vpn': False,
'enable_fip_topology_check': False,
}
可以選擇性地配置時區:

TIME_ZONE = "Asia/Shanghai"

完成安裝¶
重啟web服務器以及會話存儲服務:
# systemctl restart httpd.service memcached.service

**如果按裝后無法打開OpenStack的登錄界面,需要在/etc/httpd/conf.d/openstack-dashboard.conf文件里加入WSGIApplicationGroup %{GLOBAL} 並重啟服務 **
[root@likeadmin network-scripts]# cd /etc/httpd/conf.d/
[root@likeadmin conf.d]# vi openstack-dashboard.conf

WSGIDaemonProcess dashboard
WSGIProcessGroup dashboard
WSGISocketPrefix run/wsgi
WSGIApplicationGroup %{GLOBAL}

WSGIScriptAlias /dashboard /usr/share/openstack-dashboard/openstack_dashboard/wsgi/django.wsgi
Alias /dashboard/static /usr/share/openstack-dashboard/static

<Directory /usr/share/openstack-dashboard/openstack_dashboard/wsgi>
Options All
AllowOverride All
Require all granted
</Directory>

<Directory /usr/share/openstack-dashboard/static>
Options All
AllowOverride All
Require all granted
</Directory>
[root@likeadmin conf.d]#
[root@likeadmin conf.d]# systemctl restart httpd.service memcached.service

登錄時有如下報錯:
Something went wrong!
An unexpected error has occurred. Try refreshing the page. If that doesn't help, contact your local administrator.
查詢/var/log/httpd/error_log發現有如下的報錯:
less /var/log/httpd/error_log
[Fri Mar 08 12:38:07.798417 2019] [:error] [pid 32598] "Unable to create a new session key. "
[Fri Mar 08 12:38:07.798419 2019] [:error] [pid 32598] RuntimeError: Unable to create a new session key. It is likely that the cache is unavailable.
[root@likeadmin conf.d]#

解決方法
1.修改配置文件
vim /etc/openstack-dashboard/local_settings
2.將SESSION_ENGINE值修改

SESSION_ENGINE = 'django.contrib.sessions.backends.cache'
改為
SESSION_ENGINE = 'django.contrib.sessions.backends.file'

3.重啟服務,然后再次登錄。
systemctl restart httpd.service memcached.service


3.驗證:
在瀏覽器中輸入如下地址:
http://likeadmin/dashboard/

驗證使用 admin 或者``demo``用戶憑證和``default``域憑證。
賬號和密碼:admin djl18001

以下是登錄界面:

注:至此我們已基本上完成OpenStack環境搭建。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM