站长网 教程 部署service-level-operator能发挥怎样的作用?

部署service-level-operator能发挥怎样的作用?

前提:在Kubernetes集群中部署好Prometheus,我这里是采用Prometheus-Operator方式进行部署的。 (1)首先创建RBAC apiVersion:v1 kind:ServiceAccount metadata: name:service-level-operator namespace:monitoring labels: app:service-level-operator com

前提:在Kubernetes集群中部署好Prometheus,我这里是采用Prometheus-Operator方式进行部署的。

(1)首先创建RBAC

apiVersion: v1 

kind: ServiceAccount 

metadata: 

  name: service-level-operator 

  namespace: monitoring 

  labels: 

    app: service-level-operator 

    component: app 

 

— 

apiVersion: rbac.authorization.k8s.io/v1 

kind: ClusterRole 

metadata: 

  name: service-level-operator 

  labels: 

    app: service-level-operator 

    component: app 

rules: 

  # Register and check CRDs. 

  – apiGroups: 

      – apiextensions.k8s.io 

    resources: 

      – customresourcedefinitions 

    verbs: 

      – "*" 

 

  # Operator logic. 

  – apiGroups: 

      – monitoring.spotahome.com 

    resources: 

      – servicelevels 

      – servicelevels/status 

    verbs: 

      – "*" 

 

— 

kind: ClusterRoleBinding 

apiVersion: rbac.authorization.k8s.io/v1 

metadata: 

  name: service-level-operator 

subjects: 

  – kind: ServiceAccount 

    name: service-level-operator 

    namespace: monitoring  

roleRef: 

  apiGroup: rbac.authorization.k8s.io 

  kind: ClusterRole 

  name: service-level-operator 

(2)然后创建Deployment

apiVersion: apps/v1  

kind: Deployment 

metadata: 

  name: service-level-operator 

  namespace: monitoring 

  labels: 

    app: service-level-operator 

    component: app 

spec: 

  replicas: 1 

  selector: 

    matchLabels: 

      app: service-level-operator 

      component: app 

  strategy: 

    rollingUpdate: 

      maxUnavailable: 0 

  template: 

    metadata: 

      labels: 

        app: service-level-operator 

        component: app 

    spec: 

      serviceAccountName: service-level-operator 

      containers: 

        – name: app 

          imagePullPolicy: Always 

          image: quay.io/spotahome/service-level-operator:latest 

          ports: 

            – containerPort: 8080 

              name: http 

              protocol: TCP 

          readinessProbe: 

            httpGet: 

              path: /healthz/ready 

              port: http 

          livenessProbe: 

            httpGet: 

              path: /healthz/live 

              port: http 

          resources: 

            limits: 

              cpu: 220m 

              memory: 254Mi 

            requests: 

              cpu: 120m 

              memory: 128Mi 

(3)创建service

apiVersion: v1 

kind: Service 

metadata: 

  name: service-level-operator 

  namespace: monitoring 

  labels: 

    app: service-level-operator 

    component: app 

spec: 

  ports: 

    – port: 80 

      protocol: TCP 

      name: http 

      targetPort: http 

  selector: 

    app: service-level-operator 

    component: app 

(4)创建prometheus serviceMonitor

apiVersion: monitoring.coreos.com/v1 

kind: ServiceMonitor 

metadata: 

  name: service-level-operator 

  namespace: monitoring 

  labels: 

    app: service-level-operator 

    component: app 

    prometheus: myprometheus 

spec: 

  selector: 

    matchLabels: 

      app: service-level-operator 

      component: app 

  namespaceSelector: 

    matchNames: 

      – monitoring  

  endpoints: 

    – port: http 

      interval: 10s 

本文来自网络,不代表站长网立场,转载请注明出处:https://www.tzzz.com.cn/html/video/2021/0528/7416.html

作者: dawei

【声明】:站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。
联系我们

联系我们

0577-28828765

在线咨询: QQ交谈

邮箱: xwei067@foxmail.com

工作时间:周一至周五,9:00-17:30,节假日休息

返回顶部