OpenStack 教程2025年3月17日 | 阅读 27 分钟 ![]() OpenStack 是一个云操作系统,用于控制数据中心内的大量计算、存储和网络资源。OpenStack 是开源且免费的软件。它主要用于云计算,并作为 IaaS(基础设施即服务)进行部署。 在我们的 OpenStack 教程中,我们将讨论以下主题:
什么是云计算云计算是指通过互联网存储和处理程序及数据,而不是通过计算机的硬盘。这意味着,我们不必将文件存储在硬盘驱动器或本地存储单元上,而是可以将文件保存在基于云的存储的远程数据库中。 换句话说,我们可以说云计算是指通过互联网或云交付计算服务,例如服务器、软件、网络、分析、智能和数据库。它提供了灵活的资源、更快的创新和规模经济。 云计算的类型存在三种主要的云计算形式。它们是: 基础设施即服务 (IaaS):这是最基础的云服务,提供网络服务、负载均衡器、虚拟机和防火墙服务。它包括一种通过基于 IP 的网络按需提供从操作系统到服务器和存储的各种服务的方法。IaaS 的一些常见示例是 IBM Cloud、AWS 和 Microsoft Azure。 平台即服务 (PaaS):一种 云计算服务,为软件应用程序开发、管理、测试和分发提供按需平台。如果您使用 PaaS 服务,则无需担心设置或维护开发所需的底层服务器、网络、存储和数据库基础设施。PaaS 的示例是 Google App Engine、Salesforce.com 等。 软件即服务 (SaaS):这是一种分发模式。通过此服务,计算机应用程序(Web 服务)通过 Internet 进行分发。用户可以使用具有 Internet 连接的计算机或移动设备访问 SaaS 服务。SaaS 的最常见示例是 Microsoft Office 365,它提供生产力和电子邮件服务。 您可以访问我们的 云计算教程 以了解云计算。 OpenStack 简介OpenStack 是一个云操作系统,用于控制数据中心内的大量计算、存储和网络资源。OpenStack 是一个开源且免费的软件平台。它主要用作云计算的 IaaS。 我们可以称 OpenStack 为一个软件平台,它利用共享的虚拟资源来创建和管理私有云和公共云。OpenStack 默认提供了许多与云相关的服务(例如网络、存储、镜像服务、身份识别等)。这可以通过基于 Web 的仪表板、RESTful API 或命令行工具由用户进行处理。OpenStack 管理大量虚拟机,这可以减少物理资源的利用。 OpenStack 的基本原则开源:OpenStack 在 Apache 2.0 许可证下进行编码和发布。Apache 允许社区免费使用。 开放设计:对于即将进行的更新,开发团队每 6 个月会举办一次设计峰会。 开放开发:开发人员维护一个源代码存储库,该存储库可通过 Ubuntu Linux 发行版等项目通过 entig100s 自由访问。 开放社区:OpenStack 为社区提供开放透明的文档。 OpenStack 组件OpenStack 的主要组件如下: 计算 (Nova):计算是一个控制器,用于管理虚拟化环境中的资源。它处理执行计算任务的多个虚拟机和其他实例。 对象存储 (Swift):对象存储用于在云中存储和检索任意数据。在 Swift 中,可以存储文件、对象、备份、图像、视频、虚拟机和其他非结构化数据。开发人员可以使用一个特殊的标识符来引用文件和对象,而不是使用路径,这直接指向一个文件,并允许 OpenStack 管理文件的存储位置。 块存储 (Cinder):这就像传统的将外部硬盘驱动器附加和分离到操作系统以供本地使用一样。Cinder 管理服务器上添加、移除、创建新磁盘空间。此组件为系统中的虚拟机提供虚拟存储。 网络 (Neutron):此组件用于 OpenStack 中的网络。Neutron 管理所有与网络相关的查询,例如 IP 地址管理、路由器、子网、防火墙、VPN 等。它确保所有其他组件都与 OpenStack 良好连接。 仪表板 (Horizon):这是用户在 OpenStack 中看到的第一个组件。Horizon 是用于访问其他后端服务的 Web UI(用户界面)组件。通过各个 API(应用程序编程接口),开发人员可以访问 OpenStack 的组件,但通过仪表板,系统管理员可以了解云中发生的情况并根据需要进行管理。 身份服务 (Keystone):它是 OpenStack 服务中所有用户及其权限的中央存储库。此组件用于管理身份服务,例如授权、身份验证、AWS 风格(Amazon Web Services)登录、基于令牌的系统以及检查其他凭据(用户名和密码)。 镜像服务 (Glance):Glance 组件用于为 OpenStack 提供镜像服务。这里的镜像服务是指硬盘的镜像或虚拟副本。当我们计划部署新的虚拟机实例时,Glance 允许我们将这些镜像用作模板。Glance 支持 VirtualBox (VDI)、VMware (VMDK, OVF)、Raw、Hyper-V (VHD) 和 KVM (qcow2) 虚拟镜像。 ![]() 遥测 (Ceilometer):它用于计量使用情况并将其报告给 OpenStack 的各个用户。因此,基本上,遥测为 OpenStack 的各个用户提供计费服务。 编排 (Heat):它允许开发人员将云应用程序的需求存储为文件,以便所有重要的资源都触手可及。此组件通过模板,通过本地 OpenStack REST API 和查询 API 来组织云的许多复杂应用程序。 共享文件系统 (Manila):它为虚拟机提供文件存储。此组件提供了一个用于管理和配置文件共享的基础设施。 弹性 MapReduce (Sahara):Sahara 组件为用户提供了一种简单的方法,通过引用 Hadoop 版本、集群拓扑和节点硬件详细信息等多个选项来预先规划 Hadoop 集群。 OpenStack 的安装与配置众所周知,OpenStack 是一个开源平台。OpenStack 通过不同的软件发行版提供了许多安装和部署选项。它提供了各种部署模型。 OpenStack 还提供了 OpenStack 平台的预装 ISO 镜像。要下载这些预装的 ISO 镜像,请单击此处。 在这里,我们将讨论使用 DevStack 安装 OpenStack。其中,DevStack 是在 PC、笔记本电脑或服务器上安装和测试 OpenStack 的最佳选择。DevStack 将所有组件安装在一个环境中。它可用于在虚拟机 (VM) 或单服务器上设置 OpenStack。 我们不能将 DevStack 用于生产目的,因为有时,重启后,几乎不可能将其恢复到最后的状态。 DevStack 将安装以下组件:
硬件要求 以下是 OpenStack 的硬件要求:
DevStack 可以安装在以下类型的操作系统上:
Ubuntu 操作系统是 DevStack 测试最多、最可靠的选择。 OpenStack 的安装要在系统中安装 DevStack,首先,您需要在计算机上(例如使用 VirtualBox 或 VMware)创建一个 Linux VM,或在云端(例如使用 AWS)远程创建。 VM 必须至少有 4GB 内存,并且良好的 Internet 连接也很重要。在这里,我们将使用一个版本的 Ubuntu,即 18.04。 按照以下步骤在您的 Ubuntu 虚拟机中安装 OpenStack: 步骤 1:更新 Ubuntu 系统 打开终端并运行以下命令以确保系统是最新的: 示例输出: ![]() 运行上述命令后重启系统。要重启系统,请运行以下命令: 或 步骤 2:创建 Stack 用户 DevStack 必须以启用 sudo 的普通用户(非 root 用户)身份运行,这一点很重要。 牢记这一点,让我们创建一个名为“stack”的新用户并为其分配 sudo 权限或特权。要创建 stack 用户,请在终端中运行以下命令: 输出: ![]() 现在,要为 stack 用户分配 sudo 权限,请运行以下命令: 输出: ![]() 您可以通过运行以下命令切换到“stack”用户: 输出: ![]() 步骤 3:安装 Git 大多数 Ubuntu 系统默认都带有 git。但如果您的系统中缺少 git,请运行以下命令进行安装: 示例输出: ![]() 步骤 4:下载 OpenStack 安装 git 后,使用 git 命令从 Github 下载 DevStack。 输出: ![]() 步骤 5:创建 DevStack 配置文件 首先,通过运行以下命令进入 devstack 目录: 输出: ![]() 现在,创建一个 local.conf 文件,您需要在其中输入四个密码和主机 IP 地址: 输出: ![]() 将以下内容复制到文件中: 输出: ![]() 按 ESC,然后按 wq 保存并退出 local.conf 文件。 这里,ADMIN_PASSWORD 是我们将用于登录 OpenStack 页面的密码。OpenStack 的默认用户名是“admin”。 HOST_IP 是您系统的 IP 地址。要获取您的服务器或 VM IP,请运行“ifconfig”或“ip addr”命令。 步骤 6:使用 DevStack 安装 OpenStack 要安装和运行 OpenStack,请执行以下命令: DevStack 将安装以下组件:
安装大约需要 10-20 分钟,主要取决于您的互联网速度。 在安装的最后,您将获得主机的 IP 地址、用于管理的 URL 以及用于处理管理任务的用户名和密码。 步骤 7:在浏览器中访问 OpenStack 复制安装输出中提供的 horizon URL,并将其粘贴到您的浏览器中: 使用默认用户名 - admin 或 demo 和配置的密码 - secret 登录 OpenStack。 登录 OpenStack 后,您将被重定向到 OpenStack 的仪表板。此仪表板屏幕称为 OpenStack 管理 Web 控制台。 步骤 8:创建实例 在主仪表板屏幕上,您将看到实例的概述。 您也可以在 OpenStack 中创建自己的实例。实例不过是虚拟机。要创建新的虚拟机,请单击页面左侧的实例。 然后单击“启动实例”。填写所有必填字段。填写完所有必填字段后,将创建一个实例。 OpenStack 架构构成 OpenStack 架构的组件有多种。 Nova (计算)Nova 是 OpenStack 最常见和最重要的组件之一。计算是一个控制器,用于处理虚拟化环境的资源。它处理执行计算任务的多个虚拟机和其他实例。 Nova 用 Python 语言编写。VMware、Xen 和 KVM 是可用的虚拟机监视器技术,具体选择取决于 OpenStack 的版本。 功能:
Neutron (网络)此组件用于 OpenStack 中的网络。Neutron 管理所有与网络相关的查询,例如 IP 地址管理、路由器、子网、防火墙、VPN 等。它确保所有其他组件都与 OpenStack 良好连接。 Glance (镜像)此组件为 OpenStack 提供镜像服务。这里的镜像服务是指硬盘的镜像或虚拟副本。当我们计划部署新的虚拟机实例时,Glance 允许我们将这些镜像用作模板。 Swift (对象存储)对象存储用于在云中存储和检索任意数据。在 Swift 中,可以存储文件、对象、备份、图像、视频、虚拟机和其他非结构化数据。 Cinder (块存储)这就像传统的将外部硬盘驱动器附加和分离到操作系统以供本地使用一样。Cinder 管理服务器上添加、移除、创建新磁盘空间。此组件为系统中的 VM 提供虚拟存储。 Horizon (仪表板)这是用户在 OpenStack 中看到的第一个组件。Horizon 是用于访问其他后端服务的 Web UI(用户界面)组件。 ![]() Keystone (身份)它是 OpenStack 服务中所有用户及其权限的中央存储库。此组件用于管理身份服务,例如授权、身份验证、AWS 风格(Amazon Web Services)登录、基于令牌的系统以及检查其他凭据(用户名和密码)。 OpenStack 如何工作?基本上,OpenStack 是一系列称为脚本的命令。这些脚本被打包成称为项目的包,这些项目依赖于创建云环境的任务。OpenStack 依赖于另外两种形式的软件来构建特定的环境:
因此,我们可以说这三种技术,即虚拟化、基础操作系统和 OpenStack,都必须协同工作。 让我们来讨论 OpenStack 的工作原理! 我们知道,Horizon 是用于设备环境的接口。用户想做的任何事情都应该使用 Horizon(仪表板)。仪表板是一个简单的图形用户界面,包含多个模块,每个模块执行特定的任务。 OpenStack 中的所有操作都通过服务 API 调用进行。因此,如果您执行任何任务,就意味着您正在调用一个服务 API。每个 API 调用首先由 Keystone 进行验证。因此,在进入 OpenStack 仪表板之前,您需要将自己注册为已注册用户并输入用户名和密码进行登录。 成功登录 OpenStack 仪表板后,您将获得创建新实例、卷、Cinder 和配置网络的许多选项。 实例不过是虚拟机或环境。要生成新的 VM,请使用 OpenStack 仪表板中的“实例”选项。在这些实例中,您可以配置您的云。实例可以是 RedHat、OpenSUSE、Ubuntu 等。 实例的形成也是一个 API 调用。您可以为实例配置网络信息。您可以将这些实例连接到 Cinder 实例或卷以添加更多服务。 成功创建实例后,您可以对其进行配置,可以通过 CLI 访问它,并可以添加您想要的任何数据。您甚至可以设置一个实例来管理和存储快照,以供将来参考或备份。 OpenStack 与 AWS 对比OpenStack 和 AWS 都是云计算平台。它们都服务于不同的目的。AWS 于 2006 年推出。自 2006 年以来,AWS API 的成功一直在迅速增长。同样,OpenStack 自 2010 年问世以来也一直在增长。 AWSAWS(Amazon Web Services)是一个按需云计算平台,几乎可以执行任何类型的处理。AWS 提供处理单元、存储、大数据平台、ML 平台等。由于 AWS 是一个按需平台且收费非常低,因此任何人都可以根据自己的需求负担得起。它遵循即用即付的概念,但您只需为您使用的东西付费。与 OpenStack 不同,AWS 不是一个开源平台。我们只能作为用户来使用它。 AWS 是一个公共云,主要供那些负担不起或不想在服务器基础设施上花费的公司使用,例如中小型公司。 AWS 服务亮点 让我们看一些 AWS 服务:
OpenStack与 AWS 类似,OpenStack 提供了一个云计算平台。使用 OpenStack,我们可以执行所有类型的服务。 但 OpenStack 是一个开源平台。使用 OpenStack,我们可以创建自己的云并根据我们的需求进行配置。 我们可以在私有和公共网络中部署 OpenStack。用户可以通过基于 Web 的仪表板组件或 API 访问 OpenStack。 OpenStack 亮点
AWS 和 OpenStack 之间的区别AWS 和 OpenStack 之间的区别通常取决于您公司的具体要求。让我们看一下 OpenStack 和 AWS 之间的区别:
OpenStack 的优势OpenStack 在云计算平台中有许多优势。让我们一个一个地来看: 1. 开源我们知道,使用开源环境,我们可以创建一个真正定义清晰的数据中心。OpenStack 是最大的开源平台。它在一个平台上提供了网络、计算和存储子系统。一些供应商(如 RedHat)已经开发并继续支持他们自己的 OpenStack 发行版。 OpenStack 源代码可在 github 上找到。开源 OpenStack 项目的两个主要优点是:
2. 可伸缩性可扩展性是云计算的关键组成部分。OpenStack 为企业提供了更好的可扩展性。通过此功能,它允许企业按需启动和关闭服务器。 3. 安全性OpenStack 的一个重要特性是安全性,这也是 OpenStack 在云计算领域如此受欢迎的关键原因。
4. 自动化与另一种选择相比,自动化是 OpenStack 的一个主要卖点。自动化任务的便捷性使 OpenStack 高效。OpenStack 附带许多内置工具,使云管理更加快速简便。OpenStack 提供自己的 API(应用程序编程接口),可帮助其他应用程序完全控制云。此功能使得构建可以与 OpenStack 通信以执行启动 VM 等任务的应用程序变得更加容易。 开发支持 由于 OpenStack 的源代码是免费公开的,来自世界各地的专家都可以改进该平台。如果正在设计新功能,开发团队可以轻松专业地构建它。OpenStack 就像 Linux 一样,有许多具有不同功能的发行版,但共享相同的组件。 公司支持——对于开发,OpenStack 得到了 Intel、IBM、AT&T、Cisco、Red Hat、Dell、Ubuntu 等 IT 创始公司的支持。因此,它在飞速发展,这对您来说是一个巨大的优势。 开发人员社区支持——许多开发人员正在致力于改进 OpenStack。他们正在不懈努力,以使 OpenStack 变得更好。 5. 易于访问和管理我们可以轻松访问和管理 OpenStack,这是您最大的优势。OpenStack 因以下功能而易于访问和管理: 命令行工具——我们可以使用命令行工具访问 OpenStack。 仪表板——OpenStack 为用户和管理员提供了使用基于 GUI(图形用户界面)的仪表板组件来访问和管理 OpenStack 的各个方面。它作为 Web UI 提供。 API——有很多 API(应用程序编程接口)用于管理 OpenStack。 6. 服务OpenStack 为您的公共、私有和混合云的许多不同任务提供了所需的服务。 服务列表——OpenStack 提供一系列服务或组件,例如 Nova、Cinder、Glance、Keystone、Neutron、Ceilometer、Sahara、Manila、Searchlight、Heat、Ironic、Swift、Trove、Horizon 等。 每个组件用于不同的任务。例如,Nova 提供计算服务,Neutron 提供网络服务,Horizon 提供仪表板界面等。 7. 强大的社区OpenStack 拥有许多专家、开发人员和用户,他们乐于共同致力于 OpenStack 的产品并增强 OpenStack 的功能。 8. 兼容性AWS(Amazon Web Services)等公共云系统与 OpenStack 兼容。 计算 (Nova)Nova 是 OpenStack 最常见和最重要的组件之一。计算是一个控制器,用于处理虚拟化环境的资源。它处理执行计算任务的多个虚拟机和其他实例。 Nova 用 Python 语言编写。VMware、Xen 和 KVM 是使用的虚拟机监视器技术,具体选择取决于 OpenStack 的版本。 与 Nova 通信的 OpenStack 服务为确保 Nova 在其最基本的级别上运行,需要某些 OpenStack 服务。这些服务是: Keystone:首先,Keystone 对所有 OpenStack 服务进行身份验证并提供身份。Keystone 是 OpenStack 上构建的第一个功能,像 Nova 这样的所有项目都对其负责。 Glance:它负责处理您云的服务器镜像。因此,它能够通过计算镜像存储库上传兼容的 OpenStack 镜像。 Neutron:Neutron 为 OpenStack 云中的计算实例提供物理或虚拟网络。 Placement:最后,Nova 需要 Placement 来跟踪资源库存,以在 OpenStack 云中构建虚拟机时帮助选择合适的资源提供商。 为确保最佳的可访问性和性能,这些附加的 OpenStack 服务与 Nova 密切交互。 Nova 架构![]() 以上图示可以用以下功能总结:
块存储 (Cinder)这就像传统的将外部硬盘驱动器附加和分离到操作系统以供本地使用一样。Cinder 管理服务器上添加、移除、创建新磁盘空间。此组件为系统中的 VMs 提供虚拟存储。概念上,Cinder 的功能类似于 EBS(Elastic Block Storage)。 它通常与其他 OpenStack 服务(例如计算、对象存储、镜像等)结合实现。Cinder 和 Nova 的逻辑架构是: ![]() Cinder 用户无需考虑昂贵的物理存储系统或服务器,即可显着减少和扩展其存储空间。此外,通过允许用户对每个操作使用一种代码,Cinder 简化了代码管理。Cinder 具有可靠性和易用性,可以处理所有配置,并消除了消费者的需求。 Cinder 的一些目标是:
Cinder 组件![]() 对象存储 (Swift)对象存储用于在云中存储和恢复任意数据。在 Swift 中,可以存储文件、对象、备份、图像、视频、虚拟机和其他非结构化数据。开发人员可以使用一个特殊的标识符来引用文件和对象,而不是使用路径,这直接指向一个文件,并允许 OpenStack 通过 API 管理文件的存储位置。 为了实现持久性、可用性和竞争力,它是可扩展且优化的。Swift 非常适合存储无约束的冗余数据。由于这是一个对象存储服务,Swift 提供了一个可通过 API 访问的存储选项,该选项可用于集群中的备份、数据保留或冗余存档。 对象存储组件分为以下关键组:
让我们看一个 OpenStack 对象存储的示例图。 ![]() OpenStack 对象存储的一些特性是:
![]() 共享文件系统 (Manila)它为 VM 提供基于文件的存储。此组件提供了一个用于管理和配置文件共享的基础设施。Manila 使用一个由系统中所有 manila 服务共享的、基于 SQL 的中央数据库。Manila 服务可以在单节点或多节点配置下运行。 通常,Manila 与其他 OpenStack 资源(如计算、镜像或对象存储)一起部署。 以下是共享文件系统服务的目标:
Manila 提供以下服务集: manila-api:这是一个 Web 服务器网关接口 (WSGI) 应用程序,它验证和路由通过共享文件系统服务的请求,并为 OpenStack API 提供支持。 manila-data:此服务接收请求,处理耗时的数据操作,如备份、复制或共享迁移。 manila-scheduler:此服务调度和路由请求到共享文件系统服务。为了路由请求,调度器遵循可配置的过滤器和称重器。Filter Scheduler 是默认的,并允许对可用区域、容量、功能和共享类型等项目进行过滤。Manila-scheduler 还支持自定义过滤器。 manila-share:此服务管理拥有共享文件系统的后端系统。manila-share 服务可以有两种模式之一运行,即是否管理共享服务器。 ![]() 共享文件系统 (Manila) 包含以下组件:
网络 (Neutron)此组件用于 OpenStack 中的网络。Neutron 管理所有与网络相关的查询,例如 IP 地址管理、路由器、子网、防火墙、VPN 等。它确保所有其他组件都与 OpenStack 正确连接。 Neutron 在虚拟计算环境中提供 NaaS(网络即服务)。它已取代 OpenStack 中原来的 API(应用程序编程接口),称为 Quantum。Neutron 由 Nova 等其他 OpenStack 组件管理。 网络在控制器节点上有一个服务,称为 neutron 服务器,包括许多代理和插件,它们使用消息队列相互通信。您可以根据操作类型选择要使用的各种代理。 Neutron 的一些特性:
以下是 neutron 插件:
Neutron 架构Neutron 架构非常简单。它完全基于代理和插件。 ![]() 仪表板 (Horizon)这是用户在 OpenStack 中看到的第一个组件。Horizon 是用于访问其他后端服务的 Web UI(用户界面)组件。通过各个 API(应用程序编程接口),开发人员可以访问 OpenStack 的组件,但通过仪表板,系统管理员可以了解云中发生的情况并根据需要进行管理。 在其架构和设计的核心,仪表板具有许多关键价值: 核心支持:为所有核心 OpenStack 项目提供开箱即用的支持。 可扩展:作为“一等公民”,任何人都可以添加新组件。 可管理:核心代码库必须易于定向且应该简单。 一致:始终保持视觉和交互范式。 稳定:可靠的应用程序接口 (API),并强调向后兼容。 可用:提供用户乐于使用的出色界面。 Horizon 基于 Django Web 框架,同时服务于 OpenStack 云的用户和管理员。它与 OpenStack 云中的实例、镜像、卷和网络进行交互。通过 Horizon,我们可以管理 OpenStack 云中的 Nova、Glance、Neutron 和 Cinder 服务。 下图显示了仪表板如何连接到所有 OpenStack 组件。请注意,此图像显示了包含所有七个核心组件的 OpenStack。 ![]() 让我们看看第一个屏幕。在浏览器中打开仪表板并输入 URL 后,您将看到以下屏幕: ![]() 身份服务 (Keystone)它是所有用户及其对 OpenStack 使用的服务权限的中央存储库。此组件用于管理身份服务,例如授权、身份验证、AWS 风格(Amazon Web Services)登录、基于令牌的系统以及检查其他凭据(用户名和密码)。 以下是 Keystone 通常执行的功能:
身份服务提供的服务或组件集如下: 服务器:这是一个中央系统,使用 REST 接口提供身份验证和授权服务。 驱动程序:这些与中央服务器集成。驱动程序访问 OpenStack 与外部存储库中的身份数据,并且可能已存在于 OpenStack 部署的基础设施中(例如 LDAP 或 SQL 数据库服务器)。 模块:在使用身份服务的 OpenStack 服务的位置,运行中间件模块。这些模块检索对服务的请求,提取用户凭据,并将它们发送到服务器进行授权。为了实现中间件模块与 OpenStack 服务或组件之间的集成,使用了 Python Web 服务器网关接口。 镜像服务 (Glance)Glance 组件用于为 OpenStack 提供镜像服务。这里的镜像服务是指硬盘的镜像或虚拟副本。当我们计划部署新的虚拟机实例时,Glance 允许我们将这些镜像用作模板。Glance 支持 VirtualBox (VDI)、VMware (VMDK, OVF)、Raw、Hyper-V (VHD) 和 KVM (qcow2) 虚拟镜像。 Glance 包含一个 REST API,您可以从中查询 VM 镜像的元数据并检索实际镜像。它是 IaaS(基础设施即服务)的核心。 OpenStack Glance 服务包含以下组件: glance-api:用于镜像检测、检索和存储,glance-api 接受镜像 API 调用。 glance-registry:它存储、处理和检索镜像元数据。元数据中包含大小和类型等项目。 数据库:它用于存储镜像元数据,并且您可以根据您的选择选择数据库。MySQL 或 SQLite 用于大多数部署。 镜像文件存储库:支持标准文件系统(或安装在 glance-api 控制节点上的任何文件系统)、HTTP、对象存储、RADOS 块设备和 VMware Datastore 等多种存储库形式。 元数据定义服务:这是一个常规 API,用于为供应商、管理员、服务和用户有意义地定义您自己的自定义元数据。此类元数据可用于各种资源类型,例如镜像、构件、卷、配置(flavors)和聚合。 ![]() Glance 架构它遵循客户端-服务器架构。它提供发出服务器请求的 REST API。客户端请求通过 REST API 接受,并等待 Keystone 的身份验证。Glance 域控制器控制所有内部进程,这些进程被分成多个层,每一层执行自己的任务。 镜像服务架构包含以下组件:
![]() 数据处理服务 (Sahara)Sahara 组件为用户提供了一种简单的方法,通过引用 Hadoop 版本、集群拓扑和节点硬件详细信息等多个选项来预先规划 Hadoop 集群。 Sahara 是一个数据处理服务,也称为弹性 MapReduce,它提供了一个平台,用于使用 Spark 和 Hadoop 等处理框架来配置和管理实例集群。 以下是 Sahara 的主要特性:
Sahara 架构
未来前景众所周知,云计算在过去十年中得到了广泛应用。像 Google、AWS、Microsoft 或 Rackspace 这样的巨头正在大力投资以利用不断增长的趋势。 OpenStack 是开源的,采用 Apache 2.0 许可证免费提供,并得到数千家大型科技公司的支持。多年来,它的人气不断提高。数百家企业正在使用它来构建自己的私有云,有些则提供支持服务。因此,从职业角度来看,在当前商业环境下,我建议这是值得关注的最佳创新之一。未来需要这样稳定的环境,并且作为一个具有出色长期功能的免费架构,OpenStack 将继续其传奇。 如果您正在寻找一种可以更好地利用现有硬件、不被锁定在昂贵的支持合同中,并且拥有庞大的全球工程社区(超过 100,000 名成员,遍布 187 个国家,并且每年仍在增长约 33%)的解决方案,那么 OpenStack 可能是您的解决方案。 有一点是必须确保持续安全的云计算,OpenStack 肯定在未来至少十年内拥有光明的未来。OpenStack 是许多尖端产品的集合,可提供最佳的云计算体验。因此,学习它并获得一些项目的经验,不仅能让您成为一名经验丰富的云专业人士,还能帮助您培养解决问题的能力。 结论OpenStack 是组织中用于云计算的最佳环境之一。OpenStack 线性的可扩展性和开源架构吸引了许多客户和技术爱好者前来贡献开发。这使得 OpenStack 随着时间的推移变得越来越强大。OpenStack 可以称为云计算的代表,凭借所有优势和无限的模块化功能,它被证明是长期而言可负担的选择。 前提条件在继续本教程之前,您必须具备云计算和存储域的基础知识。 目标受众本教程是为希望学习 OpenStack 基本知识的 IT 经理和系统管理员创建的。 问题我们保证您在学习我们的 OpenStack 教程时不会遇到任何困难。但如果本教程中有任何错误,请通过联系表单发布问题或错误,以便我们进行改进。 下一主题PDF 教程 |
我们请求您订阅我们的新闻通讯以获取最新更新。