在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

容器進程調度時是該優先考慮CPU資源還是內存資源

冬至配餃子 ? 來源:開發內功修煉 ? 作者:張彥飛allen ? 2022-08-16 18:20 ? 次閱讀

問題是這樣的:有 A B 兩臺服務器,其中 A 服務器 cpu 快滿了,內存很空閑。另外一臺 B 服務器 cpu 很空閑,但內存快滿了。現在 k8s 有一個新的任務要調度,請問應該選擇哪臺服務器?這其實是現在非常火的 k8s 的經典應用場景。

有的同學看到這個問題后的第一個想法是應該先評估一下新任務是計算密集型的業務還是 io 密集型的。然后再決定往哪個機器上調度。這么思考倒是也不能算錯,只不過是沒有抓到問題的關鍵點上。

這個問題的關鍵點是在于要思考一下調度到某個機器上可能會出現什么問題。

1. 調度到 CPU 比較滿的 A 服務器

假設我們調度到 CPU 比較滿的 A 機器上會出現什么狀況呢?因為 CPU 資源是分時來調度的,每個進程都會得到一些時間片進行執行。所以 A 機器上不管 CPU 有多忙,再加一個的進程來運行話其實影響無非就是所有的進程都運行的更慢了一些。再換個說法,就是 CPU 資源是可以超賣的,是屬于可壓縮資源。

這里提一下,部分讀者反饋說自己的云虛機在 CPU 飆升到 100% 的時候,云廠商為了保護主機,直接宕機。這種情況在各大公司的 IDC 機房內不太可能出現,所以這種情況咱們暫時不考慮。

2. 調度到內存比較滿的 B 服務器

再假設我們調度到內存比較滿的 B 機器上會出現什么狀況呢?不知道你有沒有遭遇過線上進程被 oom kill 掉的場景。這種情況下就是當機器物理內存不是很充足的時候,如果申請的內存過大,操作系統就可能會挑選在運行的一些進程將其殺掉。

這里稍微展開說一下,操作系統選擇要殺掉的進程也不一定是內存消耗最多的服務。而是會綜合內存消耗和進程的 oom_score_adj(可配置) 值來進行選擇。在一些在離線混部的服務器上,往往會將在線服務進程的被殺的優先級調的低一些,離線服務進程的被殺優先級調高。這樣充分保障在線服務的穩定運行。

先不考慮在離線混部的情況,假設都是在線服務,那么無論哪一個服務的進程被 Linux 給 oom kill掉影響都是非常大的。還得重新調度,而且還有可能影響服務的穩定性,以及接口的正確返回。

這里有的同學可能會說,Linux 上不是支持將內存 swap 到磁盤上嗎?但其實在線上服務器中,由于磁盤的性能比內存低太多了,所以大部分的線上服務器都不會開啟 swap 這個特性。因為服務的內存一旦被 swap 到內存,即使是能運行,性能也會有急劇的下降。所以一般不怎么會開啟。

結論

所以對比來看,新任務在調度的時候應該優先選擇 A 服務器,因為它的空閑內存比較多,不太可能出現進程被殺死的情況。雖然它的 CPU 比較滿,但所有的服務仍然可以運行。

在實際中,k8s 的 API Server接受客戶端提交Pod對象創建請求后的操作過程中,有一個重要的步驟就是由調度器程序kube-scheduler從當前集群中選擇一個可用的最佳節點來接收并運行它。

當然實際中 k8s 的調度策略不是這么簡單的,系統默認的 kube-scheduler 調度器外還有直接指定Node主機名、節點親和性、Pod親和性、nodeSelector 等等調度策略。

就單拿系統默認的 kube-scheduler 調度器來說的話,還會綜合考慮單獨和整體的資源請求、硬件/軟件/策略限制、親和以及反親和要求、數據局域性、負載間的干擾等等這些因素對可調度節點打分,然后選出其中得分最高的 Node 來運行 Pod。


審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • cpu
    cpu
    +關注

    關注

    68

    文章

    10905

    瀏覽量

    213038
  • 服務器
    +關注

    關注

    12

    文章

    9311

    瀏覽量

    86073
  • 操作系統
    +關注

    關注

    37

    文章

    6896

    瀏覽量

    123759
  • Linux系統
    +關注

    關注

    4

    文章

    596

    瀏覽量

    27510
  • SWAP
    +關注

    關注

    0

    文章

    51

    瀏覽量

    12919
收藏 人收藏

    評論

    相關推薦

    云端安全守護者,華為云 Flexusx 上的 AWVS 容器化部署與安全掃描實踐

    能利用容器的輕量、可移植與快速部署特性,實現Web 安全掃描的自動化、高效與精準。Flexus x 實例的智能調度與彈性伸縮能力,為 AWVS 掃描任務提供強大資源支持,無論是日常小范圍掃描
    的頭像 發表于 12-30 14:54 ?124次閱讀
    云端安全守護者,華為云 Flexusx 上的 AWVS <b class='flag-5'>容器</b>化部署與安全掃描實踐

    深入解析Linux程序與進程

    關于某個數據集合的一次運行活動。作為系統進行資源分配和調度的基本單位,是操作系統結構的基礎。 程序與進程的關系 進程的狀態 基礎進程狀態 創
    的頭像 發表于 12-18 11:01 ?158次閱讀
    深入解析Linux程序與<b class='flag-5'>進程</b>

    Linux之CPU調度策略和CPU親和性

    決定在某一時間點上哪個進程在運行。調度器必須平衡幾個選項: 快速決定下一個運行的進程 進程可以公平的活動
    的頭像 發表于 12-05 16:38 ?596次閱讀
    Linux之<b class='flag-5'>CPU</b><b class='flag-5'>調度</b>策略和<b class='flag-5'>CPU</b>親和性

    遙感技術在水資源管理中的應用

    資源是地球上最寶貴的自然資源之一,對于維持生態平衡、保障人類生活和經濟發展至關重要。隨著人口增長、城市化進程和氣候變化的影響,水資源管理面臨著前所未有的挑戰。遙感技術作為一種先進的監
    的頭像 發表于 12-05 10:26 ?464次閱讀

    虛擬內存溢出怎么處理 虛擬內存在服務器中的應用

    在現代計算機系統中,虛擬內存是一種重要的資源管理技術,它允許系統使用硬盤空間來擴展物理內存的容量。然而,當系統運行的程序和進程超出了物理內存
    的頭像 發表于 12-04 09:49 ?284次閱讀

    一文搞懂Linux進程的睡眠和喚醒

    的代碼和數據,進而去執行這個進程。下面列舉了一些進程狀態: 注意:沒有+時,默認是后臺進程 進程調度
    發表于 11-04 15:15

    如何限制容器可以使用的CPU資源

    默認情況下容器可以使用的主機 CPU 資源是不受限制的。和內存資源的使用一樣,如果不對容器可以使
    的頭像 發表于 10-24 17:04 ?324次閱讀
    如何限制<b class='flag-5'>容器</b>可以使用的<b class='flag-5'>CPU</b><b class='flag-5'>資源</b>

    android系統使用appe播放audio資源,相關進程被kill之后appe無法再次打開的原因?

    android系統使用appe播放audio資源,相關進程被kill之后appe無法再次打開,原因是appe資源被占用。 在Ti提供的demo中,通過 signal(SIGKILL
    發表于 10-23 07:56

    云服務器的購買資源和擴容資源的區別和聯系

    服務商處直接購買一定量的計算資源,如CPU內存或存儲空間等。而擴容資源則是指在現有的云服務器基礎上增加額外的資源
    的頭像 發表于 10-18 11:21 ?275次閱讀

    深入探討Linux的進程調度

    Linux操作系統作為一個開源且廣泛應用的操作系統,其內核設計包含了許多核心功能,而進程調度器(Scheduler)就是其中一個至關重要的模塊。進程調度器負責決定在任何給定的時刻哪個
    的頭像 發表于 08-13 13:36 ?995次閱讀
    深入探討Linux的<b class='flag-5'>進程</b><b class='flag-5'>調度</b>器

    鴻蒙開發接口資源調度:【@ohos.workScheduler (延遲任務調度)】

    開發者在開發應用時,通過調用延遲任務注冊接口,注冊對實時性要求不高的延遲任務,任務默認由系統安排,在系統空閑時根據性能、功耗、熱等情況進行調度執行。
    的頭像 發表于 06-04 10:01 ?1016次閱讀
    鴻蒙開發接口<b class='flag-5'>資源</b><b class='flag-5'>調度</b>:【@ohos.workScheduler (延遲任務<b class='flag-5'>調度</b>)】

    鴻蒙開發接口資源管理:【@ohos.resourceManager (資源管理)】

    資源管理模塊,根據當前configuration(語言,區域,橫豎屏,mccmnc)和device capability(設備類型,分辨率)提供獲取應用資源信息讀取接口。
    的頭像 發表于 06-03 15:10 ?1226次閱讀
    鴻蒙開發接口<b class='flag-5'>資源</b>管理:【@ohos.resourceManager (<b class='flag-5'>資源</b>管理)】

    服務器資源監控與告警處理方案的全面總結

    通過 top 命令,查看所有進程運行情況,在結果界面,通過 shift + p 切換視圖,按照CPU使用率倒序排列,找出CPU使用率最高的進程依次分析(查看 %
    的頭像 發表于 04-20 09:35 ?756次閱讀

    選擇美國vps云主機時應該考慮哪些因素

     美國VPS云主機是指位于美國的虛擬私人服務器,它提供獨立的操作系統、內存CPU資源,用戶可以根據自身需求進行配置。那么選擇美國vps云主機時應該考慮哪些因素,rak小編為您整理發布
    的頭像 發表于 03-26 09:21 ?381次閱讀

    TC377如何訪問EMEM內存

    啟用 OCDS,并已執行了所需步驟,但無法從數據表中找到相關寄存器的任何信息。 我們不確定我們是否掌握了正確的信息。 由于我們的項目時間緊迫,如果能優先考慮這個問題,我們將不勝感激。 請幫助我們解決這個問題TESTBOARD_150PC_OUT 。 謝謝!
    發表于 03-04 07:10
    主站蜘蛛池模板: 8050午夜一级二级全黄 | 韩彩英三级无删版甜性涩爱 | 国产精品久久久久影院色老大 | 亚洲 欧美 精品专区 极品 | 97伊人网| 亚洲国产精品自在现线让你爽 | 亚洲haose在线观看 | 日本a级片视频 | 色综合久久一区二区三区 | 久久久久免费精品国产小说 | 色综合天天综久久久噜噜噜久久〔 | 色多多高清在线观看视频www | 久久美女性网 | 国产小视频在线高清播放 | 手机看片国产免费久久网 | 国产三级在线观看 | 美女扒开尿口让男生添 漫画 | www.av在线 | 国产女同视频 | 一区二区中文字幕 | 久操伊人网 | 伊人黄色网 | 国产大片黄在线看免费 | 在线免费国产视频 | 久久狠狠干 | 免费看一级视频 | 三级黄色a | 婷婷久久综合网 | 91华人在线视频 | 久久久久琪琪免费影院 | 三级在线免费观看 | 日本色图在线 | 久久夜夜肉肉热热日日 | eeuss久久久精品影院 | 不卡视频一区二区三区 | 国产成人乱码一区二区三区 | 国产亚洲精品久久久极品美女 | 无遮挡很污很爽很黄的网站 | 91老色批网站免费看 | 日本xxxxx黄区免费看动漫 | 亚洲黄色性视频 |