日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

通過kubectl快速搭建魔方游戲

容器服務 Kubernetes 版 ACK(Container Service for Kubernetes)提供高性能的容器化應用管理服務,讓您輕松高效地在云端運行Kubernetes容器化應用。本文將指導您如何通過kubectl在ACK集群中快速部署并公開一個容器化Demo應用,并監控應用的運行情況。

使用前準備

注冊阿里云賬號并完成實名認證,請參見注冊阿里云賬號個人實名認證。

背景信息

  • 本教程中所使用的Demo應用ACK-Cube為一個線上魔方游戲,該游戲將通過容器鏡像部署到ACK Pro版集群中。完成本教程后,您將得到一個ACK Pro版集群和魔方游戲應用。cube
  • Demo應用的容器鏡像基于開源項目構建,鏡像地址為registry.cn-hangzhou.aliyuncs.com/acr-toolkit/ack-cube:1.0。
  • Kubectl是標準的Kubernetes命令行管理工具,通過kubectl可以連接和管理ACK集群。關于kubectl命令行的更多信息,請參見kubectl

  • CloudShell是阿里云推出的云命令行工具,您可以在容器服務ACK控制臺上打開CloudShell,無需任何安裝或配置操作,可以直接在CloudShell中通過kubectl管理集群。

  • 已了解Kubernetes的相關基本概念,請參見基本概念。

操作流程

workflow-kubectl

操作視頻

步驟一:開通并授權容器服務ACK

首次使用時,您需要開通容器服務ACK,并為其授權相應云資源的訪問權限。

  1. 登錄容器服務ACK開通頁面。

  2. 仔細閱讀并選中容器服務ACK服務協議,然后單擊立即開通

  3. 登錄容器服務管理控制臺。

  4. 容器服務需要創建默認角色頁面,單擊前往RAM進行授權進入云資源訪問授權頁面,然后單擊同意授權。

    完成以上授權后,刷新控制臺即可使用容器服務ACK。如在授權過程中遇到其他問題,請參見授權管理FAQ。

步驟二:創建ACK Pro版集群

本步驟介紹如何通過配置主要參數快速創建一個ACK Pro版集群。關于配置項的詳細信息,請參見創建ACK Pro版集群。

  1. 登錄容器服務管理控制臺,在左側導航欄選擇集群

  2. 集群列表頁面,單擊頁面右上角的創建集群

  3. ACK 托管版頁簽下,配置以下配置項。未說明配置項保留默認設置即可。

    配置項

    說明

    示例

    集群名稱

    填寫集群的名稱。

    ACK-Demo

    集群規格

    選擇集群規格,支持Pro 版基礎版。企業生產和測試環境中推薦使用ACK集群Pro版。ACK集群基礎版僅供個人學習與測試使用。

    關于ACK Pro版集群的詳細信息,請參見ACK集群Pro版概述。

    Pro版

    地域

    選擇集群所在的地域。

    華北2(北京)

    專有網絡

    Kubernetes集群僅支持運行于專有網絡,因此您需要為集群指定專有網絡VPC,且該VPC必須與集群處于同一地域。

    通過單擊創建專有網絡,在華北2(北京)地域下創建名為vpc-ack-demo的VPC。詳細信息,請參見創建和管理專有網絡

    vpc-ack-demo

    虛擬交換機

    選擇用于集群節點間通信的交換機。

    通過單擊創建虛擬交換機,在vpc-ack-demo的VPC下創建一個名為vswitch-ack-demo的虛擬交換機,并選擇使用該交換機。詳細信息,請參見創建和管理交換機。

    vswitch-ack-demo

    API Server 訪問

    設置集群API Server是否可在公網訪問,當您需要從公網遠程管理集群時,需要配置彈性公網IP(EIP)。

    選中使用 EIP 暴露 API Server。

  4. 單擊下一步:節點池配置,配置以下配置項。未說明配置項保留默認設置即可。

    配置項

    說明

    示例

    實例規格

    為集群選配所使用的節點。

    您可通過設置vCPU內存的大小,或者直接搜索實例規格,選用該規格的節點。

    為了保證集群的穩定性,建議的實例規格為:vCPU≥4核,內存≥8 GiB。關于如何選型以及規格介紹,請參見ECS實例規格配置建議實例規格族。

    vCPU≥4核,內存≥8 GiB的實例規格

    數量

    根據需要設置集群的節點數量。

    2

    系統盤

    選擇節點所使用的系統盤。

    ESSD云盤,40 GiB

    登錄方式

    選擇登錄節點的方式。

    請自行設置密碼。

  5. 單擊下一步:組件配置,所有組件使用默認配置。

  6. 單擊下一步:確認配置,然后選中并閱讀服務協議,單擊創建集群。

    說明

    集群的創建時間一般約為10分鐘。創建完成后,在集群列表頁面,可以看到新創建的集群。

步驟三:連接集群

本步驟指導您如何通過kubectl客戶端或CloudShell快速連接到ACK集群。更多信息,請參見獲取集群KubeConfig并通過kubectl工具連接集群在CloudShell上通過kubectl管理Kubernetes集群。

方式一:通過kubectl客戶端連接集群

  1. 登錄容器服務管理控制臺

  2. 在控制臺左側導航欄,單擊集群。

  3. 在集群列表頁面中,單擊目標集群名稱(即ACK-Demo)。

  4. 集群信息頁面,單擊連接信息頁簽,復制公網訪問頁簽下的內容(即集群的公網訪問憑證)。

  5. 將復制的集群憑證內容粘貼至$HOME/.kube目錄下的config文件中,保存并退出。

    說明

    如果$HOME/目錄下沒有.kube目錄和config文件,請自行創建。

  6. 執行kubectl命令驗證集群的連通性。

    以查詢命名空間為例,執行以下命令。

    kubectl get namespace

    預期輸出:

    NAME              STATUS   AGE
    arms-prom         Active   4h39m
    default           Active   4h39m
    kube-node-lease   Active   4h39m
    kube-public       Active   4h39m
    kube-system       Active   4h39m

方式二:通過CloudShell連接集群

  1. 登錄容器服務管理控制臺

  2. 在控制臺左側導航欄,單擊集群。

  3. 在集群列表頁面中,選擇目標集群右側操作列下的更多 > 通過CloudShell管理集群。

    等待數秒啟動成功之后,您就可以在CloudShell界面通過kubectl命令來管理集群和應用。

步驟四:部署并公開應用

本步驟指導您如何通過kubectl在新創建的ACK集群中快速部署一個無狀態應用(Deployment),并將其通過LoadBalancer類型服務(Service)公開。關于服務公開的詳細操作,請參見通過使用自動創建負載均衡的服務公開應用。

  1. 使用以下示例應用的YAML內容,創建名為ack-cube.yaml的文件。

    apiVersion: apps/v1 # for versions before 1.8.0 use apps/v1beta1
    kind: Deployment
    metadata:
      name: ack-cube #應用名稱。
      labels:
        app: ack-cube
    spec:
      replicas: 2 #設置副本數量。
      selector:
        matchLabels:
          app: ack-cube  #對應服務中Selector的值需要與其一致,才可以通過服務公開此應用。
      template:
        metadata:
          labels:
            app: ack-cube
        spec:
          containers:
          - name: ack-cube
            image: registry.cn-hangzhou.aliyuncs.com/acr-toolkit/ack-cube:1.0 #替換為您實際的鏡像地址,格式為:<image_name:tags>。
            ports:
            - containerPort: 80 #需要在服務中暴露該端口。
            resources:
              limits: #設置資源限制。
                cpu: '1'
                memory: 1Gi
              requests: #設置所需資源
                cpu: 500m
                memory: 512Mi        
  2. 執行以下命令,部署Demo應用ack-cube。

    kubectl apply -f ack-cube.yaml
  3. 執行以下命令,確認示例應用狀態正常。

    kubectl get deployment ack-cube

    預期輸出:

    NAME       READY   UP-TO-DATE   AVAILABLE   AGE
    ack-cube   2/2     2            2           96s
  4. 使用以下示例服務的YAML內容,創建名為ack-cube-svc.yaml的文件。將selector修改為ack-cube.yaml示例應用文件中matchLabels的值(本示例為app: ack-cube),從而將該服務關聯至后端應用。

    apiVersion: v1
    kind: Service
    metadata:
      labels:
        app: ack-cube
      name: ack-cube-svc
      namespace: default
    spec:
      ports:
      - port: 80
        protocol: TCP
        targetPort: 80
      selector:
        app: ack-cube # 需要與Deployment YAML文件中的matchLabels的值一致。
      type: LoadBalancer
  5. 執行以下命令創建名為ack-cube-svc的服務,并通過其公開應用。

    ACK會自動創建一個公網SLB,并將其綁定至該服務。

    kubectl apply -f ack-cube-svc.yaml
  6. 執行以下命令確認LoadBalancer類型的服務創建成功。

    示例應用將通過EXTERNAL-IP字段的IP地址向公網公開。

    kubectl get svc ack-cube-svc

    預期輸出:

    NAME           TYPE           CLUSTER-IP      EXTERNAL-IP     PORT(S)        AGE
    ack-cube-svc   LoadBalancer   172.16.72.161   47.94.xx.xx   80:31547/TCP   32s

步驟五:測試應用

在瀏覽器地址欄輸入該服務EXTERNAL-IP字段的IP地址,即可開始魔方游戲。

釋放資源

使用ACK Pro版集群所產生的費用包括兩部分。一部分是集群管理費用,由容器服務ACK收取。另一部分是所使用的其他阿里云云產品資源費用,按照各云產品規定的計費規則計費,由各云產品收取。完成快速入門后,請參考以下場景處理集群。

  • 如果無需繼續使用集群,請登錄容器服務管理控制臺,在集群列表頁面的操作列,單擊目標集群對應的更多 > 刪除。在刪除集群頁面,選中同時刪除集群下的ALB資源、同時刪除集群下的PrivateZone資源、同時刪除集群管理關聯的SLS項目我已知曉以上信息并確認刪除集群,然后單擊確定。關于刪除ACK Pro版集群的更多信息,請參見刪除集群。

  • 如果需要繼續使用集群,請為阿里云賬號充值,確保賬戶金額不小于100.00元人民幣。在使用ACK Pro版集群過程中用到的其他阿里云云產品資源,相關計費說明,請參見云產品資源計費

相關文檔

  • 為了保證應用能夠動態調整所需容器資源,您可以配置容器水平伸縮(HPA)、定時容器水平伸縮(CronHPA)、容器垂直伸縮(VPA)等。詳細信息,請參見彈性伸縮概述

  • 除了通過服務(Service)公開應用,您還可以通過路由(Ingress)實現對應用的七層網絡路由控制。詳細信息,請參見創建Nginx Ingress。

  • 除了觀測容器性能,您還可以觀測集群基礎設施、應用性能和用戶業務。詳細信息,請參見可觀測性體系概述。

  • 監控應用的運行狀況,如CPU使用率、內存利用率、網絡I/O壓力等指標,請在集群管理頁左側導航欄,選擇運維管理>Prometheus監控,在Prometheus監控頁面查看。