在 kubernetes,您可以限定 pod 只能在特定的節點上執行,或者優先選擇在特定的節點上執行。通常您並不需要這樣做,而應該交由 kubernetes 排程程式根據資源使用情況自動地為 pod 分配節點。但是少數情況下,這種限定仍然是必要的,例如:
kubernetes 一共提供了四種方法,可以將 pod 排程到指定的節點上,這些方法從簡便到複雜的順序如下:
本文後續章節逐個描述了他們的用法
nodename 是四種方法中最簡單的乙個,但是因為它的侷限性,也是使用最少的。nodename 是 podspec 當中的乙個字段。如果該欄位非空,排程程式直接將其指派到 nodename 對應的節點上執行。
通過 nodename 限定 pod 所執行的節點有如下侷限性:
nodeselector 是 podspec 中的乙個字段。指定了一組名值對。節點的 labels 中必須包含 pod 的 nodeselector 中所有的名值對,該節點才可以執行此 pod。最普遍的用法中, nodeselector 只包含乙個名值對。
向節點物件新增標籤後,可以將 pod 指定到特定(乙個或一組)的節點,以便確保某些 pod 只在具備某些隔離性、安全性或符合管理規定的節點上執行。如果將標籤用於這個目的,推薦選擇那些不會被 kubelet 修改的標籤。這樣做可以避免節點非法使用其 kubelet credential 來設定節點自己的標籤,進一步影響到排程器將工作負載排程到該節點上。
noderestriction
管理外掛程式可以阻止 kubelet 設定或者修改節點上以node-restriction.kubernetes.io/
開頭的標籤。如需要使用該標籤字首作為節點隔離的目的,需要:
確保 kubenetes 已經啟用了 node authorizer
和node-restriction.kubernetes.io/``example.com.node-restriction.kubernetes.io/fips=true``example.com.node-restriction.kubernetes.io/pci-dss=true
Spring 將元件加入到容器中的方法
將元件 類 加入到ioc容器中的方法 1.通過bean方法,可將元件加入到ioc容器中 class 2.通過註解的方式將元件加入到ioc容器中 a 通過給bean上新增某些註解,可以快速將元件加入到ioc容器中。b 在某個元件 類 上新增上任何乙個註解都能快速將整個元件加入到ioc容器中。c spr...
vue3 動態將元件插入到指定的DOM下!!!
這個近期做three.js 專案有這種需求,需要將乙個元件插入到 css2dobject 生產的 2d標籤下實現自定義標籤的效果。大概就是這種效果。最終尋求到的方案有兩種 method 1 mount.js import from vue let el element let vnode creat...
按指定的值將形狀定位到 Chart 的座標軸中
將任意形狀以指定的值定位在chart的某一座標軸中。要進行定位的形狀 此形狀將要定位的軸 此形狀在chart中所處的值 將形狀按指定的百分比的寬度或者高度的部位定位到座標軸的指定值的位置。如果其值設定為0,則表示此形狀的左端 或上端 定位在設定的位置處,如果其值為100,則表示此形狀的右端 或下端 ...