日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學(xué)無(wú)先后,達(dá)者為師

網(wǎng)站首頁(yè) 編程語(yǔ)言 正文

Google?Kubernetes?Engine?集群實(shí)戰(zhàn)詳解_云其它

作者:青Cheng序員石頭 ? 更新時(shí)間: 2022-10-26 編程語(yǔ)言

GKE 集群介紹

Google Kubernetes Engine (GKE) 集群由 Kubernetes 開(kāi)源集群管理系統(tǒng)提供支持。Kubernetes 為用戶提供了與容器集群進(jìn)行交互的機(jī)制。您可以使用 Kubernetes 命令和資源來(lái)部署和管理應(yīng)用、執(zhí)行管理任務(wù)、設(shè)置政策,以及監(jiān)控您部署的工作負(fù)載的運(yùn)行狀況。

K8s 帶來(lái)的好處

  • 自動(dòng)管理
  • 對(duì)應(yīng)用容器進(jìn)行監(jiān)控和活躍性探測(cè)
  • 自動(dòng)擴(kuò)縮
  • 滾動(dòng)更新

Google Cloud 上的 Kubernetes 運(yùn)行 GKE 集群時(shí),您還可以獲享 Google Cloud 提供的高級(jí)集群管理功能所帶來(lái)的好處,其中包括:

  • 針對(duì) Compute Engine 實(shí)例提供的負(fù)載平衡功能
  • 節(jié)點(diǎn)池(可用于在集群中指定節(jié)點(diǎn)子集以提高靈活性)
  • 自動(dòng)擴(kuò)縮集群的節(jié)點(diǎn)實(shí)例數(shù)量
  • 自動(dòng)升級(jí)集群的節(jié)點(diǎn)軟件
  • 節(jié)點(diǎn)自動(dòng)修復(fù),以保持節(jié)點(diǎn)的正常運(yùn)行和可用性
  • 利用 Cloud Monitoring 進(jìn)行日志記錄和監(jiān)控,讓您可以清楚了解自己集群的狀況

使用 GKE 編排集群

1.打開(kāi)cloud shell,并設(shè)置project (如果默認(rèn)連接成功則不需要)

gcloud config set project <Project ID>

2.設(shè)置默認(rèn)計(jì)算可用區(qū)域

gcloud config set compute/zone  <Zone>

3.啟動(dòng)新的GKE集群,要耗時(shí)幾分鐘,耐心等待

gcloud container clusters create --machine-type=e2-medium lab-cluster

輸出結(jié)果如下:

創(chuàng)建集群后,您需要身份驗(yàn)證憑據(jù)才能與其交互,所以接下來(lái)獲取身份驗(yàn)證憑據(jù)。

4.獲取用于集群的身份驗(yàn)證憑據(jù)

gcloud container clusters get-credentials lab-cluster 

輸出結(jié)果如下所示:

5.將應(yīng)用部署到集群中

GKE 使用 Kubernetes 對(duì)象創(chuàng)建和管理集群的資源。Kubernetes 提供了 Deployment 對(duì)象,用以部署網(wǎng)絡(luò)服務(wù)器等無(wú)狀態(tài)應(yīng)用。Service 對(duì)象則用于定義從互聯(lián)網(wǎng)訪問(wèn)您的應(yīng)用時(shí)需要遵循的規(guī)則和負(fù)載平衡機(jī)制。

kubectl create deployment hello-server --image=gcr.io/google-samples/hello-app:1.0

輸出結(jié)果如下所示:

此 Kubernetes 命令kubectl會(huì)創(chuàng)建一個(gè)代表 hello-server 的 Deployment 對(duì)象。在本例中,--image 指定了要部署的容器映像。該命令會(huì)從 Container Registry 存儲(chǔ)分區(qū)中拉取示例映像。gcr.io/google-samples/hello-app:1.0 指定了要拉取的特定映像版本。如果未指定版本,則使用最新版本。

6.運(yùn)行命令kubectl expose 以創(chuàng)建K8s Service

kubectl expose deployment hello-server --type=LoadBalancer --port 8080

在上面的命令中:

  • --port 指定了該容器公開(kāi)的端口。
  • type="LoadBalancer" 表示為您的容器創(chuàng)建一個(gè) Compute Engine 負(fù)載平衡器。

輸出結(jié)果如下所示:

注意: 生成外部 IP 地址可能需要一分鐘時(shí)間。如果 EXTERNAL-IP 列的狀態(tài)為 pending,請(qǐng)?jiān)俅芜\(yùn)行上述命令。

7.運(yùn)行 kubectl get 命令,以檢查 hello-server Service:

kubectl get service

輸出結(jié)果如下所示:

8.瀏覽器上訪問(wèn)http://[EXTERNAL-IP]:8080,會(huì)獲取到如下信息

9.刪除集群,可能需要幾分鐘的時(shí)間

gcloud container clusters delete lab-cluster 

原文鏈接:https://juejin.cn/post/7137465312298926093

欄目分類
最近更新