云计算HCIP-OpenStack02

书接上回: 云计算HCIP-OpenStack01-CSDN博客

7.OpenStack核心服务

7.1Horizon:界面管理服务

Horizon提供了OpenStack中基于web界面的管理控制页面,用户或者是管理员都需要通过该服务进行OpenStack的访问和控制

界面管理服务需要依赖于keystone服务进行访问控制和权限管理。登录用户的角色、权限都需要依赖keystone认证服务进行管理。

7.2Keystone:认证管理服务

提供身份验证,服务发现,分布式多租户授权(分布式代表keystone并不是一个节点,多租户指的就是用户数量非常的多,授权代表keystone可以记录每个用户的权限)

7.2.1账户、用户、租户、账号

账户和账号本身来说可以理解为是一个概念,用户是使用资源的对象,用户分为人机用户和机机用户,用户和账户是一对多的关系。如果账户的使用单位是一个集体,比如公司账号或者部门账号,为了进行管理,可以在账户的下面创建租户,租户属于账户。

7.2.2权限管理:用户/租户/账户、用户组、角色、权限

一个良好的权限管理框架,要保证权限的分配最小化。权限分配的步骤最小化。

权限分配给角色,角色分配给用户组,用户选择性加组。加组的用户继承用户组的角色,拥有角色的权限。

Keystone核心组件有LDAP(核心数据库)、Oauth(认证管理服务)、OpenIDConnect(连接转发服务)。Keystone是OpenStack中最核心的服务。在公有云中,我们一般称该服务为IAM服务,缩写可能根据厂商的不同有区别,但是中文翻译为统一身份认证服务。如果统一身份认证服务出现故障,那么整个云框架的所有服务都会处于不可用状态。

7.3Glance:镜像服务

对于OpenStack而言,其提供的是IaaS基础设施服务,通过OpenStack用户可以创建虚拟机、裸金属、容器。但是这些资源都要有操作系统,操作系统的安装、部署、维护就需要通过镜像去实现。在最早的OpenStack A版本中,在没有镜像服务的前提下,所有用户都需要自行维护自己所使用的镜像,这就导致重复的镜像多次上传,镜像之间的共享无法实现。所以为了提升共享性、同时降低重复镜像的上传,节约存储空间。在B版本中发布了Glance镜像服务。

镜像服务分为了公共镜像、私有镜像、共享镜像三个类型。

公共镜像一般是由OpenStack的管理员上传的面向于所有普通用户的镜像。普通用户创建资源的时候看到的公共镜像,这个状态就叫做镜像发现

私有镜像一般是用户自定义的镜像。当用户上传自己的私有镜像到云上的时候,就叫做镜像注册。当用户有大量镜像需要筛选,就叫做镜像检索

当用户将自己的私有镜像传递给其他用户使用的时候,这个镜像就叫做共享镜像。

镜像可以存储在本地、对象存储或者是块存储等有存储空间的位置。

7.4Nova:计算服务

提供大规模(可以允许海量计算资源的管理),可扩展(资源不足的时候可以允许动态扩展物理资源),按需自助服务(计算资源的创建封装等一系列操作是不需要人为干预的,OpenStack可以自动化执行)。

Nova需要管理裸机(裸金属)、虚拟机和容器。提供最基础的计算资源虚拟化服务

Nova依赖镜像服务,网络服务。

7.5Cinder:块存储服务

所谓块存储就是SAN存储服务,Cinder可以将物理存储虚拟化成逻辑硬盘。Cinder提供的是持久化的存储。Cinder将所有的物理存储空间整合为一个逻辑的存储资源池,然后按需进行资源分配。用户视角只能看到资源池。存储空间来自于哪个设备的哪块硬盘是不可见的。

7.6Swift:对象存储服务

对象存储具有高可用性(高安全性保护),分布式(存储空间的提供不是由某一台设备实现的,而是最少3台)

7.7Neutron:网络服务

本质上是SDN(Software design Network软件定义网络),通过软件实现网络的虚拟化功能。

Neutron可以实现的最大的价值就是通过它可以实现VXLAN(隧道网络)。如果没有VXLAN技术,就没有现在的云服务。

8.OpenStack创建一个VM的流程

  1. 用户下发一个创建的请求,从Horizon界面进行任务的下发。
  2. OpenStack的管理进程收到请求之后,会将任务拆分,将计算封装任务交给Nova
  3. Nova收到请求之后,会检查集群中负载压力最小的节点,然后将请求转发到该设备上,设备收到请求之后,根据请求中的规格进行资源的封装,形成虚拟机VM。
  4. 虚拟机创建完成之后,本质上是一个空机,所以我们需要提供镜像给虚拟机进行部署。
  5. 镜像安装部署在哪里?目前的虚拟机是没有可以安装的位置的,所以下一步OpenStack就需要根据用户的请求,封装对应大小的硬盘,给VM挂载。然后将镜像安装在硬盘内。
  6. 安装完成之后,为了外部对内部的访问顺畅,我们需要通过Neutron服务,挂载网卡到虚拟机,提供对外访问的服务。
  7. 以下为非必选项:
    1. 如果我们需要对该VM进行保护,那么就可以将Cinder提供的硬盘周期性的备份到OBS对象存储中
    2. 如果用户需要对VM的各项规格进行调整,就会影响和干扰VM的正常运行,属于高危操作。对于高危操作,就必须要用户通过keystone认证,保证用户具有相关的操作权限

接下来,详细展开OpenStack架构组件的说明

9 . Horizon架构

  1. 底层服务:Horizon的总体目标是为了通过自身的web界面对其他服务做管理,所以Horizon需要做到和所有服务建立连接。所以Horizon的底层是OpenStack的其他服务。
  2. 那么Horizon如何和其他的服务构建连接呢?因为在设计OpenStack的时候,时间顺序是有先后的。所以Horizon使用的是API连接进行构建。所有的基于Horizon的操作,最终在用户提交的时候,都会被转换成对应组件的API命令进行下发。
  3. 基于对相关服务的连接,我们可以进行查询、创建、修改、删除以及生命周期中所有的资源管理项目的设置。该层叫做view访问层。
  4. Template模板:用户在配置Horizon的相关设置的时候,页面中应该显示什么,需要配置什么,哪些是可选,哪些是必选,这就需要提前在Horizon中预制配置模板。

书接下回:云计算HCIP-OpenStack03-CSDN博客

相关推荐
阿里云云原生15 分钟前
切换模型会损失缓存,智能路由还省钱吗?
云原生
闲云野鹤在人间19 分钟前
Kubernetes Service 与 kube-proxy 详解
云原生·容器·kubernetes
曲径海盗41 分钟前
【Python 学习第 39 天】for 循环
python·学习笔记·编程入门
我不会起名字3221 小时前
节点 NotReady:kubelet 与容器运行时的 4 步排查
云原生·kubernetes·kubelet·排查
分布式存储与RustFS2 小时前
GPU 在空转等数据?PyTorch 训练集进 RustFS 的三种接法
云原生·开源·对象存储·分布式存储·s3·rustfs·性能基准
Lvan的前端笔记3 小时前
阿里云CDN
阿里云·云计算
时间售卖铺5 小时前
MySQL 备份
运维·数据库·mysql·云原生
对象存储与RustFS6 小时前
GPU 在空转等数据?PyTorch 训练集进 RustFS 的三种接法
后端·docker·云原生
运维踩坑日记7 小时前
OpenStack 核心服务实战笔记
linux·运维·服务器·笔记·openstack
李兆龙的博客8 小时前
从一到无穷大 #105:OpenAI Habitat II——多租户演进、全球读取优化与 CDC 平台
云计算·存储