Openstack的原理以及单节点部署

什么是云计算?

云计算(Cloud Computing)是一种通过互联网提供动态、可伸缩的计算资源(包括服务器、存储、数据库、网络、软件、分析等)的服务模式。用户无需自建和维护物理基础设施,而是按需从云服务提供商(如 AWS、阿里云、腾讯云等)获取资源,并按实际使用量付费。

一、核心本质

云计算的本质是 “资源的集中化管理与服务化交付”

  • 底层通过虚拟化、分布式存储等技术,将大量物理资源整合成 “资源池”;

  • 上层以标准化服务的形式(如虚拟机、存储空间、开发工具等)供用户通过网络访问;

  • 用户无需关心硬件细节,只需专注于自身业务需求。

二、三种核心服务模式(SPI 模型)

根据服务粒度和抽象层次,云计算分为以下三类:

1. IaaS(基础设施即服务,Infrastructure as a Service)
  • 提供内容:最底层的基础设施,如虚拟服务器(EC2)、虚拟存储(S3)、虚拟网络(VPC)等。

  • 用户角色:需自行部署操作系统、数据库和应用程序,类似 “租用虚拟的物理机”。

  • 典型场景:企业搭建网站、部署自定义应用,开发者测试环境搭建。

  • 代表产品:AWS EC2、阿里云 ECS、腾讯云 CVM。

2. PaaS(平台即服务,Platform as a Service)
  • 提供内容:在 IaaS 基础上,进一步封装了操作系统、数据库、中间件等,提供开发和运行平台(如编程语言环境、API 接口、数据库服务)。

  • 用户角色:无需管理底层基础设施,只需专注于应用程序的开发和部署。

  • 典型场景:Web 应用开发(如使用 Heroku 部署 Python 应用)、移动应用后端开发、大数据分析(如使用 Spark 平台)。

  • 代表产品:Google App Engine、阿里云 PaaS 平台、腾讯云 TSF。

3. SaaS(软件即服务,Software as a Service)
  • 提供内容:直接提供成熟的软件应用,用户通过浏览器或客户端即可使用,无需安装和维护。

  • 用户角色:纯使用者,无需关心任何技术细节。

  • 典型场景:日常办公(如 Office 365、腾讯文档)、客户关系管理(如 Salesforce)、视频会议(如 Zoom)。

  • 代表产品:钉钉、企业微信、Adobe Creative Cloud。

三、四种部署模式

根据服务的使用范围和管理主体,云计算的部署模式分为:

部署模式适用场景控制者典型案例
公有云个人用户、中小企业,成本敏感型业务云服务提供商AWS、阿里云、Google Cloud
私有云大型企业、政府、金融等敏感业务企业自身或第三方VMware vSphere、OpenStack 部署
混合云需兼顾安全性与弹性的业务(如电商大促)企业 + 云服务商联合企业核心数据存私有云,峰值扩容用公有云
社区云特定行业或组织(如医疗、教育联盟)行业联盟或第三方医疗行业专用云平台

四、核心优势

  1. 按需分配,弹性扩展 资源可根据业务需求(如流量峰值)实时扩容或缩容,避免资源浪费(例如电商 “618” 临时增加服务器)。

  2. 降低成本 无需前期投入巨资购买硬件,按使用量付费;减少机房建设、电力、运维人员等长期成本。

  3. 高可用性与可靠性 云服务商通过多数据中心、冗余架构(如 “多可用区部署”)保障服务稳定性,SLA(服务等级协议)通常达 99.9% 以上。

  4. 全球化访问 依托云服务商的全球节点,用户可快速将业务部署到不同地区,降低网络延迟。

  5. 专注核心业务 无需花费精力维护基础设施,企业可聚焦产品开发和业务创新。

五、典型应用场景

  • 互联网服务:社交媒体、视频平台(如 Netflix 用 AWS 存储和分发视频);

  • 企业办公:通过 SaaS 工具实现远程协作(如 Zoom、飞书);

  • 大数据分析:利用云平台的算力和存储处理海量数据(如金融风控模型训练);

  • 灾备与应急:通过云存储实现数据备份,快速恢复业务(如企业数据异地容灾);

  • 人工智能:借助云 GPU 资源训练 AI 模型(如自动驾驶算法训练)。

一、OpenStack 是什么?

OpenStack 是一个开源的、可扩展的云计算基础设施即服务(IaaS)平台,核心功能是通过标准化的 API 和工具,对数据中心的计算、存储、网络等硬件资源进行 “池化管理”,并向用户提供弹性的云服务(如虚拟机、块存储、对象存储、虚拟网络等)。

简单来说,它相当于一套 “云数据中心的操作系统”—— 就像 Windows 管理个人电脑的 CPU、内存、硬盘一样,OpenStack 管理整个数据中心的服务器集群、存储设备和网络设备,让这些硬件资源能被灵活调度和按需使用。

1. OpenStack 的核心特性

  • 开源免费:基于 Apache 2.0 协议开源,任何人可下载、修改代码,无需支付商业软件许可费(如 VMware、AWS 私有云的授权费用)。
  • 基础设施即服务(IaaS):聚焦 “底层硬件资源的虚拟化与管理”,不直接提供上层应用(如数据库、ERP 软件),而是为这些应用提供运行所需的 “基础设施”(如虚拟机、存储、网络)。
  • 模块化架构:由多个独立的 “服务组件” 构成,用户可根据需求选择部署(如只部署计算和存储,或完整部署所有组件),核心组件包括:
    组件名称核心功能类比场景
    Nova计算资源管理(创建 / 调度虚拟机、容器)云数据中心的 “CPU + 内存管理器”
    Cinder块存储服务(为虚拟机提供类似硬盘的持久化存储)云环境中的 “虚拟硬盘”
    Swift对象存储服务(存储海量非结构化数据,如图片、日志)云环境中的 “百度网盘”
    Neutron网络服务(创建虚拟网络、子网、路由器、防火墙)云环境中的 “虚拟交换机 + 路由器”
    Keystone身份认证与权限管理(统一登录、角色授权)云平台的 “门禁系统”
    Glance镜像服务(管理虚拟机的操作系统镜像,如 CentOS、Ubuntu 镜像)云环境中的 “系统安装光盘库”
  • 跨平台兼容:支持 x86、ARM 等主流硬件架构,兼容 KVM、Xen、VMware 等虚拟化技术,也可对接 AWS、Azure 等公有云,避免 “厂商锁定”。
  • 弹性可扩展:支持从几十台服务器的小型集群,扩展到上万台服务器的大型云数据中心,满足业务增长需求。

2. OpenStack 的应用场景

  • 企业私有云:企业搭建自己的内部云平台,管理自有硬件资源,满足核心业务(如财务系统、研发测试)的安全与可控需求(如银行、政府、大型制造企业)。
  • 公有云服务:云服务商基于 OpenStack 构建公有云,向外部用户提供按需付费的云服务(如 Rackspace、华为云、阿里云的部分集群)。
  • 混合云:连接企业私有云和公有云,实现资源灵活调度(如平时用私有云,业务峰值时临时调用公有云资源)。
  • 行业云:针对特定行业(如教育、医疗、能源)的需求,定制化部署 OpenStack 集群(如高校的科研计算云、医院的医疗数据存储云)。

二、OpenStack 出现的原因(为何需要它?)

OpenStack 并非凭空出现,而是为解决云计算发展初期的 “技术痛点” 和 “产业需求” 而生,核心原因可归结为以下 4 点:

1. 解决 “传统 IT 架构的僵化问题”

在云计算普及前,企业 IT 架构多为 “单机部署” 或 “小型集群”:

  • 每台服务器对应一个固定业务(如 “服务器 A 跑财务系统,服务器 B 跑 OA 系统”),资源利用率极低(多数服务器 CPU 利用率仅 10%-20%);
  • 新增业务需手动采购硬件、安装系统、配置网络,周期长达数周甚至数月,无法应对业务快速迭代需求;
  • 硬件故障后,业务恢复依赖人工操作,可用性差。

OpenStack 通过 “资源池化 + 自动化调度” 解决这些问题:

  • 将所有服务器的 CPU、内存、存储整合为 “资源池”,按需分配(如业务峰值时自动扩容虚拟机,低谷时释放资源);
  • 通过 API 或界面可在几分钟内创建虚拟机、配置网络,实现 “秒级部署”;
  • 支持虚拟机热迁移、故障自动恢复,提升业务可用性。

2. 打破 “商业虚拟化软件的垄断与锁定”

云计算初期,虚拟化技术主要由商业厂商主导(如 VMware vSphere、Microsoft Hyper-V):

  • 高成本:商业软件需支付高昂的许可费(按服务器数量或 CPU 核心收费),大型企业每年授权费用可达数百万甚至数千万;
  • 厂商锁定:不同厂商的虚拟化平台(如 VMware、Hyper-V)接口不兼容,一旦使用某厂商产品,后续迁移到其他平台的成本极高;
  • 定制化受限:商业软件的功能和迭代节奏由厂商决定,企业无法根据自身需求修改代码(如特殊行业的安全合规需求)。

OpenStack 作为开源平台,直接针对性解决:

  • 开源免费,大幅降低企业 IT 成本(仅需承担硬件和运维成本);
  • 标准化 API,兼容多种硬件和虚拟化技术,避免厂商锁定;
  • 开源特性允许企业根据需求定制代码(如增加国产化加密模块、对接行业专用设备)。

3. 满足 “企业对‘私有云’的需求”

云计算发展初期,公有云(如 AWS、Azure)已提供灵活的云服务,但很多企业因 “安全合规” 或 “业务特性” 无法使用公有云:

  • 数据安全:金融、政府、医疗等行业的核心数据(如用户隐私、交易记录)受法规限制,不能存储在第三方公有云;
  • 业务自主性:部分企业(如大型制造、能源企业)的业务系统需与内部硬件(如工业设备、传感器)深度联动,公有云无法满足定制化需求;
  • 成本可控:长期大规模使用公有云的费用可能高于自建私有云(尤其是数据传输量大、使用周期长的场景)。

OpenStack 为企业提供了 “自建私有云的成熟方案”:

  • 私有云部署在企业自有数据中心,数据不出境,满足安全合规;
  • 可根据业务需求定制架构(如对接工业设备、部署国产化操作系统);
  • 长期使用成本低于公有云,且硬件资源完全自主掌控。

4. 推动 “云计算技术的标准化与生态协同”

云计算初期,不同厂商的云平台(如 AWS、Google Cloud、VMware)技术体系割裂:

  • 公有云厂商的 API 不统一(如 AWS 的 EC2 接口与 Google 的 Compute Engine 接口不兼容),用户迁移成本高;
  • 硬件厂商(如服务器、存储厂商)的产品需针对不同云平台单独适配,研发成本高;
  • 开发者需学习不同平台的技术,效率低。

OpenStack 作为开源社区主导的项目,推动了云计算技术的标准化:

  • 定义了一套通用的 IaaS 层 API(如 Nova 的计算 API、Neutron 的网络 API),成为行业事实标准;
  • 吸引了全球数百家企业(如 IBM、Intel、华为、Red Hat)参与贡献,形成了涵盖硬件、软件、运维的完整生态;
  • 开发者掌握 OpenStack 技术后,可快速适配不同云平台,降低学习成本。

三、总结

  • OpenStack 是什么:开源的 IaaS 云平台,是 “云数据中心的操作系统”,核心是管理计算、存储、网络资源,提供弹性云服务。
  • 为何需要 OpenStack:为解决传统 IT 架构僵化、商业软件垄断、企业私有云需求、云计算标准化四大痛点而生,是企业实现 “自主可控、弹性高效” 云计算的核心工具。
单节点部署和多节点部署的区别
单点部署操作简单,就是将所有的节点部署在同一台服务器上,没有冗余,同时可拓展性不高
多点部署拓展性高,但维护、部署成本也相对较高

以单节点部署openstack

环境部署:

虚拟机的内存大于8G 并勾选虚拟化

1、测试外网是否ping通

2、关闭防火墙
systemctl stop firewalld                      //关闭防火墙
systemctl disable firewalld                   //取消防火墙开机自启动

3、关闭网卡(为什么要关闭网卡管理)因为openstack的Neutron会和manager冲突
systemctl stop NetworkManager                   //关闭NetworkManager服务
systemctl disable NetworkManager                //关闭NetworkManager开机自启动

4、永久关闭Selinux
vim /etc/selinux/config

5、更换阿里yum源   (提问,为什么上面关了manager这里还可以下载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    //下载阿里源

6、重建yum源缓存

yum makecache             //重建Yum源缓存

7、对系统进行升级  (修复漏洞,保证兼容性)

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

8、安装OpenStack Stein的yum库

yum -y install centos-release-openstack-stein

9、修改四个配置文件

9.1,[root@ycy2 yum.repos.d]# vim CentOS-OpenStack-stein.repo 
取消注释改为baseurl=http://mirrors.aliyun.com/$contentdir/$releasever/cloud/$basearch/openstack-stein/
注释:#mirrorlist=...
baseurl=http://mirrors.aliyun.com 
另外三个一样的操作
9.2,vim CentOS-Ceph-Nautilus.repo
#mirrorlist=
baseurl=http://mirrors.aliyun.com
9.3 vim CentOS-QEMU-EV.repo
#mirrorlist=
baseurl=http://mirrors.aliyun.com
9.4 vim CentOS-NFS-Ganesha-28.repo
#mirrorlist=
baseurl=http://mirrors.aliyun.com

10、清楚本地yum索引缓存,再重建索引缓存

yum clean all && yum makecache

11、关机修改虚拟机配置

init 0

12、虚拟机配置给两个处理器两个内核,开启虚拟化

13、安装packstack工具

yum -y install openstack-packstack

14、部署OpenStack

packstack --allinone

15、查看OpenStack管理员用户名和密码

cat keystonerc_admin

16、访问OpenStack平台并登录

手写笔记:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值