OpenStack的搭建与使用

文章详细介绍了如何在LinuxCentOS系统中搭建OpenStack环境,包括配置推荐、前期准备、基础设置、安装OpenStack、Web端管理和使用。内容涵盖关闭防火墙、禁用NetworkManager、时间同步、安装依赖、使用packstack进行快速部署以及镜像管理、网络创建、实例创建与配置等。
摘要由CSDN通过智能技术生成

初次接触open stack与Linux,如有错误与可改进的地方,恳请指出。

一、搭建

(一)配置推荐

系统镜像内存储存
Linuxcentos7.616G+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公网实例

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值