云计算HCIP-OpenStack03

news/2024/12/18 18:19:55/
书接上回: 云计算HCIP-OpenStack02-CSDN博客

10.KeyStone

keystone-Openstack,IAM服务(统一身份认证)-云服务

建议先去了解Hadoop(大数据生态系统)中的kerberos(LDAP+kerberos鉴权机制tip云计算+大数据+人工智能密不可分三个大方向都是当下热门前沿学科

keystone是OpenStack中安全认证的相关服务类型,主要提供人机认证和机机认证两种认证模式,涵盖了主流的所有认证方法,保证了OpenStack集群的内部安全,作为OpenStack中的重要组件,keystone是一个共享性服务,即所有的用户和服务组件都需要和keystone建立连接。keystone作为Openstack中的认证组件,如果出现问题,会导致集群整体的不可用。

10.1keystone的概念

10.2KeyStone架构

10.3KeyStone对象管理

10.4OpenStack资源创建流程1
  1. 用户提交任务之后,Horizon会调用API接口将用户在web上配置的参数转换为指令下发。
  2. 在指令下发之前,首先用户需要提供自己的用户名和密码发送给keystone,用于获取访问对应服务的令牌。在实际操作中,我们是不需要做这一步的,因为Horizon已经替代用户自动发送了。
  3. keystone收到信息之后,会通过自身的keystone的keystone Service模块的identity进行验证,实际的验证工作是由keystone plugin完成的。
  4. 验证完成之后,keystone会生成该用户的访问令牌,默认为fernet模式,并反馈给用户
  5. 用户获取令牌之后,就会将命令和令牌一次性传输给对应的服务,相关的服务收到之后,会首先对令牌进行解密,然后将令牌信息发送给keystone
  6. keystone收到服务的验证信息之后,首先会确认令牌是否被篡改,如果被篡改则反馈连接不合法,如果确认正常,则keystone连接keystone service,查询本地的Assignment、resource、endpoint并反馈给查询服务
  7. 服务收到信息之后,会根据endpoint显示的url反馈给用户。同时服务会执行用户下发的命令(前提是用户具有权限可以执行)
  8. 如果在执行的过程中,需要跨服务创建资源,则由收到用户请求的服务作为代理,将命令和用户令牌一起发送给其他服务
  9. 其他相关服务收到信息之后,同5-8步执行
  10. 当任务执行完成之后,收到请求的服务会向用户反馈执行完成,同时经过一段时间之后,令牌过期。

10.5OpenStack资源创建流程2
  1. 用户通过使用用户名密码登录horizon或者是CLI
  2. Horizon收到用户登录请求首先会联系keystone,验证用户是否合法。
  3. keystone收到请求之后,验证用户是否合法,同时反馈用户的权限信息给Horizon
  4. 登录完成之后用户进行操作,当用户需要下发命令,所有的操作在提交的时候统一转化为API指令。

  1. 在命令下发之前,首先Horizon会替代用户携带用户名和密码信息发送给keystone,请求获取令牌。
  2. keystone收到请求之后,首先会转发请求给keystone service,通过identity服务进行验证,实际上是通过keystone plugin服务进行查询。确认用户合法之后,Service中的token会要求plugin服务生成令牌,令牌生成之后,会由Token通过API反馈令牌给用户
  3. 令牌获取之后,用户(Horizon)会将自身的请求和令牌一起交给对应的服务。
  4. 服务收到请求和令牌之后,首先会用令牌联系keystone,确认合法性和权限
  5. keystone收到了服务的请求之后,首先把令牌发送给service 的token服务,token会验证令牌是否合法
  6. 确认合法之后,service会查询identity获取用户的组信息,查询Assignment查询角色分配与权限,查询resource(policy)获取域和项目信息,最后查询catalog根据权限获取端点url。然后将这些信息统一反馈给服务
  7. 服务收到之后,会根据用户的相关信息进行任务执行,同时会将url透传给用户,通过Horizon打开对应的url链接
  8. 如果需要跨服务执行,则重复服务的查询和执行步骤
  9. 当任务执行完成之后,向用户反馈写完成,等待令牌过期。
  10. 在任务执行过程中,Horizon会周期性的查询执行进度。

11Glance镜像管理服务

镜像管理服务提供了发现、注册、检索虚拟机镜像的功能。

发现指的是镜像管理服务可以主动的从海量的后台文件中,主动找到哪个文件是系统镜像文件。该功能的实现是通过检索文件的后缀名实现的。比如常见的有iso、vmdk、vhd、qcow2

注册指的是将系统发现的镜像文件注册到服务内部作为一个系统镜像存在检索虚拟机镜像,如果glance服务中有大量的镜像,glance支持通过关键字进行查询镜像的本质是文件,所以镜像服务需要后台连接存储,存储支持本地、cinder、对象存储等由于所有用户都对glance有需求,所以glance属于是全局共享服务。

数据和元数据的关系

数据是信息的载体,数据的组织形式是文件,也就是说所有的文件,都是由数据组成的。即数据为文件的实际内容。

元数据是描述数据的数据,也就是数据的属性信息

11.1Glance架构

Client:客户端,负责用户的接入,本质上是一个本地程序,通过客户端可以连接到OpenStack中的所有服务

REST API:标准连接接口,负责提供一个对外暴露的接口,用于外部访问内部

Domain Controller:镜像域控制器,也可以翻译成镜像域级管理器,主要负责实现Glance服务的各项功能

registry layer:注册中心层,负责控制器和Glance数据库之间的安全访问的

Database Abstraction layer:数据库抽象层,提供Glance和数据库访问的API接口

Glance DB:镜像数据库,存储了镜像服务最核心的管理数据、配置数据以及相关的重要信息,一旦受损整个服务以及相关的镜像文件和元数据全部损坏

Glance Store:镜像仓库,负责存储和管理镜像,维护镜像的可用性

11.2Glance工作流程

11.3Glance基础概念

镜像:传统情况下指的是一个文件,在Glance服务中,镜像包含了系统的配置信息,控制文件,磁盘文件等内容,是一个比较综合化的概念

实例:概念等同于节点、虚拟机、对象等,本质上就是在OpenStack上运行的一台虚拟机设备。

规格:定义了实例的相关配置参数,包含vCPU、vMemory以及磁盘大小,没有网络配置

规格是OpenStack中非常重要的组成部分,用户在使用OpenStack的时候,是不能自定义规格的。管理员设定什么规格,用户就只能选择什么规格。

规格分为两类,计算类和存储类,这里要强调存储类是镜像存储类。计算类为CPU和内存规格,镜像存储类,是指使用该镜像时,所需分配的最小的系统盘大小。

管理员在后台设定好规格之后,用户只能选择规格。

11.4计算类规格

11.5镜像存储类规格

当我们是管理员的时候,为了用户可以正常的创建VM,我们需要在后台配置计算规格,然后上传镜像,设置镜像所需要的最小的硬盘大小,即镜像存储规格。然后用户才能够正常的去创建VM。

网络规格需要根据用户自己的需求创建,不能指定。没有规格。

11.6Glance状态机

所谓状态机指的就是一个系统或者是一个框架内部的状态转换机制,俗称叫做状态机,一般来说在ICT框架下,具有代表性的协议、产品、架构都具有状态机。状态机可以理解为是计算机领域中的一种常见的设计机制。

在Glance中,状态机的主要机制有以下类型:

  1. queued:镜像注册已经完成,但是镜像文件还未上传。
  2. saving:镜像上传中
  3. uploading:下发了镜像导入命令,但是还未执行
  4. importing:导入镜像ing
  5. active:激活可用
  6. deactive:未激活/停用,管理员不受限
  7. killed:上传失败
  8. delete:延迟删除
  9. pending_delete:回收站

任务状态:

  1. pending:挂起/暂停
  2. processing:执行中
  3. success:成功
  4. failure:失败

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


http://www.ppmy.cn/news/1556173.html

相关文章

YOLOv11改进,YOLOv11添加DLKA-Attention可变形大核注意力,WACV2024 ,二次创新C3k2结构

摘要 作者引入了一种称为可变形大核注意力 (D-LKA Attention) 的新方法来增强医学图像分割。这种方法使用大型卷积内核有效地捕获体积上下文,避免了过多的计算需求。D-LKA Attention 还受益于可变形卷积,以适应不同的数据模式。 理论介绍 大核卷积(Large Kernel Convolu…

微积分复习笔记 Calculus Volume 2 - 4.2 Direction Fields and Numerical Methods

4.2 Direction Fields and Numerical Methods - Calculus Volume 2 | OpenStax

【机器学习】在向量的流光中,揽数理星河为衣,以线性代数为钥,轻启机器学习黎明的瑰丽诗章

文章目录 线性代数入门:机器学习零基础小白指南前言一、向量:数据的基本单元1.1 什么是向量?1.1.1 举个例子: 1.2 向量的表示与维度1.2.1 向量的维度1.2.2 向量的表示方法 1.3 向量的基本运算1.3.1 向量加法1.3.2 向量的数乘1.3.3…

Apache Commons Utils 类库使用

Apache Commons Utils 是一组开源的 Java 工具类库,提供了许多在开发中常用且实用的功能,涵盖了字符串处理、集合操作、日期时间处理、文件操作等多个方面。下面是对 Apache Commons Utils 中一些主要工具类的详细介绍和使用示例。 1. Commons Lang (or…

获取微信用户openid

附上开发文档:https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/Wechat_webpage_authorization.html 开发之前,准备事项 一个已认证过的服务号|基本信息配置js域名和网站授权域名配置最后确认当前账号网页授权功能是否开通,没有开通的无法获取到用户授权开发人…

docker springboot 运维部署详细实例

环境安装 [rootiZbp1dcnzq7pzpg9607m6pZ ~]# docker -v Docker version 26.1.4, build 5650f9b镜像构建 Dockerfile 文件内容 FROM openjdk:8 # Author Info 创建人信息 MAINTAINER ratelcloudfoxmail.com ENV PORT20001 EXPOSE 20001 RUN mkdir /usr/local/ratel-boot-serv…

PostgreSQL数据库序列信息查询

PostgreSQL序列信息查询 说明: 在PostgreSQL数据库中序列和表都是序列的对象。 数据库中不应该存在孤儿序列,序列应该和表对应的字段绑定起来。绑定后删除表或表对应的字段后,序列会自动被删除。 创建测试表和序列 create table test_t(…

黑客网络安全扫描工具

项目简介 Scanners Box是一个集合github平台上的安全行业从业者自研开源扫描器的仓库,包括子域名枚举、数据库漏洞扫描、弱口令或信息泄漏扫描、端口扫描、指纹识别以及其他大型扫描器或模块化扫描器,同时该仓库只收录各位网友自己编写的一般性开源扫描…