在Container Service kubernetes 模板編排中,您需要自己定義一個應用運行所需的資來源物件,通過標籤選取器等機制,將資來源物件組合成一個完整的應用。

前提条件

建立一個 kubernetes 叢集,參見建立Kubernetes叢集

背景信息

本例示範如何通過一個編排模板建立 nginx 應用,包含一個 Deployment 和 Service,後端 Deployment會建立Pod 資來源物件, Service 會綁定到後端 Pod 上,形成一個完整的 nginx 應用。

操作步骤

  1. 登入Container Service管理主控台
  2. 在 Kubernetes 菜單下,單擊左側導覽列中的應用 > 部署,進入部署列表頁面。
  3. 單擊頁面右上方的使用模板建立


  4. 對模板進行相關配置,完成配置後單擊建立
    • 叢集:選擇目的地組群。資來源物件將部署在該叢集內。
    • 命名空間:選擇資來源物件所屬的命名空間,預設是 default。除了節點、持久化儲存卷等底層計算資源以外,大多數資來源物件需要作用於命名空間。
    • 樣本模板:阿里雲Container Service提供了多種資源類型的 Kubernetes yaml 樣本模板,讓您快速部署資來源物件。您可以根據 Kubernetes Yaml 編排的格式要求自主編寫,來描述您想定義的資源類型。
    • 添加部署:您可通過此功能快速定義一個Yaml模板。
    • 使用已有模板:您可將已有編排模板匯入到模板配置頁面。


    下面是一個 nginx 應用的樣本編排,基於Container Service內建的編排模板。通過該編排模板,即可快速建立一個屬於 nginx 應用的 deployment 。
    说明 Container Service支援Kubernetes Yaml編排,支援通過 ---符號將資來源物件分隔,從而通過一個模板建立多個資來源物件。
    apiVersion: apps/v1beta2 # for versions before 1.8.0 use apps/v1beta1
    kind: Deployment
    metadata:
        name: nginx-deployment
        labels:
          app: nginx
    spec:
        replicas: 2
        selector:
          matchLabels:
            app: nginx
        template:
          metadata:
            labels:
              app: nginx
          spec:
            containers:
            - name: nginx
              image: nginx:1.7.9 # replace it with your exactly <image_name:tags>
              ports:
              - containerPort: 80
    		  
    ---
    
    apiVersion: v1     # for versions before 1.8.0 use apps/v1beta1
    kind: Service
    metadata:
       name: my-service1        #TODO: to specify your service name
       labels:
         app: nginx
    spec:
       selector:
         app: nginx             #TODO: change label selector to match your backend pod
       ports:
       - protocol: TCP
         name: http
         port: 30080            #TODO: choose an unique port on each node to avoid port conflict
         targetPort: 80
       type: LoadBalancer        ##本例中將type從Nodeport修改為LoadBalancer
  5. 單擊建立後。會提示部署狀態資訊。成功後,單擊Kubernetes 控制台前往Kubernetes Dashboard 查看部署進度。


  6. 在 Kubernetes Dashboard 裡,您可以看到 my-service1 服務已成功部署,並暴露了外部入口。單擊外部入口的訪問地址。


  7. 您可以在瀏覽器中訪問 nginx 服務歡迎頁面。


下一步

您也可返回Container Service首頁,單擊左側導覽列中的 應用 > 服務,查看該nginx的服務。