檢測到您已登錄華為云國際站賬號,為了您更好的體驗,建議您訪問國際站服務網站 http://m.cqfng.cn/intl/zh-cn
不再顯示此消息
創(chuàng)建有狀態(tài)負載(StatefulSet) 有狀態(tài)負載(StatefulSet)是指那些在運行過程中需要保存數據或狀態(tài)的應用,例如數據庫、緩存服務、消息隊列等。與無狀態(tài)工作負載不同,有狀態(tài)負載存在以下特點: 固定標識符:有狀態(tài)工作負載中的每個Pod都有一個固定的標識符,這個標識符與
要求每個Pod都有自己單獨的狀態(tài)時,比如分布式數據庫,每個Pod要求有單獨的存儲,這時Deployment就不能滿足需求了。 詳細分析下有狀態(tài)應用的需求,分布式有狀態(tài)的特點主要是應用中每個部分的角色不同(即分工不同),比如數據庫有主備,Pod之間有依賴,對應到Kubernetes中就是對Pod有如下要求:
本管理、滾動升級和自愈能力,其中最為常用的就是Deployment。 圖1 Deployment 一個Deployment可以包含一個或多個Pod副本,每個Pod副本的角色相同,所以系統(tǒng)會自動為Deployment的多個Pod副本分發(fā)請求。 Deployment集成了上線部署、滾
對于數據庫等需要持久化存儲數據的容器應用,建議您使用有狀態(tài)工作負載,請參見創(chuàng)建有狀態(tài)負載(StatefulSet)。 如果您希望工作負載實例調度到指定的節(jié)點上,請參見工作負載調度策略概述。 如果創(chuàng)建工作負載時出現(xiàn)異常,請參見工作負載狀態(tài)異常定位方法。 工作負載創(chuàng)建完成后,更多操作請參見管理工作負載。 父主題: 創(chuàng)建工作負載
無狀態(tài)工作負載 kind metadata spec
有狀態(tài)負載(StatefulSet) 有狀態(tài)負載(StatefulSet) Deployment控制器下的Pod都有個共同特點,那就是每個Pod除了名稱和IP地址不同,其余完全相同。
創(chuàng)建無狀態(tài)負載(Deployment) 操作場景 在運行中始終不保存任何數據或狀態(tài)的工作負載稱為“無狀態(tài)負載 Deployment”,例如nginx。您可以通過控制臺或kubectl命令行創(chuàng)建無狀態(tài)負載。 前提條件 在創(chuàng)建工作負載前,已存在一個可用集群。若沒有可用集群,請參照購買CCE
某種程度上,Deployment實現(xiàn)無人值守的上線,大大降低了上線過程的復雜性和操作風險。 有狀態(tài)負載(StatefulSet) Deployment控制器下的Pod都有個共同特點,那就是每個Pod除了名稱和IP地址不同,其余完全相同。需要的時候,Deployment可以通過Po
將上面Deployment的定義保存到deployment.yaml文件中,使用kubectl創(chuàng)建這個Deployment。
通過控制臺創(chuàng)建無狀態(tài)負載 登錄云容器實例管理控制臺,左側導航欄中選擇“工作負載 > 無狀態(tài)(Deployment)”,在右側頁面單擊“鏡像創(chuàng)建”。 添加基本信息。
工作負載狀態(tài)正常但未正常工作 問題現(xiàn)象 Pod已經處于Running狀態(tài)(查看Pod狀態(tài))但未正常工作,或者訪問結果不符合預期。 問題原因 可能是您的部署描述YAML文件(例如 Pod、Deployment、StatefulSet等)存在錯誤。例如: 鏡像版本未更新。您可能未使用
工作負載 工作負載概述 創(chuàng)建工作負載 配置工作負載 調度工作負載 登錄容器實例 管理工作負載 管理自定義資源 Pod安全配置 CCE工作負載智能診斷 工作負載最佳實踐
在頁面左上角選擇命名空間,找到對應的工作負載,查看其狀態(tài)。 如果工作負載狀態(tài)為“未就緒”,可通過查看Pod的事件等信息確定異常原因,詳情請參見Pod事件查看方法。根據事件,參考Pod常見異常問題查找異常的解決方案。 如果工作負載狀態(tài)為“處理中”,一般為過程中的狀態(tài),請耐心等待。 如果工作負載狀態(tài)為“運行中”
有狀態(tài)負載 創(chuàng)建有狀態(tài)工作負載 (可選)若基于我的鏡像創(chuàng)建工作負載,用戶首先需要將鏡像上傳至容器鏡像服務,上傳鏡像的方式請參見鏡像管理。若基于開源鏡像中心創(chuàng)建工作負載,則無需上傳鏡像。 在集群控制臺選擇“工作負載 > 有狀態(tài)負載”,單擊“鏡像創(chuàng)建”。 參照表1設置基本信息,其中帶“*”標志的參數為必填參數。
有狀態(tài)負載 在運行過程中會保存數據或狀態(tài)的工作負載稱為“有狀態(tài)工作負載(statefulset)”,創(chuàng)建的Pod擁有持久型標識符,Pod遷移或銷毀重啟后,標識符仍會保留。有狀態(tài)負載不支持彈性伸縮,適用于需要使用持久化存儲的場景,如ETCD等。 創(chuàng)建有狀態(tài)負載 登錄UCS控制臺,在左側導航欄中選擇“容器艦隊”。
無狀態(tài)負載 UCS集群聯(lián)邦可實現(xiàn)多個不同區(qū)域、不同云的Kubernetes管理,支持統(tǒng)一的全局應用部署,可將Deployment、StatefulSet、DaemonSet等不同類型的工作負載部署到集群聯(lián)邦下的集群。 在運行中始終不保存任何數據或狀態(tài)的工作負載稱為“無狀態(tài)負載 D
可以通過更換鏡像或鏡像版本實現(xiàn)無狀態(tài)工作負載、有狀態(tài)工作負載、守護進程集的快速升級,業(yè)務無中斷。 編輯YAML 可通過在線YAML編輯窗對無狀態(tài)工作負載、有狀態(tài)工作負載、守護進程集、定時任務和容器組的YAML文件進行修改和下載。普通任務的YAML文件僅支持查看、復制和下載。 說明: 如果對
為什么在CCI配置跨Deployment的Pod硬反親和不生效? CCI目前不支持跨Deployment的Pod硬反親和。 如果您希望將不同Deployment的Pod調度到不同可用區(qū),您可以使用節(jié)點反親和來實現(xiàn)。 為什么在CCI配置Pod Affinity不生效?
容器工作負載類 為什么業(yè)務運行性能不達預期? 如何設置實例(Pod)數? 如何查看資源配額? 如何設置應用的探針? 彈性伸縮策略如何配置? 使用sample鏡像創(chuàng)建工作負載無法運行 調用接口刪除Deployment后怎么還能查看到Pod?
進入CCE控制臺,單擊“工作負載 > 有狀態(tài)負載 StatefulSet”,選擇BCS實例所使用的集群,找到對應新加組織或新建節(jié)點的工作負載,單擊負載名稱進入負載詳情頁,查看實例列表,找到異常實例。
解決方式鏈接:CCE節(jié)點變更規(guī)格后,為什么無法重新拉起或創(chuàng)建工作負載? 父主題: 工作負載異常問題排查
工作負載異常:已停止 問題現(xiàn)象 工作負載的狀態(tài)為“已停止”。
使用kubectl部署帶文件存儲卷的有狀態(tài)工作負載 操作場景 CCE支持使用已有的文件存儲(PersistentVolumeClaim),創(chuàng)建有狀態(tài)工作負載(StatefulSet)。 約束與限制 如下配置示例適用于Kubernetes 1.13及以下版本的集群。 操作步驟 參照
png步驟3:切換至“工作負載管理”頁簽。1606208422812003127.png 在工作負載管理頁面,您可以修改工作負載管理的全局配置,可以在工作負載管理頁面添加、創(chuàng)建、修改工作負載隊列,添加數據庫用戶至隊列,也可以將隊列中的某個數據庫用戶從隊列中移除。負載管理頁面添加、創(chuàng)建
問題原因 該告警事件說明節(jié)點上綁定的云硬盤已達上限,掛載云硬盤的工作負載實例調度到該節(jié)點后,無法繼續(xù)掛載云硬盤,導致工作負載無法正常運行。 例如,假設節(jié)點可掛載的云硬盤上限為20,除去節(jié)點上已掛載的1塊系統(tǒng)盤和1塊數據盤后,節(jié)點剩余可掛載的云硬盤數量為18塊。若該節(jié)點通過ECS
podAffinity/podAntiAffinity 您可以根據工作負載標簽,使用標簽選擇器來篩選需要親和/反親和的Pod,并將新建的工作負載調度/不調度至目標Pod所在的節(jié)點(或節(jié)點組),同時支持必須滿足和盡量滿足的親和性規(guī)則。 說明: 工作負載親和性和反親和性需要一定的計算時間,因此在大規(guī)模集群中
本視頻以nginx為例,介紹使用CCE部署工作負載的基本流程。
工作負載異常:實例拉取鏡像失敗 問題定位 當工作負載狀態(tài)顯示“實例未就緒:Back-off pulling image "xxxxx"”,該狀態(tài)下工作負載實例K8s事件名稱為“實例拉取鏡像失敗”或“重新拉取鏡像失敗”。查看K8s事件的方法請參見Pod事件查看方法。 排查思路 根據