初次接触open stack与Linux,如有错误与可改进的地方,恳请指出。
一、搭建
(一)配置推荐
| 系统 | 镜像 | 内存 | 储存 |
|---|---|---|---|
| Linux | centos7.6 | 16G+ | 100G+ |
(二)前期准备
1.开启虚拟化

图2-1 开启虚拟化
2.关闭防火墙
systemctl stop firewalld && systemctl disable firewalld
3.关闭NetworkManager
systemctl stop NetworkManager && systemctl disable NetworkManager
4.禁用SELINUX
setenforce 0 && sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
5.修改主机名
修改后重启生效。
hostnamectl set-hostname HYX-OS-01
6.配置主机映射
cat >>/etc/hosts<<eof 121.121.0.91 HYX-OS-03 eof
(三)基础配置
1.更新yum源
1.1备份
cd /etc/yum.repos.d/ mkdir back mv ./C* back/
1.2下载配置文件
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
1.3清理并建立缓存
yum clean all && yum makecache
1.4更新
遇到跑不动的请更换网络。
yum -y update
2.时间同步
2.1创建crontab任务
crontab -e
2.2添加定时任务
*/20 * * * * /usr/sbin/ntpdate pool.ntp.org > /dev/null 2>&1
2.3代码解释
这是一个使用crontab命令设置的定时任务示例。它的含义是每20分钟执行一次/usr/sbin/ntpdate pool.ntp.org命令,并将输出结果重定向到/dev/null以丢弃标准输出和错误输出。
更具体地解释如下:
-
*/20 * * * *是cron时间表达式,表示每20分钟执行一次任务。 -
/usr/sbin/ntpdate pool.ntp.org是要执行的命令,它会使用ntpdate工具从pool.ntp.org服务器同步系统时间。 -
> /dev/null 2>&1是重定向语法,将标准输出和错误输出都重定向到/dev/null设备,即丢弃输出。
通过将这个定时任务添加到用户的crontab中,系统会每20分钟自动执行一次命令来同步系统时间。
请注意,具体命令的路径(例如/usr/sbin/ntpdate)和服务器地址(例如pool.ntp.org)可能因系统配置而有所不同。确保你设置正确的路径和服务器地址,以便任务可以正常运行。
3.安装opensack
3.1版本选择
三个版本,任选其一,推荐第一个。
# openstack-train版本 yum -y install centos-release-openstack-train.noarch # openstack queens版本 yum -y install centos-release-openstack-queens # openstack rocky版本 um -y install centos-release-openstack-rocky
3.2安装依赖
yum -y install openstack-packstack
3.3快速部署
packstack --allinone
packstack --allinone是一个命令,用于在OpenStack环境中快速部署一个"all-in-one"配置,即在一台服务器上安装并配置OpenStack的所有组件。"all-in-one"配置通常用于开发、测试或学习目的。
具体来说,packstack是一个由Red Hat提供的用于自动化OpenStack部署的工具。通过使用packstack命令,你可以指定不同的参数和选项来定制OpenStack的安装和配置方式。
而--allinone选项则指示packstack在单个节点上安装和配置具有所有OpenStack服务的"all-in-one"环境。这意味着OpenStack的各个组件,如Nova、Neutron、Glance等将被安装在同一台服务器上,用于模拟小规模的OpenStack环境。
在执行packstack --allinone命令之前,你需要确保满足安装OpenStack所需的系统要求,并已经安装了必要的依赖软件包。
值得一提的是,packstack命令可能会有不同的参数和选项可供使用,具体取决于你的OpenStack版本和配置需求。建议查阅相关文档或执行packstack --help命令,以获取更多关于packstack命令的详细信息和使用示例。
(四)WEB端
1.访问地址

图1-1 访问地址
2.登陆
2.1查看密码

图2-1 用户登陆信息

图2-2 查看用户登陆信息
3.修改密码

图3-1 修改密码(一)

图3-2 修改密码(二)
二、使用
(一)镜像管理
1.镜像下载地址
# centos7 http://cloud.centos.org/centos/7/images/ # ubuntu http://cloud-images.ubuntu.com/focal/20220213/ # windows https://cloudbase.it/windows-cloud-images/#download
2.上传镜像

图2-1 上传镜像(一)

图2-2 上传镜像(二)

图2-3 上传镜像(三)

图2-4 上传镜像(四)
(二)创建网络
1.删除路由

图1-1 删除路由
2.删除网络

图2-1 删除网络
3.创建网桥
vi /etc/sysconfig/network-scripts/ifcfg-br-ex
添加下面的内容,请注意要修改的位置。
DEVICE=br-ex DEVICETYPE=OVS TYPE=OVSBridge BOOTPROTO=static IPADDR=121.121.0.91 # 虚拟机IP地址,请修改。 PREFIX=24 GATEWAY=121.121.0.1 # 虚拟机网关,请修改。 DNS1=114.114.114.114 ONBOOT=yes
4.连接网桥
4.1备份ens33网络
cp ifcfg-ens33 ifcfg-ens33.bak
4.2修改ens33网络
请清空所有内容,可使用“%d”来清空,如若不会的话请将ifcfg-ens33删除后再次创建。
vi ifcfg-ens33
添加下面的内容,请注意要修改的位置。
DEVICE=ens33 TYPE=OVSPort DEVICETYPE=OVS OVS_BRIDGE=br-ex ONBOOT=yes HWADDR=00:0C:29:FA:D6:12 # MAC地址,请修改,MAC地址位置如下图所示。

图4-1 查看MAC地址
5.重启网络
systemctl restart network
6.验证配置

图6-1 验证配置(一)
如果重启网络后远程连接工具失去连接,请去VMware里面使用ip addr查看,如与上图不一样,则配置失败,请在VMware里面参照步骤4进行修改。

图6-2 验证配置(二)
7.创建网络
下面是另外一台虚拟机做的,请不要在意IP地址。
7.1创建公网

图7-1 创建网络(一)

图7-2 创建网络(二)

图7-3 创建网络(三)
7.2创建私网

图7-4 创建私网(一)

图7-5 创建私网(二)

图7-6 创建私网(三)
8.创建路由

图8-1 创建路由(一)

图8-2 创建路由(二)
(三)创建实例
1.公网实例
1.1创建

图1-1 创建公网实例(一)

图1-2 创建公网实例(二)

图1-3 创建公网实例(三)

图1-4 创建公网实例(四)
#!/bin/bash passwd root<<EOF 123456 123456 EOF

图1-5 创建公网实例(五)
1.2配置安全组

图2-1 配置安全组(一)

图2-2 配置安全组(二)
1.3验证实例
1.3.1宿主机ping实例的IP地址

图3-1 宿主机ping实例IP
1.3.2实例ping外网

图3-2 实例ping外网(一)

图3-3 实例ping外网(二)
1.4配置远程连接
在实例里面输入下面的代码
sed -i 's/#PasswordAuthentication yes/PasswordAuthentication yes/g' /etc/ssh/sshd_config sed -i 's/#UseDNS yes/UseDNS no/g' /etc/ssh/sshd_config sed -i 's/GSSAPIAuthentication yes/GSSAPIAuthentication no/g' /etc/ssh/sshd_config systemctl restart sshd
1.4.1命令验证

图4-1 命令验证
1.4.2远程工具验证

图4-2 远程连接工具验证
2.私网实例
2.1创建
这里与公网实例类似,只有网络那里不一样。

图1-1 私网实例创建(一)

图1-2 创建私网实例(二)

图1-3 创建私网实例(三)

图1-4 创建私网实例(四)
#!/bin/bash passwd root<<EOF 123456 123456 EOF

图1-5 创建私网实例(五)
2.2绑定浮动IP

图2-1 绑定浮动IP(一)

图2-2 绑定浮动IP(二)

图2-3 绑定浮动IP(三)

图2-4 绑定浮动IP(四)
2.3验证实例
2.3.1宿主机验证

图3-1 宿主机验证
2.3.2外网验证

图3-2 外网验证(一)

图3-3 外网验证(二)
2.4配置远程连接
由于配置出错,造成实例挂了,所以下面的IP与上面的不一样,但殊途同归。
在实例里面输入下面的代码
sed -i 's/#PasswordAuthentication yes/PasswordAuthentication yes/g' /etc/ssh/sshd_config sed -i 's/#UseDNS yes/UseDNS no/g' /etc/ssh/sshd_config sed -i 's/GSSAPIAuthentication yes/GSSAPIAuthentication no/g' /etc/ssh/sshd_config systemctl restart sshd
2.4.1命令验证

图4-1 命令验证
2.4.2远程工具验证

图4-2 远程工具验证
(四)拓展验证
1.公网实例PING私网实例

图1-1 公网实例PING私网实例
2.私网实例PING公网实例

图2-1 私网实例PING公网实例
文章详细介绍了如何在LinuxCentOS系统中搭建OpenStack环境,包括配置推荐、前期准备、基础设置、安装OpenStack、Web端管理和使用。内容涵盖关闭防火墙、禁用NetworkManager、时间同步、安装依赖、使用packstack进行快速部署以及镜像管理、网络创建、实例创建与配置等。
3182

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



