DevStack #
DevStack 是一系列可扩展的脚本,用于根据来自 git master 的所有内容的最新版本快速构建完整的 OpenStack 环境。它可交互地用作开发环境,并作为 OpenStack 项目大部分功能测试的基础。
源代码位于https://opendev.org/openstack/devstack。
警告
DevStack 将在安装过程中对您的系统进行重大更改。仅在专用于此目的的服务器或虚拟机上运行 DevStack。
快速入门 #
安装 Linux #
从干净且最小限度的 Linux 系统安装开始。DevStack 尝试支持 Ubuntu 的两个最新 LTS 版本:Rocky Linux 9 和 openEuler。
如果您没有偏好,Ubuntu 22.04(Jammy)是经过最多测试的,并且可能会运行得最顺利。
添加 Stack 用户(可选) #
DevStack 应该以非 root 用户身份运行,并启用 sudo(通常使用“ubuntu”或“cloud-user”等云镜像的标准登录就可以了)。
如果你不使用云镜像,你可以创建一个单独的堆栈用户来运行 DevStack
$ sudo useradd -s /bin/bash -d /opt/stack -m stack
确保用户的主目录stack
对所有人都具有可执行权限,因为基于 RHEL 的发行版会创建它700
,而 Ubuntu 21.04+750
可能会在部署期间导致问题。
$ sudo chmod +x /opt/stack
由于该用户将对您的系统进行许多更改,因此它应该具有 sudo 权限:
$ echo "stack ALL=(ALL) NOPASSWD: ALL" | sudo tee /etc/sudoers.d/stack
$ sudo -u stack -i
下载 DevStack #
$ git clone https://opendev.org/openstack/devstack
$ cd devstack
该devstack
repo 包含安装 OpenStack 的脚本和配置文件的模板。
创建 local.conf #
local.conf
在 devstack git repo 的根目录创建一个预设有四个密码的文件。
[[local|localrc]]
ADMIN_PASSWORD=secret
DATABASE_PASSWORD=$ADMIN_PASSWORD
RABBIT_PASSWORD=$ADMIN_PASSWORD
SERVICE_PASSWORD=$ADMIN_PASSWORD
这是开始使用 DevStack 所需的最低配置。
笔记
devstack 存储库中的samples目录下有一个示例local.conf
文件。
警告
密码中只能使用字母数字字符,因为某些服务在使用特殊字符时无法运行。
开始安装 #
$ ./stack.sh
这将需要 15 - 30 分钟,主要取决于您的互联网连接速度。在此过程中将安装许多 git 树和包。
利润! #
您现在有一个可以运行的 DevStack!恭喜!
您的 devstack 将安装keystone
、glance
、nova
、 placement
、cinder
、neutron
和horizon
。浮动 IP 将可用,访客可以访问外部世界。
您可以访问 Horizon 来体验 OpenStack 的 Web 界面,并从那里管理虚拟机、网络、卷和图像。
您可以在您的 shell 中,然后使用 命令行工具来管理您的 devstack。source openrc``openstack
您可以运行已配置为与您的 devstack 配合使用的 tempest 测试。cd /opt/stack/tempest
进一步了解 #
详细了解我们的配置系统,以便根据您的需要定制 devstack。包括对默认网络进行调整。
阅读人们所具有的特定设置的指南(注意:指南是即时贡献,可能并不总是与最新的 devstack 保持同步)。
启用devstack 插件来支持基本 devstack 中不存在的附加服务、功能和配置。
在您的 CI 中将 devstack 与Ansible 角色和 Zuul V3作业结合使用。使用此完整迁移方法将您的 devstack Zuul V2 作业迁移到 Zuul V3 。
了解我们尝试使用 devstack 做什么,并通过对项目做出贡献来帮助我们。
如果您是 devstack 的新贡献者,请参阅:所以您想贡献……
内容 #
- 配置
- 系统范围的调试
- 使用 Devstack 进行开发
- 常问问题
- 指南
- 为 DevStack 做出贡献
- DevStack 网络
- 概述
- DevStack 插件注册表
- 插件
- 在 DevStack 中使用 Systemd
- 暴风雨
- 将 Zuul V2 CI 作业迁移到 V3
- Zuul CI 职位
- [Zuul CI 角色
./stack.sh status