网站搜索

如何配置 OpenStack 网络以启用对 OpenStack 实例的访问


本教程将指导您如何配置 OpenStack 网络服务,以允许从外部网络访问 OpenStack 实例。

要求

  1. 在 RHEL 和 CentOS 7 中安装 OpenStack

步骤1:修改网络接口配置文件

1. 在开始从仪表板创建 OpenStack 网络之前,首先我们需要创建一个 OVS 网桥并修改我们的物理网络接口以绑定为端口到 OVS 桥。

因此,登录到您的服务器终端,导航到网络接口目录脚本,并使用物理接口作为摘录来通过发出以下命令来设置 OVS 桥接口:

cd /etc/sysconfig/network-scripts/
ls  
cp ifcfg-eno16777736 ifcfg-br-ex

2. 接下来,使用文本编辑器编辑和修改桥接口(br-ex),如下所示:

vi ifcfg-br-ex

接口 br-ex 摘录:

TYPE="Ethernet"
BOOTPROTO="none"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="no"
IPV6_AUTOCONF="no"
IPV6_DEFROUTE="no"
IPV6_FAILURE_FATAL="no"
NAME="br-ex"
UUID="1d239840-7e15-43d5-a7d8-d1af2740f6ef"
DEVICE="br-ex"
ONBOOT="yes"
IPADDR="192.168.1.41"
PREFIX="24"
GATEWAY="192.168.1.1"
DNS1="127.0.0.1"
DNS2="192.168.1.1"
DNS3="8.8.8.8"
IPV6_PEERDNS="no"
IPV6_PEERROUTES="no"
IPV6_PRIVACY="no"

3. 对物理接口 (eno16777736) 执行相同的操作,但确保它看起来像这样:

vi ifcfg-eno16777736

接口eno16777736摘录:

TYPE="Ethernet"
BOOTPROTO="none"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="no"
IPV6_AUTOCONF="no"
IPV6_DEFROUTE="no"
IPV6_FAILURE_FATAL="no"
NAME="eno16777736"
DEVICE="eno16777736"
ONBOOT="yes"
TYPE=”OVSPort”
DEVICETYPE=”ovs”
OVS_BRIDGE=”br-ex”

重要:编辑接口卡时,请确保相应地替换物理接口名称、IP 和 DNS 服务器。

4.最后,修改编辑两个网络接口后,重新启动网络守护程序以反映更改并使用 ip 命令验证新配置。

systemctl restart network.service
ip a

步骤2:创建一个新的OpenStack项目(租户)

5.在这一步中,我们需要使用Openstack仪表板来进一步配置我们的云环境。

使用admin凭据登录Openstack网络面板(仪表板),然后转到身份 -> 项目 -> 创建项目并创建一个新项目,如下所示。

6. 接下来,导航到身份 -> 用户 -> 创建用户并通过填写所有内容来创建一个新用户包含所需信息的字段。

确保该新用户已分配角色作为新创建的租户(项目)的 _member_

步骤 3:配置 OpenStack 网络

7. 创建用户后,从仪表板注销 admin 并使用新用户登录,以创建两个网络(内部网络)网络和外部)。

导航到项目 -> 网络 -> 创建网络并设置内部网络,如下所示:

Network Name: internal
Admin State: UP
Create Subnet: checked

Subnet Name: internal-tecmint
Network Address: 192.168.254.0/24
IP Version: IPv4
Gateway IP: 192.168.254.1

DHCP: Enable

使用下面的屏幕截图作为指导。另外,请将网络名称子网名称IP 地址替换为您自己的自定义设置。

8. 接下来,使用与上述相同的步骤创建外部网络。确保外部网络的 IP 地址空间与上行链路桥接口 IP 地址范围在同一网络范围内,以便在无需额外路由的情况下正常工作。

因此,如果br-ex接口将192.168.1.1作为192.168.1.0/24网络的默认网关,则相同的网络和网关外部网络也应该配置IP。

Network Name: external
Admin State: UP
Create Subnet: checked

Subnet Name: external-tecmint
Network Address: 192.168.1.0/24
IP Version: IPv4
Gateway IP: 192.168.1.1

DHCP: Enable

再次根据您自己的自定义配置替换网络名称子网名称IP 地址

9.下一步,我们需要以admin身份登录OpenStack仪表板,并将外部网络标记为外部为了能够与桥接口进行通信。

因此,使用admin凭据登录并转到Admin -> 系统-> 网络,单击外部网络,选中外部网络框并点击保存更改以应用配置。

完成后,从 admin 用户注销并再次使用自定义用户登录以继续下一步。

10.最后,我们需要为两个网络创建一个路由器,以便来回移动数据包。转到项目 -> 网络 -> 路由器并点击创建路由器按钮。为路由器添加以下设置。

Router Name: a descriptive router name
Admin State: UP
External Network: external 

11. 创建路由器后,您应该能够在仪表板中看到它。单击路由器名称,转到接口选项卡,然后点击添加接口按钮,就会出现一个新提示。

选择内部子网,将IP地址字段留空,然后点击提交按钮应用更改,几秒钟后您的界面应变为活跃

12.为了验证OpenStack网络设置,请进入项目 -> 网络 -> 网络拓扑,将显示如图所示的网络图在下面的屏幕截图上。

就这样!您的 OpenStack 网络现已正常运行并准备好用于虚拟机流量。在下一个主题中,我们将讨论如何创建和启动 OpenStack 映像实例。