SuperUser采訪了一個騰訊團隊,了解更多關于騰訊私有云、TStack和未來的計劃。
誰在用OpenStack?
2013年,騰訊開始構建名為TStack的私有云,為內(nèi)部IT部門提供云計算資源。 TStack向OA系統(tǒng)運維人員、平臺應用開發(fā)人員、QA開發(fā)人員和騰訊AI研究人員,提供基于OpenStack的基礎設施即服務(IaaS)。
騰訊的內(nèi)部IT系統(tǒng)、功能部門業(yè)務和大部分開發(fā)和質(zhì)量保證體系主要在TStack中構建。騰訊還向中國許多政府部門和公共企業(yè),包括警察部門和電力公司提供了TStack和管理經(jīng)驗。
騰訊為什么選擇OpenStack?
在早期階段,TStack是基于騰訊設計的基礎設施,成功管理6000多臺Xen虛擬機。然而,最初的TStack并不是支持異構虛擬化的云管理平臺。這樣無法管理和充分利用許多資源,包括異構虛擬機、數(shù)千臺物理服務器和許多第三方存儲設備。
2014年,OpenStack開始迅速發(fā)展,創(chuàng)造了一個偉大的生態(tài)系統(tǒng)。來自世界各地的數(shù)十家行業(yè)領先企業(yè)都參與了OpenStack,并部署了許多項目。
OpenStack成為云計算的強大力量,也是開源云計算平臺的首選。作為軟件定義基礎設施最有效的解決方案,OpenStack具有許多優(yōu)點,例如開源和具有先進的設計。根據(jù)內(nèi)部IT運營團隊的評估和測試結(jié)果,騰訊決定引入OpenStack作為TStack的基礎設施,并期望提供更好的服務。
TStack是可擴展、高可用性和基于OpenStack的云計算管理解決方案。它提供用于管理計算資源、存儲、網(wǎng)絡、鏡像、認證和測量的服務接口,并且與異構虛擬化、服務器、存儲設備和網(wǎng)絡設備兼容。它也適用于分布式計算和存儲。
在OpenStack上運行的工作負載以及此工作負載對騰訊的價值和影響?
TStack是為大規(guī)模的環(huán)境而設計的。它管理超過10000個操作系統(tǒng),其中40%為超過300個內(nèi)部IT服務而部署,包括OA認證、WeChat網(wǎng)關、RTX、郵件系統(tǒng)、視頻監(jiān)控、內(nèi)部安全、功能管理和ERP。這些服務要求24/7的運行時間。 TStack還管理騰訊各種產(chǎn)品的開發(fā)和測試服務,例如WeChat、QQ、瀏覽器、游戲等。
同時,騰訊還與中國政府合作建立電子政務系統(tǒng),管理公共交通,稅收,社會保險、醫(yī)療保健等公共服務的各個方面。TStack有助于規(guī)范地理上分散的數(shù)據(jù)中心的接口和調(diào)度異構資源,可將服務器成本降低30%,運營成本降低55%。
可以給一些關于部署的細節(jié)嗎?
現(xiàn)在,TStack使用OpenStack作為IaaS。它基于OpenStack Kilo版本,有三個產(chǎn)品:基礎設施云、監(jiān)控云和自助服務云。其主要特點是異構云管理和混合云管理。基礎設施云管理物理資源;自助服務云提供資源應用管理儀表板、工作流程管理、服務管理以及PaaS和SaaS等云服務;監(jiān)控云提供對云主機的監(jiān)控、資源利用,還實現(xiàn)了ITIL流程。
TStack使用以下OpenStack組件:Keystone、Nova、Neutron、Cinder、Glance、Ironic、Heat、Swift、Manila和Horizon。是否為滿足業(yè)務需求升級到最新的OpenStack版本正在評估中。截至目前,TStack已在上海、成都、天津、汕尾4個地區(qū)的7個數(shù)據(jù)中心部署了14個集群。它管理10000多個操作系統(tǒng),托管內(nèi)部IT系統(tǒng)、功能部門業(yè)務系統(tǒng)和騰訊內(nèi)的大部分開發(fā)和測試系統(tǒng)。它已經(jīng)用于生產(chǎn)4年,可用性超過99.99%。
基于應用服務的容災要求,TStack采用多區(qū)域、雙位置、三中心部署。自助服務云用于跨區(qū)域的調(diào)度和管理。在一個區(qū)域內(nèi),使用三個控制節(jié)點來實現(xiàn)Keepalive + HAProxy的高可用性。MariaDB的Galera Cluster是數(shù)據(jù)庫。由于其簡單性和效率,在大多數(shù)地區(qū)使用VLAN,而VxLAN也在某些地區(qū)使用。使用OpenStack,可以在一個單一區(qū)域內(nèi)管理超過1000個計算節(jié)點。
OpenStack有什么挑戰(zhàn),如何克服的?
騰訊開展OpenStack的旅程并不順利。 TStack團隊在四年前開始使用TStack以來,遇到了許多技術問題。幸運的是,他們一直為用戶提供穩(wěn)定的服務,克服了這些困難。
以下是一些代表性的例子:
- Nova無法將資源配額應用于已經(jīng)在運行的虛擬機。因此,TStack團隊開發(fā)了基于Nova開放API的在線資源配額應用功能,以便在不重啟虛擬機的情況下應用資源配額,特別是在資源有限的情況下。
- Nova的本機調(diào)整大小功能將重啟虛擬機。TStack團隊通過“nova live-resize”擴展了此功能,可以在線調(diào)整云實例的大小。
- 雖然OpenStack基于CPU、內(nèi)存、磁盤和節(jié)點狀態(tài)提供了相當多的調(diào)度策略,但仍然無法滿足騰訊的復雜業(yè)務需求。因此,TStack針對不同業(yè)務定制調(diào)度策略,通過在主機間移動虛擬機實現(xiàn)了高可用性。
- Nova塊遷移將復制磁盤卷。對于具有大卷的虛擬機,遷移頻繁中斷。TStack團隊在遷移期間實施動態(tài)自適應壓縮,大大節(jié)省了帶寬,從而將遷移持續(xù)時間平均減少了50%。
- Heat無法編排在編排之前創(chuàng)建的虛擬機。TStack團隊將騰訊內(nèi)部的BlueKING平臺與Heat結(jié)合,實現(xiàn)所有虛擬機的全生命周期管理。
- TStack團隊開發(fā)了Neutron插件來管理來自不同供應商的SDN控制器。
- TStack團隊調(diào)整了RabbitMQ內(nèi)核配置,從而可以處理一個區(qū)域內(nèi)超過1000個計算節(jié)點之間的消息傳遞。
- 物理機、Xen VM、KVM VM和存儲設備都由TStack進行管理和調(diào)度,以提高服務器利用率并降低IT成本。
對OpenStack社區(qū)和其他開源社區(qū)的體驗是什么?
騰訊積極參與社區(qū)活動,分享經(jīng)驗,受益匪淺。在中國的全球云計算開源會議上,作為參與者和贊助商,騰訊公司進行了一系列技術演示,參與并通過了OpenStack互操作性測試。騰訊還參加了2017年中國OpenStack Day,分享產(chǎn)品開發(fā)和運營經(jīng)驗。
TStack團隊正在準備OpenStack Summit Sydney,分享過去使用OpenStack的經(jīng)驗,同時,希望向來自世界各地的行業(yè)領導者學習。2017年5月,騰訊加入CNCF和Linux基金會,為容器服務和KVM虛擬化做出貢獻。 6月,騰訊加入了MariaDB基金會,共享數(shù)據(jù)庫CDB的經(jīng)驗。
下一步做什么?
OpenStack為騰訊帶來了許多好處,也為騰訊繼續(xù)優(yōu)化OpenStack的應用鋪平了道路。
未來,騰訊將在以下幾個方面加強對OpenStack的支持:
- 除了提高處理業(yè)務增長的能力外,從今年起,TStack也將增加對社區(qū)的投資。騰訊在中國擁有頂級研發(fā)人員和開發(fā)人員,將為OpenStack社區(qū)帶來新鮮血液,提供高品質(zhì)的代碼,共享開發(fā)和優(yōu)化體驗,并希望引領新項目。騰訊將為社區(qū)提供其業(yè)務優(yōu)化和內(nèi)部模塊,以幫助改進OpenStack。騰訊還將專注于Magnum、Ironic和Kuryr等項目,探索實用案例并分享意見。該團隊認為,這一重要的新能量和知識共享將使OpenStack和云計算行業(yè)有更光明的未來。
- 在企業(yè)中,缺乏OpenStack操作技能是常見問題。強大的技術需要強大的操作技能。因此,騰訊將更多地投資建設運營管理平臺和工具鏈,分享經(jīng)驗教訓和最佳實踐,以便其他人也可以更好地利用OpenStack管理云。
- 騰訊將把各種基礎服務,如CMEM、CDB、CDN、消息隊列、負載均衡等整合到TStack中?蛻艨梢酝ㄟ^API或GUI訪問這些基本服務。
- 騰訊還將與合作伙伴進行更密切的合作,建立開放和集成的云計算生態(tài)系統(tǒng),以降低云用戶的成本。
騰訊致力于云計算市場。TStack團隊將使用基于OpenStack的私有云TStack以及專有的公有云來為全球市場建立一個完整的混合云服務生態(tài)系統(tǒng)。
騰訊希望和OpenStack一起成長,為OpenStack做出貢獻,并為OpenStack生態(tài)系統(tǒng)帶來繁榮。