日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
【實戰(zhàn)】樂視云計算基于OpenStack的IaaS實踐

【實戰(zhàn)】樂視云計算基于OpenStack的IaaS實踐

作者:岳龍廣 2015-09-22 10:57:43

云計算

IaaS

OpenStack 樂視網(wǎng)的所有服務(wù)是跑在樂視云上的,樂視云提供所有的底層支撐,包括IaaS/PaaS/Storage/CDN等等。為了帶給用戶更好的體驗,樂視網(wǎng)的服務(wù)到哪,樂視云的底層服務(wù)就會跟到哪。其中虛擬化是必不可少的部分,它的快速提供、按需分配、資源隔離顯得特別重要,但他們會遇到什么問題,又是如何解決的呢?

公司主營業(yè)務(wù):成都網(wǎng)站設(shè)計、成都網(wǎng)站制作、外貿(mào)網(wǎng)站建設(shè)、移動網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。創(chuàng)新互聯(lián)是一支青春激揚、勤奮敬業(yè)、活力青春激揚、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊。公司秉承以“開放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團(tuán)隊有機會用頭腦與智慧不斷的給客戶帶來驚喜。創(chuàng)新互聯(lián)推出曲沃免費做網(wǎng)站回饋大家。

本文作者岳龍廣,現(xiàn)在就職于樂視云計算有限公司,負(fù)責(zé)IaaS部門的工作。

從開始工作就混在開源世界里,在虛擬化方面做過CloudStack/Ovirt開發(fā),現(xiàn)在是做以O(shè)penStack為基礎(chǔ)的樂視云平臺。所以對虛擬化情有獨鐘,也對虛擬化/云計算的未來充滿了信心。

樂視網(wǎng)的所有服務(wù)是跑在樂視云上的,樂視云提供所有的底層支撐,包括IaaS/PaaS/Storage/CDN等等。為了帶給用戶更好的體驗,樂視網(wǎng)的服務(wù)到哪,樂視云的底層服務(wù)就會跟到哪。

其中虛擬化是必不可少的部分,它的快速提供、按需分配、資源隔離顯得特別重要,但我們會遇到什么問題呢?

今天的主要目的是分享我們在OpenStack項目中做的一部分工作,它們解決了內(nèi)部的一些需求,也是實際經(jīng)驗,希望對大家有所啟發(fā)。

開始之前 首先感謝肖總、浩宇、victor等朋友給予的大力支持,感謝群友、技術(shù)愛好者的圍觀。

很榮幸有這次機會來與大家做這個分享。

提綱:

  • 1. IaaS Architecture
  • 2. OpenStack Deploy & QOS
  • 3. Multiple Regions
  • 4. LeTV LBaaS
  • 5. DEV

樂視云計算IaaS的基本架構(gòu)

首先就是介紹一下樂視云計算基礎(chǔ)架構(gòu),再介紹OpenStack 網(wǎng)絡(luò)組件的部署,Multiple Regions是什么樣子的,更方便于使用的LeTV LBaaS,***是開發(fā)/上線流程。

樂視云計算 IaaS 采用了 OpenStack 和 Ceph 的開源方案,為樂視提供了云主機、虛擬網(wǎng)絡(luò)、云硬盤和 S3 對象存儲。

??

我們采用了 Ceph RBD 作為 統(tǒng)一存儲,OpenStack使用的Cinder,后端接的是Ceph,Glance也是共享Ceph存儲。

我們同時還提供了 S3 對象存儲,用作于 CND 源站,存儲樂視網(wǎng)的視頻以及客戶需要分發(fā)的資源。

S3 也是全國分布式部署,用戶可以就近上傳,再推送到北京。

目前樂視云 OpenStack 規(guī)模已達(dá) 900 個物理節(jié)點,對象存儲的數(shù)據(jù)達(dá)到數(shù)PB。

Neutron Deployment & QOS

??

我們 Havana 版本采用了 nova-network 的 FlatDHCP 類型。

Icehouse 版本采用了 Neutron,再做足調(diào)研的前提下,我們對 Neutron 做了大量的減法,所用服務(wù)僅為 Neutron Server 和 OpenvSwitch Agent,控制節(jié)點部署 Neutron Server(with ML2 plugin),計算節(jié)點部署 OpenvSwitch Agent。

沒有網(wǎng)絡(luò)節(jié)點,因而沒有用到DHCP Agent,L3 agent 和 Metadata Agent。 物理網(wǎng)絡(luò)使用 VLAN 做隔離。由于 Region 數(shù)量較多,每個 region 有不同的物理網(wǎng)絡(luò)(對應(yīng)ml2_conf 中的 physical_network 字段),可以緩解 VLAN 數(shù)量的限制。

私有云環(huán)境通過 Config Drive 配置虛擬機網(wǎng)卡和 metadata,Public IP 地址直接配在虛擬機網(wǎng)卡上,走物理路由器。無論是 nova-network 還是 neutron,我們都采用了穩(wěn)定可靠的網(wǎng)絡(luò),由于不存在網(wǎng)絡(luò)節(jié)點的單點問題,因此集群在滿足私有云的需求前提下,兼顧了可靠性、穩(wěn)定性和可擴展性。

優(yōu)點:簡單穩(wěn)定,性能更好,這也是業(yè)務(wù)最需要的,線上業(yè)務(wù)穩(wěn)定、可用性是最重要的。

缺點:犧牲了靈活性,和物理網(wǎng)絡(luò)的耦合度高

為了防止某個虛擬機負(fù)載過高而影響其它虛擬機或者宿主機,我們做了了 CPU,Network 和 Disk IO 的 QoS,其中 Cpu 的 QoS 采用 cgroup 實現(xiàn),虛擬機網(wǎng)卡的 QoS 通過 TC 實現(xiàn)。

一開始我們采用了 cgroup 限制 Disk IO,由于 ceph 采用了 Non-host-block,故 cgroup 無法限制基于 ceph 的 Disk IO, 因此我們采用了 qemu io throttling。和 cgroup 相比,qemu io throttling 不僅僅能支持 non-host-block IO,同時限速的效果也更為出色,限速后,虛擬機的 IO 不會有太大抖動。

此外,如果基于 cgroup 的 Disk IO 設(shè)置過小,會導(dǎo)致虛擬機刪除失敗。原因在于 qemu 提交的 Direct IO 必須完成后才能退出,使用過小的磁盤帶寬導(dǎo)致此動作需很長時間才能完成,導(dǎo)致 qemu 進(jìn)程不能及時響應(yīng) libvirt 發(fā)出的 SIGTERM 和 SIGKILL 信號。

而如果使用 qemu io throttling,則 io 會現(xiàn)在 qemu block layer 中加入 queue,此時 qemu 可以響應(yīng) libvirt 發(fā)出的信號而退出 。

使用 qemu io throttling 需要需注意的是,當(dāng) Xfs 扇區(qū)大小為4k時,qemu 以 cache=none 方式啟動失敗

#p#

Multiple Regions

??

由于樂視網(wǎng)業(yè)務(wù)的特殊性,為了讓用戶有更好的體驗,服務(wù)會分散部署在全球。

樂視網(wǎng)的視頻服務(wù)需要 CDN 的支持,對于某些 CDN 節(jié)點,特別是國外,需要提供云主機等基礎(chǔ)設(shè)施服務(wù)。我們在國內(nèi)外部署了有 20 多個集群,每個集群規(guī)模大小不一,其中***的有上百個物理節(jié)點,這種需求也是極罕見的。

這些節(jié)點既有 Havana 版本,又有 Icehouse 版本。每個集群均維護(hù)獨自的 Dashboard 和用戶信息,這就造成了以下四個問題:

  • 1. 用戶租戶信息不統(tǒng)一,不同集群的用戶信息不一致,對用戶使用有很大的影響
  • 2. 訪問不同的集群,用戶需要登錄不同的 IP
  • 3. 運維難度增加
  • 4. 維護(hù) H 和 I 版本的 Keystone 和 Horizon

隨著集群數(shù)量的不斷增加,上述問題將顯得越發(fā)突出,于是我們采用了 Multi-Region 方案,把這些集群做了統(tǒng)一的管理。

部署方面, Keystone 和 Horizon 全局唯一,其中 Keystone 部署在公網(wǎng),從而能夠被其它服務(wù)訪問,Horizon 部署在內(nèi)網(wǎng),從而能夠訪問其它集群。這是大概的分布圖:

LeTV LBaaS

LeTV LBaaS,在原生LBaaS基礎(chǔ)上做了定制化,為了區(qū)分開來,就叫做LeTV LBaaS。

樂視網(wǎng)的服務(wù)需要高可用、擴展性。Neutron LBaaS 看起來是個不錯的選擇,基本框架有了,但是還不能完全滿足業(yè)務(wù)需要。

要想滿足業(yè)務(wù)需要,除了增強已有的接口,還有開發(fā)新的功能,比如HaProxy 冗余,本身服務(wù)健康檢查,以及與LVS整合。

??

這是實際業(yè)務(wù)架構(gòu),通過域名解析到LVS,LVS把流量負(fù)載到LB機器,在通過LB把流量負(fù)載到其他機器,實際提供服務(wù)的機器可以橫行擴展,不管是虛擬機還是物理機,甚至是容器。

Letv LBaaS 可以輕松滿足業(yè)務(wù)需求,優(yōu)勢如下:

  • 1. 不同業(yè)務(wù)之間的LB,互不干擾。Haproxy跑在各自的namespace里面
  • 2. Haproxy HA 冗余功能,保證服務(wù)的高可用
  • 3. 方便動態(tài)增加機器
  • 4. 與LVS整合

DevOps & Community

??

開發(fā)上線流程,基本和社區(qū)一致,是方便、可靠的:

Commit->Review->Auto Testing->Package->Testing->Production

#p#

***總結(jié)一點建議:

方案的選取

1. 合適的才是***的

2. 業(yè)務(wù)需求優(yōu)先,穩(wěn)定性優(yōu)先

組件的選取

1. 盡量采用主流軟件,遇到問題可以快速解決

版本的選取

1. 成熟度與時新并重

虛擬化,虛擬計算,虛擬網(wǎng)絡(luò),虛擬存儲,我們大多會***個想到OpenStack,或者由OpenStack帶來的這些功能。

其實這些技術(shù)是可以獨立的,可以***用到其他方面。讓所有的業(yè)務(wù)都跑在虛擬網(wǎng)絡(luò)里,為他們提供虛擬資源,并且可以輕而易舉的控制調(diào)整它們,方便管理整個數(shù)據(jù)中心,希望我們以后可以探討更大的話題。

Q&A

1.為什么沒有使用swift?

答: switft 我不熟悉,但是ceph 數(shù)據(jù)分布,性能方面都很不錯,crush算法是它的亮點。

2.可否介紹下你們的網(wǎng)絡(luò)架構(gòu) ,以及你們目前架構(gòu)下對網(wǎng)絡(luò)的要求

答:總體的架構(gòu)是標(biāo)準(zhǔn)的neutron架構(gòu),但是我們沒有部署網(wǎng)絡(luò)節(jié)點,直接使用物理路由器,這適合穩(wěn)定性高的場景。

3.監(jiān)控咱們這邊是怎么做的,是用社區(qū)原生的Celimeter還是自己的監(jiān)控系統(tǒng)

答:是的ceilometer,做過優(yōu)化,以及換成influxdb,包括對floatingIP的流量監(jiān)控。

4.iaas層是否提供了nas接口,視頻轉(zhuǎn)碼,合成等業(yè)務(wù)軟件訪問存儲是通過S3 接口還是其他接口呢;

答:沒有NAS接口。視頻提供了S3和HTTP接口。

5.選Haproxy有什么優(yōu)勢嗎?

答:HaProxy 是專注于負(fù)載均衡的功能,提供的算法比較豐富,并發(fā)性也更好。

6.你提到有的有集群上百個物理節(jié)點,部署這些物理節(jié)點時候,采用什么方法的?

答:參照問題2。

7.集群把公網(wǎng)線和心跳線用反了有什么后鍋,我感覺誰當(dāng)心跳誰當(dāng)公網(wǎng),沒什么大不了,求解

答:你說的心跳線是指什么? 公網(wǎng)是收費的,大家不希望浪費購買的帶寬,所有不穩(wěn)定的因素多。 內(nèi)網(wǎng)做心跳更好,心跳實時性要求高。

8.交換機上的VLAN全手動配置?交換機也手動配置與虛擬機TC相對應(yīng)的QoS?

答:是的,這個地方的QOS 主要是限速。

9.高可用如何保證

答:DNS負(fù)載均衡 和 LVS 高可用,共同保證總的高可用。

10.那db性能怎么解決?

答:一般沒問題,如果ceilometer 采樣頻繁,vm多的話,撐不住。我們現(xiàn)在是influxdb,已經(jīng)對采樣頻率和采樣的內(nèi)容進(jìn)行裁剪。

11.對于些開發(fā)能力小的公司來說,使用上openstack不?openstack在虛擬機的基礎(chǔ)上做了資源管理,目的是充分利用資源吧?cpu方面的分配很好理解,IO能調(diào)配不?有一些場景是,部分機器io很閑,部分IO很忙,可以調(diào)整利充分用上?樂視的定制版在這方面有改進(jìn)呢?

答:如果沒有太多需求,可以用virt-manager,直接管理。 openstack 還是比較復(fù)雜的。但是虛擬化可以大量節(jié)省成本io就是限制讀寫磁盤的速率iops 或者帶寬 ,qemu 自身可以限制。

12.公網(wǎng)絡(luò)這塊,這接把pub ip配置到容器,那平臺的防火墻策略在哪一層做限制?

答:外層防火墻,一般是3,4層. 是否控制 7層,我不能確定。

13.二次開發(fā)主要是改了哪些地方

答:社區(qū)有我們提交的代碼。

14.底層操作系統(tǒng)是啥?rehl6,7? or ubuntu?

答:centos6.5~。

15.上線往各個節(jié)點推送文件,是用什么推的呢

答:是puppet。

16.LVS是什么?會有單點問題嗎?

答:LVS 是linux virtual server, 沒有單點故障,參見問題9。

17.會有一個業(yè)務(wù)幾個region都有vm,需要互通嗎?

答:部署在幾個region 是為了高可用性。 大家都會訪問同一個數(shù)據(jù)庫。

18.請問平均一個節(jié)點多少虛機?

答:為了保證業(yè)務(wù),我們的配比 比較低。沒有超過1:10. 主要看業(yè)務(wù)和重要程度。

19.每次版本更新需要多長時間,什么范圍內(nèi)更新呢?

答:我們現(xiàn)在是長期維護(hù)一個穩(wěn)定版本。

20.在問個成本問題,是用的整理柜服務(wù)器還是定制的服務(wù)器,一個機柜裝幾臺?

答:不好意思,這個問題,我回答不了你,抱歉。

21.華為分布式存儲要求各個機器硬盤配置一樣,ceph有這個要求嗎?

答:沒有強制要求,ceph 可以設(shè)置機器的權(quán)重。

22.keystone,horizon全局唯一,是放在一個region里面還是怎么做冗余的?

答:主要做好數(shù)據(jù)庫冗余就好,前端部署LB,提供 高可用和并發(fā)。

23.想問下硬件資源cpu,mem,storage的超配比,是怎么調(diào)配的

答:這個要根據(jù)自己的策略來定,看你的flavor,超配等。

24.請問是否有對云主機安裝agent用做監(jiān)控來收集信息

答:一般不需要,這個地方只是為了取內(nèi)存數(shù)據(jù)。

25. ceph穩(wěn)定性如何?性能和san或者nas做過對比測試嗎?

答:和本地做過對比, san 和nas 品種很多,看對IO的要求,業(yè)務(wù)要求,ceph性能和穩(wěn)定性都不錯。

【本文來源:KVM虛擬化實踐微信號】


新聞標(biāo)題:【實戰(zhàn)】樂視云計算基于OpenStack的IaaS實踐
文章來源:http://www.5511xx.com/article/cdshjpo.html