一、什么是 OpenStack

Openstack是一个云平台管理的项目。
OpenStack是一个开源的云平台,它属于云计算中的IaaS,
简单来讲:他是来管理我们的硬件设施的。将服务器、交换机、路由器和存储等都由OpenStack 平台管理。
我们在设备上部署Linux操作系统,然后在操作系统上部署OpenStack,由OpenStack决定哪些虚拟机应该启动在哪些物理的计算节点上。

1.1、OpenStack的组件介绍

OpenStack是由很多个核心组件组合而成,每个组件都负责自己的一小块功能,如:负责提供计算服务的Nova,提供网络服务的 Neutron,他们各自都有属于自己的管理接口,所谓管理接口就是基于HTTP请求的web服务,主要是用于接受命令行工具或者组件的http请求。

先简单介绍各个组件,后面再进行详细讲解

  1. keystone身份认证服务
  2. glance镜像服务
  3. nova计算服务
  4. Neutron网络服务
  5. Horizon看板服务
  6. Cinder磁盘服务
  7. Swift对象存储服务(鸡肋 一般不用)
  8. Ceilometer计量服务
  9. Heat编排服务

二 、keystone身份认证服务

2.1 keystone 概述

要求:知道如何在页面上新增用户、租户、给用户分配角色、配额 就ok了

身份认证是怎么工作的,以图为例

从图可以看出,每个组件进行操作之前都会 调用 keystone验证身份信息!

三个重要的概念:用户(user)、角色(role)、租户(project)【也可以叫项目

  1. 用户:创建用户,信息包括用户名、密码、邮箱等信息,但是 只创建用户 在Openstack中是不可以使用资源的!
  2. 租户:OpenStack中所有的资源都是根据 租户来进行隔离的,一个用户必须先关联到租户下才可以调用资源
  3. 角色:限制用户对资源的访问。角色只能关联 租户下的用户,并且 一个用户在不同的租户下可以由不同的角色。

租户、用户的理解:如 用户为 公司的员工,部门就是一个租户,员工分配到部门下,才可以正常工作。
一个用户可以有多个租户,在不同租户下的角色也可以不一样

好了,看下面这个图,继续分析 :

上图(左侧篮框)讲解:

  1. OpenStack搭建好之后,会有个蓝色的框 ,称之为 domin(相当于数据库的概念),上图有两个租户。
  2. 【用户-admin/角色-admin】表示:一个用户加入租户 一定要有角色信息,admin为 超管的角色
  3. 一个用户在不同租户下,只要有角色是 admin, 他就是 整个OpenStack的超级管理员

问题来了 :
董事长是admin 什么都要他来管吗,或者给旗下分公司老大admin角色,他的权限不久和我一样了吗?

看右侧的篮框
OpenStack下可以创建多个domin.如 Domin-bus1,将 某个用户放到某个租户下的admin角色,那么他就只是 这个租户下的超管

企业私有云一个Domin就够了,多个Domin就需要激活多Domin的服务

还有 一些不重要的术语,了解即可

  1. group 组
    把用户分组,然后按组分租户、角色,就把组里的所有用户分了租户和角色,== 脱了裤子放屁,多此一举的功能
  2. service endpoint 服务终点
    每个组件都有个API,有API 就一定会有IP地址和访问的方法
    服务终点即一个服务提供的地址比如 http://192.168.100.20:5000/v3 ,这就是一个
    服务终点,服务终点是用来提供基于 http 请求的 API 方法的一个地址。

2.2 keystone的服务

  1. 身份认证服务
  2. 资源服务
  3. 分配服务/ Assignment Service

上面三个服务 就是 上面讲的 用户 根据租户下不同角色进行分配资源

  1. 票据服务/ Token Service
    负责验证 token 票据的验证服务。
  2. 目录服务/Catalog Service
    负责服务 Endpoint 的管理,只有注册了正确的 Endpoint,服务才能正常被调用
  3. 规则服务/Policy Service
    管理规则服务,一般规则文件会在/etc/项目/Policy.json,里面定义了每个方法需
    要用什么角色来访问。

对应的 命令 === openstack命令

三、glance镜像服务

负责管理openstack的在线镜像仓库,镜像 == 操作系统,通过配置将它存放在对象存储(Swift)、ceph或者Gluster中

四、nova计算服务

nova 为 OpenStack 提供计算服务,nova 设计初衷为了有很好的扩展性,提供自助式的服务,并有效的利用计算资源,默认使用的 hypervisor 是 kvm,当然你可以修改配置来使用其他的 hypervisor,当你在虚拟机安装 OpenStack 的时候一般都会使用 qemu 来做 hypervisor

【学习目标】

  1. 管理 flavor。
  2. 管理虚拟机实例,比如启动、停止、删除。
  3. 管理 floating ip。
  4. 管理安全组,包括分配安全组给实例、改变安全组中的策略。
  5. 管理 Nova host consoles。
  6. 管理 keypair。 ü 使用 keypair 来链接一个实例。
  7. 管理计算节点的 server。
  8. 管理项目(租户)配额(quotas)。
  9. 检查 nova 的运行状态。
  10. Trouble Shooting。

4.1 术语

4.1.1、 kvm

Kernel-based Virtual Machine 基于内核的虚拟机,也是 OpenStack 默认的 hypervisor。

4.1.2、 qemu

在 openstack中 是 kvm的替补角色,当计算节点的cpu不支持硬件加速虚拟化的时候,我们可以使用qemu来替代

4.1.3、nova-api

主要提供了统一风格的REST-API接口,作为Nova组件的入口,处理基于 http 的请求和基于消息的请求,负责所有管理的 http
的请求响应等

4.1.4、flavor

新建虚拟机的配置列表,可以看作是创建虚拟机的模板
虚拟机启动时候的用量,简单来说就是虚拟机启动的时候,需要使用的资源,如:cpu、内存、磁盘等,为了方便,我们会把常用的场景写入到数据库中形成一条记录,下次用户启动虚拟机的时候,就可以直接选他们想要的 flavor 就ok了

4.1.5、keypair

ssh连接访问实例的密钥对
用来连接虚拟机的一种安全机制,锁就是安装在虚拟机内部的 密钥,钥匙是留给用户为了开锁的 公钥 ,用户用公钥连接虚拟机

4.1.6、安全组

是一个控制实例访问策略的容器,里面包含了各种而样的安全组规则,如:定义了用户可以通过什么协议,在远端哪个网端的主机上,通过什么端口对实例进行连接访问。
控制访问安全的机制,在 openstack中,默认虚拟机向外的流量是不受限制的,但是从外向虚拟机里访问是屏蔽的,如 外部服务器 ping 虚拟机可以ping通,虚拟机ping外部服务器是不通的,可以使用 iptables修改/创建安全组

4.1.7、nova-compute 服务

运行在计算机节点的服务 ,用于虚拟机实例的创建和管理

4.1.7、nova-scheduler 服务

负责分配实例到具体计算节点的服务
每次 nova-scheduler 分配实例,都会通 过 nova-conductor 到 nova 使用的数据库中去查询所有配置好的计算节点上的负
载数据,然后选择负载节点压力最小的那个计算节点,将实例启动在那台计算节点上

4.1.8、nova-conductor 服务

负责提供nova数据库连接的服务

4.1.9、nova-consoleauth 服务

负责提供 nova console 的身份认证,比如 VNC 的身份认证等,并与 ip 地址和
端口号映射。

4.1.10、nova-novncproxy 服务

为基于浏览器的 VNC 客户端提供服务。

4.1.11、cpu allocation ratio

cpu 物理 core 和虚拟 core 的转换比列,会影响 nova-scheduler 对计算节点的分
配算法,默认是 16:1,您也可以通过查询/etc/nova/nova.conf 中找到这个变量
cpu_allocation_ratio,并按照您实际的硬件性能对它进行修改。

4.1.11、ram allocation ratio

内存的配置比例,默认是 1.5:1,假设你的物理机内存为 48G,那么 novascheduler 会在数据库中记录,在已使用的内存量达到 72G 以前,会持续向这个
节点分配实例

4.1.12、nova虚拟机创建的流程

消息队列 也可以使用 rabbit-mq,nats

1、:用户向nova组件提出创建实例的请求时,nova-api 作为 nova的入口,接收用户的请求,然后以 消息队列的方式,将请求发送给nova-scheduler

2、nova-scheduler消息队列中侦听到nova-api 的消息后,去数据库查询当前计算节点的负载和使用情况。

3、由于nova-scheduler 不能直接与数据库交互,所以会借助消息队列的方式,通过nova-conductor 组件和数据库交互,根据查到的结果,将虚拟机实例分配到当前负载最小并且可以满足启动虚拟机实例的哪个计算节点上。

4、nova-scheduler 主要的功能时实例的调度,最终的实例的创建需要调用 nova-compute完成,当然实例的创建也离不开镜像、网络、存储等资源,因此nova-compute组件将会于 nova-valume,nova-network等组件通过消息队列的方式实现相互协作,完成创建虚拟机的实例。

五、Neutron网络服务

六、Horizon看板服务

七、Cinder磁盘服务

八、Swift对象存储服务(鸡肋 一般不用)

九、Ceilometer计量服务

收集项目的各种资源的使用情况

十、Heat编排服务

openstack理论知识【Openstack证书考试 2022】相关推荐

  1. 三级计算机考试理论知识,计算机三级考试内容

    计算机三级考试内容 三级考试大纲(PC技术) 基本要求 1.具有计算机及其应用的基础知识. 2.熟悉80X86微处理器的结构.原理及其宏汇编语言程序设计. 3.掌握个人计算机的工作原理及逻辑组成和物理 ...

  2. 2022年保育员理论知识(高级)考试单选题专项训练及答案

    题库来源:优题宝公众号 2022年保育员理论知识(高级)考试单选题专项训练及答案,由优题宝公众号根据最新保育员理论知识(高级)考试大纲与历年保育员理论知识(高级)考试真题汇总编写,包含保育员理论知识( ...

  3. 2022年汽车驾驶员(中级)理论题库模拟考试平台操作

    题库来源:安全生产模拟考试一点通公众号小程序 2022汽车驾驶员(中级)国家题库系汽车驾驶员(中级)考试100题历年真题!2022年汽车驾驶员(中级)理论题库模拟考试平台操作根据汽车驾驶员(中级)新考 ...

  4. 2022年河南省焊工高级技师理论知识模拟试题及答案

    题库来源:优题宝公众号 2022年河南省焊工高级技师理论知识模拟试题及答案,由优题宝公众号根据最新焊工高级技师考试大纲与历年焊工高级技师考试真题汇总编写,包含焊工高级技师考试常考重点题型与知识点,有助 ...

  5. 2022年西式面点师(初级)理论题库模拟考试平台操作

    题库来源:安全生产模拟考试一点通公众号小程序 2022西式面点师(初级)题库是西式面点师(初级)国家题库精选题库!2022年西式面点师(初级)理论题库模拟考试平台操作根据西式面点师(初级)考试教材.西 ...

  6. 2022年电工中级电工证(四级)理论知识模拟题及答案

    题库来源:优题宝公众号 2022年电工中级电工证(四级)理论知识模拟题及答案,由优题宝公众号根据最新电工中级电工证(四级)考试大纲与历年电工中级电工证(四级)考试真题汇总编写,包含电工中级电工证(四级 ...

  7. 2022年合成氨工艺理论题库模拟考试平台操作

    题库来源:安全生产模拟考试一点通公众号小程序 2022年合成氨工艺练习题为合成氨工艺考试真题全真模拟题!2022年合成氨工艺理论题库模拟考试平台操作根据合成氨工艺最新教材汇编.合成氨工艺复审模拟考试随 ...

  8. 2022年高处安装、维护、拆除理论题库模拟考试平台操作

    题库来源:安全生产模拟考试一点通公众号小程序 2022年高处安装.维护.拆除考试题目是高处安装.维护.拆除考试100题考前押题密卷!2022年高处安装.维护.拆除理论题库模拟考试平台操作依据高处安装. ...

  9. 2022年电工高级技师(一级)理论知识试卷及答案

    题库来源:优题宝公众号 2022年电工高级技师(一级)理论知识试卷及答案,由优题宝公众号根据最新电工高级技师(一级)模拟卷及答案考试大纲与历年电工高级技师(一级)模拟卷及答案考试真题汇总编写,包含电工 ...

最新文章

  1. ffmpeg之常用命令的学习
  2. python import xlrd 报错_python读取excel(xlrd)
  3. C# 使用TcpClient 测试网络连接是否正常
  4. anaconda中自带的qtdesigner做界面
  5. thymealf如何实现传单个变量给html_50个关于IPython的奇技淫巧
  6. 美图秀秀滤镜之饱和度
  7. python和控制流程_Python基础之:Python中的流程控制
  8. Java 8 Optional
  9. 同一个接口返回多种数据类型
  10. 芝麻小客服电脑版新增网址自带openid功能,聊天界面改版,新增通用设置
  11. 小树也能读懂的零点定理弱形式
  12. 播音气泡音是什么,气泡音怎么学,气泡音怎么练
  13. 性能分析之响应时间拆分及 258 原则误区
  14. Decorator装饰者【C++实现】
  15. 通知之 Pending播放多媒体调用相册摄像头
  16. 利用bedtools预测chip_seq数据的靶基因
  17. Wi-Fi无线技术介绍
  18. 计算机物联网专业排名,物联网专业排名
  19. stm32的存储器结构
  20. Springboot 自定义mybatis 拦截器,实现我们要的扩展

热门文章

  1. 上传到docker hub_在容器上构建持续部署及最佳实践初探
  2. CSS篇-dbMovies和dbBooks小网页
  3. python英文文本分析和提取_英文文本挖掘预处理流程总结
  4. 版本管理工具-Git
  5. 背包问题-三种动态规划解法-逐步减少空间复杂度
  6. 谷歌浏览器关闭安全模式, 访问 http网站
  7. 华为防火墙VRRP双机热备的配置
  8. Tableau 将 null 值显示在 0 处 (ZN 函数 或 显示特殊值)
  9. 隔离技术之MUX VLAN
  10. Gartner2022应用安全测试魔力象限