在企业数字化转型中,私有云凭借数据自主可控、合规性强、资源可定制等优势,成为核心业务承载的首选方案。OpenStack 作为开源私有云的事实标准,其部署与运维是运维工程师的核心技能之一。本文将以双节点(控制节点 controller + 计算节点 compute) 架构为基础,完整还原 CentOS 7 环境下 OpenStack 私有云的部署前置准备、环境校验与最终验证全流程,帮你从零搭建一套可运行的私有云平台。


一、实验环境规划:双节点架构设计

本次实验采用经典的 OpenStack 双节点架构,在 VMware Workstation Pro 中创建两台 CentOS 7 虚拟机,分别模拟控制节点与计算节点,具体参数规划如下:

表格

主机名内网网卡 ens32 IP网关 GATEWAYDNS外网网卡 ens33 IP硬件配置
controller192.168.137.241/24192.168.137.1/24192.168.13.7.1(可暂不设置)20.0.0.10/244G 内存、2 核 CPU、3 块硬盘(40G+20G+20G)、2 块网卡
compute192.168.137.242/24192.168.137.1/24192.168.13.7.1(可暂不设置)20.0.0.20/244G 内存、2 核 CPU、3 块硬盘(40G+20G+20G)、2 块网卡

网卡角色说明

  • ens32(内网网卡):连接 VMnet8,用于 SecureCRT/Xshell 远程登录管理,网段需与 VMnet8 保持一致,是运维操作的核心入口。
  • ens33(外网网卡):专门用于 OpenStack 组件通信与实例网络,隔离管理流量与业务流量,保障平台稳定性。

二、部署前置校验:3 项核心检查步骤

在正式部署 OpenStack 前,必须完成环境校验,避免后续安装出现网络不通、源失效等问题。以下是实验要求的 3 项关键检查操作:

1. 本地 YUM 源修改校验:cat /etc/yum.repos.d/CentOS-Base.repo

OpenStack 部署依赖大量软件包,默认 CentOS 官方源在国内访问速度慢、易失效,因此需提前替换为国内镜像源(如阿里云、清华源)。

  • 操作命令:在 controller 和 compute 节点分别执行

  • 校验标准:文件中baseurl字段需替换为国内镜像地址(如https://mirrors.aliyun.com/centos/7/os/x86_64/),而非官方mirror.centos.org地址,确保后续yum install命令可正常拉取包。
  • 避坑提示:CentOS 7 已停止维护,官方源已下线,必须替换为国内镜像源,否则会出现404 Not Found错误,导致部署中断。

2. IP 地址配置校验:ip address

双节点的网络连通性是 OpenStack 部署的基础,需确保两块网卡 IP 配置正确、节点间可互通。

  • 操作命令:在 controller 和 compute 节点分别执行

  • 校验标准
    1. ens32网卡 IP 分别为192.168.137.241/24(controller)和192.168.137.242/24(compute),网关配置正确;
    2. ens33网卡 IP 分别为20.0.0.10/24(controller)和20.0.0.20/24(compute);
    3. 执行ping 192.168.137.242(controller 节点 ping compute)、ping 192.168.137.241(compute 节点 ping controller),确保内网互通;
    4. 执行ping 20.0.0.20(controller 节点 ping compute 外网网卡),确保 OpenStack 组件通信网络正常。

3. Dashboard 登录验证:http://[controller的IP地址]/dashboard

OpenStack 部署完成后,需通过 Horizon(Dashboard)可视化界面验证平台可用性,这是部署成功的最终标志。

  • 操作步骤
    1. 在物理机浏览器中访问http://192.168.137.241/dashboard(替换为 controller 节点的 ens32 IP);
    2. 输入实验预设的域名(默认default)、用户名(如admin)、密码(部署时设置的管理员密码)
    3. 登录成功后,截取 Dashboard 首页界面,作为部署完成的凭证。
  • 校验标准:成功
  • 进入 OpenStack 管理界面,可查看实例、镜像、网络等资源模块,无报错提示。

三、部署核心流程:从环境准备到组件安装

1. 基础环境配置(双节点同步执行)

  • 主机名与 hosts 解析

    bash

    运行

    # controller节点
    hostnamectl set-hostname controller
    # compute节点
    hostnamectl set-hostname compute
    # 双节点均修改/etc/hosts,添加解析
    echo -e "192.168.137.241 controller\n192.168.137.242 compute" >> /etc/hosts
    
  • 关闭防火墙与 SELinux

    bash

    运行

    systemctl stop firewalld && systemctl disable firewalld
    setenforce 0 && sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
    
  • 时间同步配置

    bash

    运行

    # controller节点作为NTP服务器,compute节点同步controller时间
    yum install -y chrony
    # controller节点配置/etc/chrony.conf,允许compute节点同步
    systemctl start chronyd && systemctl enable chronyd
    

2. OpenStack 组件安装(controller 节点为主)

OpenStack 核心组件包括 Keystone(身份认证)、Glance(镜像服务)、Nova(计算服务)、Neutron(网络服务)、Horizon(Dashboard)等,需按顺序安装:

  1. Keystone:搭建身份认证服务,创建域、项目、用户、角色,为所有组件提供认证;
  2. Glance:部署镜像服务,上传 Cirros 等测试镜像,用于创建云主机实例;
  3. Nova:部署计算服务,controller 节点作为控制端,compute 节点作为计算端,管理云主机生命周期;
  4. Neutron:部署网络服务,配置租户网络、路由器、浮动 IP,实现云主机网络连通;
  5. Horizon:安装 Dashboard 可视化界面,完成 Web 端管理入口部署。

3. 计算节点配置(compute 节点)

在 controller 节点完成核心组件安装后,需在 compute 节点部署 Nova-compute、Neutron-agent 等服务,配置与 controller 节点的通信,注册到 OpenStack 集群中,实现计算资源的纳管。


四、部署避坑指南:90% 的人会踩的 3 个坑

1. YUM 源失效导致安装失败

CentOS 7 官方源已下线,若未替换国内镜像源,执行yum install会直接报错。解决方法:提前替换为阿里云 CentOS 7 镜像源,同时配置 OpenStack RDO 源(如https://mirrors.aliyun.com/rdo/),确保组件包可正常拉取。

2. 网络配置错误导致节点不通

双节点网卡 IP、网关、hosts 解析配置错误,会导致 OpenStack 组件通信失败,服务无法启动。解决方法:部署前严格执行ip address校验,用ping命令验证节点间互通,确保/etc/hosts文件配置正确。

3. 时间不同步导致服务异常

OpenStack 组件对时间同步要求极高,若双节点时间差超过 5 秒,会出现 Keystone 认证失败、Nova 服务异常等问题。解决方法:部署 chrony 时间同步服务,确保 controller 与 compute 节点时间一致。


五、写在最后:私有云部署的核心价值

本次双节点 OpenStack 部署,是私有云运维的入门实践,完整还原了企业私有云从环境规划、部署实施到验证上线的全流程。通过本次实践,不仅能掌握 OpenStack 核心组件的部署逻辑,更能理解私有云的架构设计、网络规划、环境标准化等核心运维能力。

对于企业而言,私有云的价值远不止于搭建,更在于后续的运维优化、资源调度、安全加固与业务适配。本次部署的双节点架构可作为测试环境,后续可扩展为多节点高可用架构,承载企业核心业务,实现资源的弹性伸缩与高效管理。

更多推荐