nova组件讲解和glance对接swift

2024-01-12 22:28

本文主要是介绍nova组件讲解和glance对接swift,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1、openstack架构

(1)openstack是一种SOA架构(微服务就是从这种架构中剥离出来的)

(2)这种SOA架构,就是把每个服务独立成一个组件,每个组件通过定义好的api接口进行互通

(3)glance组件:可以为云主机提供镜像,镜像可以存放在S3、SAN、glaster、NFS、Ckeph、Swift等存储中。glance可从这些存储中加载给云主机使用

(4)Cinder组件:为云主机提供硬盘的,存放的操作系统

(5)Neutron组件:为云主机提供网络资源的

(6)Cellometer组件:提供计费服务(例如,创建的浮动IP,使用的镜像,进行收费)

(7)Keystone组件:提供身份认证服务(每个组件都有对应的账户和密码,通过账号和密码进行对接数据库,在应答文件中有组件的用户名和密码。而Keystone就是负责管控每个组件的账号和密码)

(8)Nova组件:负责维护和管理云环境的计算资源

(9)openstack里面有很多大组件:Nova/glance/cinder,每个大组件下面还有很多小组件,如Nova(nova-api/nova-scheduler/nova-compute/nova-conductor等)

(10)在控制节点中有nova-api(接受cpu和内存的请求),cinder-api(接受硬盘分配),glance-api(加载镜像)

(11)再通过nova-scheduler的计算调度服务(根据一系列的计算操作,看内存、磁盘等的占用比,来得出权重,在权重高的上面创建。),把请求发送给计算节点,每个计算节点都有nova-compute,通过nova-compute创建云主机

(12)openstack比较复杂,出了问题,无法根据经验来判断,要学会看日志。openstack的所有配置文件都在/etc/nova /etc/glance /etc/neutron等。openstack的所有日志文件都在/var/log/nova /var/log/glance /var/log/cinder /var/log/neutron等

(13)为了让日志显示的更全面,开启debug

(14)由于nova-scheduler是自己来断定,云主机该发放在哪台主机上。如果不想让nova-scheduler自己判定,自己可以创建一个域(也就是主机集合),平分nova域的主机

(15)nova-conductor是nova各个服务与数据库的中间件。如果所有服务都通过nova-conductor直接访问数据库就会导致并发量太大,而且还不安全(对于数据库,当然是访问的越少越安全),所以RabbitMQ消息队列(一秒可以处理几十万条数据)就是解决了并发量问题、以及数据库安全问题。

(16)openstack中都是NOVNC这种远程登录桌面,所谓的novnc是不需要单独安装VNC的客户端,并不是不需要VNC,这个直接嵌入在网页中了

(17)VNC客户端依靠的是VNCserver,在所访问的主机上(controller或compute,通过virsh list查看,若在controller上由5台云主机,则监听5900端口依次到5904端口。以此类推,在compute上也一样 )

这篇关于nova组件讲解和glance对接swift的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/599353

相关文章

Vue3组件中getCurrentInstance()获取App实例,但是返回null的解决方案

《Vue3组件中getCurrentInstance()获取App实例,但是返回null的解决方案》:本文主要介绍Vue3组件中getCurrentInstance()获取App实例,但是返回nu... 目录vue3组件中getCurrentInstajavascriptnce()获取App实例,但是返回n

SpringQuartz定时任务核心组件JobDetail与Trigger配置

《SpringQuartz定时任务核心组件JobDetail与Trigger配置》Spring框架与Quartz调度器的集成提供了强大而灵活的定时任务解决方案,本文主要介绍了SpringQuartz定... 目录引言一、Spring Quartz基础架构1.1 核心组件概述1.2 Spring集成优势二、J

C++ vector的常见用法超详细讲解

《C++vector的常见用法超详细讲解》:本文主要介绍C++vector的常见用法,包括C++中vector容器的定义、初始化方法、访问元素、常用函数及其时间复杂度,通过代码介绍的非常详细,... 目录1、vector的定义2、vector常用初始化方法1、使编程用花括号直接赋值2、使用圆括号赋值3、ve

Java调用C++动态库超详细步骤讲解(附源码)

《Java调用C++动态库超详细步骤讲解(附源码)》C语言因其高效和接近硬件的特性,时常会被用在性能要求较高或者需要直接操作硬件的场合,:本文主要介绍Java调用C++动态库的相关资料,文中通过代... 目录一、直接调用C++库第一步:动态库生成(vs2017+qt5.12.10)第二步:Java调用C++

Python基础文件操作方法超详细讲解(详解版)

《Python基础文件操作方法超详细讲解(详解版)》文件就是操作系统为用户或应用程序提供的一个读写硬盘的虚拟单位,文件的核心操作就是读和写,:本文主要介绍Python基础文件操作方法超详细讲解的相... 目录一、文件操作1. 文件打开与关闭1.1 打开文件1.2 关闭文件2. 访问模式及说明二、文件读写1.

C# WinForms存储过程操作数据库的实例讲解

《C#WinForms存储过程操作数据库的实例讲解》:本文主要介绍C#WinForms存储过程操作数据库的实例,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、存储过程基础二、C# 调用流程1. 数据库连接配置2. 执行存储过程(增删改)3. 查询数据三、事务处

Vue中组件之间传值的六种方式(完整版)

《Vue中组件之间传值的六种方式(完整版)》组件是vue.js最强大的功能之一,而组件实例的作用域是相互独立的,这就意味着不同组件之间的数据无法相互引用,针对不同的使用场景,如何选择行之有效的通信方式... 目录前言方法一、props/$emit1.父组件向子组件传值2.子组件向父组件传值(通过事件形式)方

Spring组件初始化扩展点BeanPostProcessor的作用详解

《Spring组件初始化扩展点BeanPostProcessor的作用详解》本文通过实战案例和常见应用场景详细介绍了BeanPostProcessor的使用,并强调了其在Spring扩展中的重要性,感... 目录一、概述二、BeanPostProcessor的作用三、核心方法解析1、postProcessB

C++快速排序超详细讲解

《C++快速排序超详细讲解》快速排序是一种高效的排序算法,通过分治法将数组划分为两部分,递归排序,直到整个数组有序,通过代码解析和示例,详细解释了快速排序的工作原理和实现过程,需要的朋友可以参考下... 目录一、快速排序原理二、快速排序标准代码三、代码解析四、使用while循环的快速排序1.代码代码1.由快

kotlin中的行为组件及高级用法

《kotlin中的行为组件及高级用法》Jetpack中的四大行为组件:WorkManager、DataBinding、Coroutines和Lifecycle,分别解决了后台任务调度、数据驱动UI、异... 目录WorkManager工作原理最佳实践Data Binding工作原理进阶技巧Coroutine