当前位置:首页 > 技术 > 正文内容

OpenStack Dashboard 服务部署与配置指南

访客 技术 2026年6月10日 3

OpenStack Dashboard(Horizon)安装与配置流程

OpenStack Dashboard,也称为 Horizon,是 OpenStack 的 Web 管理界面,为用户提供图形化操作入口,便于管理计算、网络、存储等云资源。通过该界面,用户可避免直接使用命令行或 API,显著降低使用门槛。

1. 在计算节点 openstack02 上安装 Dashboard 组件

使用 YUM 包管理器安装 openstack-dashboard 软件包:

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

2. 修改 Dashboard 主配置文件

编辑本地设置文件以适配当前 OpenStack 环境:

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

更新以下关键配置项:

  • 允许所有主机访问仪表盘:
ALLOWED_HOSTS = ['*']
  • 指定控制节点地址(Keystone 所在主机):
OPENSTACK_HOST = "openstack01"
  • 设置时区为中国上海:
TIME_ZONE = "Asia/Shanghai"
  • 启用 Memcached 作为会话后端:
SESSION_ENGINE = 'django.contrib.sessions.backends.cache'
CACHES = {
    'default': {
        'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
        'LOCATION': 'openstack01:11211'
    }
}
  • 启用多域支持并设定默认域与角色:
OPENSTACK_KEYSTONE_MULTIDOMAIN_SUPPORT = True

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

OPENSTACK_KEYSTONE_DEFAULT_DOMAIN = 'Default'
OPENSTACK_KEYSTONE_DEFAULT_ROLE = 'user'
  • 配置 Neutron 网络选项,关闭高可用和自动分配功能,启用 IPv6 和配额管理:
OPENSTACK_NEUTRON_NETWORK = {
    'enable_auto_allocated_network': False,
    'enable_distributed_router': False,
    'enable_fip_topology_check': False,
    'enable_ha_router': False,
    'enable_ipv6': True,
    'enable_quotas': True,
    'enable_rbac_policy': True,
    'enable_router': True,
    'default_dns_nameservers': [],
    'supported_provider_types': ['*'],
    'supported_vnic_types': ['*'],
    'physical_networks': []
}

3. 生成 Apache Web 服务配置文件

进入 Dashboard 安装目录,生成适用于 Apache 的虚拟主机配置:

[root@openstack02 ~]# cd /usr/share/openstack-dashboard
[root@openstack02 openstack-dashboard]# python manage.py make_web_conf --apache > /etc/httpd/conf.d/openstack-dashboard.conf

生成的配置包含 WSGI 模块设置、静态资源路径映射及日志定义,确保 Web 请求能被正确处理。

4. 验证核心服务接口连通性

确认身份认证与镜像服务在控制节点正常运行:

# 测试 Keystone v3 接口
[root@openstack02 ~]# curl http://openstack01:5000/v3

预期返回 JSON 格式的版本信息,表明 Keystone 正常响应。

# 测试 Glance 镜像服务
[root@openstack02 ~]# curl http://openstack01:9292

应返回支持的 API 版本列表,验证镜像服务可达。

5. 创建配置文件符号链接

将系统配置目录链接至应用目录,使 Horizon 能加载实际配置:

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

验证链接是否生效:

[root@openstack02 ~]# ll /usr/share/openstack-dashboard/openstack_dashboard/conf

6. 启动并启用 Apache 服务

重启 HTTP 服务以加载新配置,并设置开机自启:

[root@openstack02 ~]# systemctl restart httpd
[root@openstack02 ~]# systemctl enable httpd

输出将显示已创建 systemd 软链接,确认服务注册成功。

7. 访问 Web 界面进行登录测试

在浏览器中访问 http://openstack02 或对应 IP 地址,进入登录页面。输入以下信息完成认证:

  • 域名: Default
  • 用户名: admin 或 demo
  • 密码: 对应用户的设定密码

成功登录后将跳转至项目概览页,可查看实例、网络、镜像等资源状态。

相关文章

Linux crontab 详解

1) crontab 是什么cron 是 Linux 的定时任务守护进程;crontab 是用来编辑/查看“按时间周期执行命令”的表(cron table)。常见两类:用户 crontab:每个用户一份(crontab -e 编辑)系统级 crontab / cron.d:可指定执行用户(/etc/crontab、/etc/cron.d/*)2) crontab 时间...

富文本里可以允许的 HTML 属性

一、所有标签默认允许的安全属性(极少)class        (可选)id           (通常建议禁用)title️ 注意:id 容易被滥用做锚点注入,很多系统直接禁用class 允许的话最好只允许固定前缀(如 editor-*)二、a 标签允许属性<a href="" t...

Mac 安装 Node.js 指南

方法一:通过官网安装包(最简单,适合初学者)如果你只是想快速安装并开始使用,这是最直接的方法。访问 Node.js 官网。页面会显示两个版本:LTS (Recommended For Most Users):长期支持版,最稳定。建议选这个。Current:最新特性版,包含最新功能但可能不够稳定。下载 .pkg 安装包并运行。按照安装向导点击“下一步”即可完成。方法二:使用 Homebrew 安装(...

Dom\HTML_NO_DEFAULT_NS 的副作用:自动加闭合标签

在使用Dom\HTMLDocument时,Dom\HTML_NO_DEFAULT_NS 将禁止在解析过程中设置元素的命名空间, 此设置是为了与DOMDocument向后兼容而存在的。当使用它时,已知的一个副作用就是:自动加闭合标签例如 </img> 为什么会这样?当你使用:Dom\HTML_NO_DEFAULT_NS文档会变成 无命名空间模式,此时内部更接近 XML...

Laravel 事件和监听器创建

在 Laravel 中,使用 Artisan 命令创建 Events(事件) 和 Listeners(监听器) 是非常高效的。你可以通过以下几种方式来实现:1. 手动创建单个 Event如果你只想创建一个事件类,可以使用 make:event 命令:Bashphp artisan make:event UserRegistered执行后,文件将生成在 app/Even...

linux screen 用法详情 (nohup 的替代方案)

一、screen 是什么?能干嘛?screen 是一个终端复用器,可以:在一个 SSH 会话中开多个“虚拟终端”SSH 断线后,程序仍然在后台运行随时重新连接到原来的会话特别适合:nohup 的替代方案跑脚本 / 爬虫 / 训练模型运维、远程开发二、安装 screen# CentOS / Rocky / Almayum install -y screen# Debian / Ubuntuapt i...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。