一、Dashboard介绍

Dashboard(horizon)是一个web接口,使得云平台管理员以及用户可以管理不同的Openstack资源以及服务。这个部署示例使用的是 Apache Web 服务器。dashboard仅在核心服务中要求认证服务。你可以将dashboard与其他服务,如镜像服务、计算服务和网络服务等结合使用。你也可以在单击服务环境如对象存储中使用dashboard。

Dashboard 特点:

  • 提供一个web界面操作Openstack的系统。

  • 使用Django框架基于Openstack API开发(开发就是更换下模板)

  • 支持将Session 存储在DBMemcached

  • 支持集群

创建虚拟机有三种方法:

  • 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``域凭证。

wKioL1h0TPLgUR9wAADwbxLrC6Q689.png-wh_50

附件为修改后的配置文件,大家可以和自己的diff!!