使用DevStack安装OpenStack在单机上组建私有云
本文使用DevStack安装OpenStack在单机上组建私有云,在一台机器上部署 openstack ,部署成功后生成实例并进行实例间的通讯和文件传输。
环境准备
本实验需要在 Ubuntu 18.04 环境下进行,所需内存为 8G 以上,可以选择安装双系统;如果单机配置足够,也可以直接在虚拟机中完成。
双系统安装
安装过程要保持网络连接,双系统磁盘空间分区建议以总空间60G为例:/ 目录 25G,swap 4G,/boot 200M,/home 剩余
- 镜像下载地址: https://mirrors.tuna.tsinghua.edu.cn/ubuntu-releases/18.04.4/
- 安装教程: https://www.cnblogs.com/masbay/p/11627727.html
- 安装 Ubuntu 后会更改系统引导程序,在开机时手动选择系统:
- 卸载双系统要删除Ubuntu 的引导程序,可以下载 EasyUEFI 删除 Ubuntu 对应的条目即可,EasyUEFI 下载地址: https://www.easyuefi.com/index-us.html
源和工具准备
- Ubuntu 系统安装完成后,为了提高下载速度,更换 apt 源换为国内源
cd /etc/apt # 切换目录
sudo mv sources.list sources.list.bak # 备份原文件
sudo vi /etc/apt/sources.list # 将下面的源(任选一个)复制进文件中,然后保存,建议使用清华源
sudo apt-get # update 保存文件后,更新
sudo apt-get upgrade # 更新
# 清华源
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
# 中科大源
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
# 阿里源
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
- 安装和升级 git 、 pip 、 vim 等必要工具
sudo apt-get install git python-pip
sudo pip install --upgrade pip
sudo pip install -U os-testr
sudo apt install vim
- 更换 pip 源为国内源
cd ~ # 切换至用户目录
mkdir .pip # 创建 .pip 文件夹
vim .pip/pip.conf # 编辑 pip.conf 配置文件,将下面任一源的内容复制进来,然后保存
# pip 清华源
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-host = https://pypi.tuna.tsinghua.edu.cn
使用 DevStack 自动化安装脚本安装 OpenStack
- 下载 DevStack ,将其先下载到当前用戶目录下
cd ~
git clone git://github.com/openstack-dev/devstac
- 利用自有脚本,创建
stack用戶
sudo devstack/tools/create-stack-user.sh
- 将 DevStack 目录转移到
/opt/stack下,并设置权限,同时备份冲突的文件
sudo mv devstack /opt/stack
sudo chown -R stack:stack /opt/stack/devstack
sudo mv /usr/lib/python3/dist-packages/simplejson-3.13.2.egg-info ~/your_destination_filepath/
- 切换到
stack用戶,此后安装过程中,在安装成功前都需要处于stack用戶下
sudo su - stack # 在 /opt/stack 目录下执行
cd devstack # 进入 devstack 目录
- 创建配置文件
local.conf
vim local.conf # 创建配置文件,复制下面的配置内容并保存
# devstack configuration
[[local|localrc]]
# Define images to be automatically downloaded during the DevStack built process.
DOWNLOAD_DEFAULT_IMAGES=False
IMAGE_URLS="http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-x86_64-disk.img"
# use TryStack git mirror
GIT_BASE=http://git.trystack.cn
NOVNC_REPO=http://git.trystack.cn/kanaka/noVNC.git
SPICE_REPO=http://git.trystack.cn/git/spice/sice-html5.git
# Credentials
DATABASE_PASSWORD=admin
ADMIN_PASSWORD=admin
SERVICE_PASSWORD=admin
SERVICE_TOKEN=admin
RABBIT_PASSWORD=admin
#FLAT_INTERFACE=enp0s3
HSOT_IP="(Your_IP)" # 更换为本机 IP 地址
需要注意的是要将 HSOT_IP="(Your_IP)" 更换为本机 IP 地址,查看本机 IP 地址方式如下:
sudo ifconfig -a # 查询本机 IP
# 如果提示没有找到该程序,需要安装 ifconfig
sudo apt install net-tools
- 进入到
./devstack/目录下的files/目录下载镜像
cd files/
wget -c https://github.com/coreos/etcd/releases/download/v3.1.10/etcd-v3.1.10-linux-amd64.tar.gz
wget -c https://github.com/coreos/etcd/releases/download/v3.1.7/etcd-v3.1.7-linux-amd64.tar.gz
# 如果下载不成可能是服务问题需要多次重新尝试下载
- 回到
devstack/目录执行安装脚本
cd ..
sudo chmod -R 777 /opt/stack
./stack.sh
- 安装完成
终端输出如下内容即为安装完成

- 卸载
./unstack.sh
./clean.sh
rm -rf /opt/stack
# 此外,还需要手动删除 /usr/local/bin 目录下与 openstack 有关的目录
使用 OpenStack
根据安装完成提示,通过 Horizon is now availabe at ... 使用浏览器打开该连接进入 dashboard,登录仪表盘,查看和管理系统。据之前的设置,账戶名为 admin ,密码也是 admin ,输入即可登入。

创建实例
左侧菜单依次点击 计算 → 实例 ⟶ 创建实例
-
首先输入实例名和描述

-
加载镜像,选择系统提供的 cirros 镜像

-
选择实例类型,选择 m1.tiny 512MB 主存, 1GB 磁盘 )

-
选择网络,选择 private (如果只有一个网络可选,就选默认的)

-
创建成功

实例间通讯
重复创建实例步骤,在创建一个实例,通过在其中一台实例中生成文件写入自定义文字,使用 scp 命令传输至另一台实例来测试实例间的通讯。
- 进入实例
点击实例名 -> 点击控制台选项卡 -> 连接和登录实例。用戶名和密码已经在控制台上显示:用戶名 cirros ,密码 cubswin:)

- 获取实例的IP地址 下两图分别表示master的IP和node1的IP


- master使用scp命令发送文件给node1

- node1接收文件

Reference
OpenStack文档: https://docs.openstack.org/train/
devStack 教程: https://blog.csdn.net/weixin_33885253/article/details/94613944
本文介绍如何使用DevStack在Ubuntu18.04环境下单机部署OpenStack私有云,包括环境准备、系统安装及配置、DevStack安装过程、实例创建与通讯测试。
1014

被折叠的 条评论
为什么被折叠?



