openstack-train安装 · 2022年10月11日 0

手动部署OpenStack Train双节点-安装dashboard服务

一、安装与配置Dashboard服务

本任务所有操作均在计算节点上完成。
由于Dashboard运行需要 apache,为了不影响控制节点上的 keystone 等其他服务使用的 apache,故在计算节点上安装。

1、安装Dashboard软件包

[root@compute ~]#  yum -y install openstack-dashboard

这里只需要安装一个软件包“openstack-dashboard”。

2、配置Dashboard服务

第1步,打开配置文件。

[root@compute ~]# vi /etc/openstack-dashboard/local_settings

第2步,配置Web服务器的基本信息。
以下配置将允许从任意主机访问Web服务。

ALLOWED_HOSTS = ['*']

以下配置指定控制节点的位置。

OPENSTACK_HOST = "controller" 

以下配置将当前时区指向“亚洲/上海”。

TIME_ZONE = "Asia/Shanghai"

第3步,配置缓存服务。

SESSION_ENGINE = 'django.contrib.sessions.backends.cache'
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
'LOCATION': 'controller:11211',
}
}

第4步,启用对多域的支持。
增加一行,允许使用多个域。

OPENSTACK_KEYSTONE_MULTIDOMAIN_SUPPORT = True

第5步,指定OpenStack组件的版本。
新增如下信息,分别对应OpenStack的认证、镜像、存储组件的版本号。

OPENSTACK_API_VERSIONS = {
"identity": 3,
"image": 2,
"volume": 3,
}

第6步,设置通过Dashboard创建的用户所属的默认域。
在配置文件中新增一行:

OPENSTACK_KEYSTONE_DEFAULT_DOMAIN = "Default"

第7步,设置通过Dashboard创建的用户的默认角色。

OPENSTACK_KEYSTONE_DEFAULT_ROLE = "user"

第8步,设置如何使用Neutron网络。
在配置文件中按照以下代码修改“OPENSTACK_NEUTRON_NETWORK”的配置。

OPENSTACK_NEUTRON_NETWORK = {
    'enable_auto_allocated_network': False,
    'enable_distributed_router': False,
    'enable_fip_topology_check': False,
    'enable_ha_router': False,
    'enable_ipv6': False,
    'enable_quotas': False,
    'enable_rbac_policy': False,
    'enable_router': False,

'default_dns_nameservers': [],
'supported_provider_types': ['*'],
'segmentation_id_range': {},
'extra_provider_types': {},
'supported_vnic_types': ['*'],
'physical_networks': [],

二、发布Dashboard服务

由于Dashboard是一个Web应用,必须要运行在Apache这样的Web服务器上,因此要进行设置,让Apache服务器知道如何运行该服务。

1.重建Dashboard的Web应用配置文件

由于Apache的默认网站主目录为“/var/www/html/”,而Dashboard安装好以后,它的网站目录为“/usr/share/openstack-dashboard”,因此需要一个配置文件让Apache找到该网站目录。
第1步,进入Dashboard网站目录。

[root@compute ~]# cd /usr/share/openstack-dashboard

第2步,编译生成Dashboard的WEB服务配置文件。

[root@compute openstack-dashboard]# python manage.py make_web_conf --apache > /etc/httpd/conf.d/openstack-dashboard.conf

2.建立策略文件的软连接

在“/etc/openstack-dashboard”中内置了一些策略文件,它们是Dashboard与其他组件交互时的默认策略。可以用下面的方法查看该目录下的策略文件。

[root@compute ~]# ls /etc/openstack-dashboard
cinder_policy.json  glance_policy.json  keystone_policy.json  local_settings  neutron_policy.json  nova_policy.d  nova_policy.json

为了让这些策略文件生效,需要将它们放置到Dashboard项目中。下面采用软连接的方式将这些策略文件放入项目。

[root@compute ~]# ln  -s  /etc/openstack-dashboard /usr/share/openstack-dashboard/openstack_dashboard/conf

3.启动Apache服务器,让配置生效

[root@compute ~]# systemctl start httpd 

三、检测Dashboard服务

第1步,登录系统。
在本地计算机浏览器的地址栏中输入计算节点的IP地址“http://192.168.10.20”(安装Dashboard的服务器地址),进入【登录】界面
在【登录】界面中的【域】文本框中填入域名“Default”,在【用户名】文本框中填入“admin”,在【密码】文本框中填入“000000”。然后,单击【登入】按钮。

第2步,查看镜像。
在【概况】界面的左侧菜单里选择【计算】→【镜像】选项,进入【Images】界面,可以看到在7.3.4小节中通过Glance组件上传的“cirros”镜像。

总结:Dashboard是OpenStack Horizon项目中的主要组成部分,它对外提供了一个可以通过图形化界面管理OpenStack云计算平台的工具。它是一个用Python编写的Web程序,只能运行在httpd这样的Web服务器中。Dashboard通过WSGI与OpenStack云计算平台框架及其他组件相连,可以分别对各个组件进行管理。Dashboard为运维人员提供了一个直观便捷的管理方式,但是目前Dashboard的功能并不完全,只能实现部分通过命令能实现的操作。