oap-deployment.yaml 3.6 KB
Newer Older
I
innerpeacez 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103
apiVersion: apps/v1
kind: Deployment
metadata:
  labels:
    app: {{ template "skywalking.name" . }}
    chart: {{ .Chart.Name }}-{{ .Chart.Version }}
    component: "{{ .Values.oap.name }}"
    heritage: {{ .Release.Service }}
    release: {{ .Release.Name }}
  name: {{ template "skywalking.oap.fullname" . }}
spec:
  replicas: {{ .Values.oap.replicas }}
  selector:
    matchLabels:
      app: {{ template "skywalking.name" . }}
      component: "{{ .Values.oap.name }}"
      release: {{ .Release.Name }}
  template:
    metadata:
      labels:
        app: {{ template "skywalking.name" . }}
        component: "{{ .Values.oap.name }}"
        release: {{ .Release.Name }}
        {{- if .Values.oap.podAnnotations }}
      annotations:
{{ toYaml .Values.oap.podAnnotations | indent 8 }}
        {{- end }}
    spec:
      serviceAccountName: {{ template "skywalking.serviceAccountName.oap" . }}
      affinity:
      {{- if eq .Values.oap.antiAffinity "hard" }}
        podAntiAffinity:
          requiredDuringSchedulingIgnoredDuringExecution:
            - topologyKey: "kubernetes.io/hostname"
              labelSelector:
                matchLabels:
                  app: "{{ template "skywalking.name" . }}"
                  release: "{{ .Release.Name }}"
                  component: "{{ .Values.oap.name }}"
      {{- else if eq .Values.oap.antiAffinity "soft" }}
        podAntiAffinity:
          preferredDuringSchedulingIgnoredDuringExecution:
          - weight: 1
            podAffinityTerm:
              topologyKey: kubernetes.io/hostname
              labelSelector:
                matchLabels:
                  app: "{{ template "skywalking.name" . }}"
                  release: "{{ .Release.Name }}"
                  component: "{{ .Values.oap.name }}"
      {{- end }}
      {{- with .Values.oap.nodeAffinity }}
        nodeAffinity:
{{ toYaml . | indent 10 }}
      {{- end }}
{{- if .Values.oap.nodeSelector }}
      nodeSelector:
{{ toYaml .Values.oap.nodeSelector | indent 8 }}
{{- end }}
{{- if .Values.oap.tolerations }}
      tolerations:
{{ toYaml .Values.oap.tolerations | indent 8 }}
{{- end }}
      initContainers:
      {{- include "skywalking.containers.wait-for-es" . | nindent 6 }}
      containers:
      - name: {{ .Values.oap.name }}
        image: "{{ .Values.oap.image.repository }}:{{ .Values.oap.image.tag }}"
        imagePullPolicy: {{ .Values.oap.image.pullPolicy }}
        ports:
        - containerPort: 11800
          name: grpc
        - containerPort: 12800
          name: rest
{{- if .Values.oap.resources }}
        resources:
{{ toYaml .Values.oap.resources | indent 10 }}
{{- end }}
        env:
        - name: JAVA_OPTS
          value: "{{ .Values.oap.javaOpts }} -Dmode=no-init"
        - name: SW_CLUSTER
          value: kubernetes
        - name: SW_CLUSTER_K8S_NAMESPACE
          value: "{{ .Release.Namespace }}"
        - name: SW_CLUSTER_K8S_LABEL
          value: "app={{ template "skywalking.name" . }},release={{ .Release.Name }},component={{ .Values.oap.name }}"
        - name: SKYWALKING_COLLECTOR_UID
          valueFrom:
            fieldRef:
              fieldPath: metadata.uid
        - name: SW_STORAGE
          value: elasticsearch
        {{- if .Values.oap.envoy.als.enabled }}
        - name: SW_ENVOY_ALS_ENABLED
          value: {{ .Values.oap.envoy.als.enabled | quote}}
        {{- end }}
        - name: SW_STORAGE_ES_CLUSTER_NODES
          value: "{{ include "call-nested" (list . "elasticsearch" "elasticsearch.client.fullname") }}:9200"
        {{- range $key, $value :=  .Values.oap.env }}
        - name: {{ $key }}
          value: {{ $value | quote }}
        {{- end }}