在 創建應用服務 的過程中,您可以在配置 Pod 模板時進行以下高級配置。
環境變量
通過鍵值對的形式為 Pod 配置環境變量,從而給 Pod 添加環境標志或傳遞配置等,在容器啟動時傳入應用進程,例如:USER=tester
。具體參見 Pod variable。
參數說明如下:
來源:
手動輸入:自行指定環境變量的名稱和值。
配置項:選擇已配置的 ConfigMap 來指定環境變量的值。
保密字典:選擇已配置的 Secret 來指定環境變量的值。
變量名:環境變量的名稱。
變量值/變量引用:
選擇 手動輸入 時,為環境變量的值。
選擇 配置項 或 保密字典 時,為 ConfigMap 和 Secret 的引用。
數據卷配置
配置容器使用的數據卷,目前僅支持掛載在當前容器所在宿主機的目錄。
參數說明如下:
類型:支持 本地存儲、配置項、保密字典。更多信息參見 volumes。
權限:支持 讀寫 或 只讀。
容器目錄:容器中的數據卷路徑。
主機目錄/配置項引用:
選擇 本地存儲 時,為 Pod 所在宿主機的目錄。
選擇 配置項 或 保密字典 時,為對應的引用。
健康檢查配置
健康檢查是指容器運行過程中,基于用戶配置的健康檢查,定時檢查容器健康狀況。若不配置健康檢查,如果出現業務異常,容器將無法感知,也不會自動重啟去恢復業務,進而可能影響業務的正常運作。
目前 AKS 提供兩種檢查機制:Readiness Probe 和 Liveness Probe。
Readiness Probe 用來判斷容器是否準備好接收流量。如果檢查失敗,集群會屏蔽請求訪問該容器;若檢查成功,則會開放對該容器的訪問。
Liveness Probe 用來檢測容器是否正常,如果檢查失敗,集群會對該容器執行重啟操作。
Readiness Probe、Liveness Probe 是 kubernetes 原生概念。更多詳情請參見 Kubernetes Probes。
配置 Readiness Probe
參數說明如下:
檢查方式:
TCP Socket 端口:通過發送 TCP 請求來進行判斷,若能成功建立連接,則檢查通過。
訪問端口:TCP 訪問的容器端口。
HTTP Get 方法:通過發送 HTTP Get 方法的請求來進行判斷,若返回的狀態碼大于等于 200 且小于 400,則檢查通過。
訪問路徑:HTTP 請求的訪問路徑。
訪問端口:HTTP 請求的訪問容器端口。范圍 1-65535。
在容器中執行命令:通過在容器中執行命令來進行判斷,若命令成功執行,并返回 0,則檢查通過。
執行命令:指定在容器中執行的命令。
首次檢查延時:即 initialDelaySeconds,容器啟動后第一次執行探測時需要等待多少秒,默認為 5 秒。
檢查超時:即 timeoutSeconds,探測超時時間。默認 1 秒,最小 1 秒。
檢查間隔:即 periodSeconds,指執行探測的時間間隔,默認為 10 秒,最小為 1 秒。
健康閾值:探測失敗后,最少連續探測成功多少次才被認定為成功。默認是 1,最小值是 1。
不健康閾值:探測成功后,最少連續探測失敗多少次才被認定為失敗。默認是 3,最小值是 1。
配置 Liveness Probe
參數說明如下:
檢查方式:
TCP Socket 端口:通過發送 TCP 請求來進行判斷,若能成功建立連接,則檢查通過。
訪問端口:TCP 訪問的容器端口。
HTTP Get 方法:通過發送 HTTP Get 方法的請求來進行判斷,若返回的狀態碼大于等于 200 且小于 400,則檢查通過。
訪問路徑:HTTP 請求的訪問路徑。
訪問端口:HTTP 請求的訪問容器端口。范圍 1-65535。
在容器中執行命令:通過在容器中執行命令來進行判斷,若命令成功執行,并返回 0,則檢查通過。
執行命令:指定在容器中執行的命令。
首次檢查延時:即 initialDelaySeconds,容器啟動后第一次執行探測時需要等待多少秒,默認為 5 秒。
檢查超時:即 timeoutSeconds,探測超時時間。默認 1 秒,最小 1 秒。
檢查間隔:即 periodSeconds,指執行探測的時間間隔,默認為 10 秒,最小為 1 秒。
健康閾值:探測失敗后,最少連續探測成功多少次才被認定為成功。默認是 1,最小值是 1。
不健康閾值:探測成功后,最少連續探測失敗多少次才被認定為失敗。默認是 3,最小值是 1。
生命周期事件回調配置
為容器添加生命周期事件回調,分別在容器啟動后和容器停止前執行。
目前提供的生命周期回調函數為:Post Start (容器啟動后觸發)和 Pre Stop(容器停止前觸發)。
參數說明如下:
配置 Post Start:
回調方式:支持 在容器中執行命令 (需輸入執行命令,如
cat tmp/healthy
) 及 HTTP GET 方法(需輸入執行路徑,如/healthy/readiness
,以及輸入訪問端口,范圍 1-65535)。配置 Pre Stop:
回調方式:支持 在容器中執行命令 (需輸入執行命令,如
cat tmp/healthy
) 及 HTTP GET 方法(需輸入執行路徑,如/healthy/liveness
,以及輸入訪問端口,范圍 1-65535)。
日志服務配置
配置阿里云日志服務(SLS),可選擇已有日志庫或創建新的日志庫。
參數說明如下:
日志庫: 從已有的日志庫中選擇。如果沒有可用日志庫,可單擊 創建日志庫 來創建新的日志庫。
日志類型: 容器文本日志。
路徑:收集容器內指定路徑的日志。例如:
/home/admin/*.log
或/root/*.log
。
業務實時監控
添加監控目錄,可以在應用服務詳情頁查看容器的監控數據。目錄內容將被監控應用讀取。
參數說明如下:
監控目錄:指定應用需采集的業務監控日志的輸出目錄。