1、公有云概念html
雲是一種經過虛擬化技術把硬件資源抽象成的資源池,而公有云一般指第三方提供商爲用戶提供的可以使用的雲。公有云通常可經過互聯網使用,多是免費或成本低廉的,公有云的核心屬性是共享資源服務。公有云的服務對象我的用戶和中小型企業用戶,用戶對雲資源只有使用權而沒有擁有權。相對於使用本地硬件資源,雲計算由於僅僅須要互聯網便可使用,對使用者所使用的硬件設備和軟件版本沒有太多要求,因此在共享性和安全性上有着巨大的優點。linux
2、公有云與私有云、混合雲的區別spring
私有云是爲一個用戶單獨使用而構建的,於是在數據安全性以及服務質量上本身能夠有效的管控,私有云的基礎是首先你要擁有基礎設施並能夠控制在此設施上部署應用程序的方式,私有云能夠部署在企業數據中心的防火牆內,核心屬性是專有資源。數據庫
混合雲則是融合了公有云與私有云的優劣勢,綜合了數據安全性以及資源共享性雙重方面的考慮,個性化的方案達到了省錢安全的目的,從而得到愈來愈多企業的青睞,可是在實現上有必定的技術難度。安全
屬性 |
數據安全性(對數據的掌控能力)網絡 |
功能拓展型(系統集成便捷性)架構 |
SLA(服務質量)負載均衡 |
成本框架 |
核心屬性 |
私有云 |
高 |
高 |
強 |
維護成本較高 |
專有 |
公有云 |
低 |
低 |
中 |
數據風險成本較高 |
共享 |
混合雲 |
高 |
中 |
差 |
學習成本較高 |
個性化配置 |
3、國內公有云發展情況
國內目前提供公有云服務的有阿里雲、百度雲、騰訊雲和青雲等。國內的大型互聯網廠商,如阿里巴巴、百度、騰訊等,以及運營商都紛紛推出了各自的公有云平臺;同時青雲、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。
4、公有云可以提供的服務
1.雲計算基礎服務:包含雲服務器、雲數據庫、負載均衡等;
2.大數據:數據集成、數據開發、機器學習等;
3.安全:雲防火牆、數據風控、服務器安全監控;
4.域名服務:雲解析DNS、雲虛擬主機、雲虛擬主機等。
5、相關技術
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
http://www.javashuo.com/article/p-agixkvog-hs.html
https://blog.csdn.net/heartyhu/article/details/51087084
https://blog.csdn.net/enweitech/article/details/52910082