世界最大企業之一的EBay公司計劃在下個季度為OpenStack和Kubernetes管理向開源社區提供其方案。
電子商務巨頭eBay公司擁有著世界最大OpenStack私有云中的一個。自從2015年以來,公司已經將Kubernetes容器編排與管理推廣至擁有六個可用區域22,000個CPU內核的應用場景中,以便支持178個應用程序,其中包括了Elasticsearch搜索引擎、Apache Kafka分布式流量控制與人工智能(AI)平臺。
為了逐步實現其計劃,eBay公司的工程師們開發了專門的軟件以便在其OpenStack私有云上實現Kubernetes集群部署與管理的自動化。這個被稱為TessMaster的工具于2016年底被eBay公司首次公開討論,但是在本月召開的OpenStack峰會上公司正式推出了這個項目,并表示公司將在下個季度公開其源代碼。
SearchITOperations.com約到了eBay公司云基礎設施與平臺高級總監 Suneet Nandwani(他在OpenStack峰會上發表了演講),讓他來介紹下在Kubernetes管理中使用TessMaster的一些細節。
TessMaster在OpenStack和Kubernetes中的明確定位是什么?
Suneet Nandwani:我們開發了這個工具以便在OpenStack上管理Kubernetes的生命周期。使用TessMaster,我們能夠部署Kubernetes、增加容量或減少容量以防發生故障或Kubernetes節點數量下降,同時我們還能夠搭建Kubernetes網絡。我們以Kubernetes管理為目標開發了這個工具,所支持的平臺不僅有OpenStack,而且還包括了一些其他的云供應商,例如谷歌云(平臺)、亞馬遜網絡服務(AWS)以及微軟Azrue。
雖然我們所討論的內容大部分都是關于Kubernetes管理的,TessMaster的開發初衷遠不止如此。我們打算使用TessMaster來管理我們數據中心中的一大部分,因為它是可擴展的。所以我們可以使用它來完成一些管理工作,如網絡配置、板載機架、以及設置負載平衡器。自從我們開始使用TessMaster以來,我們員工的工作會變得更為優雅和輕松,我們使用它來管理其他的基礎設施,也就是那些在我們云下更底層次的東西。
今天,Kubernetes中所有的東西都失蹤了?
Nandwani:Kubernetes不具備與云供應商集成的能力。他們把它留給了實際使用它的人。Kubernetes完全不支持在OpenStack或其他眾多公共云上部署Kubernetes。在Kubernetes社區中,事情往往是呈碎片化的,但是人們已經想出了各自的解決方法。例如,谷歌為用戶提供了一個Kubernetes的完全托管實例,從而讓用戶無需處理這個問題。但是,我們不希望使用谷歌在他們的云平臺上提供的vanilla Kubernetes堆棧。我們希望運行我們自己的Kubernetes實例,因為我們將為eBay的業務補充一點東西,同時我們希望在私有云和公共云上運行相同的Kubernetes。
現在也出現了其他的開源工具,例如Kolla和kops,還有一些廠商也在相同領域開展競爭。TessMaster的設計有點不同,因為它是一個Kubernetes應用程序,它使用Kubernetes來管理Kubernetes。它是自我引導的。Kubernetes 有很多關于聲明性、防漂移、自我修復和修復的良好原則,所以我們能夠為Kubernetes本身利用好它。
為什么要做一個獨立的項目?為什么不向Kubernetes或OpenStack貢獻這個IP?
Nandwani:我們確實有一個將這個IP貢獻回來的計劃。TessMaster這個工具是作為一個內部需求而產生的。我們將與云本地計算基金會甚至OpenStack基金會進行溝通,但是無論我們最終決定把它放在哪里它都是一個單獨的項目。它不是核心Kubernetes。
諸如Azure這樣的公共云不是已經對Kubernetes有了他們自己的支持嗎?
Nandwani:當使用Azure的Kubernets時,用戶有義務使用Azure提供的任何配置。特別對于那些運行混合云的公司來說,用戶不希望在公共云和私有云裳使用不同風格的Kubernetes。我們在Azure上得到的Kubernetes并不適合我們使用。TessMaster允許我們靈活地使用我們自己的Kubernetes定制版,那才對eBay有價值。
我們的變更管理數據庫是非常重要的,因為任何在我們Kubernetes集群上運行的應用程序都會自動填充到我們的CMDB中。我們還集成了我們自己的日志記錄與監控平臺,我們希望在公共云和內部云上都運行相同的日志記錄與監控功能。除非用戶是一家中小型企業,否則一個通用的東西是無法滿足所有人的需求的,甚至對于那些與我們公司規模類似的企業來說,那是無法正常運行的。
您是如何讓其他企業能夠使用TessMaster的?EBay公司擁有的規模遠超其他大多數的環境。
Nandwani:如果用戶在一個內部云上運行Kubernetes,那么他仍然需要解決更小規模企業遇到的問題。用戶有選擇,他們看可以使用kops 或 Kolla或者一些其他的Kubernetes工具,但是我認為TessMaster擁有著一些比其他同類工具更多的固有優點。事實上,我們之前曾經調研過很多這類工具,結果我們發現它們都無法滿足我們的需求。我們重點考察的基本條件之一就是防漂移。這意味著我們有一個大小規模已知的Kubernetes集群,然后我們又有了在環境中的實際集群規模,用戶需要自動對它們進行調節。那就是TessMaster所賦予我們的。
您看過Red Hat OpenShift嗎?
Nandwani:我們有看過。OpenShift主要用于在Kubernetes上運行的應用程序的生命周期管理,但是我們正在管理Kubernetes本身。
eBay是否會繼續使用OpenStack,還是會最終使用TessMaster來取代它?
Nandwani:我們將在OpenStack基礎之上運行Kubernetes,就如同谷歌在他們云基礎設施上運行或Azure在他們云平臺上運行一樣。我們的Kubernetes位于OpenStack之上,我們能夠看到可編程基礎設施的價值所在,所以并不打算拋棄它。