杨校老师课堂之云计算私有云OpenStack框架快速搭建

简介: 杨校老师课堂之云计算私有云OpenStack框架快速搭建

1.什么是OpenStack

OpenStack是一系列开源软件项目的组合。

OpenStack是目前非常流行的开源云操作系统

OpenStack是基础设施资源的系统管理平台。

OpenStack对数据中心的计算、存储和网络资源进行统一管理。

OpenStack作为虚拟机、裸金属服务器和容器等的云基础架构和基础设施平台。

2. OpenStack项目及其组成

3. OpenStack项目及其组成

仪表板(Dashboard)——Horizon

计算服务(Compute Service)——Nova

网络(Networking)——Neutron

对象存储(Object Storage)——Swift

块存储(Block Storage)——Cinder

身份服务(Identity Service)——Keystone

镜像(Image Service)——Glance

OpenStack基金会与社区

OpenStack基金会是一个非营利组织。

OpenStack基金会分为个人会员和企业会员两大类。

OpenStack社区是世界上规模非常大也非常完善的开源社区之一。

技术委员会负责总体管理全部OpenStack项目。

项目技术负责人则负责管理项目内的事务,对项目本身的发展进行决策。

OpenStack社区对个人会员而言是非常开放的。

4.OpenStack安装

  1. 准备OpenStack安装环境
  2. 创建实验用的虚拟机实例。
  3. 在实验用虚拟机实例中安装CentOS。
  4. 禁用防火墙与SELinux。
  5. 停用NetworkManager服务。
  1. 设置网络。
  2. 设置主机名。
  3. 更改语言编码。
  4. 设置时间同步

5.快速安装:

基于Packstack安装器安装一体化OpenStack云平台

5.1 准备工作:

(1)准备一台能够安装OpenStack的实验用计算机,建议使用VMware虚拟机。

(2)该计算机应安装CentOS 7,我这是基于CentOS 7.6版本。

(3)禁用防火墙与SELinux。

[root@hadoop1 ~]# systemctl stop firewalld

(4)停用NetworkManager服务。

[root@hadoop1 ~]# systemctl stop NetworkManager

[root@hadoop1 ~]# systemctl disable NetworkManager

(5)设置网卡。

[root@hadoop1 ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens33
# 重启网卡服务
[root@hadoop1 ~]# systemctl restart network

(6)设置主机名。

# 作为举例,我这里最后一个单词hadoop1 是主机名; 可以更改为自己的主机名
[root@hadoop1 ~]# hostnamectl set-hostname  hadoop1

(7)设置时间同步

[root@hadoop1 ~]# yum -y install chrony
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * centos-ceph-nautilus: mirrors.aliyun.com
 * centos-nfs-ganesha28: mirrors.ustc.edu.cn
 * centos-openstack-train: mirrors.aliyun.com
 * centos-qemu-ev: mirrors.aliyun.com
 * epel: mirrors.bfsu.edu.cn
 * extras: mirrors.aliyun.com
 * updates: mirrors.cn99.com
正在解决依赖关系
--> 正在检查事务
---> 软件包 chrony.x86_64.0.3.2-2.el7 将被 升级
---> 软件包 chrony.x86_64.0.3.4-1.el7 将被 更新
--> 解决依赖关系完成

依赖关系解决

=============================================================================================================================================================
 Package                              架构                                 版本                                     源                                  大小
=============================================================================================================================================================
正在更新:
 chrony                               x86_64                               3.4-1.el7                                base                               251 k

事务概要
=============================================================================================================================================================
升级  1 软件包

总计:251 k
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  正在更新    : chrony-3.4-1.el7.x86_64                                                                                                                  1/2 
  清理        : chrony-3.2-2.el7.x86_64                                                                                                                  2/2 
  验证中      : chrony-3.4-1.el7.x86_64                                                                                                                  1/2 
  验证中      : chrony-3.2-2.el7.x86_64                                                                                                                  2/2 

更新完毕:
  chrony.x86_64 0:3.4-1.el7                                                                                                                                  

完毕!

5.2 详细操作记录

(1)准备所需的软件库。

# 安装Linux的epel的yum源的命令, 补充CentOS内容更新有时较滞后或缺失一些扩展的源
[root@hadoop1 ~]# yum -y install epel-release 

[root@hadoop1 ~]# yum install -y python2-setuptools

[root@hadoop1 ~]# yum -y install centos-release-openstack-train


(2)安装Packstack软件。

[root@hadoop1 ~]# yum -y install openstack-packstack

(3)运行Packstack,以“All-in-One”方式安装OpenStack Train版本。

[root@hadoop1 ~]# packstack --allinone
Installing:
Clean Up                                             [ DONE ]
Discovering ip protocol version                      [ DONE ]
# 设置SSH密钥
Setting up ssh keys                                  [ DONE ]
# 准备服务器
Preparing servers                                    [ DONE ]
# 预安装Puppet并探测主机详情
Pre installing Puppet and discovering hosts' details [ DONE ]
# 准备预装的项目
Preparing pre-install entries                        [ DONE ]
# 设置证书
Setting up CACERT                                    [ DONE ]
# 准备AMQP(高级消息队列协议)项目
Preparing AMQP entries                               [ DONE ]
# 准备MariaDB(代替MySQL)数据库项目
Preparing MariaDB entries                            [ DONE ]
# 修正Keystone LDAP参数
Fixing Keystone LDAP config parameters to be undef if empty[ DONE ]
# 准备Keystone(身份服务)项目
Preparing Keystone entries                           [ DONE ]
# 准备Glance(镜像服务)项目
Preparing Glance entries                             [ DONE ]
# 检查Cinder(卷存储服务)是否有卷
Checking if the Cinder server has a cinder-volumes vg[ DONE ]
# 准备Cinder(卷存储服务)项目
Preparing Cinder entries                             [ DONE ]
# 准备Nova API(Nova接口)项目
Preparing Nova API entries                           [ DONE ]
# 为Nova迁移创建SSH密钥
Creating ssh keys for Nova migration                 [ DONE ]
Gathering ssh host keys for Nova migration           [ DONE ]
Gathering ssh host keys for Nova migration           [ DONE ]
# 准备Nova(计算服务)项目
Preparing Nova Compute entries                       [ DONE ]
Preparing Nova Scheduler entries                     [ DONE ]
Preparing Nova VNC Proxy entries                     [ DONE ]
Preparing OpenStack Network-related Nova entries     [ DONE ]
Preparing Nova Common entries                        [ DONE ]
# 准备Neutron(网络)项目
Preparing Neutron API entries                        [ DONE ]
Preparing Neutron L3 entries                         [ DONE ]
Preparing Neutron L2 Agent entries                   [ DONE ]
Preparing Neutron DHCP Agent entries                 [ DONE ]
Preparing Neutron Metering Agent entries             [ DONE ]
# 检查NetworkManager是否启用并运行
Checking if NetworkManager is enabled and running    [ DONE ]
# 准备OpenStack客户端项目
Preparing OpenStack Client entries                   [ DONE ]
# 准备Horizon仪表板项目
Preparing Horizon entries                            [ DONE ]
# 准备Swift(对象存储服务)项目
Preparing Swift builder entries                      [ DONE ]
Preparing Swift proxy entries                        [ DONE ]
Preparing Swift storage entries                      [ DONE ]
# 准备Gnocchi(用于计量的时间序列数据库服务器)项目
Preparing Gnocchi entries                            [ DONE ]
# 准备Redis(用于计量的数据结构服务器)项目
Preparing Redis entries                              [ DONE ]
# 准备Ceilometer(计量服务)项目
Preparing Ceilometer entries                         [ DONE ]
# 准备Aodh(警告)项目
Preparing Aodh entries                               [ DONE ]
# 准备Puppet模块和配置清单
Preparing Puppet manifests                           [ DONE ]
Copying Puppet modules and manifests                 [ DONE ]
# 应用控制节点(测试时可能需要较长时间,可以考虑先开一局王者~)
Applying 192.168.101.166_controller.pp
192.168.101.166_controller.pp:                        [ DONE ]           
# 应用网络节点(测试时可能需要较长时间,可以考虑先开一局王者~)
Applying 192.168.101.166_network.pp
192.168.101.166_network.pp:                           [ DONE ]        
# 应用计算节点(测试时可能需要较长时间,可以考虑先开一局王者~)
Applying 192.168.101.166_compute.pp
192.168.101.166_compute.pp:                           [ DONE ]        
# 应用Puppet配置清单
Applying Puppet manifests                            [ DONE ]
Finalizing                                           [ DONE ]
# 安装成功,完成应用并给出其他提示信息
 **** Installation completed successfully ******
Additional information:
# 提示网络已采用OVN Neutron后端
 * Parameter CONFIG_NEUTRON_L2_AGENT: You have chosen OVN Neutron backend. Note that this backend does not support the VPNaaS or FWaaS services. Geneve will be used as the encapsulation method for tenant networks
# 执行命令产生的应答文件
 * A new answerfile was created in: /root/packstack-answers-20220415-231639.txt
# 未安装时间同步,需要确认CentOS当前的系统时间是否正确,如果不正确,则需要修改
 * Time synchronization installation was skipped. Please note that unsynchronized time on server instances might be problem for some OpenStack components.
# 在用户主目录下产生keystonerc_admin文件,要使用命令行工具需要使用它作为授权凭据
 * File /root/keystonerc_admin has been created on OpenStack client host 192.168.101.166. To use the command line tools you need to source the file.
# 访问OpenStack Dashboard(Web访问界面),请使用keystonerc_admin中的登录凭据
 * To access the OpenStack Dashboard browse to http://192.168.101.166/dashboard .
Please, find your login credentials stored in the keystonerc_admin in your home directory.
# 安装日志文件名及其路径
 * The installation log file is available at: /var/tmp/packstack/20220415-231639-wZEI2M/ openstack-setup.log
# Puppet配置清单路径
 * The generated manifests are available at: /var/tmp/packstack/20220415-231639- wZEI2M/manifests
# 在命令行中执行以下命令,获取OpenStack主要组件Nova的当前安装版本。

(4)查看所安装的OpenStack版本。

[root@hadoop1 ~]# nova-manage --version

相关实践学习
部署Stable Diffusion玩转AI绘画(GPU云服务器)
本实验通过在ECS上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。
目录
相关文章
|
7月前
|
IDE Linux KVM
云计算|OpenStack|社区版OpenStack---基本概念科普(kvm的驱动类别和安装)
云计算|OpenStack|社区版OpenStack---基本概念科普(kvm的驱动类别和安装)
287 0
|
7月前
|
Ubuntu Linux 网络安全
云计算|OpenStack|社区版OpenStack(实务操作---cloud-init的使用)
云计算|OpenStack|社区版OpenStack(实务操作---cloud-init的使用)
494 0
|
4月前
|
存储 算法 Java
Java中的集合框架深度解析云上守护:云计算与网络安全的协同进化
【8月更文挑战第29天】在Java的世界中,集合框架是数据结构的代言人。它不仅让数据存储变得优雅而高效,还为程序员提供了一套丰富的工具箱。本文将带你深入理解集合框架的设计哲学,探索其背后的原理,并分享一些实用的使用技巧。无论你是初学者还是资深开发者,这篇文章都将为你打开一扇通往高效编程的大门。
|
4月前
|
存储 Linux 云计算
OpenStack云计算平台搭建
OpenStack 是一个开源的云平台管理项目,通过多个核心组件实现公有云、私有云和混合云的构建与管理。自2010年由NASA和Rackspace联合发起以来,已有众多企业和个人参与开发。OpenStack 简化了云部署流程,支持计算、存储和网络资源的高效管理,并兼容多种虚拟化技术和容器。最新版本为Xena,广泛应用于各行各业,如思科、英特尔等公司。
436 0
|
7月前
|
安全 Devops 虚拟化
【专栏】虚拟化技术与云计算平台 OpenStack:硬件虚拟化、操作系统级虚拟化和容器化
【4月更文挑战第28天】本文探讨虚拟化技术原理,如硬件虚拟化、操作系统级虚拟化和容器化,以及开源云计算平台OpenStack如何利用这些技术提供优势。OpenStack支持多种虚拟化技术,具备开源灵活性、多租户架构、可扩展性、插件式设计和成本效益。未来,OpenStack将在容器化、DevOps、跨云策略和安全合规性方面发挥更大作用,助力企业数字化转型。
643 4
|
7月前
|
存储 消息中间件 Java
基于Springboot框架+云计算的区域HIS云平台源码
基于云计算技术的B/S架构的HIS系统,为基层医院机构提供标准化的、信息化的、可共享的医疗信息管理系统,实现医患事务管理和临床诊疗管理等标准管理信息系统的功能。系统利用健康云计算平台的技术优势,建立统一的健康档案存储平台,有效实现医院数据共享与交换,解决数据重复采集及信息孤岛等问题,为实现区域卫生信息化平台奠定了基础。
88 8
|
7月前
|
存储 API 虚拟化
OpenStack私有云裸机物理服务器角色规划
【4月更文挑战第23天】企业私有云通常由管理节点、控制节点、计算节点、存储节点和网络节点组成的物理服务器集群构成
|
7月前
|
存储 边缘计算 监控
探索未来科技趋势:虚拟化技术与云计算平台OpenStack的概念与实践
在迅猛发展的信息技术时代,企业和组织对于高效、可扩展的计算资源需求日益增长。虚拟化技术和云计算平台OpenStack应运而生,为企业提供了一种灵活、可靠的解决方案。本文将深入探讨虚拟化技术与OpenStack的概念和实践,展示它们在现代科技领域中的重要性和应用前景。
236 3
|
7月前
|
存储 监控 搜索推荐
构建无边界的数字未来:虚拟化技术与云计算平台OpenStack的概念与实践
在当今数字化时代,虚拟化技术和云计算平台已经成为企业和组织实现数字化转型的关键驱动力。本文将介绍虚拟化技术的概念和作用,并重点探讨了开源云计算平台OpenStack在实践中的应用和优势。通过深入了解虚拟化技术和OpenStack平台,读者将能够更好地理解如何利用这些技术构建无边界的数字化未来。
|
7月前
|
Linux KVM 云计算
云计算|OpenStack|社区版OpenStack安装部署文档(十三--- 自制镜像---Linux和Windows镜像)
云计算|OpenStack|社区版OpenStack安装部署文档(十三--- 自制镜像---Linux和Windows镜像)
323 0