云计算之OpenStack入门专业术语解释

木子叶家园 2020-03-03

云计算之OpenStack入门专业术语解释

前言

? 前面的三篇文章我们介绍了有关云计算的基础概念、OpenStack定义、概念、部署节点类型以及架构。这里笔者将列出云计算和OpenStack相关的一部分专业术语,因为考虑到先前讲解的内容中涉及到一些专业名词,可能对读者有些理解上的困扰,也方便之后去深入学习研究OpenStack,以及云计算的其他内容。

专业术语及名词清单(将会持续更新)

1、并行计算

? 或者称作平行计算,是相对于串行计算而言的一种计算机计算算法。

? 并行计算指同时使用多种计算资源解决计算问题的过程,从而提高计算机系统计算速度和处理能力;该算法基本的思想就是将问题分解为多个部分,然后每一个部分由一个独立的处理机来处理。

2、解耦和耦合度

? 解耦是一种思想,也是处理复杂事务的方法之一,一般在开发程序和架构设计上提及地比较多。例如,开发程序员一般在开发一个项目的时候,需要写多个功能,每个功能与其他功能直接可能还有一定的联系,如果将这些功能代码写在一个文件中,一方面文件篇幅过长,且不方便命名,另一方面就是后期出现问题时难以定位以及进行维护工作。所以,大部分对于复杂的应用程序开发都会将这些功能模块的代码进行多文件编写,使之既互补干扰内部代码,又可以互相有联系。架构设计也是如此,讲一个复杂的架构进行多元化多模块细分,层层设计,布局。这种处理方法或思想我们就将之称为解耦。

3、分层和分布式(系统)

? 说到分布式系统,恰逢前两天有人问过分层和分布式是不是类似的问题。其实这个问题不需要理解这两个词的含义就可以知道其根本不是一个概念。分层,是一种思想,一种计算机算法,而分布式是体系架构层面的知识。

? 分层,我们可以回顾到起初学习计算机网络的时候,我们将公司企业部门格局比作为计算机网络七层模型,每一层都各司其职,扮演着各自的角色。而这种层层细分的方法就是分层思想。

? 分布式,一般我们比较多见的是分布式计算系统以及分布式存储系统。分布式计算则是在两个或多个软件互相共享信息,这些软件既可以在同一台计算机上运行,也可以在通过网络连接起来的多台计算机上运行;分布式系统一般多用于类似网络存储等系统,具体应用就是将数据分散存储在多台互相独立的设备上从而满足数据的安全性、可靠性以及提高系统的性能。当然分布式系统也有自身的缺点,比如需要进行监控,统一进行控制,性能方面非常依赖网络以及资源的分配策略等。这些可以自行思考或者查阅相关资料。

4、RESTful

? REST是一种网络应用程序的设计风格和开发方式,但是它并没有明确的标准,RESTful是则是满足REST相关条件或原则的应用程序或者设计。

? 在OpenStack中,RESTful api则表示的是OpenStack各个服务所调用的应用程序,或者说是接口,如果还是不太明白,可以理解为是一种通过网络资源调用的函数(学过一点编程的不难理解)。

?

5、虚拟化

? 虚拟化指通过虚拟化技术将一台计算机虚拟为多台逻辑计算机。就例如我们在自己的Windows宿主机(本地计算机)上安装VMware后再该软件中创建各种虚拟机实例,例如Linux操作系统虚拟机如Centos、SUSE、Ubuntu等、或者Windows系统虚拟机如Windows10等。

? 虚拟化使用软件的方法重新定义划分IT资源,可以实现IT资源的动态分配、灵活调度、跨域共享,提高IT资源利用率,使IT资源能够真正成为社会基础设施,服务于各行各业中灵活多变的应用需求。

6、消息队列与AMQP

? 消息队列——Message Queue,看着这个英文你会发现和AMQP中间两个字母一致,没错,AMQP中的MQ也表示消息队列。下面我们来简单讲一下两者的定义和区别。

? 先说一下AMQP吧,全写为Advanced Message Queuing Protocol ,看到这里或许你就会明白了,这是一种协议,中文翻译为高级消息队列协议。该协议是一个提供统一消息服务的应用层标准高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计。

? 基于此协议的客户端与消息中间件可传递消息,并不受客户端/中间件不同产品,不同的开发语言等条件的限制。例如由Erlang语言开发的 RabbitMQ等。

? 而消息队列,这里只是进行概念介绍,就不去深入讲述有关生产者和消费者具体的理论知识了。消息队列,可以认为是上述中的消息中间件,主要是用来传输数据时将数据放在队列当中,如下图所示:

云计算之OpenStack入门专业术语解释

? 其中,进行左边入队(将数据放入队列)操作的角色叫做生产者,而进行出队(将数据取出队列)操作的角色称为消费者,从生物学的层面理解也可以的。

? 补充一句:消息队列(消息中间件),在OpenStack中也扮演着重要的作用。

7、热迁移

? 热迁移,是相对于冷迁移而言的一种数据迁移方式。

? 冷迁移,我们针对虚拟机而言,存放虚拟机磁盘的目录一般都是挂载在一个nsf文件系统的磁盘,而这个磁盘通常是LVM文件系统(可以查阅Linux操作系统有关磁盘管理的内容)。由此,我们可以通过关闭虚拟机进行数据存储迁移,即通过冷迁移,可以选择将关联的磁盘从一个数据存储移动到另一个数据存储。其优点是数据不易丢失,缺点则是需要宕机进行操作。因此冷迁移也称为静态迁移。

? 热迁移,则是将整个运行状态完整保存,同时可以快速地恢复到原有硬件平台甚至是迁移到不同硬件平台上。恢复之后,可以正常工作,迁移期间,用户不会觉察到服务有所变化,即热迁移不需要服务器进行停机。因此,热迁移也称之为动态迁移或者实时迁移。

? 补充:上述具体的磁盘管理可以参考笔者前面的文章,下面是主要涉及LVM相关知识的两篇文章:

1.Linux系统管理之磁盘管理与文件系统

2.Linux磁盘管理之LVM逻辑卷认识与管理详解

?

8、VNC

? VNC——Virtual Network Console,表示虚拟网络控制台。是一款远程控制工具软件,是基于UNIX和Linux操作系统的免费的开源软件,用来提供远程连接计算机,诸如VMRC、SSH、Telnet、RAS等。

?

相关推荐