前言
本章将会讲解云计算中所需要的关键技术。
一.云计算关键技术
1.虚拟化技术
- 虚拟化是一种能够更有效地利用物理计算机硬件的过程,是云计算的基础。
虚拟化,将各种IT实体资源抽象,转换成另一种形式的技术都是虚拟化。虚拟化是资源的逻辑表示,其不受物理限制的约束。(一个物理主机只能运行一个操作系统,虚拟化则是可以运行多个操作系统)。
从之前一个硬件设备部署一套操作系统===》一个硬件设备部署多个操作系统
2.分布式数据存储技术
- 将数据存储在不同的物理设备中。这种模式不仅摆脱了硬件设备的限制,同时扩展性更好,能够快速响应用户需求的变化(整合存储资源提供动态可伸缩资源池的分布式存储技术)
将数据分布在不同的服务器上存储设备上,在之前就如图中左边的那个一样集中在一个设备上可能这个设备坏了,里面的数据文件就恢复不出来了,分布式存储是动态可伸缩的分布在不同的设备上,如其中的一个设备坏了我们可以通过其他的办法将数据文件恢复。
正符合云计算快速高效的处理海量数据的优势。在数据爆炸的今天这个技术至关重要,为保证数据资料的高可靠性。云计算常用分布式数据存储的技术,将数据存储于不同物理设备中,不仅摆脱物理设备的限制,扩展性更好,满足快速响应用户需求的变化。
(1)云计算的分布式存储与传统的存储是不同的。
- 传统存储采用集中式,放在一个数据库当中。(容易产生瓶颈——不能满足大规模的存储应用需求)
- 分布式存储采用并行可扩展,利用多台服务器,分担存储负担。
(2)分布式存储的优势
- 高性能:一个具有高性能的分布式存储通常能够高效地管理读缓存和写缓存,并且支持自动的分级存储。分布式存储通过将热点区域内数据映射到高速存储中,来提高系统响应速度。一旦这些区域不再是热点,那么存储系统会将它们移出高速存储。
- 支持分级存储:由于通过网络进行松耦合链接,分布式存储允许高速存储和低速存储分开部署,或者任意比例混布。在不可预测的业务环境或者敏捷应用情况下,分层存储的优势可以发挥到最佳。
- 多副本的一致性:与传统的存储架构使用RAID模式来保证数据的可靠性不同,分布式存储采用了多副本备份机制。在存储数据之前,分布式存储对数据进行了分片,分片后的数据按照一定的规则保存在集群节点上。
- 存储系统标准化:随着分布式存储的发展,存储行业的标准化进程也不断推进,分布式存储优先采用行业标准接口进行存储接入。
3.数据中心联网技术
- 东西向流量增长并行计算业务(如:搜索)需要服务器集群协调运算,产生大量横向交互流量虚拟机的自由部署和动态迁移,虚机间需要实时同步大量的数据。
注:DC(数据中心)R(服务器)
- 传统数据中心:每台服务器是独立的,我们需要对外提供服务,大部分的流量都是通过数据中心的外边进来又从里面出去,产生信息交互都是通过这一台服务器,产生了大量的南北流向。(如图)
- 云计算数据中心:以东西流量为主,南北流量变少,服务器除了对外提供服务,有分布式存储的存在,虚拟机不一定在那一台物理主机上,虚拟机之间不停迁移,产生动态迁移,同步大量数据时而产生了东西流量大于南北的情况。
(1)云计算数据中心的优势
云计算数据中心相比传统数据中心的优势在于,云计算数据中心更加强调与IT系统协同优化,在满足需求的前提下,实现整个数据中心的最高效率和最低成本。而传统数据中心通常片面强调机房的可靠、安全。
4.并行编程技术
- 在并行编程模式下,并发处理,容错,数据分布,负载均衡等细节都被抽象到一个函数库中,通过统一接口,用户大尺度的计算任务被自动并发和分布执行,即将一个任务自动分成多个任务,并进行处理海量数据。
一个任务——》多个任务进行处理——》提高运行效率
典型技术:
MapReduce
MapReduce是一种编程模型,用于大规模数据集(大于1TB)的并行运算。概念"Map(映射)"和"Reduce(归约)",是它们的主要思想,都是从函数式编程语言里借来的,还有从矢量编程语言里借来的特性。它极大地方便了编程人员在不会分布式并行编程的情况下,将自己的程序运行在分布式系统上。 当前的软件实现是指定一个Map(映射)函数,用来把一组键值对映射成一组新的键值对,指定并发的Reduce(归约)函数,用来保证所有映射的键值对中的每一个共享相同的键组。
5.体系结构
云计算平台体系结构由用户界面、服务目录、管理系统、部署工具、监控和服务器集群组成:
(1)用户界面:主要用于云用户传递信息,是双方互动的界面。
(2)服务目录:顾名思义是提供用户选择的列表。
(3)管理系统:指的是主要对应用价值较高的资源进行管理。
(4)部署工具:能够根据用户请求对资源进行有效地部署与匹配。
(5)监控:主要对云系统上的资源进行管理与控制并制定措施。
(6)服务器集群:服务器集群包括虚拟服务器与物理服务器,隶属管理系统。
6.自动化部署
- 对云资源进行自动化部署指的是基于脚本调节的基础上实现不同厂商对于设备工具的自动配置,用以减少人机交互比例、提高应变效率,避免超负荷人工操作等现象的发生,最终推进智能部署进程。
(1) 自动化部署的优势
- 自动化部署可以减少人为错误的发生,因为自动化错误概率很低。
- 自动化部署可以提高部署的可重复性和可靠性,因为手动部署过程不可重复也不可靠,需要很多的时间进行调试和排错。
- 自动化部署可以提高效率,因为它可以让您更快速、频繁地发布新功能和应用,同时在应用部署时无需人工干预。
创作不易,求关注,点赞,收藏,谢谢~