掃二維碼與項(xiàng)目經(jīng)理溝通
我們在微信上24小時(shí)期待你的聲音
解答本文疑問/技術(shù)咨詢/運(yùn)營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流
此示例演示了如何限制一個(gè)名字空間中的存儲使用量。

讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來自于我們對這個(gè)行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長期合作伙伴,公司提供的服務(wù)項(xiàng)目有:空間域名、網(wǎng)頁空間、營銷軟件、網(wǎng)站建設(shè)、湖南網(wǎng)站維護(hù)、網(wǎng)站推廣。
演示中用到了以下資源:ResourceQuota, LimitRange 和 PersistentVolumeClaim。
你必須擁有一個(gè) Kubernetes 的集群,同時(shí)你的 Kubernetes 集群必須帶有 kubectl 命令行工具。 建議在至少有兩個(gè)節(jié)點(diǎn)的集群上運(yùn)行本教程,且這些節(jié)點(diǎn)不作為控制平面主機(jī)。 如果你還沒有集群,你可以通過 Minikube 構(gòu)建一個(gè)你自己的集群,或者你可以使用下面任意一個(gè) Kubernetes 工具構(gòu)建:
要檢查版本,請輸入 ?kubectl version?。
集群管理員代表用戶群操作集群,管理員希望控制單個(gè)名稱空間可以消耗多少存儲空間以控制成本。
管理員想要限制:
將 ?LimitRange ?添加到名字空間會為存儲請求大小強(qiáng)制設(shè)置最小值和最大值。 存儲是通過 ?PersistentVolumeClaim ?來發(fā)起請求的。 執(zhí)行限制范圍控制的準(zhǔn)入控制器會拒絕任何高于或低于管理員所設(shè)閾值的 PVC。
在此示例中,請求 10Gi 存儲的 PVC 將被拒絕,因?yàn)樗^了最大 2Gi。
apiVersion: v1
kind: LimitRange
metadata:
name: storagelimits
spec:
limits:
- type: PersistentVolumeClaim
max:
storage: 2Gi
min:
storage: 1Gi當(dāng)?shù)讓哟鎯μ峁┏绦蛐枰承┳钚≈禃r(shí),將會用到所設(shè)置最小存儲請求值。 例如,AWS EBS volumes 的最低要求為 1Gi。
管理員可以限制某個(gè)名字空間中的 PVCs 個(gè)數(shù)以及這些 PVCs 的累計(jì)容量。 新 PVCs 請求如果超過任一上限值將被拒絕。
在此示例中,名字空間中的第 6 個(gè) PVC 將被拒絕,因?yàn)樗^了最大計(jì)數(shù) 5。 或者,當(dāng)與上面的 2Gi 最大容量限制結(jié)合在一起時(shí),意味著 5Gi 的最大配額 不能支持 3 個(gè)都是 2Gi 的 PVC。 后者實(shí)際上是向名字空間請求 6Gi 容量,而該命令空間已經(jīng)設(shè)置上限為 5Gi。
apiVersion: v1
kind: ResourceQuota
metadata:
name: storagequota
spec:
hard:
persistentvolumeclaims: "5"
requests.storage: "5Gi"限制范圍對象可以用來設(shè)置可請求的存儲量上限,而資源配額對象則可以通過申領(lǐng)計(jì)數(shù)和 累計(jì)存儲容量有效地限制名字空間耗用的存儲量。 這兩種機(jī)制使得集群管理員能夠規(guī)劃其集群存儲預(yù)算而不會發(fā)生任一項(xiàng)目超量分配的風(fēng)險(xiǎn)。

我們在微信上24小時(shí)期待你的聲音
解答本文疑問/技術(shù)咨詢/運(yùn)營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流