时间:2021-07-16 | 标签: | 作者:Q8 | 来源:网络
小提示:您能找到这篇{漫谈云计算、虚拟化、容器化}绝对不是偶然,我们能帮您找到潜在客户,解决您的困扰。如果您对本页介绍的漫谈云计算、虚拟化、容器化内容感兴趣,有相关需求意向欢迎拨打我们的服务热线,或留言咨询,我们将第一时间联系您! |
什么是? 1.1 云计算概念 云计算是最近几年才兴起的概念,但是这样的需求其实早都有了,现阶段广为接受的是美国国家标准与技术研究院(NIST)定义:云计算是一种按使用量付费的模式,这种模式提供可用的、便捷的、按需的网络访问, 进入可配置的计算资源共享池(资源包括网络,服务器,存储,应用软件,服务),这些资源能够被快速提供,只需投入很少的管理工作,或与服务供应商进行很少的交互。 云计算最基本的特性是:“按使用量付费”、“资源共享池”和多租户隔离。 1.2 云计算特点
1.3 云计算分类
1.4 云计算分层 云计算也是分层的,大概有以下几种: IaaS:Infrastructure-as-a-Service 中文名称为基础设施即服务。 主要作用是提供虚拟机或者其他资源作为服务提供给用户。 PaaS:Platform-as-a-Service 中文名称为平台即服务。如果以传统计算机架构中 “硬件+操作系统/开发工具+应用软件” 的观点来看待,那么云计算的平台层应该提供类似操作系统和开发工具的功能。PaaS 定位于通过互联网为用户提供一整套开发、运行和运行应用软件的支撑平台。就像在个人计算机软件开发模式下,程序员可能会在一台装有 Windows 或 Linux 操作系统的计算机上使用开发工具开发并部署应用软件一样。PaaS谷歌动态 某些时候也叫做中间件,主要作用是提供一个开发和运行平台给用户。 SaaS:Software-as-a-Service 中文名称为软件即服务。简单地说,就是一种通过互联网提供软件服务的软件应用模式。在这种模式下,用户不需要再花费大量投资用于硬件、软件和开发团队的建设,只需要支付一定的租赁费用,就可以通过互联网享受到相应的服务,而且整个系统的维护也由厂商负责。 如果要用一句话来概括 IaaS、PaaS 和 SaaS,那就是:如果把云计算比喻成一部手机,那么 IaaS 就是硬件,你要自己写代码研发系统才能用;PaaS 圆通速递是手机系统,要实现什么功能还是要装各种软件;SaaS 就是硬件+系统+软件,要干什么一句话就能解决。 什么是虚拟化? 2.1 虚拟化概念 虚拟化是通过软件手段对计算机硬件资源镜像整合管理和再分配的一种技术,常用的手段有基于虚拟机的虚拟化和基于容器的虚拟化。 2.2 虚拟化技术分类 2.2.1 按应用场景分类
2.2.2 按照应用模式分类
2.2.3 按硬件资源调用模式分类
注:针对 IO 层面半虚拟化要比全虚拟化要好,因为磁盘 IO 多一层必定会慢。一般说 IO 就是网络 IO 和磁盘 IO,因为这两个相对而言是比较慢的。 2.3 基于虚拟机(Hypervisor-based)的虚拟化 它通过一个软件层的封装,提供和物理硬件相同的输入输出表现。实现了操作系统和计算机硬件的解耦,将 OS 和计算机间从 1 对 1 变成了多对多(实际上是 1 对多)的关系。该软件层称为虚拟机管理器(VMM / Hypervisor),它可以直接运行在裸机上(Xen、VMware EXSi),也可以运行在操作系统上(KVM、VMware Workstation)。这项技术已经很成熟了,(发展了40 多年),但仍然存在以下几个问题:
实际使用场景中,我们使用虚拟化技术其实是为了按需分配资源来完成服务的部署和使用,同时对服务所依赖的环境进行隔离,不被其它服务感知或干扰。为此启动一个 GuestOS 并不是必需的,为什么不考虑让多个虚拟机公用一个操作系统内核,只隔离开服务运行环境同时控制服务使用的系统资源呢?基于容器的虚拟化就是这样一种技术。 2.4 基于容器的虚拟化 容器是没有 GuestOS 的轻量级虚拟机,多个容器共享一个 OS 内核,容器中包含需要部署的应用和它依赖的系统环境,容器大小通常只有几十到几百 MB。由于共享操作系统内核,所以容器依赖于底层的操作系统,各个操作系统大都有自己的容器技术和容器工具。 是一个 Linux 容器管理工具,随着 Docker 的兴起,Linux 容器技术也是当下最时兴的容器虚拟化技术。Linux 容器工具有很多,OpenVZ、LXC、Docker、Rocket、Lmctfy 等等,大都是基于 Linux 内核提供的两个机制:Cgroups(实现资源按需分配)和 Namespace(实现任务隔离)。 2.5 二种虚拟化技术的区别
云计算和虚拟化差别 对云计算和虚拟化差别的描述,有一句经典的话:虚拟化是云计算构建资源池的一个主要方式。只要这句话你理解透了就知道他俩的关系了。简单来说,云计算是一个概念,而不是具体技术。虚拟化是一种具体技术,指把硬件资源虚拟化,实现隔离性、可扩展性、安全性、资源可充分利用等特点的产品。 目前云计算,大多是依赖虚拟化,通过把多台服务器实体虚拟化后,构成一个资源池,实现共同计算,共享资源。也就是现在所谓云计算,其实这个词提出来之前,过去的服务器集群就已经实现这些功能了,只不过没有现在那么先进而已。 3.1 各领域代表的产品
3.2 OpenStack Openstack 是众多技术的组合体,有涉及网络组件的 Neutron,有涉及 Dashboard 的 Horizon,也有涉及计算资源分配的 Nova。虚拟化技术只是其中一个涉及到资源池构建的方式。当然你也可以用其它方式构建资源池,比如物理机还有容器。 Openstack 经过几年十几个版本的更迭,已经拥有了 Keystone、Nova、Neutron、Cinder、Glance、Swift、Heat、Ceilometer 等等组件,比较完整的提供了一个云平台应有的各个模块。 3.3 在云计算中,不同层的选型 选取基于虚拟机的虚拟化呢,还是基于容器的虚拟化。早期由于容器技术的不完善,云计算只有虚拟机这一种选择。 随着现在容器技术兴起,基于容器的虚拟化性能更高,交付速度快,方便管理,而且资源利用率高,看起来是比虚拟机更好的方案。但是它现有的两个比较大的缺点(隔离性不够强、操作系统依赖性)让他无法完全替代 VM,对于 SaaS 用户和部分 PaaS 用户而言这两个缺点可能不那么明显。现阶段 Container 和云计算主要结合的场景也是在 SaaS 和 PaaS 中,事实上大多数 SaaS 和 PaaS 服务提供商都使用了容器技术。 但是对于 IaaS 的用户来说,他们租用的是基础设施。上面承载着他们自己运行的系统和服务,隔离性不强意味着安全性和可信性不高。在这种情况下大客户们,肯定是不放心的。同时操作系统依赖性也是限制 Container 在 IaaS 层应用的一个主要问题,也是绝大多数解决方案都是将Container 运行在 VM 上的原因,这样 Container 性能好的优势实际上在云上根本发挥不出来,优点只有启动快了。 |
上一篇:近2万美元卖出podcaster.com,这家公司还有3000多个
下一篇:域名选择为什么这么重要?
小提示:您应该对本页介绍的“漫谈云计算、虚拟化、容器化”相关内容感兴趣,若您有相关需求欢迎拨打我们的服务热线或留言咨询,我们尽快与您联系沟通漫谈云计算、虚拟化、容器化的相关事宜。
关键词:云计算,云计算和虚拟化