阿裏雲官方高可用Kubernetes部署指南
Kubernetes是非常流行的容器管控技術,為了讓Kubernetes可以更深度集成阿裏雲的計算、存儲和網絡服務,以提供更佳的性能和網絡特性支持,阿裏雲容器服務團隊為Kubernetes提供了基於阿裏雲服務的CloudProvider插件。
同時,基於阿裏雲資源編排服務ROS的應用部署能力,阿裏雲用戶可以非常方便的快速部署Kubernetes集群。本文接下來會詳細介紹部署過程。
依賴條件
- 需要事先開通訪問控製RAM服務,訪問https://ram.console.aliyun.com點擊開通服務即可
- 本次部署所創建的資源均為按量付費,根據阿裏雲計費要求,現金賬戶餘額不能少於100元
拓撲結構
部署入口
根據使用場景不同,我們提供開發測試和高可用兩種Kubernetes集群部署方案。
開發測試集群 | 高可用集群 |
---|---|
單Master節點 可配置Worker節點數 支持按需擴容、縮容 支持按需啟動和銷毀集群 |
3個Master節點提供高可用性 可配置Worker節點數 支持按需擴容、縮容 支持按需啟動和銷毀集群 |
部署到阿裏雲 | 部署到阿裏雲 |
部署過程
第一步: 選擇部署區域
根據您的實際需要,選擇將Kubernetes集群部署到阿裏雲的那個區域。 確認後點擊"下一步"。
第二步: 配置啟動參數
- 棧名,所部署的Kubernetes集群屬於一個ROS的棧,棧名稱在同一個地域不能重複
- 創建超時時間,整個部署過程的超時時間,默認60分鍾,無需修改
- 失敗回滾,點選失敗回滾,如果部署過程中發生不可自動修複性錯誤,將刪除所有已創建資源,反之,已創建資源將被保留,以便問題排查
- Master節點ECS實例規格,指定Master節點所運行的ECS實例的規格,默認ecs.n1.medium,根據實際需要可以選擇更高配置的實例類型,配置不能低於默認規格
- Worker節點ECS實例規格,指定Worker節點所運行的ECS實例的規格,默認ecs.n1.medium,根據實際需要可以選擇更高配置的實例類型,配置不能低於默認規格
- Worker節點數,指定Worker節點數,默認2,支持後期擴容
- ECS登陸密碼,所創建的ECS實例可通過此密碼登陸,請務必牢記密碼
這裏我們選擇創建5個Worker節點,確認以上參數後,點擊"創建"按鈕,啟動部署。
至此,部署請求已提交到資源編排服務,可以通過點擊"進入事件列表"進入ROS控製台,通過ROS控製台實時監控部署過程。
注: 一個包含多節點的Kubernetes集群的創建時間會在十幾分鍾左右。
第三步:部署完成
通過ROS事件列表實時監控部署過程:
通過ROS資源列表查看部署過程所創建的所有資源:
等待部署完成,部署完成後在事件列表中會出現棧創建完成的事件記錄:
通過輸出結果中返回的信息,便可以對Kubernetes集群進行使用了,信息包括:
- AdminGateway: 可以直接通過SSH登錄到Master節點,以便對集群進行日常維護
- APIServer_Intranet: Kubernetes的api server對集群內部提供服務的地址和端口,在高可用版本中,此IP為SLB地址,後端有3台Master提供服務
- APIServer_Internet: Kubernetes的api server對公網提供服務的地址和端口,可以通過此服務在用戶終端使用kubectl等工具管理集群
例如: 通過SSH登錄AdminGateway查看集群節點信息:
可以發現,一共有8個節點,包括3個Master節點和我們在參數設置步驟填寫的5個Worker節點。
集群擴容和縮容
基於ROS的堆棧更新能力,我們可以根據實際業務需要,對Kubernetes集群的Worker節點進行擴容或者縮容。進入ROS棧列表找到我們所部署的Kubernetes集群,點擊"更多",選擇"更新堆棧":
點擊“更新堆棧”後,會顯示部署Kubernetes所使用的編排模板,通過修改模板可以完成非常複雜的集群升級,如果隻是進行擴容或者縮容,可以直接點“下一步”跳過。
接下來,會進入參數配置頁麵,通過修改"Worker節點數"來完成集群擴容或縮容:
點擊“更新”按鈕後,資源編排服務開始對集群進行相應的擴容或縮容處理。像最開始的部署過程一樣,我們可以通過事件列表來實時監控更新過程。
注:
- 由於升級過程依賴登陸ECS來拷貝配置信息,所以擴容、縮容時填的密碼必須和最開始部署集群時填的密碼一致
- 資源編排服務顯示棧更新完成後,通過kubectl get node或者dashboard並不能馬上看到新增的節點,需要幾分鍾時間等待節點注冊
更多Kubernetes使用幫助請參考:
最後更新:2017-05-23 10:32:46