純手工搭建kubernetes(k8s)1.9集羣-序

初衷

自從kubernetes(k8s)出現以來,安裝複雜、部署困難就一直被業內吐槽,同時也把很多初學者擋在門外。雖然官方也有專門用來入門的單機部署方案:Minikube,和用來搭建集羣的Kubeadm,但國內綠色的網絡環境讓官方的方案變得異常複雜。所以社區也涌現出很多專門用於部署k8s的項目,像使用ansible腳本方式的kubeasz,在github上已經有500多star;還有各種k8s相關的網站也有很多專門針對環境搭建的長文。
不管是官方的還是社區的方案,總體上都離不開下面這幾種方式:

  • 使用現成的二進制文件

    直接從官方或其他第三方下載,就是k8s各個組件的可執行文件。拿來就可以直接運行了。不管是centos,ubuntu還是其他的linux發行版本,只要gcc編譯環境沒有太大的區別就可以直接運行的。使用較新的系統一般不會有什麼跨平臺的問題。

  • 使用源碼編譯安裝

    編譯結果也是各個組件的二進制文件,所以如果能直接下載到需要的二進制文件基本沒有什麼編譯的必要性了。

  • 使用鏡像的方式運行

    同樣一個功能使用二進制文件提供的服務,也可以選擇使用鏡像的方式。就像nginx,像mysql,我們可以使用安裝版,搞一個可執行文件運行起來,也可以使用它們的鏡像運行起來,提供同樣的服務。k8s也是一樣的道理,二進制文件提供的服務鏡像也一樣可以提供。

從上面的三種方式中其實使用鏡像是比較優雅的方案,容器的好處自然不用多說。但從初學者的角度來說容器的方案會顯得有些複雜,不那麼純粹,會有很多容器的配置文件以及關於類似二進制文件提供的服務如何在容器中提供的問題,容易跑偏。所以二進制的方式更適合初學者。

那有同學會問了,網上已經有很多二進制安裝的教程了,我爲什麼還重複造輪子?確實,k8s的二進制安裝方式確實也有很多教程了,我在入門的時候也有去看過,主要有兩種教程,一種是傻瓜式,也叫一鍵式,運行一個命令,執行一個腳本,一切搞定(當然一般會遇到一些問題,需要自己想辦法解決^_^)。還有一種是複雜式,一步一步的所有東西都寫下來,照着走一遍,基本幾個小時就過去了(主要是k8s的認證授權部分太複雜),還不算你中間遇到的問題。正是出於我自己在入門時碰到的種種問題,讓我有了這個想法:做一個專門給初學者看的教程,讓他們既能把環境搭建好,還能順帶理解k8s的架構,理解認證授權,理解每個組件的配置和它們之間的關係。所以我把k8s拆分了,剝離了它的認證授權和服務發現,先從核心模塊入手,搭建好一個集羣,然後練練手,再給集羣添加認證授權。讓初學者更容易接受了理解。

下面就讓我們一起來體驗一下吧:

〇、序

一、預先準備環境

二、核心模塊部署

三、認證授權和服務發現

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章