开源项目 DevStack 安装与使用指南
devstack项目地址:https://gitcode.com/gh_mirrors/dev/devstack
一、项目目录结构及介绍
DevStack 是一个用于快速搭建 OpenStack 开发环境的脚本集。它简化了在单一系统上安装多个服务的过程,非常适合开发者和测试者迅速建立起一个完整的 OpenStack 环境。
主要目录与文件简介:
-
./ 根目录下包含核心脚本和配置文件。
stack.sh
: 主要的启动脚本,执行这个脚本将初始化并安装OpenStack的所有必要组件。unstack.sh
: 清理环境的脚本,用于卸载和重置DevStack环境。local.conf
: 用户自定义配置文件,允许对DevStack的行为进行定制,包括选择要安装的服务等。git.mk
,functions
,lib/*
: 包含了各种辅助脚本和函数库,这些是DevStack运行的核心逻辑部分。
-
./etc: 存放示例配置文件或模板,供用户参考或覆盖。
-
./tools: 包括一些辅助工具脚本,比如网络设置、清理旧版本依赖等。
-
./plugins: 存储可插拔的服务或特性相关的脚本和配置,允许扩展DevStack的功能。
二、项目启动文件介绍
stack.sh
- 功能概述:
stack.sh
是整个部署过程的控制中心。它负责下载必要的软件包,配置数据库,启动各项OpenStack服务,并且能够根据用户的配置(local.conf
)来调整安装过程。 - 执行流程:
- 检查先决条件,如系统依赖性。
- 读取并应用
local.conf
中的用户配置。 - 准备或更新Git仓库中各个OpenStack项目的代码。
- 配置并安装数据库。
- 初始化和配置OpenStack的各项服务。
- 启动所有服务并验证安装是否成功。
三、项目的配置文件介绍
local.conf
-
作用:
local.conf
允许用户高度定制DevStack的部署行为,它是基于INI文件格式的。 -
关键配置项:
[DEFAULT]
: 包含基础的通用配置,如设定日志级别。[localrc]
: 用于设定敏感数据如密码、IP地址,以及选择安装哪些服务。ENABLED_SERVICES
: 列表形式,指明要启用的服务,例如'nova,neutron,glance'等。ADMIN_PASSWORD
,DATABASE_PASSWORD
,SERVICE_PASSWORD
: 分别定义了管理账户和其他服务的密码。HOST_IP
: 设置宿主机的IP地址,用于确保服务间的正确通信。
-
自定义示例:
[[local|localrc]] ADMIN_PASSWORD=secretpassword DATABASE_PASSWORD=$ADMIN_PASSWORD SERVICE_PASSWORD=$ADMIN_PASSWORD MYSQL_HOST=localhost HOST_IP=192.168.1.100 ENABLED_SERVICES=g-api,n-api,c-api,c-svc,n-cpu,n-net,n-sch,n-osapi-placement
通过以上三个主要模块的了解,开发者可以更高效地利用DevStack搭建和测试OpenStack环境。务必根据实际需求调整local.conf
,以满足特定的开发或测试场景。