评估 OpenStack:单节点部署
Packstack 应只用于对 OpenStack 的概念验证/演示目的,它的安装过程和部署的结果都不被支持。
如需了解更多与产品支持相关的信息,请参阅 Installing and Managing Red Hat OpenStack Platform。
本文档介绍了使用 Packstack 部署工具实现一个基本 Red Hat Enterprise Linux OpenStack Platform 云系统的步骤。为了简化网络结构及对其它系统的影响,所有 OpenStack 组件都被部署在一个单一节点(机器)上。
这里所介绍的 OpenStack 部署包括一个公共网络和一个私人网络,它们都位于同一个机器上。这个主机运行一个 CirrOS 映像实例,并带有一个附加的存储卷。所安装的 OpenStack 服务包括:Block Storage、Compute、Dashboard、Identity、Image、OpenStack Networking、Object Storage 和 Telemetry。
备注: Packstack 是一个用来快速部署 OpenStack 的命令行工具;Packstack 适用于部署一个用于“概念验证”的测试环境,它并不适用于部署生产环境。在默认情况下,公共网络只能通过 OpenStack 主机路由。
如需测试一个使用更复杂网络配置的 OpenStack,请参阅 Evaluating OpenStack: Simple Networking。
单节点部署
以下操作需要大约 1.5 小时完成(包括 Packstack 安装 OpenStack 软件的时间)。
1. 安装
1.1. 先决条件
对于一个单节点部署,您需要:
-
一个作为主机的机器
-
一个运行 Red Hat Enterprise Linux 7.0(部署 v5) 或 7.1(部署 v6) 的物理主机
您将在这台机器上安装并运行所有 OpenStack 云组件。这个机器的硬件配置必须满足以下条件。 -
处理器
支持 Intel 64 或 AMD64 CPU 扩展的 64 位 x86 处理器,并启用了 AMD-V 或 Intel VT 硬件虚拟化扩展功能。 -
内存
最少 2GB 内存。 -
磁盘空间
推荐最少 20GB 的磁盘空间。如果您在部署后还需要添加额外的实例或卷,则需要使用更多的内存或磁盘(请参阅 v5 或 v6 Single-Node Deployment Requirements)。
-
-
网络访问
主机可以通过网络进行 Red Hat Subscription Management 注册。 -
SSH 配置
确认在主机的 /etc/ssh/sshd_config 文件中启用了 PasswordAuthentication,否则 Packstack 的安装会失败。
1.2. 安装 OpenStack
安装过程包括以下步骤:
-
确认您通过 Red Hat Subscription Management 启用了正确的软件存储库。
-
确认 Network Manager 被关闭。
-
运行 Packstack 部署工具。
1.2.1. 启用 OpenStack 存储库
-
如果还没有注册 Red Hat Subscription Management,请进行注册(需要您的订阅用户名和密码):
subscription-manager register
-
在以下命令的输出中找出 Red Hat Enterprise Linux OpenStack Platform 的订阅池:
subscription-manager list --available --all
-
使用在上一步中找到的池 ID 来附加 Red Hat Enterprise Linux OpenStack Platform 权利:
subscription-manager attach --pool=POOL_ID
-
禁用所有软件仓库:
subscription-manager repos --disable=*
-
启用所有 RHEL 和 OpenStack 软件仓库:
-
对于 Red Hat Enterprise Linux OpenStack Platform 5,运行:
subscription-manager repos --enable=rhel-7-server-rpms subscription-manager repos --enable=rhel-7-server-openstack-5.0-rpms subscription-manager repos --enable=rhel-7-server-extras-rpms
-
对于 Red Hat Enterprise Linux OpenStack Platform 6,运行:
subscription-manager repos --enable=rhel-7-server-rpms subscription-manager repos --enable=rhel-7-server-rh-common-rpms subscription-manager repos --enable=rhel-7-server-openstack-6.0-rpms subscription-manager repos --enable=rhel-7-server-extras-rpms
-
对于 Red Hat Enterprise Linux OpenStack Platform 7,运行:
subscription-manager repos --enable=rhel-7-server-rpms subscription-manager repos --enable=rhel-7-server-rh-common-rpms subscription-manager repos --enable=rhel-7-server-openstack-7.0-rpms subscription-manager repos --enable=rhel-7-server-extras-rpms
-
对于 Red Hat Enterprise Linux OpenStack Platform 8,运行:
subscription-manager repos --enable=rhel-7-server-rpms subscription-manager repos --enable=rhel-7-server-rh-common-rpms subscription-manager repos --enable=rhel-7-server-openstack-8-rpms subscription-manager repos --enable=rhel-7-server-extras-rpms
-
对于 Red Hat Enterprise Linux OpenStack Platform 9,运行:
subscription-manager repos --enable=rhel-7-server-rpms subscription-manager repos --enable=rhel-7-server-rh-common-rpms subscription-manager repos --enable=rhel-7-server-openstack-9-rpms subscription-manager repos --enable=rhel-7-server-extras-rpms
-
对于 Red Hat Enterprise Linux OpenStack Platform 10,运行:
subscription-manager repos --enable=rhel-7-server-rpms subscription-manager repos --enable=rhel-7-server-rh-common-rpms subscription-manager repos --enable=rhel-7-server-extras-rpms subscription-manager repos --enable=rhel-7-server-openstack-10-rpms subscription-manager repos --enable=rhel-7-server-openstack-10-devtools-rpms
-
对于 Red Hat Enterprise Linux OpenStack Platform 11,运行:
subscription-manager repos --enable=rhel-7-server-rpms
subscription-manager repos --enable=rhel-7-server-rh-common-rpms
subscription-manager repos --enable=rhel-7-server-extras-rpms
subscription-manager repos --enable=rhel-7-server-openstack-11-rpms
subscription-manager repos --enable=rhel-7-server-openstack-11-devtools-rpms -
对于 Red Hat Enterprise Linux OpenStack Platform 12,运行:
subscription-manager repos --enable=rhel-7-server-rpms
subscription-manager repos --enable=rhel-7-server-rh-common-rpms
subscription-manager repos --enable=rhel-7-server-extras-rpms
subscription-manager repos --enable=rhel-7-server-openstack-12-rpms
subscription-manager repos --enable=rhel-7-server-openstack-12-devtools-rpms -
对于 Red Hat Enterprise Linux OpenStack Platform 13,运行:
subscription-manager repos --enable=rhel-7-server-rpms
subscription-manager repos --enable=rhel-7-server-rh-common-rpms
subscription-manager repos --enable=rhel-7-server-extras-rpms
subscription-manager repos --enable=rhel-7-server-openstack-13-rpms
subscription-manager repos --enable=rhel-7-server-openstack-13-devtools-rpms
-
-
安装 utility 软件包:
yum install -y yum-utils
-
更新所有软件包:
yum update -y
1.2.2. 禁用 Network Manager
-
当前,OpenStack networking 无法在启用了 Network Manager(NetworkManager)服务的系统上正常工作。运行以下命令禁用 Network Manager:
systemctl disable NetworkManager
-
重启系统:
# reboot
1.2.3. 安装并运行 Packstack 来部署 OpenStack
-
安装 Packstack 软件包:
yum install -y openstack-packstack
-
运行 Packstack(需要机器的 root 密码):
# packstack --allinone
-
单节点安装会创建 'admin' 和 'demo' 用户。运行以下命令可以查看它们的密码:
grep OS_PASSWORD /root/keystonerc_admin grep OS_PASSWORD /root/keystonerc_demo
备注: 如果 packstack 命令运行失败,或您在运行中遇到问题,请联系红帽技术支持。请提供您所遇到问题的详细描述信息、sosreport、控制终端的完整输出信息,以及在控制终端输出中提到的所有与 packstack 相关的文件和应答文件。
2. 启动
2.1. 启动一个实例(虚拟机)
-
在您的网络浏览器中使用以下地址访问 OpenStack Dashboard:http://HOST_NAME_OR_URL/dashboard/
Login Screen使用 'Demo' 用户进行登录(请参阅前面的信息来获得这个用户的密码)。
-
启动实例:
-
点 Compute > Instances 菜单项。
-
点 Launch Instance 按钮。Launch Instance 的对话框将被
显示。
Launch Instance: Details Tab -
在 Details 标签页中使用默认设置并:
-
在 Instance Name 中输入您的实例的名称。
-
为您的实例选择 'm1.tiny' Flavor。
-
在 Instance Boot Source 下拉菜单中选择 'Boot from image' 选项;一个新的 Image Name 项会被显示。
-
从下拉菜单中选择 'cirros (12.5 MB)' 映像(这个映像在进行单节点安装时被提供)。
-
-
点 Launch 按钮。
-
-
创建一个存储卷并把它附加到新实例:
-
点 Compute > Volumes 菜单项,再点 Create Volume 按钮。Create Volume 对话框会被显示。
Create Volume Dialog -
使用默认设置并指定以下值:
-
在 Volume Name 中输入新卷的名称。
-
输入新卷的大小(如 '5'),它的单位是 GB。因为新卷需要从 cinder-volumes 卷组中分配,所以请确保这个卷组中有足够的可用空间来分配给您的新卷。
-
-
点 Create Volume 按钮创建新卷。
-
点新创建卷的 More 按钮,选择 Edit Attachments。
-
在 Attach To Instance 项中选择您的新实例,点 Attach Volume。
-
2.2. 登录到您的新实例
您可以使用实例控制台登录到您的新实例:
-
在 Dashboard 中点 Compute > Instances。
-
点实例的 More 按钮并选择 Console。Instance Console 会被显示。
Log In Screen -
使用 CirrOS 映像的用户名和密码进行登录。这个密码可以在控制台的输出中找到(如 'cirros'/'cubswin:)')。
Comments