Red Hat Training

A Red Hat training course is available for Red Hat OpenStack Platform

第 6 章 使用 Web UI 配置基本 overcloud

本章介绍使用 Web UI 配置 OpenStack Platform 环境的基本步骤。overcloud 基本配置中不含任何自定义功能。但是,您可以参考 overcloud 高级自定义指南中的说明,添加高级配置选项到这一基本 overcloud 中并按照您的具体规格进行自定义。

在本章使用的示例中,所有节点都是使用 IPMI 作为电源管理的裸机。如需了解关于其它支持的电源管理类型和它们的选项,请参阅 附录 B, 电源管理驱动

流程

  1. 使用节点定义模板并通过手动注册来注册空节点。
  2. 检查所有节点的硬件。
  3. 把一个 overcloud 计划上传到 director。
  4. 将节点分配到角色。

配置要求

  • ???中安装的 director 节点已启用 UI
  • 一组作为节点的裸机。所需的节点数量由您需要创建的 overcloud 类型所决定(请参阅 第 3.1 节 “规划节点的实施角色”)。这些机器需要满足每个节点类型对系统的要求。相关信息,请参阅 ???。这些节点不需要操作系统,director 会把一个 Red Hat Enterprise Linux 7 镜像复制到每个节点。
  • Provisioning 网络的一个网络连接,需配置为原生 VLAN。所有节点都必须连接此网络,并且满足第 2.3 节 “网络要求”中规定的要求。
  • 所有其他网络类型使用 Provisioning 网络来提供 OpenStack 服务。不过,您可以为其他网络流量类型创建额外的网络。

6.1. 访问 Web UI

UI 以一个独立应用的形式在浏览器中运行。不过,您的客户端系统需要访问 Public API 端点来使用 undercloud 上的以下组件:

组件UI 用途

OpenStack Identity(keystone

用于进行 UI 认证和其他服务的端点发现。

OpenStack Orchestration(heat

查看部署的状态。

OpenStack Bare Metal(ironic

用于控制节点。

OpenStack Object Storage(swift

用于存储供 overcloud 创建使用的 Heat 模板集合或计划。

OpenStack Workflow(mistral

访问和执行 director 任务。

OpenStack Messaging(zaqar

基于 Websocket 的服务,可用于查找特定任务的状态。

UI 直接与这些 Public API 交互,所以您的客户端系统需要能够访问其端点。

重要

若要通过 Mozilla Firefox 访问 director 的 Web UI,需要针对这些 OpenStack Platform Public API 进行服务器身份例外处理。有关这些例外处理的信息,请参阅附录 E, 通过 Firefox 访问 UI 时的服务器例外

用户通过 SSL 访问 director 的 Web UI。例如,如果 undercloud 的 IP 地址是 192.168.24.1,则用于访问 UI 的地址是 https://192.168.24.1。Web UI 首先将显示一个登录屏幕,屏幕中含有以下字段:

  • Username - director 的管理员用户。默认值为 admin
  • Password - 管理员用户的密码。在 undercloud 主机终端中以 stack 用户身份运行 sudo hiera admin_password 命令,可查找此密码。

登录 UI 后,UI 将访问 OpenStack Identity Public API 并获取其他 Public API 服务的端点。不过,如果您计划更改端点或使用不同的 IP 来访问端点,director UI 可读取 /var/www/openstack-tripleo-ui/dist/tripleo_ui_config.js 文件中的设置。此文件使用以下参数:

参数描述

keystone

OpenStack Identity (keystone) 服务的 Public API。UI 将自动通过此服务发现其他服务的端点;这意味着,您只需要定义此参数。不过,您可以根据需要为其他端点定义自定义 URL。

heat

OpenStack Orchestration (heat) 服务的 Public API。其 URL 需要使用以下格式:https://<IP>:13004//v1/<tenant_id>,其中 tenant_id 是 undercloud 的 admin 租户。

ironic

OpenStack Bare Metal (ironic) 服务的 Public API。

swift

OpenStack Object Storage (swift) 服务的 Public API。其 URL 需要使用以下格式:https://<IP>:8080/v1/AUTH_<tenant_id> ,其中 tenant_id 是 undercloud 的 admin 租户。

mistral

OpenStack Workflow(mistral)服务的 Public API。

zaqar-websocket

OpenStack Messaging(zaqar)服务的 Websocket。

zaqar_default_queue

用于 OpenStack Messaging(zaqar)服务的消息传递队列。默认为 tripleo

下方为 tripleo_ui_config.js 文件的示例:

window.tripleOUiConfig = {
  "keystone": "https://192.168.24.2:13000/v2.0",
  "heat": "https://192.168.24.2:13004/v1/f30d815864be456dbc2a00f4e9200e9e",
  "ironic": "https://192.168.24.2:13385",
  "mistral": "https://192.168.24.2:13989/v2",
  "swift": "https://192.168.24.2:13808/v1/AUTH_f30d815864be456dbc2a00f4e9200e9e",
  "zaqar-websocket": "wss://192.168.24.2:9000",
  "zaqar_default_queue": "tripleo"
};

6.2. 浏览 Web UI

UI 包含三大区域:

Deployment Plan

位于 UI 顶部的菜单项。此页面充当主 UI 区域,您可以在其中定义 overcloud 创建计划、分配至各个角色的节点和当前 overcloud 的状态。此区域也提供一个部署工作流,逐步引导您完成 overcloud 创建过程的每个步骤,如设置部署参数和分配节点到角色等。

Director UI 的 Deployment Plan 区域

Nodes

位于 UI 顶部的菜单项。此页面充当节点配置区域,提供用于注册新节点和内省已注册节点的各种方式。此区域还定义可部署的节点、当前部署的节点,以及维护中的节点。

Director UI 的 Nodes 区域

Validations

位于页面右侧的面板。此区域提供一组部署前和部署后系统检查,它们可确保 overcloud 创建过程成功完成。这些验证任务在部署期间的特定时点上自动运行,但您也可以手动执行它们。若要运行某一项验证任务,可单击对应的 Play 按钮。单击各项验证任务的标题即可运行该任务,或者单击验证标题来查看更多相关信息。

一项验证

6.3. 在 Web UI 中导入 overcloud 计划

director UI 需要先加载计划,才能配置 overcloud。此计划通常是一个 Heat 模板集,比如 undercloud 上的 /usr/share/openstack-tripleo-heat-templates。此外,您也可以根据自己的硬件和环境要求自定义计划。有关自定义 overcloud 的更多信息,请参阅 overcloud 高级自定义指南。

计划中包含配置 overcloud 的四个主要步骤:

  1. 准备硬件 - 节点注册和内省。
  2. 指定部署配置 - 配置 overcloud 参数,定义要包含的环境文件。
  3. 配置角色和分配节点 - 分配节点到角色,修改角色相关参数。
  4. 部署 - 启动 overcloud 创建过程。

undercloud 的创建和配置过程会自动上传计划。您也可以在 Web UI 中导入多个计划。单击 Deployment Plan 屏幕中的 Manage Deployments。这将显示当前的 Plans 表。

单击 Create New Plan;这时会显示一个窗口,要求您提供以下信息:

  • Plan Name - 计划的纯文本名称。例如,overcloud
  • Upload Type - 选择要上传 Tar Archive (tar.gz) 或整个 Local Folder(仅限 Google Chrome)。
  • Plan Files - 单击浏览按钮来选择本地文件系统中的计划。

如果需要复制 director 的 Heat 模板集到客户端机器,可以存档文件再复制它们:

$ cd /usr/share/openstack-tripleo-heat-templates/
$ tar -cf ~/overcloud.tar *
$ scp ~/overcloud.tar user@10.0.0.55:~/.

一旦 director UI 上传了计划,该计划就会显示在 Plans 表中;此时您可以进行配置。单击 Deployment Plan

部署计划表

6.4. 在 Web UI 中注册节点

配置 overcloud 节点的第一步是注册您的节点。您可以通过以下方式之一来开始注册节点:

  • Deployment Plan 屏幕中,单击 1 Prepare Hardware 下的 Register Nodes
  • 单击 Nodes 屏幕上的 Register Nodes

这将显示 Register Nodes 窗口。

Register Nodes 窗口

Director 需要一份要注册的节点列表,您可以通过以下两种方式之一来提供:

  1. 上传节点定义模板 - 单击 Upload from File 按钮,再选择一个文件。如需节点定义模板的语法,请参阅???
  2. 手动注册各个节点 - 单击 Add New,然后提供节点的一系列详细信息。

如下为手动注册时要提供的详细信息:

名称
节点的纯文本名称。仅可使用 RFC3986 非保留字符。
Driver
使用的电源管理驱动。在这个示例中使用 IPMI 驱动器(pxe_ipmitool),但其他驱动器也可用。请参阅附录 B, 电源管理驱动了解可用的驱动。
IPMI IP 地址
IPMI 设备的 IP 地址。
IPMI Username; IPMI Password
IPMI 的用户名和密码。
Architecture
系统架构。(可选)
CPU count
节点上的 CPU 数量。(可选)
Memory (MB)
以 MB 为单位的内存大小。(可选)
Disk (GB)
以 GB 为单位的硬盘的大小。(可选)
NIC MAC Addresses
节点上的网络接口的 MAC 地址列表。对于每个系统的 Provisioning NIC,只使用 MAC 地址。
注意

UI 也支持通过使用 pxe_ssh 驱动程序从 KVM 主机注册节点。请注意,此选项仅可用于测试和评估目的,不建议将它用于 Red Hat OpenStack Platform 企业环境。如需更多信息,请参阅第 B.6 节 “SSH 和 Virsh”

在输入节点信息后,请单击窗口底部的 Register Nodes

Director 将注册节点。完成时,您可以使用 UI 来执行节点内省。

6.5. 在 Web UI 中检查节点硬件

director 可以在每个节点上运行内省过程。此过程会使每个节点通过 PXE 引导一个内省代理。此代理从节点上收集硬件数据,并把信息发送回 director,director 把这些信息存储到运行于 director 上的 OpenStack Object Storage(swift)服务中。director 将这些硬件信息用于不同的目的,如进行配置文件标记、基准测试和手动分配根磁盘等。

注意

您也可以通过创建策略文件,在内省后立即将节点标记到配置文件中。如需有关创建策略文件并将它们纳入到内省过程中的信息,请参阅附录 D, 自动配置集标记。另外,您还可以通过 UI 将节点标记到配置文件中。如需关于手动标记节点的详细信息,请参阅第 6.7 节 “在 Web UI 中将节点标记到角色”

若要启动内省过程:

  1. 前往 Nodes 屏幕。
  2. 选择您想要内省的所有节点。
  3. 单击 Introspect Nodes
重要

确保这个过程成功完成。它可能需要 15 分钟来检查这些裸机节点。

内省过程完成时,选择 Provision Statemanageable 的所有节点,再单击 Provide Nodes 按钮。等待 Provision State 更改为 available

节点现在已做好部署准备。

6.6. 在 Web UI 中编辑 overcloud 计划参数

Deployment Plan 屏幕中提供了一种方式,供您自定义上传的计划。在 2 Specify Deployment Configuration 下,单击 Edit Configuration 连接,来修改您的基本 overcloud 配置。

这时将出现一个窗口,其包含两个主要选项卡:

Overall Settings

此选项卡提供了包括 overcloud 中不同功能的方式。这些功能在计划的 capabilities-map.yaml 文件中定义,每项功能各自使用一个不同的环境文件。例如,在 Storage 下,您可以选择 Storage Environment,其计划映射到 environments/storage-environment.yaml 文件,允许您配置 overcloud 的 NFS、iSCSI 或 Ceph 设置。Other 选项卡包含在计划中检测到但未在 capabilities-map.yaml 中列出的环境文件,对于添加计划中包含的自定义环境文件,这非常有用。一旦选定要包含的功能,请单击 Save

部署配置的总体设置

Parameters

这包括 overcloud 的各种基础级参数和环境文件参数。例如,您可以在此区域中更改每个节点的节点计数。如果您计划使用 3 个控制器节点,可将 ControllerCount 更改为 3。修改了基础级参数后,请单击 Save

部署配置的参数

6.7. 在 Web UI 中将节点标记到角色

注册并检查了各个节点的硬件后,您要将它们标记到特定的配置文件中。这些配置文件将您的节点与特定的类型和部署角色匹配。

要将节点分配到角色,请滚动到 Deployment Plan 屏幕的 3 Configure Roles and Assign Nodes 区域。单击所选角色的 Assign Nodes。这时会出现一个窗口,从中您可以选择要分配到该角色的节点。选择了角色的节点后,请单击 Assign/Unassign Selected Nodes

分配节点到角色

当这些节点分配到角色时,请单击 Done 以返回到 Deployment Plan 屏幕。

为您要在 overcloud 中包含的每个角色完成此任务。

6.8. 在 Web UI 中编辑节点

每个节点角色都提供配置角色相关参数的途径。滚动到 Deployment Plan 屏幕的 3 Configure Roles and Assign Nodes 区域。单击角色名称旁边的 Edit Role Parameters 图标(铅笔图标)。

Edit Role Parameters 图标

此时将出现一个窗口,其中显示了两个主要选项卡:

Parameters

此选项卡中含有各种角色相关的参数。例如,如果您在编辑控制器节点,可以使用 overcloudControlFlavor 参数更改角色的默认类型。修改了角色相关参数后,请单击 Save Changes

角色配置的参数

Services

此选项卡可定义所选角色的服务相关参数。左侧面板中显示您可选择并修改的服务列表。例如,若要更改时区,可单击 OS::TripleO:Services:Timezone 服务,再根据您想要的时区更改 TimeZone 参数。修改了服务相关参数后,请单击 Save Changes

角色配置的服务相关参数

Network Configuration

此选项卡可用于定义 overcloud 中各种网络的 IP 地址或子网范围。

角色的网络配置

重要

尽管角色的服务参数显示在 UI 中,但一部分服务可能默认为禁用状态。您可以按照 ??? 中的说明启用它们。也可参阅 overcloud 高级自定义指南的Composable Roles部分,了解启用这些服务的相关信息。

6.9. 在 Web UI 中启动 overcloud 创建过程

配置了 overcloud 计划后,您可以开始部署 overcloud。具体操作包括滚动到 4 Deploy 区域,并单击 Validate and Deploy

Validate and Deploy 按钮

如果没有运行 undercloud 验证或未通过验证,屏幕中会显示警告消息。请确保您的 undercloud 主机满足相关的要求,然后再进行部署。

验证警告

准备好部署时,请单击 Deploy

UI 会定期监控 overcloud 的创建进度,并通过进度条来指示当前的进度百分比。单击View detailed information 链接,可显示 overcloud 中当前 OpenStack Orchestration 栈的日志。

详细进度信息

等待 overcloud 部署完成。

在 overcloud 创建过程完成后,4 Deploy 区域显示当前的 overcloud 状态和以下详细信息:

  • IP address - 用于访问 overcloud 的 IP 地址。
  • Password - ondercloud 上 OpenStack admin 用户的密码。

使用以上信息来访问您的 overcloud。

overcloud 部署完成

6.10. 完成 overcloud 创建

通过 director UI 创建 overcloud 的步骤到此结束。如需了解创建后功能,请参阅???