云计算实验——OpenStack的安装与使用

2023-11-07

实验目的

(1)掌握Linux虚拟机的安装方法;

(2)掌握OpenStack的单机安装方法;

(3)熟悉OpenStack的核心组件。

实验环境

Windows10 20H2/VirtualBox 6.1.18 r142142/Ubuntu 18.04 LTS/OpenStack W

实验内容与完成情况

1、下载安装虚拟机软件VirtualBox

2、安装Ubuntu 18.04 LTS虚拟机

 安装VirtualBox的增强功能,开启了双向文件拖放与剪贴板同步

3、apt换源

首先对Ubuntu系统自带的apt软件源进行备份,执行

sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup

备份完成后,执行

sudo gedit /etc/apt/sources.list

以打开文本编辑器

粘贴镜像站地址(中科大源)

参考:Ubuntu 源使用帮助 — USTC Mirror Help 文档

4、测试换源结果并更新Ubuntu环境

执行

sudo apt update

更新apt,执行

sudo apt upgrade

 更新软件包,执行

sudo apt-get update

5、安装python-pip

在当前用户的/home目录下创建/.pip文件夹,执行

mkdir ~/.pip

使用vim创建并编辑pip的配置文件,执行

vim ~/.pip/pip.conf

安装文本编辑器vim,执行

sudo apt-get install vim

再次执行

vim ~/.pip/pip.conf

添加对应的pip源(中科大源)

参考:PyPI 镜像源使用帮助 — USTC Mirror Help 文档

执行

sudo pip install --upgrade pip

 提示无权限,查找资料,原因为中科大源没有该链接,更换为豆瓣源

6、安装git

通过apt安装,执行

sudo apt-get install git

7、设置时间同步

执行

sudo apt-get install ntpdate

安装NTP同步工具

 执行

sudo ntpdate cn.pool.ntp.org

向NTP服务器请求同步系统时间

执行

date

查看当前系统时间

8、下载devstack

执行

git clone https://github.com/openstack-dev/devstack

对Github的存储库进行克隆

failed,经检查发现是与GitHub的连接遇到问题,修改github.com为反向代理的镜像站hub.fastgit.org

执行

git clone https://hub.fastgit.org/openstack-dev/devstack

9、创建stack用户

执行

sudo devstack/tools/create-stack-user.sh

 出错,依据提示修改stackrc文件中的HOST_IP变量为127.0.0.1

再次执行

sudo devstack/tools/create-stack-user.sh

使用文本编辑器gedit打开用户配置文件,执行

sudo gedit /etc/sudoers

root ALL=(ALL:ALL) ALL

后添加

stack ALL=(ALL)NOPASSWD:ALL

并保存

10、移动devstack目录到/opt/stack下,并设置权限

执行

sudo mv devstack /opt/stack

执行

sudo chown -R stack:stack /opt/stack/devstack

11、切换到stack用户

执行

sudo su - stack

12、创建local.conf配置文件

执行

sudo ifconfig

经查询资料,需安装net-tools软件包才可以使用ifconfig命令

使用apt安装,执行

sudo apt install net-tools

 重新执行

sudo ifconfig

查询本机的IP地址

选择使用本地环回(loopback)地址127.0.0.1

使用文本编辑器gedit打开本地配置文件,执行

sudo gedit local.conf

并粘贴配置内容,保存

13、运行./stack.sh

执行

./stack.sh

需切换到devstack所在的目录

执行

cd /opt/stack/devstack

再次执行

./stack.sh

观察发现是clone时出现问题,局域网内Windows主机开启代理服务器,允许局域网连接

配置git的http代理

执行

git config http.proxy http://192.168.183.88:10809

配置Ubuntu系统的代理如下

再次执行

./stack.sh

 

经检查是使用的pip源内没有setuptools软件包

修改pip源为清华源,再次执行

./stack.sh

经检查为cannot uninstall 'simplejson’错误

执行命令

sudo pip install simplejson --ignore-installed simplejson

再次执行

./stack.sh

可以看到,安装已经完成,显示出了DashBoard的IP地址和用户名密码

为使宿主计算机能够访问DashBoard,设置VirtualBox软件的端口转发

将虚拟机内的80端口映射到宿主计算机的80端口

该设置保存后立即生效

在宿主计算机中打开DashBoard面板如下

使用用户名密码(admin/admin或demo/admin)登录如下

14、创建实例

打开项目/计算/实例,新建一个实例

 运行实例

15、其他

查看安装的OpenStack版本

通过查看OpenStack的Nova组件的版本来间接查询安装的OpenStack版本

执行

nova-manage version

打开OpenStack发布网站

https://releases.openstack.org/teams/nova.html

如下所示

可知安装的版本是OpenStack-W(Wallaby)版本

查看devstack的项目页面https://github.com/openstack/devstack

可知,devstack总是同步OpenStack的主干版本,目前OpenStack的主干版本即为Wallaby版。

出现的问题与解决方案

1、在安装Ubuntu时由于分辨率原因不能选择安装的分区

解决方案:不要选择自定义安装(其它选项),要选择清除整个磁盘并安装Ubuntu。


2、安装Ubuntu时启动会出现短暂黑屏

解决方案:等待即可,不要直接结束,可能会导致Fatal错误,此时只能重装虚拟机。

3、使用中科大源遇到问题

解决方案:手动查看镜像站,发现自动跳转到北京外国语大学镜像站,而该镜像站显示地址不存在,因此,需要进行换源,例如清华源、豆瓣源。

4、找不到setuptools软件包

解决方案:使用其它pip源,最终测试使用清华源完成了安装。

5、clone时出现问题

解决方案:将git设置代理,如果是能够手动输入clone地址的步骤,可考虑使用GitHub加速站,如hug.fastgit.org等

6、虚拟机资源耗尽,出现无响应现象

解决方案:强制结束虚拟机,进入VirtualBox安装目录(默认为C:\Program Files\Oracle\VirtualBox)下,打开命令行窗口,执行.\VBoxManage.exe  modifyhd "vdi文件路径" –resize命令以扩充虚拟机磁盘容量。

7、使用自带脚本create-stack-user.sh创建stack用户失败,提示“HOST_IP”未设置

解决方案:在报错的对应脚本前强制指定使用的HOST_IP。观察发现,即使在local.conf文件中设置了“HOST_IP”变量,但执行时依旧报错,具体原因未知。

8、出现cannot uninstall 'simplejson’错误

解决方案:执行命令sudo pip install simplejson --ignore-installed simplejson,应该是自带的simplejson与待安装的simplejson出现冲突,忽略自带版本即可。

9、尝试在Windows 10自带的Windows Subsystem for Linux(WSL)中安装OpenStack时遇到错误

该问题来自于WSL中没有ebtables模块,是WSL2的自身缺陷,故安装无法继续进行

实验总结

        通过本次OpenStack的安装实验,我进一步熟悉了虚拟机的安装与Linux的重要发行版——Ubuntu的基本使用,在运行安装脚本的过程中尽管遇到了不少问题,但通过查询资料、查看错误日志、与同学交流等方式最终得以顺利解决,成功安装OpenStack。

        安装的过程需要对Linux的操作比较熟悉,例如shell语言或设置代理等操作,我在安装的过程中也遇到了许多其他人遇到过或没遇到过的问题与错误,在解决错误的过程中也学习到了许多以前没有接触过的知识,在与其他人交流或帮助查找错误的过程中也发现了许多自己安装中没有出现的其它问题。

        由于客观条件的限制,安装过程中遇到的最多问题依然是与网络相关的,对于这些问题,可以通过加载代理的方式解决,这也是能够顺利完成OpenStack安装的重要条件。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

云计算实验——OpenStack的安装与使用 的相关文章

随机推荐

  • linux编译新内核放在哪,将新文件系统编译到Linux内核中

    我正在努力在Debian上构建一个新的文件系统作为原型 因为现有的文件系统不符合我的某些要求 它旨在成为评估我们所拥有的某些要求的原型 到目前为止的步骤 我正在尝试使用provided MakeFile进行项目 但这是我得到的错误 make
  • 夜深人静学32系列5——STM32MAP文件浅析&启动过程

    STM32MAP文件浅析 启动过程 MAP文件浅析 1 MDK中间文件 2 MAP文件浅析 实际的MAP文件 你找不到你的MAP文件 STM32启动过程 启动过程 启动文件介绍 上期我们学习了STM32的寄存器映射相关内容 本期我们一起来学
  • xenserver使用cli进行主机池添加

    使用 CLI 将 XenServer 主机 host1 和 host2 加入到资源池 1 在 XenServer 主机 host2 中打开控制台 2 运行以下命令 指示 XenServer 主机 host2 加入位于 XenServer 主
  • win10如何校验文件哈希值

    转自 https jingyan baidu com article 67662997a9b06654d51b84a1 html 文件的哈希值可以用软件计算 算法一样 无须多讲 本文讲述如何用win10自带命令计算 右击开始 点击windo
  • vue3实现没有误差的时间 moment

    使用requestAnimationFrame 方法实现 window requestAnimationFrame 告诉浏览器 你希望执行一个动画 并且要求浏览器在下次重绘之前调用指定的回调函数更新动画 该方法需要传入一个回调函数作为参数
  • 嵌入式Qt-简易网络监控摄像头

    本编利用Qt实现一个网络摄像头功能 包含一个服务端和一个客户端 服务端用于将USB摄像头转换为一个IP摄像头 当有客户端连接时 将其捕获到的图像通过TCP发送出去 客户端运行在Linux板子上 用于查看摄像头的实时画面 1 必备基础知识 本
  • 使用lxml.etree解析中文网页时出现乱码问题的解决办法

    你也可以通过我的独立博客 www huliujia com 获取本篇文章 吐槽 不得不说网络这个东西害死人 一群只会复制粘贴的瓜皮儿 没一点有用的答案 还要写的像模像样装x 这个问题折腾了一个晚上 晚上找了各种方案 都是相互抄 然而都不能解
  • Mayor's posters

    点击打开链接 Description The citizens of Bytetown AB could not stand that the candidates in the mayoral election campaign have
  • Hive-SQL取一个月用户留存率、留存用户数

    一 最基础版 次日留存率 代码如下 select date count count B user id as rate from select user id date from app launch where date 2022 08
  • 大数据论文_03_BigTable(个人总结)

    声明 1 本文为我的个人复习总结 并非那种从零基础开始普及知识 内容详细全面 言辞官方的文章 2 由于是个人总结 所以用最精简的话语来写文章 3 若有错误不当之处 请指出 BigTable 一 出现的原因 没有BigTable时 如MySQ
  • C/C++ 使用librdkafka库实现的生产者

    Installing prebuilt packages On Mac OSX brew install librdkafka On Debian and Ubuntu apt install librdkafka dev On RedHa
  • Ubuntu18.04下的宝塔+Flarum网站迁移

    Ubuntu18 04下的宝塔 Flarum网站迁移 前言 迁移环境 一 备份文件 二 重新部署Flarum 三 恢复数据 四 重装插件 四 完成 前言 最近学校在组织搭建校内树洞 为了方便调试同时不影响论坛的正常运营 我打算将整个网站迁移
  • 全球及中国3D打印产业投资价值调研及未来竞争趋势研究报告2021-2027年版

    全球及中国3D打印产业投资价值调研及未来竞争趋势研究报告2021 2027年版 HS HS HS HS HS HS HS HS HS HS HS HS HS HS HS 修订日期 2021年10月 搜索鸿晟信合研究院查看官网更多内容 第一章
  • 贪心算法初步

    一 什么是贪心算法 贪心算法的定义 贪心算法是指在对问题求解时 总是做出在当前看来是最好的选择 也就是说 不从整体最优上加以考虑 只做出在某种意义上的局部最优解 贪心算法不是对所有问题都能得到整体最优解 关键在于贪心策略的选择 选择的贪心策
  • 安装与卸载JDK8

    前言 学习Java的第一步需要先配置好JDK环境 而JDK8是目前使用最广泛的JDK版本 本文讲解了如何下载安装和卸载JDK8 以下环境为Windows10 下载JDK安装包 Oracle官网 所有JDK版本 Oracle官网 JDK8 O
  • 关键字解释

    条件变量 线程中的条件变量是等待共享数据内的某个条件出现 不是等待的互斥锁 条件变量特别适用于多个线程等待某个条件的发生 auto与std function 在实际使用中都用 auto 关键字来代替std function 这一长串了 st
  • 介绍一个免费的虚拟显示器的解决方案

    这几天鼓捣我的弛为小主机 装了个win10 2021 lstc作小服务器用 远程软件todesk和向日葵 登录后 发现分辨率极低 todesk提示让我购买虚拟显示器 像我这种技术 铁公鸡 怎么能花钱呢 搜了半天开源虚拟显示器 极少 要么收费
  • 第六章 运行时数据结构

    1 a out assembler output 汇编程序输出 的缩写形式 2 段的概念 1 在UNIX中 段表示一个二进制相关的内容块 命令 size test 可执行程序 返回文件中的三个段 text data bss dec hex
  • SQL Server的数据库文件保存在哪儿?

    1 数据库文件类型 数据库分2个文件 一个主数据文件 一个日志文件 主数据文件后缀名为 MDF 日志文件后缀名为 Log 如数据库Test Test mdf 与test log 2 数据库文件保存位置 1 在SQL Server Manag
  • 云计算实验——OpenStack的安装与使用

    实验目的 1 掌握Linux虚拟机的安装方法 2 掌握OpenStack的单机安装方法 3 熟悉OpenStack的核心组件 实验环境 Windows10 20H2 VirtualBox 6 1 18 r142142 Ubuntu 18 0