**很多不太明白OpenStack與虛擬機之間的區別,下面以KVM為例,給大家講一下他們的區別和聯系****
OpenStack:開源管理項目**OpenStack是一個旨在為公共及私有云的建設與管理提供軟件的開源項目。它不是一個軟件,而是由幾個主要的組件組合起來完成一些具體的工作。OpenStack由以下五個相對獨立的組件構成:
\- OpenStack Compute(Nova)是一套控制器,用于虛擬機計算或使用群組啟動虛擬機實例;
\- OpenStack鏡像服務(Glance)是一套虛擬機鏡像查找及檢索系統,實現虛擬機鏡像管理;
\- OpenStack對象存儲(Swift)是一套用于在大規模可擴展系統中通過內置冗余及容錯機制,以對象為單位的存儲系統,類似于Amazon S3;
\- OpenStack Keystone,用于用戶身份服務與資源管理以及
\- OpenStack Horizon,基于Django的儀表板接口,是個圖形化管理前端。
這個起初由美國國家航空航天局和Rackspace在2010年末合作研發的開源項目,旨在打造易于部署、功能豐富且易于擴展的云計算平臺。OpenStack項目的首要任務是簡化云的部署過程并為其帶來良好的可擴展性,企圖成為數據中心的操作系統,即云操作系統。
**KVM:開放虛擬化技術**
KVM(Kernel-based Virtual Machine)是一個開源的系統虛擬化模塊,它需要硬件支持,如Intel VT技術或者AMD V技術,是基于硬件的完全虛擬化,完全內置于Linux。
2008年,紅帽收購Qumranet獲得了KVM技術,并將其作為虛擬化戰略的一部分大力推廣,在2011年發布RHEL6時支持KVM作為唯一的hypervisor。KVM主打的就是高性能、擴展性、高安全,以及低成本。
**與Linux的緣分**
一個被某些熱心支持者成為云時代的Linux,是公有云與私有云的開源操作系統。一個則是Linux內核的一部分,將Linux轉換成一個Type-1 hypervisor,無需任何變更就能享受現有的Linux內核進程調度、內存管理和設備支持。
OpenStack炙手可熱,它如同Linux一樣,旨在構建一個內核,所有的軟件廠商都圍繞著它進行工作。OpenStack的許多子項目,對云計算平臺中的各種資源(如計算能力、存儲、網絡)提供敏捷管理。此外,OpenStack也提供對虛擬化技術的支持。
KVM集成在Linux的各個主要發行版本中,使用Linux自身的調度器進行管理。KVM專注于成為最好的虛擬機監控器,是使用Linux企業的不二選擇,加上它還支持Windows平臺,所以也是異構環境的最佳選擇。
**OpenStack與KVM都發展迅猛**
OpenStack是一個擁有眾多支持者的大項目。時至今日,已經有超過180家企業和400多位開發人員對這一項目積極地做著貢獻,而其生態系統甚至更為龐大,已經超過了5600人和850家機構。在今年9月,OpenStack基會正式成立。白金會員有紅帽、IBM與惠普等,黃金會員包括思科、戴爾與英特爾等。
OpenStack基本上是一個軟件項目,有近55萬行代碼。分解成核心項目、孵化項目,以及支持項目和相關項目。除了以上提及的五大組成,與虛擬網絡有關的Quantum首次被列為核心項目。
KVM是一個脫穎而出的開放虛擬化技術。它是由一個大型的、活躍的開放社區共同開發的,紅帽、IBM、SUSE等都是其成員。2011年,IBM、紅帽、英特爾與惠普等建立開放虛擬化聯盟(OVA),幫助構建KVM生態系統,提升KVM采用率。如今,OVA已經擁有超過250名成員公司,其中,IBM有60多位程序員專門工作于KVM開源社區。
**OpenStack與KVM的解決方案**
在去年9月22日發布Diablo之后,OpenStack社區隨即開始著手新版本的設計和開發,新版本開發代號為Essex。此前發布有四個版本:Austin、Bexar、Cactus與Diablo。新版本發布包含云計算控制中心Nova、鏡像服務Glance、認證服務Keystone和Dashboard項目Horizon,也包括對象存儲項目Swift。
由此可以看出,OpenStack是一個框架,一個可以建立公有云和私有云的基礎架構。它并不是一個現成的產品,要想開展基礎架構方面的工作,企業需要顧問和開發人員。很多時候還需要第三方的集成工具。
KVM可通過購買Linux版本獲得,或作為獨立hypervisor單獨購買。最近,IBM KVM(北京)卓越中心落戶北京,展示IBM及合作伙伴基于KVM的產品,包括IBM SmartCloud Entry、IBM System Director VMControl、Red Hat Enterprise Virtualization及SUSE云。
**OpenStack與KVM相互輝映**
OpenStack幾乎支持所有的虛擬化管理程序,不論是開源的(Xen與KVM)還是廠商的(Hyper-V與VMware)。但在以前,OpenStack是基于KVM開發的,KVM常常成為默認的虛擬機管理程序。兩者都使用相同的開放源理念與開發方法。
如今,多數企業用戶在IT環境中使用了超過一種的虛擬化軟件,有一半的用戶選擇將開源產品作為性價比更高的虛擬化替代方案。IDC報道中指出,OpenStack是KVM增長的一個巨大機會。OpenStack是一個具有巨大的行業發展動力,并擁有一個充滿活力的社區的云計算平臺,有95%的OpenStack平臺由KVM驅動。因此,隨著OpenStack的增長,KVM也會相應增長。
- 文章翻譯
- Large-scale cluster management at Google with Borg
- Borg Omega and kubernetes
- scaling kubernetes to 7500 nodes
- bpf 的過去,未來與現在
- Demystifying Istio Circuit Breaking
- 知識圖譜
- skill level up graph
- 一、運維常用技能
- 1.0 Vim (編輯器)
- 1.1 Nginx & Tengine(Web服務)
- 基礎
- 1.2 zabbix
- 定義
- 登錄和配置用戶
- 1.3 RabbitMQ(消息隊列)
- 原理
- RabbitMQ(安裝)
- 1.4虛擬化技術
- KVM
- 1.5 Tomcat(Web中間件)
- 1.6Jenkins
- pipline
- 1.7 Docker
- network
- 1.8 Keepalived(負載均衡高可用)
- 1.9 Memcache(分布式緩存)
- 1.10 Zookeeper(分布式協調系統)
- 1.11 GitLab(版本控制)
- 1.12 Jenkins(運維自動化)
- 1.13 WAF(Web防火墻)
- 1.14 HAproxy負載均衡
- 1.15 NFS(文件傳輸)
- 1.16 Vim(編輯器)
- 1.17 Cobbler(自動化部署)
- 二、常用數據庫
- 2.1 MySQL(關系型數據庫)
- mysql主從復制
- 2.2 Mongodb(數據分析)
- 2.3 Redis(非關系數據庫)
- 三、自動化運維工具
- 3.1 Cobbler(系統自動化部署)
- 3.2 Ansible(自動化部署)
- 3.3 Puppet(自動化部署)
- 3.4 SaltStack(自動化運維)
- 四、存儲
- 4.1 GFS(文件型存儲)
- 4.2 Ceph(后端存儲)
- 五、運維監控工具
- 5.1 云鏡
- 5.2 ELK
- 六、運維云平臺
- 6.1 Kubernetes
- 6.2 OpenStack
- 介紹
- 安裝
- 七、Devops運維
- 7.1 理念
- 7.2 Devops運維實戰
- 八、編程語言
- 8.1 Shell
- 書籍《Wicked Cool Shell Scripts》
- 8.2 Python
- 8.3 C
- 8.4 Java
- leecode算法與數據結構
- 九、雜記
- 高優先級技能
- 知識點
- JD搜集
- 明顯的短板
- 1.0 Python
- 1.1 Kubernetes
- 1.18.2 《kubernetes in action》
- 遺漏知識點
- 1.18.3 GCP、azure、aliyun
- Azure文檔
- 1.18.5 《program with kubernetes》
- Istio
- HELM
- 《Kubernetes best practice》
- Kubernetes源碼學習
- Scheduler源碼
- 調度器入口
- 調度器框架
- Node篩選算法
- Node優先級算法
- pod搶占調度
- 入口
- 主要代碼結構
- new
- 文章翻譯
- Flannel
- 從二進制集群搭建
- 信息收集
- docker優化
- 1.2 shell
- 面試題
- grep awk sed 常見用法
- shell實踐
- 1.3 Data structure(數據結構)
- Calico
- Aliyun文檔以及重點模塊
- git
- 大數據組件
- 前端,后端,web框架
- cgroup,namespace
- 內核
- Linux搜集
- crontab
- centos7常用優化配置
- centos Mariadb
- eBPF
- ebpf的前世今生
- Linux性能問題排查與分析
- 性能分析搜集
- 性能分析常用10條
- 網絡性能優化
- 文本處理命令
- sql
- Iptables
- python面試題
- iptables
- iptables詳細
- zabbix面試題,proj
- prometheus
- web中間件
- nginx
- Haproxy
- grep sed awk
- Linux常用命令
- 云平臺
- 書籍Linux應用技巧
- kafka
- kafka面試題
- ETCD
- Jenkins
- 3天補充的點
- K8s源碼
- K8s
- k8s實操
- etcd
- test
- BPF
- PSFTP使用
- StackOverflow問答精選
- 問題
- 我對于學習思考
- 修改ssh超時時間
- 課程目錄
- 運維與運維開發
- The Person
- 個人雜談
- mysql主從復制
- 對于工作的認識與思考