5 秒創建 k8s 集群 - 每天5分鐘玩轉 Docker 容器技術(115)
最初,Google 開發了一個叫 Borg 的系統(現在命令為 Omega)來調度如此龐大數量的容器和工作負載。在積累了這麽多年的經驗後,Google 決定重寫這個容器管理系統,並將其貢獻到開源社區,讓全世界都能受益。
這個項目就是 Kubernetes。簡單的講,Kubernetes 是 Google Omega 的開源版本。
從 2014 年第一個版本發布以來,Kubernetes 迅速獲得開源社區的追捧,包括 Red Hat、VMware、Canonical 在內的很多有影響力的公司加入到開發和推廣的陣營。目前 Kubernetes 已經成為發展最快、市場占有率最高的容器編排引擎產品。
Kubernetes 一直在快速地開發和叠代。本章我們將以 v1.7 和 v1.8 為基礎學習 Kubernetes。我們會討論 Kubernetes 重要的概念和架構,學習 Kubernetes 如何編排容器,包括優化資源利用、高可用、滾動更新、網絡插件、服務發現、監控、數據管理、日誌管理等。
下面就讓我們開始 Kubernetes 的探險之旅。
先跑起來
按照一貫的學習思路,我們會在最短時間內搭建起一個可用系統,這樣就能夠盡快建立起對學習對象的感性認識。先把玩起來,快速了解基本概念、功能和使用場景。
越是門檻高的知識,就越需要有這麽一個最小可用系統。如果直接上來就學習理論知識和概念,很容易從入門到放棄。
當然,要搭建這麽一個可運行的系統通常也不會太容易,不過很幸運,Kubernetes 官網已經為大家準備好了現成的最小可用系統。
kubernetes.io 開發了一個交互式教程,通過 Web 瀏覽器就能使用預先部署好的一個 kubernetes 集群,快速體驗 kubernetes 的功能和應用場景,下面我就帶著大家去玩一下。
打開 https://kubernetes.io/docs/tutorials/kubernetes-basics/
頁面左邊就能看到教程菜單:
教程會指引大家完成創建 kubernetes 集群、部署應用、訪問應用、擴展應用、更新應用等最常見的使用場景,迅速建立感性認識。
創建 Kubernetes 集群
點擊教程菜單 1. Create a Cluster
-> Interactive Tutorial - Creating a Cluster
顯示操作界面。
左邊部分是操作說明,右邊是 Terminal,命令終端窗口。
按照操作說明,我們在 Terminal 中執行 minikube start
,然後執行 kubectl get nodes
,這樣就創建好了一個單節點的 kubernetes 集群。
集群的唯一節點為 host01
,需要註意的是當前執行命令的地方並不是 host01
。我們是在通過 Kubernetes 的命令行工具 kubectl
遠程管理集群。
執行 kubectl cluster-info
查看集群信息:
heapster
、kubernetes-dashboard
都是集群中運行的服務。
註:為節省篇幅,在後面的演示中,我將簡化操作步驟,詳細的說明和完整步驟請參考官網在線文檔。
集群創建好了,下一節我將帶領大家快速體驗 Kubernetes 的核心功能。
書籍:
1.《每天5分鐘玩轉Docker容器技術》
https://item.jd.com/16936307278.html
2.《每天5分鐘玩轉OpenStack》
https://item.jd.com/12086376.html
5 秒創建 k8s 集群 - 每天5分鐘玩轉 Docker 容器技術(115)