現(xiàn)在應(yīng)用被打包在一個容器鏡像中,并通過 Docker Hub 給大家使用,可以將它部署到 Kubernetes 集群中,而不是直接在 Docker 中運行
一 個適 當(dāng) 的 Kubemetes 安裝需要包含多個物理或虛擬機,并需要正確 地設(shè) 置網(wǎng)絡(luò),以便在 Kubemetes 集群內(nèi)運行的所有容器都可 以在相同的扁平網(wǎng)絡(luò)環(huán)境內(nèi)相互連通。
2.1Minikube運行本地但節(jié)點K8s集群
- 安裝
Minikube是一個需要下載并放到路徑中的二進(jìn)制文件。 它適用于 osx、 Linux 和Windows系統(tǒng)。最好訪問GitHub上的Minikube代碼倉庫(https://github.com/kubernetes/minikube), 按照說明(https://minikube.sigs.k8s.io/docs/start/)來安裝它 。

- 安裝并啟動集群
$ curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-darwin-arm64
$ sudo install minikube-darwin-arm64 /usr/local/bin/minikube
$ minikube star

- 安裝kubernetes客戶端-kubectl
$ minikube kubectl -- get po -A
image-20230218154248540.png - 使用 kubectl 查看集群是否正常工作
$ kubectl cluster-info
image-20230218154844571.png - 可以通過minikube ssh登陸到Minikube VM從內(nèi)部查看他有那些進(jìn)程
$ minikube ssh
image-20230218155402077.png
2.2使用Google Kubernetes Engine 托管 Kubernetes 集群
-
說明
Google Kubernetes Engine(GKE)是谷歌提供的一個受管環(huán)境,您可以使用 Google 基礎(chǔ)架構(gòu)在其中部署、管理和擴縮容器化應(yīng)用。
GKE 環(huán)境包括多個機器(具體來講,就是 實例),這些機器組合在一起就形成了集群。
手動設(shè)置所有的集群節(jié)點和網(wǎng)絡(luò)對于剛開始使用 Kubemetes 的人來說太復(fù)雜了
使用例如 GKE 這樣的托管解決方案可以確保不會出現(xiàn)配置錯誤、不工作或部分工作的集群 。
-
配置一個 Google Cloud 項目井且下載必需的客戶端二進(jìn)制大致流程
注冊谷歌賬戶然后登陸https://cloud.google.com/kubernetes-engine?hl=zh-cn申請試用GKE(需要visa信用卡賬戶信息)
在 GoogleCloudPlatform控制臺中創(chuàng)建一個項目。
開啟 Kubemetes Engine API。
下載安裝 Google Cloud SDK (這包含 gcloud 命令行工具,需要創(chuàng)建 一 個Kubemetes 集群)。
使用 gcloud compone口ts install kubectl 安裝 kubectl 命令行工具。
-
創(chuàng)建一個三節(jié)點 Kubernetes 集群
- 完成安裝后,可以使用下面代碼清單中的命令創(chuàng)建 一 個包含 三 個工作節(jié)點的 Kubemetes 集群 。
$ gcloud container clusters create kubia --num-nodes 3
image-20230220103154586.png
image-20230220103231442.png
- 完成安裝后,可以使用下面代碼清單中的命令創(chuàng)建 一 個包含 三 個工作節(jié)點的 Kubemetes 集群 。
集群交互的初步認(rèn)識,每個節(jié)點運 行著 Docker、 Kubelet和 kube-proxya
-
可以通過 kubectl 命令行客戶端向運行在主節(jié)點上的 KubemetesAPI服務(wù)器發(fā)出 REST請求以與集群交互。
image-20230220103417615.png -
現(xiàn)在可以使用 kubectl 命令列出集群中的所有節(jié)點。
$ kubectl get nodes
image-20230220145624064.png 查看對象的更多信息
$ kubectl describe node <node-name>d
輸出顯示了節(jié)點的狀態(tài)、 CPU 和內(nèi)存數(shù)據(jù)、系統(tǒng)信息、運行容器的節(jié)點等
也可以 執(zhí)行一個簡單的 kubectl describe node 命令,而無須指定節(jié)點名,它將打印 出所有節(jié)點的描述信息 。
- 為kubectl配置別名
$ alias k=kubectl```







