五月天青色头像情侣网名,国产亚洲av片在线观看18女人,黑人巨茎大战俄罗斯美女,扒下她的小内裤打屁股

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

Label,RC,HPA

2023-06-27 23:01 作者:阿兵云原生  | 我要投稿

上面簡單說了一下 pod 的基本知識點,待到后面會使用到 pod 的一些高階知識點的時候,還可以再細(xì)細(xì)琢磨底層原理

我們接著繼續(xù)學(xué)習(xí) Lable , RC,HPA 的相關(guān)知識點

Label 是什么?

label 就是標(biāo)簽,例如之前我們手寫的 yaml 文件中,每一個鍵值對都是 label,如 key =value

label 一般是在定義資源的時候就確定了,當(dāng)然我們也可以在對象創(chuàng)建之后進(jìn)行動態(tài)的添加,編輯,和刪除

我們寫的 label 可以附加到 Node,Service,Pod,RC 中,每一類資源都可以定義任意數(shù)量的 label, 同一個 label 也是可以被添加到任意數(shù)量的資源對象上的

這一點確實是很靈活了有么有

label 為什么要附加到各種資源對象上呢?

因為 label 和 label selector 都是不能單獨定義的,他們必須要依附在某一類資源對象上,這是為了能夠去管理這些資源,使用 label selector 對他們分組

例如寫一個 openresty ,寫一個 RC 使用 openresty ,Service 調(diào)用 openresty 的 label selector

apiVersion:?v1
kind:?ReplicationController?
metadata:?
??name:?openresty
spec:
??replicas:?2
??selector:
????app:?openresty
??tmplate:
????metadata:
??????labels:
????????app:?openresty
??????spec:
????????containers:
????????-?name:?openresty
????????ports:
????????-?containerPort:?80
----------------------------
apiVersion:?v1
kind:?Service?
metadata:?
??name:?openresty
spec:
??type:?NodePort
??ports:
??-?port:?80
????nodePort:?30125
??selector:
????app:?openresty

RC 是什么?

RC 是什么,前面解釋到,就是 ReplicationController 副本控制器

當(dāng)我們定義一個 RC ,提交給 K8S 的時候,這是一個期望值,Master 節(jié)點上的 Controller Manager 組件得到通知后,就會去定期檢查 pod ,會確保 pod 的數(shù)量和我們預(yù)期的數(shù)量一致

如果當(dāng)前檢測到的數(shù)量和我們的預(yù)期數(shù)量不一致,那么控制器就會對 pod 做增加和刪除的操作,這就可以實現(xiàn) pod 動態(tài)擴(kuò)縮功能

之前我們也有提到,我們可以使用如下指令來設(shè)置我們期望的副本數(shù)

kubectl?scale?rc?服務(wù)名?--replicas=具體的數(shù)字

RC ?和 Replica Sets 有何區(qū)別?

他倆在本質(zhì)上沒有什么區(qū)別,只是 Replica Sets ?支持的更多

RCReplica Sets支持基于等式的 label selector支持基于集合的 label selectorK8S 1.2 之后出現(xiàn)的,Replica Sets ?主要是被 Deployment 這樣的資源對象所使用

為了提高我們應(yīng)用的容災(zāi)能力,哪怕程序只有 ?1 個 pod 副本,也要通過 RC 的方式去管理,因為 RC 可以管理 pod 的創(chuàng)建,刪除,更新等編排機(jī)制,不用 pod 自己瞎操心

HPA 是什么?

HPA 就是 Horizontal Pod Autoscal ,pod 的橫向擴(kuò)容,他也是 K8S 的一種資源對象

HPA 的簡單原理

HAP 通過追蹤和分析 RC 的 pod 的負(fù)載變化情況,酌情調(diào)整目標(biāo) pod 的副本數(shù)

K8S 提供 2 種方式來對 pod 擴(kuò)容和縮容

  • 第一種是我們使用命令的方式對 RC,Deployment 進(jìn)行擴(kuò)容和縮容

kubectl?scale?rc/deployment?服務(wù)名?--replicas?數(shù)量

  • 第二種是使用 HPA 的方式,自動擴(kuò)容和縮容

自動的模式就需要用戶根據(jù)指定的一個性能指標(biāo),還要預(yù)先指定一個副本的數(shù)量范圍,系統(tǒng)就會自動的在我們設(shè)定的范圍內(nèi)根據(jù)性能指標(biāo)進(jìn)行調(diào)整

HPA 小案例

  • 寫一個 自己 nginx deployment

apiVersion:?extension/v1beta1
kind:?Deployment
metadata:
??name:?my?nginx?deployment
spec:
??replicas:?2
??template:
????metadata:
??????name:?my?deployment
??????labels:
????????app:?nginx
????spec:
??????containers:
??????-?name:?nginx
????????image:?nginx
????????resources:
??????????requrests:
????????????cpu:?50m
????????ports:
????????-?containerPort:?80

  • 寫一個 service

寫一個 service ,命名為 mynginx-svc

apiVersion:?v1
kind:?Service
metadata:
??name:?mynginx-svc
spec:
??ports:
??-?port:?80
??selector:
????app:?nginx

  • 寫一個 hpa

hpa 設(shè)置最小的副本數(shù) ?2, 最大的副本數(shù) 5個,CPU 在 70 % 以下 ,引用 ?my nginx deployment

apiVersion:?autoscaling/v1
kind:?HorizontalPodAutoscaler
metadata:
??name:?mynginx-hpa
spec:
??scaletargetRef:
????apiversion:?app/v1beta1
????kind:?deployment
????name:?my?nginx?deployment
??minReplicas:?2
??maxReplicas:?5
??targetCPUUtillizationPercentage:?70

今天就到這里,學(xué)習(xí)所得,若有偏差,還請斧正

歡迎點贊,關(guān)注,收藏

朋友們,你的支持和鼓勵,是我堅持分享,提高質(zhì)量的動力

好了,本次就到這里

技術(shù)是開放的,我們的心態(tài),更應(yīng)是開放的。擁抱變化,向陽而生,努力向前行。

我是阿兵云原生,歡迎點贊關(guān)注收藏,下次見~


Label,RC,HPA的評論 (共 條)

分享到微博請遵守國家法律
安丘市| 吉隆县| 延边| 图木舒克市| 韶关市| 辰溪县| 乌兰察布市| 武穴市| 安达市| 朝阳县| 罗田县| 涿州市| 梨树县| 德保县| 永寿县| 蓬溪县| 新乐市| 罗江县| 仙游县| 桐梓县| 英德市| 乐都县| 沧州市| 辽阳市| 桦甸市| 阿巴嘎旗| 乌兰察布市| 连城县| 昌吉市| 泾源县| 曲水县| 金阳县| 佛冈县| 隆昌县| 武汉市| 天长市| 赤水市| 沐川县| 龙州县| 武平县| 吉林省|