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

使用鏡像創建無狀態應用

無狀態工作負載不會保存任何數據或狀態,例如Nginx。您可以通過鏡像、編排模板及命令行創建一個無狀態應用。通過私有鏡像創建應用時,您還可以通過容器服務控制臺為私有鏡像設置密鑰,以確保鏡像安全。本文介紹如何在容器服務控制臺上使用鏡像創建無狀態應用。

前提條件

已創建ACK Serverless集群。具體操作,請參見創建ACK Serverless集群

步驟一:配置應用基本信息

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

  2. 集群列表頁面,單擊目標集群名稱,然后在左側導航欄,選擇工作負載 > 無狀態

  3. 無狀態頁面,單擊使用鏡像創建

  4. 應用基本信息頁面,設置應用的基本信息。

    在配置Deployment負載之前,您需要在頁面頂部設置應用所在的命名空間。本例中設置命名空間為default,應用類型為無狀態(Deployment)

    配置項

    描述

    應用名稱

    設置應用的名稱。

    副本數量

    應用包含的Pod數量。

    類型

    定義資源對象的類型,可選擇無狀態(Deployment)有狀態(StatefulSet)任務(Job)定時任務(CronJob)

    標簽

    為該應用添加一個標簽,標識該應用。

    注解

    為該應用添加一個注解(Annotation)。

  5. 單擊下一步。進入容器配置頁面。

步驟二:配置容器

容器配置頁簽中,配置容器的鏡像與資源、端口、環境變量、健康檢查、生命周期、數據卷等。

說明

容器配置頁簽上方,單擊添加容器為應用的Pod設置多個容器。

  1. 基本配置區域,完成容器的基本配置。

    配置項

    描述

    鏡像名稱

    • 選擇鏡像

      您可以單擊選擇鏡像,選擇所需的鏡像。支持選擇以下三種類型的鏡像。

      • 容器鏡像服務企業版:可以選擇托管在容器鏡像服務ACR中的企業版鏡像。需要選擇鏡像所屬地域,以及鏡像服務實例。關于ACR的更多信息,請參見什么是容器鏡像服務ACR

      • 容器鏡像服務個人版:可以選擇托管在容器鏡像服務ACR中的個人版鏡像。需要選擇鏡像所屬地域,以及鏡像服務實例。

      • 制品中心:包含應用容器化基礎OS鏡像、基礎語言鏡像、AI/大數據相關鏡像,本示例以制品中心的Nginx鏡像為例說明。關于制品中心的更多信息,請參見制品中心

        說明

        容器鏡像服務ACR提供制品中心便于您的基礎鏡像使用,這些基礎鏡像由阿里云或者龍蜥社區做版本更新及安全修復。如果您有額外的鏡像需求或者問題,請加入釘釘群33605007047進行咨詢。

      您還可以填寫私有鏡像。填寫的格式為domainname/namespace/imagename:tag

    • 選擇鏡像拉取策略

      ACK支持以下三種鏡像拉取策略(imagePullPolicy):

      • 優先使用本地鏡像(IfNotPresent):如果本地有該鏡像(之前拉取過該鏡像至宿主機中),則使用本地鏡像,本地不存在時拉取鏡像。

      • 總是拉取鏡像(Always):表示每次部署或擴容都會從容器鏡像服務重新拉取鏡像,而不會從本地拉取鏡像。

      • 僅使用本地鏡像(Never):僅使用本地鏡像。

      說明

      當您選中鏡像拉取策略時,默認不設置鏡像拉取策略。

    • 設置鏡像密鑰

      您可以單擊設置鏡像密鑰,為私有鏡像設置密鑰以確保安全。

    所需資源

    即為該應用預留資源額度,包括CPU內存兩種資源,即容器獨占這些資源,防止因資源不足而被其他服務或進程爭奪資源,導致應用不可用。

    容器啟動項

    • stdin:將控制臺輸入發送到容器。

    • tty:將標準輸入控制臺作為容器的控制臺輸入。

    初始化容器

    選中該項,表示創建一個Init Container。Init Container包含一些實用的工具。更多信息,請參見Init Containers

  2. 端口設置區域,單擊新增設置容器的端口。

    • 名稱:設置容器端口名稱。

    • 容器端口:設置暴露的容器訪問端口或端口名,端口號必須介于1~65535。

    • 協議:支持TCP和UDP。

  3. 環境變量區域,單擊新增設置環境變量。

    說明

    如需配置環境變量,請確保已創建配置項或密鑰。如需創建,請參見管理配置項管理保密字典

    支持通過鍵值對的形式為Pod配置環境變量。用于給Pod添加環境標志或傳遞配置等。更多信息,請參見Pod variable

    • 類型:設置環境變量的類型,支持自定義配置項保密字典變量/變量引用資源引用類型。配置項、密鑰支持全部文件的引用。以密鑰為例,

      選擇保密字典,選擇變量,默認全部文件引用。

      對應的YAML,則引用了整個Secret。yaml

    • 變量名稱:設置環境變量名稱。

    • 變量/變量引用:設置變量引用的值。

  4. 健康檢查區域,根據需要開啟存活檢查就緒檢查

    說明

    如需配置健康檢查,請在基礎配置區域,關閉初始化容器開關。

    關于健康檢查的更多信息,請參見Configure Liveness, Readiness and Startup Probes

    參數

    請求類型

    配置說明

    • 存活檢查(Liveness):用于檢測何時重啟容器。

    • 就緒檢查(Readiness):確定容器是否已經就緒,且可以接受流量。

    • 啟動探測(Startup Probes):用于檢測何時啟動容器。

      說明

      僅Kubernetes集群1.18及之后版本支持啟動探測。

    HTTP請求

    即向容器發送一個HTTP GET請求,支持的參數包括:

    • 協議HTTP/HTTPS

    • 路徑:訪問HTTP Server的路徑。

    • 端口:容器暴露的訪問端口或端口名,端口號必須介于1~65535。

    • Http頭:即HTTP Headers,HTTP請求中自定義的請求頭,HTTP允許重復的Header。支持鍵值對的配置方式。

    • 延遲探測時間(秒):即initialDelaySeconds,容器啟動后第一次執行探測時需要等待多少秒,默認為3秒。

    • 執行探測頻率(秒):即periodSeconds,指執行探測的時間間隔,默認為10秒,最小為1秒。

    • 超時時間(秒):即timeoutSeconds,探測超時時間。默認1秒,最小1秒。

    • 健康閾值:探測失敗后,最少連續探測成功多少次才被認定為成功。默認是1,最小值是1。對于存活檢查(liveness)必須是1。

    • 不健康閾值:探測成功后,最少連續探測失敗多少次才被認定為失敗。默認是3,最小值是1。

    TCP連接

    即向容器發送一個TCP Socket,Kubelet將嘗試在指定端口上打開容器的套接字。 如果可以建立連接,容器被認為是健康的,如果不能就認為是失敗的。支持的參數包括:

    • 端口:容器暴露的訪問端口或端口名,端口號必須介于1~65535。

    • 延遲探測時間(秒):即initialDelaySeconds,容器啟動后第一次執行探測時需要等待多少秒,默認為15秒。

    • 執行探測頻率(秒):即periodSeconds,指執行探測的時間間隔,默認為10秒,最小為1秒。

    • 超時時間(秒):即timeoutSeconds,探測超時時間。默認1秒,最小1秒。

    • 健康閾值:探測失敗后,最少連續探測成功多少次才被認定為成功。默認是1,最小值是1。對于存活檢查(liveness)必須是1。

    • 不健康閾值:探測成功后,最少連續探測失敗多少次才被認定為失敗。默認是3,最小值是1。

    命令行

    通過在容器中執行探針檢測命令,來檢測容器的健康情況。支持的參數包括:

    • 命令行:用于檢測容器健康情況的探測命令。

    • 延遲探測時間(秒):即initialDelaySeconds,容器啟動后第一次執行探測時需要等待多少秒,默認為5秒。

    • 執行探測頻率(秒):即periodSeconds,指執行探測的時間間隔,默認為10秒,最小為1秒。

    • 超時時間(秒):即timeoutSeconds,探測超時時間。默認1秒,最小1秒。

    • 健康閾值:探測失敗后,最少連續探測成功多少次才被認定為成功。默認是1,最小值是1。對于存活檢查(liveness)必須是1。

    • 不健康閾值:探測成功后,最少連續探測失敗多少次才被認定為失敗。默認是3,最小值是1。

  5. 生命周期區域,設置容器的生命周期。

    您可以為容器的生命周期配置啟動執行、啟動后處理和停止前處理。具體操作,請參見配置生命周期

    • 啟動執行:為容器設置預啟動命令和參數。

    • 啟動后處理:為容器設置啟動后的命令。

    • 停止前處理:為容器設置預結束命令。

  6. 數據卷區域,增加本地存儲、云存儲聲明PVC(Persistent Volume Claim)或NAS等。

    支持增加以下存儲卷:

    • 本地存儲

    • 云存儲聲明(PersistentVolumeClaim)

    • NAS

    • 云盤

    更多信息,請參見使用云盤靜態存儲卷使用云盤動態存儲卷使用NAS靜態存儲卷等。

  7. 在日志服務區域,配置日志相關參數。具體操作,請參見使用鏡像創建

  8. 單擊下一步,進行高級設置。

步驟三:完成高級配置

高級配置頁簽中設置訪問、伸縮和標簽注解。

  1. 訪問設置區域,設置暴露后端Pod的方式。

    說明

    針對應用的通信需求,您可靈活進行訪問設置:

    • 內部應用:對于只在集群內部工作的應用,您可以在創建服務時,根據需要選擇虛擬集群IP節點端口類型的服務,來進行內部通信。

    • 外部應用:對于需要暴露到公網的應用,您可以采用兩種方式進行訪問設置。

      • 創建負載均衡類型的服務:您可以在創建服務時,選擇負載均衡類型的服務。通過阿里云提供的負載均衡服務SLB(Server Load Balancer),使得該服務提供公網訪問能力。

      • 創建路由(Ingress):通過創建路由(Ingress)提供公網訪問能力。更多信息,請參見Ingress

    您可以設置暴露后端Pod的方式。本例中選擇虛擬集群IP和路由(Ingress),構建一個公網可訪問的Nginx應用。

    • 配置服務(Service):在服務(Service)右側,單擊創建設置創建服務配置項。

      配置項

      描述

      名稱

      輸入服務的名稱。本例為nginx-svc。

      類型

      選擇服務類型,即服務訪問的方式。本例中選擇負載均衡

      • 虛擬集群IP:即ClusterIP,指通過集群的內部IP暴露服務,選擇該值,服務只能夠在集群內部可以訪問,這也是默認的ServiceType。

        說明

        您的服務類型為虛擬集群IP時,才能設置實例間發現服務(Headless Service)

      • 負載均衡:即LoadBalancer,指阿里云提供的負載均衡服務(SLB),可選擇公網訪問或私網訪問。阿里云負載均衡服務可以路由到NodePort服務和ClusterIP服務。

        • 新建SLB:您可以通過單擊修改,修改SLB規格。

        • 使用已有SLB:您可以在已有的列表中選擇SLB規格。

        說明

        負載均衡類型支持新建SLB和使用已有SLB,且多個Kubernetes Service可以復用同一個SLB,但是存在以下限制:

        • 使用已有的負載均衡實例會強制覆蓋已有監聽。

        • Kubernetes通過Service創建的SLB不能復用(會導致SLB被意外刪除)。只能復用您手動在控制臺(或調用OpenAPI)創建的SLB。

        • 復用同一個SLB的多個Service不能有相同的前端監聽端口,否則會造成端口沖突。

        • 復用SLB時,監聽的名稱以及虛擬服務器組的名稱被Kubernetes作為唯一標識符。請勿修改監聽和虛擬服務器組的名稱。

        • 不支持跨集群復用SLB。

      端口映射

      添加服務端口和容器端口。容器端口需要與后端的Pod中暴露的容器端口一致。本文示例值為:

      服務端口:80

      容器端口:80

      外部流量策略

      • Local:流量只發給本機的Pod。

      • Cluster:流量可以轉發到其他節點上的Pod。

      說明

      您的服務類型為節點端口負載均衡時,才能設置外部流量策略

      注解

      為該服務添加一個注解(annotation),配置負載均衡的參數。例如設置service.beta.kubernetes.io/alicloud-loadbalancer-bandwidth:20表示將該服務的帶寬峰值設置為20 Mbit/s,從而控制服務的流量。更多信息,請參見通過Annotation配置傳統型負載均衡CLB

      標簽

      為該服務添加一個標簽,標識該服務。

    • 配置路由(Ingress):在路由(Ingress)右側,單擊創建設置后端Pod的路由規則。

      詳細的路由配置信息,請參見路由配置說明

      重要

      通過鏡像創建應用時,您僅能為一個服務創建路由(Ingress)。本例中使用一個虛擬主機名稱作為測試域名,您需要在Hosts文件中添加一條域名映射(Ingress外部端點 + Ingress域名)。在實際工作場景中,請使用備案域名。

      101.37.XX.XX   foo.bar.com    #即Ingress的IP。

      Ingress的IP獲取方式:在應用詳情頁面,單擊訪問方式頁簽,外部端點顯示的IP即為Ingress的IP。

      配置項

      說明

      名稱

      輸入路由的名稱。本例為nginx-ingress

      規則

      路由規則是指授權入站到達集群服務的規則。更多信息,請參見路由配置說明

      • 域名:輸入Ingress域名。本例中使用測試域名foo.bar.com

      • 路徑:指定服務訪問的URL路徑,默認為根路徑/,本例中不做配置。每個路徑(Path)都關聯一個Backend(服務),在阿里云SLB將流量轉發到Backend之前,所有的入站請求都要先匹配域名和路徑。

      • 服務:選擇服務的名稱和對應端口。本例中為nginx-svc

      • 開啟TLS:配置安全的路由服務。更多信息,請參見Nginx Ingress高級用法

      服務權重

      設置該路徑下多個服務的權重。服務權重采用相對值計算方式,默認值為100。

      灰度發布

      開啟灰度發布開關。此處建議選擇社區版。

      Ingress Class

      自定義Ingress的類。

      注解

      單擊添加按鈕,輸入注解名稱和值,即Ingress的Annotation鍵值對。關于Ingress的注解,請參見Annotations

      標簽

      為Ingress添加對應的標簽,標示該Ingress的特點。

    訪問設置區域,您可以看到創建完畢的服務和路由,您可單擊變更刪除進行二次配置。

  2. 伸縮配置區域,勾選是否開啟指標伸縮定時伸縮,從而滿足應用在不同負載下的需求。

    容器服務支持容器組的彈性伸縮,即根據容器CPU和內存資源占用情況自動調整容器組數量。

    說明

    若要啟用自動伸縮,您必須為容器設置所需資源,否則容器自動伸縮無法生效。

    配置項

    說明

    指標

    支持CPU和內存,需要和設置的所需資源類型相同。

    觸發條件

    資源使用率的百分比,超過該使用量,容器開始擴容。

    最大副本數

    該應用可擴容的容器數量上限。

    最小副本數

    該應用可縮容的容器數量下限。

  3. 標簽和注釋區域,單擊添加設置容器組的標簽和注釋。

    • Pod標簽:為該Pod添加一個標簽,標識該應用。

    • Pod注解:為該Pod添加一個注解(Annotation)。

  4. 單擊創建

步驟四:查看應用

創建完成頁簽中查看應用任務。

  1. 創建完成頁簽中單擊查看應用詳情。您可以看到新建的serverless-app-svc出現在無狀態列表下。

    部署列表

  2. 在集群管理頁左側導航欄中,選擇網絡 > 服務,可以看到新建的服務serverless-app-svc出現在服務列表下。

    服務列表

  3. 在瀏覽器中訪問外部端點或域名,您可訪問Nginx歡迎頁,本示例為Nginx。

    重要
    • 瀏覽器訪問時,需保證服務訪問的方式為負載均衡

    • 使用域名訪問時,需配置Host文件。具體操作,請參見說明

    nginx