OpenStack 服务器平台搭建手册

适用版本:OpenStack Q版本(chinaskills_cloud_iaas.iso) 适用场景:双节点实验环境 / 省赛云计算平台搭建 操作系统:CentOS 7(CentOS-7-x86_64-DVD-1804.iso)


一、硬件与网络环境准备

1.1 所需硬件清单

设备数量备注
三层交换机1台支持 VLAN、Trunk
服务器(Controller)1台CPU/内存/硬盘越大越好
服务器(Compute)1台CPU/内存/硬盘越大越好
USB启动盘1个用于系统安装

1.2 网线连接规划

连接端交换机端口模式
Controller 网卡一 / Compute 网卡一1~2 口Access(管理网络)
Controller 网卡二 / Compute 网卡二9~10 口Trunk(业务网络)

1.3 IP 地址规划

节点主机名管理网IP(网卡一)网关DNS
控制节点controller10.2.12.10/2310.2.13.25410.8.12.106
计算节点compute10.2.12.11/2310.2.13.25410.8.12.106

1.4 交换机 VLAN 配置

<H3C>system-view
​
# 创建 VLAN 100 并配置网关IP
[H3C]vlan 100
[H3C-vlan100]int vlan 100
[H3C-Vlan-interface100]ip address 10.2.12.9 255.255.254.0
[H3C-Vlan-interface100]qu
​
# 配置 1~2 口为 Access 模式,划入 VLAN 100(管理网络)
[H3C]int range GigabitEthernet 1/0/1 to GigabitEthernet 1/0/2
[H3C-if-range]port link-type access
[H3C-if-range]port access vlan 100
[H3C-if-range]qu
​
# 配置 9~10 口为 Trunk 模式,放行所有 VLAN(业务网络)
[H3C]int range GigabitEthernet 1/0/9 to GigabitEthernet 1/0/10
[H3C-if-range]port link-type trunk
[H3C-if-range]port trunk permit vlan all
​
# 保存配置
[H3C]sa sa fo

二、操作系统安装

2.1 制作系统启动盘

使用 MultiBootUSB 或类似工具,将 CentOS-7-x86_64-DVD-1804.iso 写入U盘制作启动盘。

2.2 系统安装分区建议

两台服务器均按此配置安装系统

分区大小文件系统
swap2 GBswap
/boot1 GBext4
/剩余全部空间ext4

2.3 配置网卡(静态IP)

Controller 节点:

vi /etc/sysconfig/network-scripts/ifcfg-enp61s0f0
TYPE=Ethernet
BOOTPROTO=static        # 改为 static(原为 dhcp)
ONBOOT=yes              # 改为 yes(原为 no)
IPADDR=10.2.12.10
NETMASK=255.255.254.0
GATEWAY=10.2.13.254
DNS1=10.8.12.106

Compute 节点:(仅 IPADDR 不同)

IPADDR=10.2.12.11

重启网络服务:

systemctl restart network

三、OpenStack 平台部署

3.1 基础环境配置(两节点均需执行)

步骤一:修改主机名

# Controller 节点
hostnamectl set-hostname controller && logout
​
# Compute 节点
hostnamectl set-hostname compute && logout

步骤二:配置主机名解析

# 在 Controller 节点执行
vi /etc/hosts

在文件末尾追加以下内容:

10.2.12.10  controller
10.2.12.11  compute

步骤三:关闭防火墙和 SELinux

# 关闭防火墙(两节点均需执行)
systemctl stop firewalld && systemctl disable firewalld

# 修改 SELinux 为宽容模式(两节点均需执行)
vi /etc/selinux/config
# 将 SELINUX=enforcing 改为 SELINUX=permissive

3.2 配置 Yum 源

Controller 节点 — 挂载ISO并配置本地源

# 创建目录
mkdir /opt/centos /opt/iaas

# 挂载 CentOS 镜像
mount -o loop CentOS-7-x86_64-DVD-1804.iso /mnt/
cp -rvf /mnt/* /opt/centos/
umount /mnt

# 挂载 iaas 镜像
mount -o loop chinaskills_cloud_iaas.iso /mnt/
cp -rvf /mnt/* /opt/iaas/
umount /mnt

# 备份并创建 yum 源配置
mv /etc/yum.repos.d/* /media/
vi /etc/yum.repos.d/local.repo
[centos]
name=centos
baseurl=file:///opt/centos
gpgcheck=0
enabled=1

[iaas]
name=iaas
baseurl=file:///opt/iaas/iaas-repo
gpgcheck=0
enabled=1

安装并启用 vsftpd(为 Compute 节点提供 FTP 源):

yum -y install vsftpd
echo "anon_root=/opt" >> /etc/vsftpd/vsftpd.conf
systemctl restart vsftpd && systemctl enable vsftpd

Compute 节点 — 配置 FTP Yum 源

mv /etc/yum.repos.d/* /media/
vi /etc/yum.repos.d/local.repo
[centos]
name=centos
baseurl=ftp://controller/centos
gpgcheck=0
enabled=1

[iaas]
name=iaas
baseurl=ftp://controller/iaas/iaas-repo
gpgcheck=0
enabled=1

3.3 配置 OpenStack 环境变量

编辑配置文件:

vi /etc/xiandian/openrc.sh

关键参数说明(Controller 节点):

# ===== 节点信息 =====
HOST_IP=10.2.12.10          # Controller IP
HOST_PASS=000000             # Controller root 密码
HOST_NAME=controller         # Controller 主机名

HOST_IP_NODE=10.2.12.11     # Compute IP
HOST_PASS_NODE=000000        # Compute root 密码
HOST_NAME_NODE=compute       # Compute 主机名

# ===== 网络配置 =====
network_segment_IP=10.2.12.0/23
INTERFACE_IP=10.2.12.10     # 本节点 IP(Compute 改为 10.2.12.11)
INTERFACE_NAME=enp61s0f1    # 业务网卡名(网卡二)
Physical_NAME=provider
minvlan=1
maxvlan=300

# ===== 服务密码(统一设置) =====
RABBIT_USER=openstack
RABBIT_PASS=000000
DB_PASS=000000
DOMAIN_NAME=demo
ADMIN_PASS=000000
DEMO_PASS=000000
KEYSTONE_DBPASS=000000
# (其余服务密码均设为 000000)

同步配置文件到 Compute 节点,并修改 INTERFACE_IP:

# 拷贝配置文件
scp /etc/xiandian/openrc.sh compute:/etc/xiandian/openrc.sh

# ⚠️ 登录 Compute 节点,将 INTERFACE_IP 改为 10.2.12.11

3.4 安装 OpenStack 各组件

⚠️ 必须严格按照以下顺序执行,不可跳步!

# Step 1:两节点均安装 iaas-xiandian 包
[controller]# yum install -y iaas-xiandian
[compute]#    yum install -y iaas-xiandian

# Step 2:两节点均执行主机预配置脚本
[controller]# iaas-pre-host.sh
[compute]#    iaas-pre-host.sh

# Step 3:Controller 节点依次执行
[controller]# iaas-install-mysql.sh
[controller]# iaas-install-keystone.sh
[controller]# iaas-install-glance.sh
[controller]# iaas-install-nova-controller.sh

# Step 4:Compute 节点执行
[compute]#    iaas-install-nova-compute.sh

# Step 5:Controller 节点继续
[controller]# iaas-install-neutron-controller.sh

# Step 6:Compute 节点执行
[compute]#    iaas-install-neutron-compute.sh

# Step 7:Controller 节点完成 Dashboard 安装
[controller]# iaas-install-dashboard.sh

安装完成后访问 Dashboard:

项目内容
访问地址http://10.2.12.10/dashboard
用户名admin
密码000000

四、OpenStack 平台基础使用

4.1 创建外部网络

登录 Dashboard → 管理员 → 网络 → 创建网络,参数如下:

配置项
网络名称ExtNet
项目admin
供应商网络类型VLAN
物理网络provider
段 ID100
管理员状态启用
共享✅ 是
外部网络✅ 是

4.2 配置安全组

遵循 「三进三出」原则

  • 入方向:允许 ICMP、TCP、UDP 全部流量(或按需细化)
  • 出方向:允许 ICMP、TCP、UDP 全部流量

4.3 创建云主机类型(Flavor)

配置项说明
名称自定义
ID自动生成或自填
VCPU 数量根据需求设置
内存(MB)根据需求设置
根磁盘(GB)根据需求设置

4.4 上传镜像

  • 镜像格式:QCOW2
  • 路径:管理员 → 镜像 → 创建镜像

4.5 创建云主机

  1. 进入 项目 → 实例 → 创建实例
  2. 选择 镜像 作为启动源
  3. 选择已创建的 云主机类型
  4. 分配 网络(选择已创建的网络)
  5. 选择 安全组
  6. 点击 创建实例

五、常见问题排查

问题:创建云主机报错 “No valid host was found”

原因分析: 虚拟化类型默认为 KVM,在模拟/嵌套虚拟化环境中不支持,需改为 QEMU 软件模拟。

解决方法(在 Compute 节点执行):

# 修改 libvirt 虚拟化类型为 qemu
crudini --set /etc/nova/nova.conf libvirt virt_type qemu

# 设置开机自启并重启服务
systemctl enable libvirtd.service openstack-nova-compute.service
systemctl restart libvirtd.service openstack-nova-compute.service

附录:关键技术要点速查

要点说明
部署架构双节点:Controller(控制节点)+ Compute(计算节点)
网络模式双网卡:管理网(Access)+ 业务网(Trunk)
VLAN ID外部网络使用 VLAN 100
Yum 源共享Controller 通过 vsftpd 提供 FTP 源,Compute 远程挂载
组件安装使用 iaas-xiandian 脚本自动化安装,顺序严格
默认密码所有服务密码统一为 000000(生产环境务必修改!)
Dashboardhttp://[controller-IP]/dashboard,admin / 000000

📌 注意事项

  • 本手册中所有密码均为实验默认值 000000生产环境必须使用强密码
  • 各组件安装脚本需严格按顺序执行,跳步可能导致依赖缺失
  • Compute 节点的 openrc.shINTERFACE_IP 必须改为对应节点 IP

文档整理自:CSDN博客原文 | 整理时间:2026-05-13

© 版权声明
THE END
喜欢就支持一下吧
点赞5 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容