-今日
-本周
-本月
-累计
独立访客
项目工作台‹云计算应用技术实验报告 个人项目与实践记录

实验二 · packstack安装OpenStack

实验时间2025.09.29

实验目的

  1. 掌握openstack的基础架构
  1. 掌握采用packstack安装openstack的操作
  1. 熟悉openstack的常用操作

实验原理

OpenStack是一个开源的云计算管理平台项目,由几个主要的组件组合起来完成具体工作。OpenStack支持几乎所有类型的云环境,项目目标是提供实施简单、可大规模扩展、丰富、标准统一的云计算管理平台。OpenStack通过各种互补的服务提供了基础设施即服务(IaaS)的解决方案,每个服务提供API以进行集成。

OpenStack组件介绍:

项目代码名称描述
计算(Compute)Nova管理虚拟机资源,包括CPU、内存、磁盘和网络接口
网络(Networking)Neutron提供虚拟机网络接口资源,包括IP寻址、路由和软件定义网络(SDN)
对象存储 (Object Storage)Swift提供可通过RESTful API访问的对象存储
块存储 / (Block Storage)Cinder为虚拟机提供块(传统磁盘)存储
身份认证服务 / (Identity)Keystone为OpenStack组件提供基于角色的访问控制(RBAC),提供授权服务
镜像服务 / (Image Service)Glance管理虚拟机磁盘镜像,为虚拟机和快照(备份)服务提供镜像
仪表盘 / (Dashboard)Horizon为OpenStack提供基于Web的图形界面
计量服务 / (Telemetry)Ceilometer集中为OpenStack各个组件收集计量和监控数据
编排服务 / (Orchestration)Heat为OpenStack环境提供基于模板的云应用编排服务

实验仪器设备或材料

  1. 个人计算机一台
  1. vmware worksation
  1. CentOS7
  1. Shell连接工具(FinalShell或者其他)

实验内容与步骤

环境规划

操作系统版本硬件配置IP地址规划主机名虚拟机软件OpenStack版本
centos7.94vCPUS/8G 30G硬盘192.168.10.1openstackVMware WorkStation16Stein

注:IP根据自己实际的实验环境修改,下同。

准备资料

OpenStack官方文档:https://docs.openstack.org/install-guide/

使用Packstack一键部署OpenStack的方式,隐藏了技术细节,如果使用中出来任何问题,我们都无法解决,所以体验完OpenStack的日常界面操作后,后期还是要仔细查看官方文档,然后一步步手工安装OpenStack各组件。

阿里云yum源设置官方文档:https://developer.aliyun.com/mirror/centos?spm=a2c6h.13651102.0.0.3e221b11Jpkdzb

部署过程

安装虚拟机

注意安装前要启用CPU的虚拟化设置

(以下步骤非常重要决定了部署OpenStack是否成功)

修改centos系统的主机名(切到root用户)

hostnamectl set-hostname yourhost

设置centos系统为静态IP地址

systemctl restart network

#测试网络是否通外网

ping www.baidu.com -c 2

关闭防火墙

systemctl stop firewalld
systemctl disable firewalld

关闭SeLinux

vi /etc/selinux/config
修改SELINUX=enforcing为SELINUX=disabled
运行setenforce 0使配置马上生效

关闭NetworkManager服务

systemctl stop NetworkManager
systemctl disable NetworkManager

修改官方yum源为阿里云yum源

cd /etc/yum.repos.d/ //切换到/etc/yum.repos.d/文件夹
rm -rf * //删除/etc/yum.repos.d/下面的所有官方源文件
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
yum clean all
yum makecache #重建本地yum索引缓存

系统升级

yum -y update //对系统进行升级

安装OpenStack Stein的yum库

yum -y install centos-release-openstack-stein

修改CentOS-OpenStack-stein.repo配置文件

cd /etc/yum.repos.d/
#修改配置文件
vi CentOS-OpenStack-stein.repo
原本的:
改为:
vi CentOS-Ceph-Nautilus.repo
原本的:
改为:
vi CentOS-QEMU-EV.repo
原本的:
改为:
vi CentOS-NFS-Ganesha-28.repo
原本的:
改为:
#清除本地yum索引缓存,然后再重建索引缓存
yum clean all && yum makecache

关机并修改虚拟机配置

init 0

安装packstack工具

yum -y install openstack-packstack

安装OpenStack allinone

packstack --allinone

自动化安装时间很长,静静等待,直到出现如下信息,表示成功安装。

查看Dashboard web页面的登录账号及密码

cd /root
cat keystonerc_admin

Dashboard web登录界面

登录方式:http://192.168.10.1

修改Dashboard登录密码

使用新密码重新登录

为以后的实验过程,同时需要修改keystonerc_admin文件中的OS_PASSWORD变量,换成新密码,如下:

vim keystonerc_admin
export OS_PASSWORD='admin' #填入修改后的新密码

附:安装过程中的错误及解决办法

错误1:ERROR : Failed to run remote script, stdout:

stderr: Warning: Permanently added '172.17.2.60' (ECDSA) to the list of known hosts.

解决办法:

ssh-kengen
ssh-copy-id root@172.17.2.60

错误2:facter: error while loading shared libraries: leatherman_curl.so.1.3.0: cannot open shared object file: No such file or directory

原因:启用了epel库导致的

解决办法:

#1.禁用epel
yum-config-manager --disable epel
#2.清理yum索引缓存
yum clean all
#3.重建yum索引缓存
yum makecache
#4.降级leatherman
yum downgrade leatherman

实验结果与分析

本次实验基于 CentOS 7.9 操作系统,通过 Packstack 工具成功完成 OpenStack Stein 版本的 All-in-One 模式部署。部署完成后,可通过http://192.168.10.1/dashboard访问 OpenStack DashboardWeb 界面,成功将登录密码更新为自定义密码,且更新后可正常重新登录,验证了账号权限管理功能的有效性。

结论与体会

本次实验也让我体会到 "云计算平台的实用性与复杂性平衡"。OpenStack 作为开源项目,其优势在于可扩展性强、支持自定义配置,但也正因组件众多,部署与维护门槛较高。