RC:ReplicationController(老一代的Pod控制器)
創(chuàng)新互聯(lián)建站網(wǎng)站建設(shè)服務(wù)商,為中小企業(yè)提供成都網(wǎng)站制作、網(wǎng)站建設(shè)、外貿(mào)網(wǎng)站建設(shè)服務(wù),網(wǎng)站設(shè)計(jì),綿陽(yáng)服務(wù)器托管等一站式綜合服務(wù)型公司,專業(yè)打造企業(yè)形象網(wǎng)站,讓您在眾多競(jìng)爭(zhēng)對(duì)手中脫穎而出創(chuàng)新互聯(lián)建站。
用于確保由其管控的Pod對(duì)象副本數(shù)量,能夠滿足用戶期望,多則刪除,少則通過(guò)模板創(chuàng)建。
特點(diǎn):
同樣,它也可以通過(guò)yaml或json格式的資源清單來(lái)創(chuàng)建。其中spec字段一般嵌套一下字段
與RC相比而言,RS不僅支持基于等值的標(biāo)簽選擇器,而且還支持基于集合的標(biāo)簽選擇器。
標(biāo)簽:解決同類型的資源對(duì)象越來(lái)越多,為了更好的管理,按照標(biāo)簽分組。
常用標(biāo)簽分類:
release(版本信息):stable(穩(wěn)定版), canary(金絲雀版本), beta(測(cè)試版)
environment(環(huán)境變量):dev(開(kāi)發(fā)),qa(測(cè)試), production(生產(chǎn))
application(應(yīng)用):ui, as(application software 引用軟件), pc, sc
tier(架構(gòu)層級(jí)):frontend(前端), backend(后端), cache(緩存)
partition(分區(qū)):customerA(客戶A), customerB(客戶B)
triack(品控級(jí)別):daily(每天), weekly(每周)
標(biāo)簽要做到:見(jiàn)名知意。
[root@master ~]# vim label.yaml
kind: Pod
apiVersion: v1
metadata:
name: labels
labels:
env: qa
tier: frontend
spec:
containers:
- name: myapp
image: httpd[root@master ~]# kubectl apply -f label.yaml
pod/labels created
//通過(guò)--show-labels顯示資源對(duì)象的標(biāo)簽。
[root@master ~]# kubectl get pod --show-labels
//通過(guò)-l,查看僅包含某個(gè)標(biāo)簽的資源
[root@master ~]# kubectl get po -L env,tier

[root@master ~]# kubectl get po -l env,tier

給labels資源添加標(biāo)簽:
[root@master ~]# kubectl label pod labels app=pc
pod/labels labeled
查看labels資源標(biāo)簽:
[root@master ~]# kubectl get pod -l app

[root@master ~]# kubectl get pod -l tier --show-labels

給labels資源刪除標(biāo)簽:
[root@master ~]# kubectl label pod labels app-
pod/labels labeled

給labels資源修改標(biāo)簽:
[root@master ~]# kubectl label pod labels env=dev --overwrite
pod/labels labeled

[root@master ~]# vim label-svc.yaml
apiVersion: v1
kind: Service
metadata:
name: labels-svc
spec:
type: NodePort
selector:
env: qa
tier: frontend
ports:
- protocol: TCP
port: 80
targetPort: 80
[root@master ~]# kubectl apply -f label-svc.yaml
service/labels-svc created
[root@master ~]# kubectl describe svc labels-svc
如果標(biāo)簽有多個(gè),標(biāo)簽選擇器選擇其中一個(gè),也可以關(guān)聯(lián)成功,相反,如果選擇器有多個(gè),那么標(biāo)簽必須完全滿足條件,才可以關(guān)聯(lián)成功!
標(biāo)簽選擇器:標(biāo)簽的查詢過(guò)濾條件。
基于等值關(guān)系的(equality-based):“=”,“==”,“!” 前面兩個(gè)都是相等,最后是不等
基于集合關(guān)系(set-based):in, notin, exits三種。
例子:
[root@master ~]# vim slector.yaml
selector:
matchLabels:
app: nginx
matchExpressions:
- {key: name,operator: In,values: [zhangsan,lisi]}
- {key: age,operator: Exists,values:}
matchLabels:指定鍵值對(duì)表示的標(biāo)簽選擇器。
matchExpressions:基于表達(dá)式來(lái)指定的標(biāo)簽選擇器。選擇器列表間為“邏輯與”關(guān)系;使用ln或者Notln操作時(shí),其values不強(qiáng)制要求非空的字符串列表,而使用Exists或DostNotExist時(shí),其values必須為空。
使用標(biāo)簽選擇器的邏輯:
它也是一種Pod控制器。
使用場(chǎng)景:如果必須將Pod運(yùn)行在固定的某個(gè)或幾個(gè)節(jié)點(diǎn),且要優(yōu)先于其他Pod的啟動(dòng)。通常情況下,默認(rèn)會(huì)每個(gè)節(jié)點(diǎn)都會(huì)運(yùn)行,并且只能運(yùn)行一個(gè)Pod。這種情況推薦使用DaemonSet資源對(duì)象。
監(jiān)控程序:
日志收集程序:
[root@master ~]# kubectl get ds -n kube-system
運(yùn)行一個(gè)web程序,在每一個(gè)節(jié)點(diǎn)都運(yùn)行一個(gè)Pod。
[root@master ~]# vim daemonset.yaml
kind: DaemonSet
apiVersion: extensions/v1beta1
metadata:
name: test-ds
spec:
template:
metadata:
labels:
name: test-ds
spec:
containers:
- name: test-ds
image: httpd
[root@master ~]# kubectl apply -f daemonset.yaml
daemonset.extensions/test-ds created
RC, RS, Deployment, DaemonSet。Pod控制器。 statfulSet,lngress。pod
RBAC.基于用戶的認(rèn)證授權(quán)機(jī)制
新聞名稱:ReplocaSet,DaemonSet
轉(zhuǎn)載注明:http://chinadenli.net/article42/ggpghc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作、定制開(kāi)發(fā)、手機(jī)網(wǎng)站建設(shè)、軟件開(kāi)發(fā)、虛擬主機(jī)、網(wǎng)站策劃
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)