summaryrefslogtreecommitdiffstats
path: root/kubernetes/common/cmpv2Config/values.yaml
blob: 02595b348deedf0d2376dfdc6fb61e3054b6ce41 (plain)
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
# Copyright © 2020-2021 Nokia
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#       http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
global:

  # Enabling CMPv2
  cmpv2Enabled: true

  certificate:
    default:
      subject:
        organization: "Linux-Foundation"
        country: "US"
        locality: "San-Francisco"
        province: "California"
        organizationalUnit: "ONAP"

  platform:
    certificates:
      clientSecretName: oom-cert-service-client-tls-secret
      keystoreKeyRef: keystore.jks
      truststoreKeyRef: truststore.jks
      keystorePasswordSecretName: oom-cert-service-keystore-password
      keystorePasswordSecretKey: password
      truststorePasswordSecretName: oom-cert-service-truststore-password
      truststorePasswordSecretKey: password
    certPostProcessor:
      image: onap/org.onap.oom.platform.cert-service.oom-certservice-post-processor:2.3.3
Double */ .highlight .se { color: #0044dd; background-color: #fff0f0 } /* Literal.String.Escape */ .highlight .sh { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Heredoc */ .highlight .si { color: #3333bb; background-color: #fff0f0 } /* Literal.String.Interpol */ .highlight .sx { color: #22bb22; background-color: #f0fff0 } /* Literal.String.Other */ .highlight .sr { color: #008800; background-color: #fff0ff } /* Literal.String.Regex */ .highlight .s1 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Single */ .highlight .ss { color: #aa6600; background-color: #fff0f0 } /* Literal.String.Symbol */ .highlight .bp { color: #003388 } /* Name.Builtin.Pseudo */ .highlight .fm { color: #0066bb; font-weight: bold } /* Name.Function.Magic */ .highlight .vc { color: #336699 } /* Name.Variable.Class */ .highlight .vg { color: #dd7700 } /* Name.Variable.Global */ .highlight .vi { color: #3333bb } /* Name.Variable.Instance */ .highlight .vm { color: #336699 } /* Name.Variable.Magic */ .highlight .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */ }
{{/*
# Copyright © 2020 Bitnami, AT&T, Amdocs, Bell Canada, highstreet technologies
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#       http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
*/}}

apiVersion: apps/v1
kind: StatefulSet
{{ $role := "master" -}}
{{ $suffix := $role -}}
{{ $labels := (dict "role" $role "discovery" .Values.cluster_name) -}}
metadata: {{- include "common.resourceMetadata" (dict "suffix" $suffix "labels" $labels "dot" . )| nindent 2 }}
spec:
  updateStrategy:
    type: {{ .Values.updateStrategy.type }}
    {{- if (eq "OnDelete" .Values.updateStrategy.type) }}
    rollingUpdate: null
    {{- end }}
  selector: {{- include "common.selectors" (dict "matchLabels" $labels "dot" .)| nindent 4 }}
  serviceName: {{ include "common.fullname" . }}-master
  replicas: {{ .Values.replicaCount }}
  template:
    metadata: {{- include "common.templateMetadata" (dict "labels" $labels "dot" .) | nindent 6 }}
    spec:
      imagePullSecrets:
      - name: "{{ include "common.namespace" . }}-docker-registry-key"
      {{- if .Values.affinity }}
      affinity: {{- include "common.tplValue" (dict "value" .Values.affinity "context" $) | nindent 8 }}
      {{- end }}
      {{- if .Values.nodeSelector }}
      nodeSelector: {{- include "common.tplValue" (dict "value" .Values.nodeSelector "context" $) | nindent 8 }}
      {{- end }}
      {{- if .Values.tolerations }}
      tolerations: {{- include "common.tplValue" (dict "value" .Values.tolerations "context" $) | nindent 8 }}
      {{- end }}
      {{- if .Values.securityContext.enabled }}
      securityContext:
        fsGroup: {{ .Values.securityContext.fsGroup }}
      {{- end }}
      {{- if or .Values.sysctlImage.enabled (and .Values.volumePermissions.enabled .Values.persistence.enabled) }}
      initContainers:
        {{- if .Values.sysctlImage.enabled }}
        ## Image that performs the sysctl operation to modify Kernel settings (needed sometimes to avoid boot errors)
        - name: sysctl
          image: {{ include "repositoryGenerator.image.busybox" . }}
          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
          command:
            - /bin/sh
            - -c
            - |
              set -o errexit
              set -o pipefail
              set -o nounset
              sysctl -w vm.max_map_count=262144 && sysctl -w fs.file-max=65536
          securityContext:
            privileged: true
        {{- end }}
        {{- if and .Values.volumePermissions.enabled .Values.persistence.enabled }}
        - name: volume-permissions
          image: {{ include "repositoryGenerator.image.busybox" . }}
          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
          command:
            - /bin/sh
            - -c
            - |
              chown -R {{ .Values.securityContext.runAsUser }}:{{ .Values.securityContext.fsGroup }} //bitnami/elasticsearch/data
          securityContext:
            runAsUser: 0
          {{- if .Values.volumePermissions.resource }}
          resources: {{- toYaml .Values.volumePermissions.resources | nindent 12 }}
          {{- end }}
          volumeMounts:
            - name: data
              mountPath: "/bitnami/elasticsearch/data"
        {{- end }}
      {{- end }}
      containers:
        - name: {{ include "common.name" . }}-master
          image: {{ printf "%s/%s" (include "repositoryGenerator.dockerHubRepository" .)  .Values.image }}
          imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
          {{- if .Values.securityContext.enabled }}
          securityContext:
            runAsUser: {{ .Values.securityContext.runAsUser }}
          {{- end }}
          env:
            - name: BITNAMI_DEBUG
              value: {{ ternary "true" "false" .Values.debug | quote }}
            - name: ELASTICSEARCH_CLUSTER_NAME
              value: {{ .Values.cluster_name }}
            - name: ELASTICSEARCH_CLUSTER_HOSTS
              value: {{ include "common.name" . }}-discovery
            - name: ELASTICSEARCH_CLUSTER_MASTER_HOSTS
              {{- $elasticsearchMasterFullname := printf "%s-%s" (include "common.fullname" . ) "master" }}
              {{- $replicas := int .Values.replicaCount }}
              value: {{range $i, $e := until $replicas }}{{ $elasticsearchMasterFullname }}-{{ $e }} {{ end }}
            - name: ELASTICSEARCH_MINIMUM_MASTER_NODES
              value: {{ add (div .Values.replicaCount 2) 1 | quote }}
            {{- if .Values.plugins }}
            - name: ELASTICSEARCH_PLUGINS
              value: {{ .Values.plugins | quote }}
            {{- end }}
            - name: ELASTICSEARCH_HEAP_SIZE
              value: {{ .Values.heapSize | quote }}
            - name: ELASTICSEARCH_IS_DEDICATED_NODE
              value: {{ .Values.dedicatednode | quote }}
            - name: ELASTICSEARCH_NODE_TYPE
              value: "master"
          ports: {{- include "common.containerPorts" . |indent 12 }}
          {{- if .Values.livenessProbe.enabled }}
          livenessProbe:
            initialDelaySeconds: {{ .Values.livenessProbe.initialDelaySeconds }}
            periodSeconds: {{ .Values.livenessProbe.periodSeconds }}
            timeoutSeconds: {{ .Values.livenessProbe.timeoutSeconds }}
            successThreshold: {{ .Values.livenessProbe.successThreshold }}
            failureThreshold: {{ .Values.livenessProbe.failureThreshold }}
            httpGet:
              path: /_cluster/health?local=true
              port: 9200
          {{- end }}
          {{- if .Values.readinessProbe.enabled }}
          readinessProbe:
            initialDelaySeconds: {{ .Values.livenessProbe.initialDelaySeconds }}
            periodSeconds: {{ .Values.livenessProbe.periodSeconds }}
            timeoutSeconds: {{ .Values.livenessProbe.timeoutSeconds }}
            successThreshold: {{ .Values.livenessProbe.successThreshold }}
            failureThreshold: {{ .Values.livenessProbe.failureThreshold }}
            httpGet:
              path: /_cluster/health?local=true
              port: 9200
          {{- end }}
          {{- if .Values.resources }}
          resources: {{- toYaml .Values.resources | nindent 12 }}
          {{- end }}
          volumeMounts:
            {{- if .Values.config }}
            - mountPath: /opt/bitnami/elasticsearch/config/elasticsearch.yml
              name: config
              subPath: elasticsearch.yml
            {{- end }}
            - name: data
              mountPath: /bitnami/elasticsearch/data
            {{- if .Values.extraVolumeMounts }}
            {{- toYaml .Values.extraVolumeMounts | nindent 12 }}
            {{- end }}
      volumes:
        {{- if .Values.config }}
        - name: config
          configMap:
            name: {{ include "common.fullname" . }}
        {{- end }}
        {{- if .Values.extraVolumes }}
        {{- toYaml .Values.extraVolumes | nindent 8 }}
        {{- end }}
{{- if not .Values.persistence.enabled }}
        - name: "data"
          emptyDir: {}
{{- else }}
  volumeClaimTemplates:
    - metadata:
        name: "data"
        {{- if .Values.persistence.annotations }}
        annotations: {{- toYaml .Values.persistence.annotations | nindent 10 }}
        {{- end }}
      spec:
        accessModes:
          - {{ .Values.persistence.accessMode }}
        storageClassName: {{ include "common.storageClass" (dict "dot" . "suffix" .Values.persistence.suffix) }}
        resources:
          requests:
            storage: {{ .Values.persistence.size | quote }}
{{- end }}