成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

k8s與aws--add-ebs-tags-controller為ebs增加tag

chanjarster / 1804人閱讀

摘要:但是可惜的是,當(dāng)中的塊存儲(chǔ)并不支持這樣的方式。都是監(jiān)聽指定資源,然后分別對(duì)和和三種事件,做出處理。部署具體部署的如下注意,加入集群中不存在角色,可以自行進(jìn)行授權(quán)。例如創(chuàng)建成果以后,去的查看如下

前言

在使用aws的托管k8s--eks過程中,避免不了使用aws的LB和塊存儲(chǔ)。AWS公有云所有的資源都可以自定義tags,這樣的好處就是可以根據(jù)tag具體含義來對(duì)資源進(jìn)行不同維度的審計(jì)和統(tǒng)計(jì)。比如按照部門,按照項(xiàng)目,環(huán)境(test,prod,uat)等維度。在設(shè)置service的類型為Loadbanlance的時(shí)候,可以通過以下annotations來自定義tag。

apiVersion: v1
kind: Service
metadata:
  annotations:
    service.beta.kubernetes.io/aws-load-balancer-type: nlb
    # service.beta.kubernetes.io/aws-load-balancer-internal: 0.0.0.0/0
    service.beta.kubernetes.io/aws-load-balancer-additional-resource-tags: "sgt:env=prod,sgt:group=SGT,sgt:project=hawkeye"
  labels:
    app: prometheus-server
  name: prometheus-server
  namespace: kube-system
spec:
  ports:
  - name: http
    port: 9090
    protocol: TCP
    targetPort: 9090
  selector:
    app: prometheus-server
  type: LoadBalancer

但是可惜的是,k8s當(dāng)中的塊存儲(chǔ)(ebs
)并不支持這樣的方式??赡躠ws覺得存儲(chǔ)比較便宜,不值得進(jìn)行審計(jì)吧。但是本身ebs是支持打tag的。

所以為了滿足我們司在k8s落地過程中對(duì)存儲(chǔ)的審計(jì),設(shè)計(jì)了add-ebs-tags-controller這個(gè)組件。

add-ebs-tags-controller 詳解 設(shè)計(jì)思路

大家都知道k8s中對(duì)于存儲(chǔ)是通過pv和pvc來實(shí)現(xiàn)的。因而add-ebs-tags-controller監(jiān)聽所有新建的pvc,然后獲取到新建pvc的annotations(volume.beta.kubernetes.io/aws-block-storage-additional-resource-tags),最后調(diào)用aws的接口sdk,完成打tag的工作。

代碼實(shí)現(xiàn)

具體代碼參見 github。

代碼相對(duì)比較簡單,大家可以自行研究??傮w實(shí)現(xiàn)思路和其他的controller類似。都是監(jiān)聽指定資源,然后分別對(duì)Update和add和delete三種事件,做出處理。

當(dāng)然這里不得不提一下,k8s controller設(shè)計(jì)的核心理念,controller通過監(jiān)聽實(shí)際的狀態(tài)(status) ,不斷做出具體調(diào)整,向期望的狀態(tài)(spec) 靠輪。

部署

具體部署的yaml如下:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: add-ebs-tags-controller
  namespace: kube-system
spec:
  replicas: 1
  selector:
    matchLabels:
      k8s-app: add-ebs-tags-controller
      task: tool
  template:
    metadata:
      labels:
        task: tool
        k8s-app: add-ebs-tags-controller
      annotations:
        scheduler.alpha.kubernetes.io/critical-pod: ""
    spec:
      serviceAccount: cluster-admin
      containers:
      - name: add-ebs-tags-controller
        image: iyacontrol/add-ebs-tags-controller:0.0.1
        imagePullPolicy: IfNotPresent
        
   

注意serviceAccount: cluster-admin,加入集群中不存在admin角色,可以自行進(jìn)行rbac授權(quán)。

demo

例如:

kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: prometheus-claim
  namespace: kube-system
  annotations:
    volume.beta.kubernetes.io/aws-block-storage-additional-resource-tags: "sgt:env=prod,sgt:group=SGT,sgt:project=hawkeye"
spec:
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 50Gi
      
      
   

創(chuàng)建成果以后,去aws的ui查看如下:

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/33166.html

相關(guān)文章

  • 自定義 OpenShift s2i 鏡像模板——OracleJDK8

    摘要:自定義鏡像部分自定義鏡像部分安裝工具安裝工具工具官方下載工具解壓工具到查看版本初始化目錄結(jié)構(gòu)初始化目錄結(jié)構(gòu)筆者是在目錄下開始操作的,提前說下免得讀者操作有誤。修改修改腳本只作啟動(dòng)功能,為了方便傳調(diào)優(yōu)參數(shù),定制了環(huán)境變量供使用。 本文目標(biāo) 由于 OpenShift 官方提供的鏡像與模板(OpenJDK8)不完全滿足業(yè)務(wù)需要: 不包含飛行記錄功能。只有 OpenJD...

    graf 評(píng)論0 收藏0
  • 如何用Rancher在AWS上運(yùn)行Kubernetes

    摘要:環(huán)境部署第一步,我會(huì)按默認(rèn)的向?qū)?chuàng)建一個(gè)新的虛擬私有云,這個(gè)虛擬私有云是為準(zhǔn)備的。的應(yīng)用程序?qū)⒆约涸趦?nèi)運(yùn)行。所有的主機(jī)都可以使用公有的,可如果你是在虛擬私有云上有主機(jī)的話,這就有點(diǎn)麻煩了,所以你可以選擇使用私有而非公有。 眾所周知,亞馬遜有EC2容器服務(wù),它是亞馬遜用于運(yùn)行Docker容器的解決方案。不過我覺得EC2容器服務(wù)不怎么好用,所以現(xiàn)在我要在AWS上測(cè)試Rancher和Kube...

    shinezejian 評(píng)論0 收藏0
  • 如何用Rancher在AWS上運(yùn)行Kubernetes

    摘要:環(huán)境部署第一步,我會(huì)按默認(rèn)的向?qū)?chuàng)建一個(gè)新的虛擬私有云,這個(gè)虛擬私有云是為準(zhǔn)備的。的應(yīng)用程序?qū)⒆约涸趦?nèi)運(yùn)行。所有的主機(jī)都可以使用公有的,可如果你是在虛擬私有云上有主機(jī)的話,這就有點(diǎn)麻煩了,所以你可以選擇使用私有而非公有。 眾所周知,亞馬遜有EC2容器服務(wù),它是亞馬遜用于運(yùn)行Docker容器的解決方案。不過我覺得EC2容器服務(wù)不怎么好用,所以現(xiàn)在我要在AWS上測(cè)試Rancher和Kube...

    williamwen1986 評(píng)論0 收藏0
  • k8s審計(jì)-- 將clickhouse增加 heapster sink

    摘要:前言在資源審計(jì)和計(jì)費(fèi)這塊,容器和虛機(jī)有很大區(qū)別。支持諸多輸出,稱為。所以本文主要講如何為增加。實(shí)際上,基于增加并且更改,也可以做到,只不過需要裝一些包指令,結(jié)果就是鏡像變大。實(shí)際運(yùn)行日志截圖由于的出色的寫入性能,運(yùn)行非常穩(wěn)定。 前言 在k8s資源審計(jì)和計(jì)費(fèi)這塊,容器和虛機(jī)有很大區(qū)別。相對(duì)虛機(jī)來講,容器不容易實(shí)現(xiàn)。資源指標(biāo)收集可以采用heapster,也可以用prometheus。之前文...

    tunny 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

chanjarster

|高級(jí)講師

TA的文章

閱讀更多
最新活動(dòng)
閱讀需要支付1元查看
<