前言
其实安装完neutron服务一套简单的OpenStack就已经创建完成了,首先搭建keystone负责颁发token令牌,接着安装glance服务为实例提供镜像,接着是placement他之前是和nova服务一起部署的现在单独拿出来的,接着就是nova负责管理实例,接着就是neutron网络了,现在我们创建一个实例的要素都有了,现在就可以通过命令行来进行创建了,
但是,现在这种方式很繁琐,对于运维人员来说这种方式可以接受但是对于客户或者是其他行业的人员来说,通过敲命令来让他们进行实例的创建是不现实的,所以为了方便操作,也是提高浏览的舒适度,官方还提供了一个web页面dashboard,就是通过页面来点点来进行操作,不用再字符终端输入命令,虽然两个效果是差不多的。
一、安装
1、安装软件
# yum install openstack-dashboard
2、修改配置文件
# vim /etc/openstack-dashboard/local_settings
允许您的主机访问dashboard
ALLOWED_HOSTS = ['horizon.example.com', 'localhost','controller']
OPENSTACK_HOST = "controller" # 配置仪表板在控制器节点上使用OpenStack服务
OPENSTACK_KEYSTONE_URL = "http://%s/identity/v3" % OPENSTACK_HOST #启用Identity API版本3
OPENSTACK_KEYSTONE_MULTIDOMAIN_SUPPORT = True #启用对域的支持
OPENSTACK_API_VERSIONS = { #配置API版本
"identity": 3,
"image": 2,
"volume": 3,
}
OPENSTACK_KEYSTONE_DEFAULT_DOMAIN = "Default" #配置默认为用户的默认域,这个在登录dashboard的时候可以看见
OPENSTACK_KEYSTONE_DEFAULT_ROLE = "user" #将user配置为您通过仪表板创建的用户的默认角色
TIME_ZONE = "PRC" #配置时区
配置memcached会话存储服务
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
'LOCATION': 'controller:11211',
},
}
SESSION_ENGINE = 'django.contrib.sessions.backends.cache'
# vim /etc/httpd/conf.d/openstack-dashboard.conf
WSGIApplicationGroup %{GLOBAL}
3、重启服务
# systemctl restart httpd.service memcached.service
报错:
通过官方文档中的方式“ http://controller/dashboard
. ”无法访问,
# vim /var/log/httpd/access_log
192.168.144.21 - - [02/Nov/2020:15:22:52 +0800] "GET /resource_providers?in_tree=2d309c89-aa2e-4b9f-b51f-4cf6bfddf0b7 HTTP/1.1" 200 804 "-" "nova-compute keystoneauth1/4.0.0 python-requests/2.22.0 CPython/3.6.8"
接着查看下日志,
# tailf /var/log/httpd/keystone_access.log
可以通过keystone来获取到内容
192.168.144.20 - - [02/Nov/2020:15:20:52 +0800] "POST /v3/auth/tokens HTTP/1.1" 201 3419 "-" "placement/unknown keystonemiddleware.auth_token/9.0.0 keystoneauth1/4.0.0 python-requests/2.22.0 CPython/3.6.8"
192.168.144.20 - - [02/Nov/2020:15:20:54 +0800] "GET /v3/auth/tokens HTTP/1.1" 200 3419 "-" "python-keystoneclient"
没看到明显的报错,这就很烦,估计是版本的不同有些操作变化,百度下,看看网上的大神有什么解决办法,
# cd /usr/share/openstack-dashboard/
使用Python语句重新生成下dashboard的访问页面,
# python3 manage.py make_web_conf --apache > /etc/httpd/conf.d/openstack-dashboard.conf
# systemctl restart httpd.service memcached.service
接着我们查看下生成dashboard的页面,
# vim /etc/httpd/conf.d/openstack-dashboard.conf
通过那句Python语句重新的生成了下这个主页文件,区别的话将端口修改成了80端口,里面还可以看到我们修改的那个GLOBAL全局参数,
现在我们访问dashboard就直接输入IP地址就可以了,这里的域就是我们配置文件中写的“Default”,下面用户名和密码就是我们设置中的admin和123,
能看到这个页面就证明,dashboard没得问题了,可以正常访问了,从概况这里可以看到默认有创建的安全组一个,还有一个下面的安全组规则,还可以看到我们刚才创建的provider网络一个,
接着还能看到我们在部署glance的时候上传的cirros镜像,