天天看點

MicroK8s和Portiner:在Kubernetes上部署應用程式的最簡單方法

作者:K8S技術社群

如果你想部署第一個Kubernetes應用程式,沒有比使用MicroK8s和Portiner更容易的了。

任何第一次嘗試使用Kubernetes的人都知道它有多麼複雜。不僅建立Kubernete叢集是一個挑戰,部署應用程式也是一個挑戰。由于有如此多的活動部件,這項技術可以讓任何對其工作原理沒有深入了解的人受益匪淺。

然而,也有捷徑可走。一個快捷方式是将Portiner部署到MicroK8s叢集。為什麼要走這條路?易于了解的MicroK8s不僅是部署Kubernetes最簡單的方法之一,Portiner還提供了管理Kubernete部署的最強大、最友好的GUI工具之一。

使用Portainer/MicroK8s組合,你可以輕松使用:自定義模闆、命名空間、Helm、應用、入口、ConfigMaps和秘密、卷、叢集、使用者、環境、系統資料庫、身份驗證日志、通知。

為什麼不使用這種方法将應用程式部署到Kubernetes叢集呢?對于任何一個剛剛進入Kubernetes世界的人來說,肯定會選擇這條阻力最小的道路。幾分鐘内,你就可以啟動并運作Kubernetes叢集,并做好部署準備。

是以,随着Portiner/MicroK8s組合的啟動和運作,讓我們看看将第一個容器部署到Kubernetes叢集是多麼容易。

要求

為此,你隻需要一個由至少三個節點和Portiner組成的MicroK8s叢集即可啟動并運作。

部署第一個應用程式

打開web浏覽器并将其指向http://SERVER:30777或https://SERVER:30779(其中SERVER是叢集中控制器節點的IP位址或域)。

登入後,選擇本地環境,然後單擊應用程式。在結果視窗(圖1)中,你将看到目前正在運作的所有應用程式的清單(可能隻有一個,nginx-ingress-microk8s-controller)。單擊右上角附近的“添加表單”。

MicroK8s和Portiner:在Kubernetes上部署應用程式的最簡單方法

圖1:Portainer Kubernetes應用程式視窗列出了所有部署的應用程式。

對于不熟悉建立Kubernetes清單的人來說,表單路由是最簡單的。一旦了解了有關Kubernetes部署的更多資訊,就可以走清單路線了。然而,在此之前,請堅持表單選項。

在結果視窗(圖2)中,你将開始制作應用程式。

MicroK8s和Portiner:在Kubernetes上部署應用程式的最簡單方法

圖2:用于部署應用程式的Portainer Kubernetes表單。

筆者将通過部署一個簡單的NGINX應用程式來示範。選擇預設命名空間,然後為應用程式命名,例如nginxtest。

在Image字段中,鍵入nginx:latest并確定選中docker.io。接下來,向下滾動并配置記憶體和CPU限制以滿足需求。如果你知道應用程式需要擴充,那麼需要将兩個機關都更新。隻需確定明智地配置這些。不要将太多的系統資源交給單個應用程式。

接下來,更改複制的執行個體計數。如果要将NGINX容器複制到兩個節點,請在“執行個體計數”中鍵入2。如果要将其複制到三個節點,請鍵入3。

在釋出應用程式下,選擇NodePort,然後單擊建立服務。然後将要求你填寫容器端口、服務端口和節點端口(圖3)。NodePort向叢集外部公開服務。如果不設定NodePort,你将無法從容器外部通路應用程式。關于NodePort需要注意的一點是,它必須在30000-32767範圍内。可以将其留白,系統将配置設定一個端口。

MicroK8s和Portiner:在Kubernetes上部署應用程式的最簡單方法

圖3:為新應用程式配置NodePort。

配置NodePort後,滾動到視窗底部,然後單擊部署應用程式。Portiner将開始部署你的容器。然後,你您将看到列出的應用程式,新應用程式處于部署狀态(圖4)。

MicroK8s和Portiner:在Kubernetes上部署應用程式的最簡單方法

圖4:測試應用程式正在部署。

紅點變綠後,應用程式已成功部署。根據釋出到的節點數量,這可能需要一些時間。你可以單擊容器條目以擷取有關狀态的更多資訊(圖5)。

MicroK8s和Portiner:在Kubernetes上部署應用程式的最簡單方法

圖5:NGINX測試正在運作,并已成功複制到兩個節點。

這個設定的一個非常酷的地方是,你可以傳回到應用程式詳細資訊,單擊YAML頁籤,然後檢視應用程式的清單(圖6)。這是了解Kubernetes清單如何編寫的好方法。

圖6:nginx測試應用程式的清單。

你甚至可以将清單複制到剪貼闆,粘貼到編輯器中,并在Portiner之外繼續學習Kubernetes。

這就是用MicroK8s和Portiner部署第一個Kubernetes應用程式的所有。沒有比這更容易的了。

繼續閱讀