Openstack是一个云平台管理的项目,它不是一个软件。这个项目由几个主要的组件组合起来完成一些具体的工作。Openstack是一个旨在为公共及私有云的建设与管理提供软件的开源项目。它的社区拥有超过130家企业及1350位开发者,这些机构与个人将 Openstack作为基础设施即服务资源的通用前端。Openstack项目的首要任务是简化云的部署过程并为其带来良好的可扩展性。本文希望通过提供必要的指导信息,帮助大家利用 Openstack前端来设置及管理自己的公共云或私有云。

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_openstack

本教程参考官方安装文档实现:官方文档

安装环境如下

VMware Workstation

V17.0

本机系统

win11

虚拟机系统

CentOS 7.5

CentOS7.5 百度云下载:百度云提取码:v9qp

本教程共创建2个虚拟机,一个为控制节点(controller),控制节点包含2个网卡,一个为计算节点(compute),计算节点包含2个网卡,网络配置如下:

provider network

management network

controller

192.168.59.20

10.0.0.11

compute

192.168.59.30

10.0.0.31

openstack的网络有两种配置方式,分为provider和self-service,本文采用self-service的方式搭建网络,关于网络类型可参考官方文档。

关于密码的说明:由于openstack安装多个不同的组建,需要创建多个密码,为了简单起见,本教程中所有的密码都设置为"123456"。

本教程对应的视频教程:[Openstack Train安装]一、虚拟机创建


一、配置VMware网络

打开VMware,选择 编辑 -> 虚拟网络编辑器:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_重启_02

打开的虚拟网络编辑器如下,以管理模式打开,配置NAT网络:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_重启_03

配置NAT的子网地址,本次实验规划的controller和compute节点的provider网络地址分别为192.168.59.20和192.168.59.30,他们的网络号是192.168.59.0,故将NAT子网的IP设置为192.168.59.0:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_openstack_04

记录网关IP(网关IP用于后续配置节点的IP地址,务必记住):

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_linux_05

网络配置完毕。

二、创建controller节点

首先创建controller虚拟机,打开VMware workstation:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_linux_06

选择典型,下一步:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_linux_07

选择Centos7.5镜像文件,下一步:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_openstack_08

输入用户名和密码,密码为123456:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_openstack_09

设置名称和虚拟机安装位置:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_重启_10

设置磁盘50GB,选择单个存储:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_重启_11

点击自定义硬件:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_重启_12

配置内存和处理器:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_重启_13

点击添加,准备添加网卡(controller和compute都要2个网卡):

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_重启_14

勾选添加网卡:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_IP_15

第一张网卡使用NAT模式,可以访问互联网,第二章网卡是management网络,负责设备管理,添加LAN区段:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_linux_16

更改第二张网卡的网络连接模式并点击最下方的关闭按钮:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_重启_17

回到安装页面,点击完成:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_openstack_18

开启虚拟机(如果勾选了“创建后开启此虚拟机”,则自动开启虚拟机),耐心等待,直到进入如下界面:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_重启_19

安装完毕,进入系统,点击Notlist,输入账号root,密码123456进入系统:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_linux_20

右键,open termimal打开一个终端:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_重启_21

进入 /etc/sysconfig/network-scripts/ 目录下,输入ls,查看当前文件夹内的文件,controller节点有2个网卡,他们的配置文件分别为ifcfg-ens33和ifcfg-ens34,文件名称可能不一样,但是没有关系,这个不影响,只需要在后面修改的时候把路径替换成自己的就可以:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_linux_22

输入命令"vi ifcfg-ens33",进入配置界面,进行如下配置为了防止每次虚拟机开机IP地址变化,将第一张网卡的IP改为静态IP 192.168.59.20(本文一开始规划的IP),网关设置为192.168.59.2(虚拟机网络设置NAT配置里面,默认的网关IP),DNS设置为114.114.114.114(全国通用DNS),第一张网卡用于访问互联网,修改完毕后保存:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_重启_23

接下来配置第二章网卡,第二章网卡属于management network,用于设备管理,输入命令“vi ifcfg-ens34”,进行如下配置(Management Network使用的网络号为10.0.0.0,按照规划,控制节点的IP地址为10.0.0.11),修改完毕后保存:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_linux_24

网络配置完成后,重启网络服务,并关闭NetworkManager:

systemctl restart network
systemctl stop NetworkManager 
systemctl disable NetworkManager

关闭防火墙和selinux(为了简单起见,在实验环节关闭防火墙和selinux,生产环境不建议关闭):

systemctl stop firewalld 
systemctl disable firewalld
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
cat /etc/selinux/config

/etc/selinux/config中的SELINUX=disabled即可,如下所示:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_linux_25

将本机的主机名设置为controller,使用如下命令:

hostnamectl set-hostname controller

配置本机的DNS服务,输入命令“vi /etc/hosts”,进行如下配置:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_重启_26

输入命令“reboot”,重启虚拟机。虚拟机重启后,打开终端,输入命令"ifconfig",查看IP配置:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_IP_27

输入命令“ping www.baidu.com”检查是否能够访问外网,如果可以访问外网,controller节点配置结束;如果不可以访问外网,输入命令“dhclient”,再次尝试“ping www.baidu.com”,确保可以访问外网。

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_IP_28

控制节点配置完毕,输入“init 0”关机。

三、创建计算节点

确保控制节点关机,右键控制节点->管理->克隆:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_openstack_29

下一步,进入下面的界面,再次下一步:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_linux_30

创建完整克隆:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_重启_31

名称改为compute,路径自己配置,点击完成:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_linux_32

compute节点克隆完成,接下来开启虚拟机,登录root用户:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_linux_33

打开终端,输入命令“hostnamectl set-hostname compute”,将主机名设置为compute:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_重启_34

进入目录/etc/sysconfig/network-scripts/,配置网卡ens33:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_重启_35

修改ens33的IP地址为192.168.59.30,保存退出:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_重启_36

输入命令“vi ifcfg-ens34”,配置第二个网卡的地址,保存退出:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_IP_37

 网络配置完成后,重启网络服务,并关闭NetworkManager:

systemctl restart network
systemctl stop NetworkManager 
systemctl disable NetworkManager

关闭防火墙和selinux(为了简单起见,在实验环节关闭防火墙和selinux,生产环境不建议关闭):

systemctl stop firewalld 
systemctl disable firewalld
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
cat /etc/selinux/config

/etc/selinux/config中的SELINUX=disabled即可,如下所示:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_linux_25

重启compute节点,输入命令“ping www.baidu.com”,查看能否访问互联网,如果不能访问,输入命令“dhclient”,再次输入命令“ping www.baidu.com”,确保可以访问互联网,如下图:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_IP_39

四、网络通信测试

接下来controller节点开机,在控制节点输入下图命令,确保可以ping通:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_linux_40

在compute节点进行如下测试:

openstack 命令行下使用快照创建虚拟机 openstack批量创建虚拟机_重启_41

测试完毕,虚拟机安装完成,网络基本配置完成。

致谢

1、感谢Ceased纠正了IP地址错误。