一、Dashboard介绍
Dashboard(horizon)是一个web接口,使得云平台管理员以及用户可以管理不同的Openstack资源以及服务。这个部署示例使用的是 Apache Web 服务器。dashboard仅在核心服务中要求认证服务。你可以将dashboard与其他服务,如镜像服务、计算服务和网络服务等结合使用。你也可以在单击服务环境如对象存储中使用dashboard。
Dashboard 特点:
提供一个web界面操作Openstack的系统。
使用Django框架基于Openstack API开发(开发就是更换下模板)
支持将Session 存储在DB、Memcached
支持集群
创建虚拟机有三种方法:
horizon
命令行
API
本次案例将要在计算节点node2上来安装horizon。因为要在计算节点安装,所以时间同步到问题就非常重要了,一定要保证同步时间问题。
如果服务没有启动,就先不要再keystone上注册,因为horizon只认keystone,它从keystone上看到你注册的服务了,就会认为服务已经启动,但是此时你的服务是么有启动的,这样会报错(虽然不影响使用)
二、Dashboard安装配置
1、安装包
yum install openstack-dashboard
2、编辑文件 /etc/openstack-dashboard/local_settings 并完成如下动作
在
controller
节点上配置仪表盘以使用 OpenStack 服务:
OPENSTACK_HOST = "controller" #这里controller是keystone的地址
允许所有主机访问仪表板:
ALLOWED_HOSTS = ['*', ] #这里是可以控制的类似nginx的黑白名单
配置
memcached
会话存储服务:
SESSION_ENGINE = 'django.contrib.sessions.backends.cache' CACHES = { 'default': { 'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache', 'LOCATION': 'controller:11211', } } #当有集群的时候,为了保持session的共享问题,session都要存储在memcache中(当然也可以是其他的缓存服务) #将其他的会话存储服务配置注释。
启用第3版认证API:
OPENSTACK_KEYSTONE_URL = "http://%s:5000/v3" % OPENSTACK_HOST
启用对域的支持
OPENSTACK_KEYSTONE_MULTIDOMAIN_SUPPORT = True #这里只有v3版本才支持
这里如果没有成功,是环境变量中有一个没有配置
export OS_IDENTITY_API_VERSION=3
配置API版本:
OPENSTACK_API_VERSIONS = { "identity": 3, "p_w_picpath": 2, "volume": 2, }
通过仪表盘创建用户时的默认域配置为
default
:
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_***': False, 'enable_fip_topology_check': False, }
可以选择性地配置时区:
TIME_ZONE = "TIME_ZONE"
3、完成安装
重启web服务器以及会话存储服务:
systemctl restart httpd.service
验证仪表盘的操作。
在浏览器中输入 ``http://controller/dashboard``访问仪表盘。
验证使用 admin
或者``demo``用户凭证和``default``域凭证。
附件为修改后的配置文件,大家可以和自己的diff!!