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

Kubernetes 部署編排

本文主要介紹云效 AppStack 應用 Kubernetes 部署編排操作方法。

選擇部署方式

云效 AppStack 應用編排支持 Kubernetes 部署(適用于云原生部署場景)、支持主機部署(適用于傳統主機部署場景)、也支持 Kubernetes 和主機混合部署場景(適用于應用由傳統主機部署向云原生轉型場景)。進入 應用設置 > 應用編排 > 編排內容,選擇 Kubernetes 部署 方式。

image

創建 Kubernetes 部署編排

  • 應用設置 > 應用編排 > 編排內容 > Kubernetes 部署處,點擊 從模板開始 ,選擇企業自定義應用編排模板(詳見全局設置 應用編排模板 )或者云效示例模板。 一個應用通常包含 Kubernetes 的工作負載、網絡、配置、存儲等資源類型。

  • 點擊 確定 后,所選模板實例化為當前應用的編排內容(模板僅用于初始化,修改模板不會影響已有應用),進入編排編輯頁面。

  • 在應用編排編輯頁面,可以對編排內容再次修改。

    • 可以修改 編排組件 名稱或描述

    • 可以修改組件 YAML 具體內容

    • 可以添加/刪除組件

    • 可以修改 鏡像,可以修改 占位符

image

使用占位符和變量

云效 AppStack 應用編排支持使用占位符 {{ }}和變量實現一套編排多環境差異化部署,實現變量部署時動態注入。

制品占位符

支持定義制品占位符{{ .AppStack.image.xxx}}{{ .AppStack.artifact.xxx }},在部署單時動態輸入鏡像/制品包,或者在流水線部署階段執行時自動注入上游構建階段產出的制品。

自定義占位符

以添加一個 port 自定義占位符實現多環境在不同端口啟動服務場景為例:

  1. 修改YAML內容,在 YAML 編輯區域敲擊 {{ .Values.port }} ,定義占位符。

  2. 點擊 提取占位符

  3. 在占位符列表將出現新增的 port 占位符。

  4. 在開發環境、測試環境變量組里分別添加 port 變量,取值分別為 8080、8081。

  5. 在占位符列表,將 port 占位符取值來源為變量,變量選擇 port。

點擊 保存,編排校驗通過后,即完成了一套 K8s 編排在不同環境不同端口號啟動服務的配置。開發環境部署時,將 8080 賦值給 containerPort;測試環境部署時,將 8081 賦值給 containerPort。

image

預置占位符

AppStack 提供預置占位符,幫助簡化應用編排配置。

占位符命名空間

名稱

數據類型

類型

預填值

使用說明

AppStack

appName

字符串

變量

${APPSTACK_APP_NAME}

AppStack 預置占位符,值為當前應用名

AppStack

envName

字符串

變量

${APPSTACK_ENV_NAME}

AppStack 預置占位符,值為當前環境名稱

AppStack

image

對象

常量

--

AppStack 預置占位符,用于定義鏡像,

{{ .AppStack.image.xxx }} 定義鏡像為 xxx

AppStack

artifact

對象

變量

--

AppStack 預置占位符,用于定義制品,

{{ .AppStack.artifact.xxx }} 定義制品包為 xxx

使用Go template語法靈活編排

云效 AppStack 應用編排支持 Go template 語法,使用 Go template 語法可以靈活編排你的應用,以下為兩個常用場景示例。

示例場景1:使用 if 差異化配置 YAML 區塊

使用if關鍵字為生產環境增加更多附加標識。

......
template:
    metadata:
      labels:
        run: app-demo
        # 使用 if 差異化配置
        {{- if eq .AppStack.envName "production" }}
        msePilotAutoEnable: "on"
        msePilotCreateAppName: "app-demo"
        {{- end}}
    spec:
      containers:
      ......

image..png

示例場景2:使用 range 遍歷對象循環配置

使用 range關鍵字遍歷對象,循環配置。

metadata:
  name: spring-boot-{{ .AppStack.envName }}
  labels:
    run: spring-boot-{{ .AppStack.envName }}
    # 使用 range 遍歷標簽對象配置 labels
    {{ range $key,$value := .Values.labels }}
    {{ $key }}: {{ $value }}
    {{ end }}
  namespace: {{ .Values.namespace }}

image

labels 變量取值如 {"key1":"value1","key2":"value2"} ,環境部署時,最終渲染 YAML 如下。

image

添加組件

Kubernetes 應用編排通常對應一到多個組件,可以按需添加多個不同類型的資源組件。

  1. 點擊 + 號,添加組件。

  2. 填寫組件名稱(組件唯一標識)和描述。

  3. 選擇組件模板,云效 AppStack 提供 Deployment、ConfigMap、Service、Secret、Ingress、PVC 這六種資源組件模板。也可以選擇空模板,自定義編排內容。

點擊 確定,編排中會增加新組件,并預填充對應類型的 YAML 文件模板內容,應用按需修改即可。

image

設置組件部署順序

Kubernetes 應用編排支持設置組件部署順序,支持以拖拉拽的方式自定義調整順序。部署順序為應用環境部署、回滾時的組件資源下發順序,組件支持串行部署、并行部署。環境刪除時將按部署逆序刪除組件資源。

image

刪除組件

  • 點擊組件 tab 選中,點擊 tab 頁上的叉號,保存后即可將組件刪除。

編輯組件

  • 點擊組件 tab 選中,點擊 設置組件 圖標,打開設置組件彈窗,可以修改組件名稱和描述。

暫存/保存編排

  • AppStack 每隔數秒會自動暫存編排的修改,也可以點擊 暫存 按鈕主動進行暫存,暫存并不會真正生效,只是記錄一個編排修訂版本。

  • 點擊 保存 按鈕,記錄編排修訂版本,注意?:編排文件的更新并不會立即生效到應用環境,環境需要在下一次部署后生效新版本的應用編排。