一、公有云概念
云是一种通过虚拟化技术把硬件资源抽象成的资源池,而公有云通常指第三方提供商为用户提供的能够使用的云。公有云一般可通过互联网使用,可能是免费或成本低廉的,公有云的核心属性是共享资源服务。公有云的服务对象个人用户和中小型企业用户,用户对云资源只有使用权而没有拥有权。相对于使用本地硬件资源,云计算因为仅仅需要互联网即可使用,对使用者所使用的硬件设备和软件版本没有太多要求,所以在共享性和安全性上有着巨大的优势。
二、公有云与私有云、混合云的区别
私有云是为一个用户单独使用而构建的,因而在数据安全性以及服务质量上自己可以有效的管控,私有云的基础是首先你要拥有基础设施并可以控制在此设施上部署应用程序的方式,私有云可以部署在企业数据中心的防火墙内,核心属性是专有资源。
混合云则是融合了公有云与私有云的优劣势,综合了数据安全性以及资源共享性双重方面的考虑,个性化的方案达到了省钱安全的目的,从而获得越来越多企业的青睐,但是在实现上有一定的技术难度。
属性 |
数据安全性(对数据的掌控能力) |
功能拓展型(系统集成便捷性) |
SLA(服务质量) |
成本 |
核心属性 |
私有云 |
高 |
高 |
强 |
维护成本较高 |
专有 |
公有云 |
低 |
低 |
中 |
数据风险成本较高 |
共享 |
混合云 |
高 |
中 |
差 |
学习成本较高 |
个性化配置 |
三、国内公有云发展状况
国内目前提供公有云服务的有阿里云、百度云、腾讯云和青云等。国内的大型互联网厂商,如阿里巴巴、百度、腾讯等,以及运营商都纷纷推出了各自的公有云平台;同时青云、UCloud 等初创公司凭借风投的资金也加入到了公有云市场的竞争中;此外,微软、IBM、Amazon 等国外公有云服务提供商也纷纷通过与国内IDC 合作的模式进入中国市场。
对公有云的服务模式看,新浪、百度目前以PaaS为主,腾讯、阿里、青云目前以IaaS为主。从长线来看,除了青云之外,其他所有厂商都会走向IaaS+PaaS的混合模式。
其中服务模式分为
(1)IaaS:Infrastructure as a Service,即基础设施即服务。IaaS 是云服务的最底层,主要提供一些基础资源,用户需要自己控制底层,实现基础设施的使用逻辑。
(2)PaaS:Platform as a Service,即平台即服务。PaaS 提供软件部署平台(runtime),抽象掉了硬件和操作系统细节,可以无缝地扩展(scaling)。开发者只需要关注自己的业务逻辑,不需要关注底层。
(3)SaaS:Software as a Service,即软件即服务。SaaS 是软件的开发、管理、部署都交给第三方,不需要关心技术问题,可以拿来即用,普通用户接触到的互联网服务,几乎都是 SaaS。
四、公有云能够提供的服务
1.云计算基础服务:包含云服务器、云数据库、负载均衡等;
2.大数据:数据集成、数据开发、机器学习等;
3.安全:云防火墙、数据风控、服务器安全监控;
4.域名服务:云解析DNS、云虚拟主机、云虚拟主机等。
五、相关技术
1. 虚拟化技术
虚拟化是一种资源管理技术,是将计算机的各种实体资源,如服务器、网络、内存及存储等,予以抽象、转换后呈现出来,打破实体结构间的不可切割的障碍,使用户可以比原本的组态更好的方式来应用这些资源。这些资源的新虚拟部份是不受现有资源的架设方式,地域或物理组态所限制。一般所指的虚拟化资源包括计算能力和资料存储。在实际的生产环境中,虚拟化技术主要用来解决高性能的物理硬件产能过剩和老的旧的硬件产能过低的重组重用,透明化底层物理硬件,从而最大化的利用物理硬件。
目前商用的几种虚拟化技术:
(1)OpenVZ:OpenVZ是操作系统级别的虚拟化技术,是底层操作系统上的一层应用,这意味着易于理解和低权重开销,一般来说也意味着更优的性能。OpenVZ采用SWsoft的Virutozzo虚拟化服务器软件产品的内核,是基于Linux平台的操作系统级服务器虚拟化架构。这个架构直接调用母服务器(母机)中的内核,模拟生成出子服务器(VPS,小机),所以,它经过虚拟化后相对于母服务器,性能损失大概只有的1-3%。
(2)Xen:Xen是一个开放源代码虚拟机监视器,由剑桥大学开发。Xen的缺点是操作系统必须进行显式地修改(“移植”)以在Xen上运行(但是提供对用户应用的兼容性),所以比较麻烦。使得Xen无需特殊硬件支持,就能达到高性能的虚拟化。Linux的官方内核在较早之前已经去掉了对Xen的支持。Xen是半虚拟化技术,它并不是一个真正的虚拟机,而是相当于自己运行了一个内核的实例,可以自由的加载内核模块,虚拟的内存和IO,稳定而且可预测。
(3)KVM:KVM是指基于Linux内核(Kernel-based)的虚拟机(Virtual Machine)。KVM最大的好处就在于它是与Linux内核集成的,所以速度很快。KVM的宿主操作系统必须是Linux,支持的客户机操作系统包括Linux、Windows、Solaris和BSD,运行在支持虚拟化扩展的x86和x86_64硬件架构上,cpu支持VT技术。kvm是完全虚拟的,所以不分pv和hvm的区别,所有的kvm类+型的虚拟技术都可以装各种linux的发行版和各种win的发行版,不管供应商在主页有没有写明是否支持win。
2. IaaS开源管理平台:OpenStack
OpenStack是一个开源的云计算管理平台项目,由几个主要的组件组合起来完成具体工作。OpenStack支持几乎所有类型的云环境,项目目标是提供实施简单、可大规模扩展、丰富、标准统一的云计算管理平台。OpenStack通过各种互补的服务提供了基础设施即服务(IaaS)的解决方案,每个服务提供API以进行集成。其核心部件包括:
Nova:负责虚拟机创建、管理和销毁、提供计算资源服务;
Swift:提供对象存储服务的分布式存储;
Glance:提供虚拟机镜像管理和存储服务;
Keystone:提供身份认证和授权;
Neutron:软件定义网络项目;
Cinder:提供块存储服务;
Horizon:提供基于 Web 的一个 GUI。
OpenStack主要是依靠开源社区推动开发以及维护,每半年升级一次版本。
3. 分布式开发工具:Spring Cloud
Spring Cloud是一系列框架的有序集合。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用Spring Boot的开发风格做到一键启动和部署。Spring Cloud并没有重复制造轮子,它只是将目前各家公司开发的比较成熟、经得起实际考验的服务框架组合起来,通过Spring Boot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和易维护的分布式系统开发工具包。
4. 容器管理工具:K8S
Kubernetes(简称K8S)是一个全新的基于容器技术的分布式架构领先方案,是Google开源的容器集群管理系统(谷歌内部:Borg)。在Docker技术的基础上,为容器化的应用提供部署运行、资源调度、服务发现和动态伸缩等一系列完整功能,提高了大规模容器集群管理的便捷性。
Kubernetes是一个完备的分布式系统支撑平台,具有完备的集群管理能力,多扩多层次的安全防护和准入机制、多租户应用支撑能力、透明的服务注册和发现机制、內建智能负载均衡器、强大的故障发现和自我修复能力、服务滚动升级和在线扩容能力、可扩展的资源自动调度机制以及多粒度的资源配额管理能力。同时Kubernetes提供完善的管理工具,涵盖了包括开发、部署测试、运维监控在内的各个环节。Kubernetes的优势是容器编排、轻量级、开源、弹性伸缩、负载均衡。
最后需要感谢一下之前的前辈分享的知识,本文内容参考与一下资料,如作者有任何问题可联系我删除相关内容
http://www.ruanyifeng.com/blog/2017/07/iaas-paas-saas.html
https://wenku.baidu.com/view/eec83079590216fc700abb68a98271fe910eafdc.html
https://wenku.baidu.com/view/8d9bedc4783e0912a3162a57.html
https://blog.csdn.net/cctvchannelv/article/details/22265413
https://baike.baidu.com/item/公有云/7845590
https://wenku.baidu.com/view/4a8101c8dd36a32d7275812d.html
https://baike.baidu.com/item/虚拟化技术/276750?fr=aladdin
https://baike.baidu.com/item/OpenStack/342467?fr=aladdin
https://baike.baidu.com/item/spring%20cloud/20269825?fr=aladdin
https://blog.csdn.net/real_myth/article/details/78719244
https://blog.csdn.net/heartyhu/article/details/51087084
https://blog.csdn.net/enweitech/article/details/52910082
https://blog.csdn.net/gavinlib/article/details/72421852
https://blog.csdn.net/myweishanli/article/details/24184489