当前位置: 首页 > news >正文

OpenStack 02:使用 DevStack 单节点一体化部署

DevStack 自动化部署

DevStack 用户配置

# 创建DevStack用户
sudo useradd -s /bin/bash -d /opt/stack -m stack
# 修改文件夹权限
sudo chmod +x /opt/stack
# 设置用户 SUDO 免密
echo "stack ALL=(ALL) NOPASSWD: ALL" | sudo tee /etc/sudoers.d/stack
# 切换到用户
sudo -u stack -i

获取 DevStack 源码

# 下载 DevStack
git clone https://opendev.org/openstack/devstack
Cloning into 'devstack'...
remote: Enumerating objects: 51974, done.
remote: Counting objects: 100% (31551/31551), done.
remote: Compressing objects: 100% (10716/10716), done.
remote: Total 51974 (delta 30780), reused 20835 (delta 20835), pack-reused 20423
Receiving objects: 100% (51974/51974), 9.75 MiB | 602.00 KiB/s, done.
Resolving deltas: 100% (36900/36900), done.
  • stack.sh:Devstack自动化部署工具的主执行脚本。判断是否存在localrc配置文件,如果不存在,则会进入交互模式,需要输入一些参数,如数据库的密码、Rabbit MQ的密码等
  • openrc:环境变量脚本。OpenStack命令在执行时需要依赖环境变量,如OS_USERNAME等
  • unstack.sh:卸载所有已经启动的服务
  • lib/:在这个目录下存放了每个服务的自动化安装脚本,如Nova、Swift等,包含了手动安装时执行的所有命令

创建 DevStack 配置文件

# 切换到 devstack
cd /opt/stack/devstack
# 创建配置文件 local.conf
vim local.conf
[[local|localrc]]
ADMIN_PASSWORD=Admin1234
DATABASE_PASSWORD=$ADMIN_PASSWORD
RABBIT_PASSWORD=$ADMIN_PASSWORD
SERVICE_PASSWORD=$ADMIN_PASSWORD

安装 OpenStack

# 开始安装 OpenStack./stack.sh

脚本执行任务包括:

  • 下载并安装 OpenStack 运行所需系统软件,如Python组件、MySQL、rabbitmq-server等
  • 获取OpenStack各项目源码,如Nova、Keystone、Glance、Horizon等
  • 安装OpenStack源码所依赖的Python库和框架。
  • 安装OpenStack各组件
  • 启动各项服务

安装完成后显示

=========================
DevStack Component Timing(times are in seconds)
=========================
wait_for_service      27
async_wait           369
osc                  435
apt-get               21
test_with_retry        0
dbsync                 5
pip_install          887
apt-get-update        16
run_process          108
git_timed            767
-------------------------
Unaccounted time     513
=========================
Total runtime        3148=================Async summary
=================Time spent in the background minus waits: 759 secElapsed time: 3148 secTime if we did everything serially: 3907 secSpeedup:  1.24111This is your host IP address: 192.168.71.121
This is your host IPv6 address: ::1
Horizon is now available at http://192.168.71.121/dashboard
Keystone is serving at http://192.168.71.121/identity/
The default users are: admin and demo
The password: Admin1234Services are running under systemd unit files.
For more information see:
https://docs.openstack.org/devstack/latest/systemd.htmlDevStack Version: 2025.2
Change: 34689f587966f9fd512a03c85762bd79dd4a4e9d Configure nova 'service' role in tempest 2025-08-27 02:40:21 +0000
OS Version: Ubuntu 24.04 noble2025-08-31 06:46:12.816 | stack.sh completed in 3148 seconds.

控制面板

介绍

OpenStack的控制面板(Dashboard)来自 Horizon 项目。

Horizon 项目:

  • 提供模块化的基于Web的图形界面,用于访问、控制计算、存储和网络资源
  • 采用Django框架及许多流行的前端技术,如Bootstrap、jQuery等

核心价值:

  • 核心支持——支持所有的OpenStack项目
  • 可扩展性——每个开发者都能增加组件
  • 易于管理——架构和代码易于管理,浏览方便
  • 视图一致——各组件的界面和交互模式保持一致
  • 可兼容性——API向后兼容
  • 易于使用——用户界面友好

Horizon 体系结构

部署

Devstack默认安装Horizon

配置

openstack_dashboard/settings.py文件是Horizon的主要配置文件,主要有4个方面的内容:

  • 常用配置:其中包括视觉设置,如模式背景样式、错误上报网址和主题配置;影响每项服务的设置,如API请求的页面大小,主要包括以下两个方面的内容。
  • 各服务相关的配置:Horizon调用的许多服务(如Nova和Neutron)都不会通过API暴露其功能和能力,因此Horizon允许Operator在Horizon中进行配置,以启用或禁用各服务的各种选项。
  • Django框架配置:包括所有Django App的通用设置中Horizon更改的配置。其他默认的配置可以参考Django官网的配置文档。
  • 其他配置:前3条不包含的其他配置。

登录

Devstack 成功安装后,打开 http://<你的服务器IP地址>/dashboard

用户名:admin   

密码:Devstack安装时配置的密码

http://www.xdnf.cn/news/1408393.html

相关文章:

  • Kafka面试精讲 Day 3:Producer生产者原理与配置
  • Java提供高效后端支撑,Vue呈现直观交互界面,共同打造的MES管理系统,含完整可运行源码,实现生产计划、执行、追溯一站式管理,提升制造执行效率
  • isp图像处理--bayer Binning
  • isp 图像处理--DPC坏点矫正
  • 张柏芝亮相林家谦演唱会 再次演绎《任何天气》
  • 秋招笔记-8.31
  • 【ACP】2025-最新-疑难题解析- 练习一汇总
  • 矩阵待办ios app Tech Support
  • 【机器学习】-torch相关知识01
  • IO_hw_8.29
  • 8.31【A】scons,带宽,语义semantic,读论文颜色规范,系统运行命令
  • 在Ubuntu系统上安装和配置JMeter和Ant进行性能测试
  • 【数学史冷知识】关于行列式的发展史
  • kkfile一键部署-ubuntu版
  • 云计算与服务器
  • 大模型参数量与计算量(FLOPs)估算方法
  • 【Flink】并行度的设置
  • 从 JDK 8 到 JDK 17
  • dify docker知识库topk最大值参数配置
  • Linux 文件夹权限也会导致基本命令权限缺失问题
  • Langflow 框架中 Prompt 技术底层实现分析
  • 第2.4节:大模型之LLaMA系列(Meta)
  • 项目跑起来之前的那些事
  • shell的原理和Linux的指令效果演示
  • Rust 登堂 之 枚举和整数(八)
  • K8s学习笔记(一)——
  • 试试 Xget 加速 GitHub 克隆仓库
  • React前端开发_Day12_极客园移动端项目
  • Windows中如何将Docker安装在E盘并将Docker的镜像和容器存储在E盘的安装目录下
  • IDM(Internet Download Managerv 6.38)破除解版下载!IDM 下载器永久免费版!提升下载速度达5倍!安装及使用