summaryrefslogtreecommitdiffstats
path: root/kubernetes/dcaegen2/components/dcae-cloudify-manager/templates
diff options
context:
space:
mode:
Diffstat (limited to 'kubernetes/dcaegen2/components/dcae-cloudify-manager/templates')
-rw-r--r--kubernetes/dcaegen2/components/dcae-cloudify-manager/templates/configmap.yaml60
-rw-r--r--kubernetes/dcaegen2/components/dcae-cloudify-manager/templates/deployment.yaml205
-rw-r--r--kubernetes/dcaegen2/components/dcae-cloudify-manager/templates/job.yaml46
-rw-r--r--kubernetes/dcaegen2/components/dcae-cloudify-manager/templates/namespace.yaml29
-rw-r--r--kubernetes/dcaegen2/components/dcae-cloudify-manager/templates/pv.yaml44
-rw-r--r--kubernetes/dcaegen2/components/dcae-cloudify-manager/templates/pvc.yaml34
-rw-r--r--kubernetes/dcaegen2/components/dcae-cloudify-manager/templates/secret.yaml47
-rw-r--r--kubernetes/dcaegen2/components/dcae-cloudify-manager/templates/service.yaml78
8 files changed, 0 insertions, 543 deletions
diff --git a/kubernetes/dcaegen2/components/dcae-cloudify-manager/templates/configmap.yaml b/kubernetes/dcaegen2/components/dcae-cloudify-manager/templates/configmap.yaml
deleted file mode 100644
index 806b06ed8a..0000000000
--- a/kubernetes/dcaegen2/components/dcae-cloudify-manager/templates/configmap.yaml
+++ /dev/null
@@ -1,60 +0,0 @@
-{{/*
-#============LICENSE_START========================================================
-# ================================================================================
-# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
-# Modifications Copyright © 2018 Amdocs, Bell Canada
-# Copyright (c) 2021 J. F. Lucas. All rights reserved.
-# ================================================================================
-# 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.
-# ============LICENSE_END=========================================================
-*/}}
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ include "common.fullname" . }}-configmap
- namespace: {{ include "common.namespace" . }}
-data:
-{{ tpl (.Files.Glob "resources/config/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ include "common.fullname" . }}-plugins
- namespace: {{ include "common.namespace" . }}
-data:
-{{ tpl (.Files.Glob "resources/config/plugins/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ include "common.release" . }}-dcae-filebeat-configmap
- namespace: {{include "common.namespace" . }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/*").AsConfig . | indent 2 }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ .Values.multisiteConfigMapName }}
- namespace: {{include "common.namespace" . }}
-{{ if .Values.dcae_ns }}
----
-apiVersion: v1
-kind: ConfigMap
-metadata:
- name: {{ include "common.release" . }}-dcae-filebeat-configmap
- namespace: {{ .Values.dcae_ns }}
-data:
-{{ tpl (.Files.Glob "resources/config/log/*").AsConfig . | indent 2 }}
-{{ end }}
-
diff --git a/kubernetes/dcaegen2/components/dcae-cloudify-manager/templates/deployment.yaml b/kubernetes/dcaegen2/components/dcae-cloudify-manager/templates/deployment.yaml
deleted file mode 100644
index f5fc9cac30..0000000000
--- a/kubernetes/dcaegen2/components/dcae-cloudify-manager/templates/deployment.yaml
+++ /dev/null
@@ -1,205 +0,0 @@
-{{/*
-#============LICENSE_START========================================================
-# ================================================================================
-# Copyright (c) 2018-2020 AT&T Intellectual Property. All rights reserved.
-# Modifications Copyright © 2018 Amdocs, Bell Canada
-# Copyright (c) 2020-2021 J. F. Lucas. All rights reserved.
-# ================================================================================
-# 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.
-# ============LICENSE_END=========================================================
-*/}}
-
-apiVersion: apps/v1
-kind: Deployment
-metadata:
- name: {{ include "common.fullname" . }}
- namespace: {{ include "common.namespace" . }}
- labels:
- app: {{ include "common.name" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ include "common.release" . }}
- heritage: {{ .Release.Service }}
-spec:
- replicas: 1
- selector:
- matchLabels:
- app: {{ include "common.name" . }}
- template:
- metadata:
- labels:
- app: {{ include "common.name" . }}
- release: {{ include "common.release" . }}
- spec:
- # host alias allows local 'cfy' command to use https and match
- # the host name in the certificate
- hostAliases:
- - ip: "127.0.0.1"
- hostnames:
- - "dcae-cloudify-manager"
- # Cloudify requires a fixed hostname across restarts
- hostname: dcae-cloudify-manager
- initContainers:
- - name: {{ include "common.name" . }}-readiness
- image: {{ include "repositoryGenerator.image.readiness" . }}
- imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
- command:
- - /app/ready.py
- args:
- - --container-name
- - aaf-cm
- - --container-name
- - consul-server
- - "-t"
- - "15"
- env:
- - name: NAMESPACE
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: metadata.namespace
- - name: {{ include "common.name" . }}-multisite-init
- image: {{ include "repositoryGenerator.repository" . }}/{{ .Values.multisiteInitImage }}
- imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
- args:
- - --namespace
- - {{ include "common.namespace" . }}
- - --configmap
- - {{ .Values.multisiteConfigMapName }}
- - name: init-consul
- image: {{ include "repositoryGenerator.repository" . }}/{{ .Values.global.consulLoaderImage }}
- imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
- args:
- - --key
- - k8s-plugin|/plugin-configs/k8s-plugin.json
- - --key
- - dmaap-plugin|/plugin-configs/dmaap-plugin.json
- resources: {}
- volumeMounts:
- - mountPath: /plugin-configs
- name: plugin-configs
- - name: init-tls
- env:
- - name: POD_IP
- valueFrom:
- fieldRef:
- apiVersion: v1
- fieldPath: status.podIP
- - name: aaf_locator_fqdn
- value: dcae
- image: {{ include "repositoryGenerator.repository" . }}/{{ .Values.global.tlsImage }}
- imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
- resources: {}
- volumeMounts:
- - mountPath: /opt/app/osaaf
- name: tls-info
- {{- if .Values.persistence.enabled }}
- - name: remove-lost-found
- image: {{ include "repositoryGenerator.image.busybox" . }}
- imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
- volumeMounts:
- - mountPath: /cfy-persist
- name: cm-persistent
- command:
- - /bin/sh
- args:
- - -c
- - "rm -rf '/cfy-persist/lost+found';"
- {{- end }}
- containers:
- - name: {{ include "common.name" . }}
- image: {{ include "repositoryGenerator.repository" . }}/{{ .Values.image }}
- imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
- env:
- - name: REQUESTS_CA_BUNDLE
- value: "/opt/onap/certs/cacert.pem"
- resources:
-{{ include "common.resources" . | indent 12 }}
- ports:
- - containerPort: {{ .Values.service.internalPort }}
- # disable liveness probe when breakpoints set in debugger
- # so K8s doesn't restart unresponsive container
- {{- if eq .Values.liveness.enabled true }}
- livenessProbe:
- tcpSocket:
- port: {{ .Values.service.internalPort }}
- initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
- periodSeconds: {{ .Values.liveness.periodSeconds }}
- timeoutSeconds: {{ .Values.liveness.timeoutSeconds }}
- {{ end }}
- readinessProbe:
- exec:
- command:
- - /scripts/readiness-check.sh
- initialDelaySeconds: {{ .Values.readiness.initialDelaySeconds }}
- periodSeconds: {{ .Values.readiness.periodSeconds }}
- timeoutSeconds: {{ .Values.readiness.timeoutSeconds }}
- volumeMounts:
- - mountPath: /opt/onap/config.txt
- subPath: config.txt
- name: {{ include "common.fullname" .}}-config
- readOnly: true
- - mountPath: /opt/onap/kube
- name: {{ include "common.fullname" .}}-kubeconfig
- readOnly: true
- - mountPath: /secret
- name: dcae-token
- readOnly: true
- - mountPath: /sys/fs/cgroup
- name: {{ include "common.fullname" . }}-cgroup
- readOnly: true
- - mountPath: /etc/localtime
- name: localtime
- readOnly: true
- - mountPath: /cfy-persist
- name: cm-persistent
- - mountPath: /opt/onap/certs
- name: tls-info
- - mountPath: /opt/onap/cm-secrets
- name: cm-secrets
- readOnly: true
- securityContext:
- privileged: True
- serviceAccountName: {{ include "common.fullname" (dict "suffix" "create" "dot" . )}}
- volumes:
- - name: {{ include "common.fullname" . }}-config
- configMap:
- name: {{ include "common.fullname" . }}-configmap
- - name: {{ include "common.fullname" .}}-kubeconfig
- configMap:
- name: {{ .Values.multisiteConfigMapName }}
- - name: plugin-configs
- configMap:
- name: {{ include "common.fullname" . }}-plugins
- - name: dcae-token
- secret:
- secretName: dcae-token
- - name: {{ include "common.fullname" . }}-cgroup
- hostPath:
- path: /sys/fs/cgroup
- - name: localtime
- hostPath:
- path: /etc/localtime
- - name: cm-persistent
- {{- if .Values.persistence.enabled }}
- persistentVolumeClaim:
- claimName: {{ include "common.fullname" . }}-data
- {{- else }}
- emptyDir: {}
- {{- end }}
- - emptyDir: {}
- name: tls-info
- - name: cm-secrets
- secret:
- secretName: {{ include "common.secret.getSecretNameFast" (dict "global" . "uid" "cm-pass") }}
- imagePullSecrets:
- - name: "{{ include "common.namespace" . }}-docker-registry-key"
diff --git a/kubernetes/dcaegen2/components/dcae-cloudify-manager/templates/job.yaml b/kubernetes/dcaegen2/components/dcae-cloudify-manager/templates/job.yaml
deleted file mode 100644
index f01edd240b..0000000000
--- a/kubernetes/dcaegen2/components/dcae-cloudify-manager/templates/job.yaml
+++ /dev/null
@@ -1,46 +0,0 @@
-{{/*
-#============LICENSE_START========================================================
-# ================================================================================
-# Copyright (c) 2019 AT&T Intellectual Property. All rights reserved.
-# ================================================================================
-# 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.
-# ============LICENSE_END=========================================================
-*/}}
-apiVersion: batch/v1
-kind: Job
-metadata:
- name: {{ include "common.fullname" . }}-cleanup
- namespace: {{ include "common.namespace" . }}
- labels:
- app: {{ include "common.name" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ include "common.release" . }}
- heritage: {{ .Release.Service }}
- annotations:
- "helm.sh/hook": pre-delete
- "helm.sh/hook-delete-policy": hook-succeeded,hook-failed
-spec:
- template:
- metadata:
- name: {{ include "common.fullname" . }}-cleanup
- labels:
- app: {{ include "common.name" . }}
- release: {{ include "common.release" . }}
- spec:
- imagePullSecrets:
- - name: "{{ include "common.namespace" . }}-docker-registry-key"
- restartPolicy: Never
- containers:
- - name: dcae-cleanup
- image: {{ include "repositoryGenerator.repository" . }}/{{ .Values.cleanupImage }}
- imagePullPolicy: {{ .Values.global.pullPolicy | default .Values.pullPolicy }}
diff --git a/kubernetes/dcaegen2/components/dcae-cloudify-manager/templates/namespace.yaml b/kubernetes/dcaegen2/components/dcae-cloudify-manager/templates/namespace.yaml
deleted file mode 100644
index 960ec786b2..0000000000
--- a/kubernetes/dcaegen2/components/dcae-cloudify-manager/templates/namespace.yaml
+++ /dev/null
@@ -1,29 +0,0 @@
-{{/*
-#============LICENSE_START========================================================
-# ================================================================================
-# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
-# Modifications Copyright © 2018 Amdocs, Bell Canada
-# ================================================================================
-# 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.
-# ============LICENSE_END=========================================================
-*/}}
-{{ if .Values.dcae_ns}}
-# Create the namespace
-apiVersion: v1
-kind: Namespace
-metadata:
- name: {{ .Values.dcae_ns }}
-spec:
- finalizers:
- - kubernetes
-{{ end }}
diff --git a/kubernetes/dcaegen2/components/dcae-cloudify-manager/templates/pv.yaml b/kubernetes/dcaegen2/components/dcae-cloudify-manager/templates/pv.yaml
deleted file mode 100644
index 95c841a9fd..0000000000
--- a/kubernetes/dcaegen2/components/dcae-cloudify-manager/templates/pv.yaml
+++ /dev/null
@@ -1,44 +0,0 @@
-{{/*
-#============LICENSE_START========================================================
-# ================================================================================
-# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
-# Modifications Copyright © 2018 Amdocs, Bell Canada
-# ================================================================================
-# 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.
-# ============LICENSE_END=========================================================
-*/}}
-
-{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) }}
-{{- if eq "True" (include "common.needPV" .) }}
-kind: PersistentVolume
-apiVersion: v1
-metadata:
- name: {{ include "common.fullname" . }}
- namespace: {{ include "common.namespace" . }}
- labels:
- app: {{ include "common.name" . }}
- chart: "{{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}"
- release: "{{ include "common.release" . }}"
- heritage: "{{ .Release.Service }}"
- name: {{ include "common.fullname" . }}
-spec:
- capacity:
- storage: {{ .Values.persistence.size }}
- accessModes:
- - {{ .Values.persistence.accessMode }}
- persistentVolumeReclaimPolicy: {{ .Values.persistence.volumeReclaimPolicy }}
- storageClassName: "{{ include "common.fullname" . }}-data"
- hostPath:
- path: {{ .Values.global.persistence.mountPath | default .Values.persistence.mountPath }}/{{ include "common.release" . }}/{{ .Values.persistence.mountSubPath }}
-{{- end -}}
-{{- end -}}
diff --git a/kubernetes/dcaegen2/components/dcae-cloudify-manager/templates/pvc.yaml b/kubernetes/dcaegen2/components/dcae-cloudify-manager/templates/pvc.yaml
deleted file mode 100644
index 3fbdc91d66..0000000000
--- a/kubernetes/dcaegen2/components/dcae-cloudify-manager/templates/pvc.yaml
+++ /dev/null
@@ -1,34 +0,0 @@
-{{/*
-# ================================================================================
-# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
-# ================================================================================
-# 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.
-# ============LICENSE_END=========================================================
-*/}}
-
-{{- if and .Values.persistence.enabled (not .Values.persistence.existingClaim) }}
-kind: PersistentVolumeClaim
-apiVersion: v1
-metadata:
- name: {{ include "common.fullname" . }}-data
- labels:
- name: {{ include "common.fullname" . }}
- namespace: {{ include "common.namespace" . }}
-spec:
- accessModes:
- - {{ .Values.persistence.accessMode }}
- storageClassName: {{ include "common.storageClass" . }}
- resources:
- requests:
- storage: {{ .Values.persistence.size }}
-{{- end -}}
diff --git a/kubernetes/dcaegen2/components/dcae-cloudify-manager/templates/secret.yaml b/kubernetes/dcaegen2/components/dcae-cloudify-manager/templates/secret.yaml
deleted file mode 100644
index 91666c1422..0000000000
--- a/kubernetes/dcaegen2/components/dcae-cloudify-manager/templates/secret.yaml
+++ /dev/null
@@ -1,47 +0,0 @@
-{{/*
-#============LICENSE_START========================================================
-# ================================================================================
-# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
-# Modifications Copyright © 2018 Amdocs, Bell Canada
-# ================================================================================
-# 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.
-# ============LICENSE_END=========================================================
-*/}}
-
-{{ if .Values.dcae_ns}}
-apiVersion: v1
-kind: Secret
-metadata:
- name: {{ include "common.namespace" . }}-docker-registry-key
- namespace: {{ .Values.dcae_ns }}
- labels:
- app: {{ include "common.name" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ include "common.release" . }}
- heritage: {{ .Release.Service }}
-data:
- .dockercfg: {{ include "repositoryGenerator.secret" . }}
-type: kubernetes.io/dockercfg
----
-{{ end }}
-# Copy of the API token secret, needed to work around /var/run/secrets mount problem
-apiVersion: v1
-kind: Secret
-metadata:
- name: dcae-token
- namespace: {{ include "common.namespace" . }}
- annotations:
- kubernetes.io/service-account.name: default
-type: kubernetes.io/service-account-token
----
-{{ include "common.secretFast" . }}
diff --git a/kubernetes/dcaegen2/components/dcae-cloudify-manager/templates/service.yaml b/kubernetes/dcaegen2/components/dcae-cloudify-manager/templates/service.yaml
deleted file mode 100644
index 3a28616687..0000000000
--- a/kubernetes/dcaegen2/components/dcae-cloudify-manager/templates/service.yaml
+++ /dev/null
@@ -1,78 +0,0 @@
-{{/*
-#============LICENSE_START========================================================
-# ================================================================================
-# Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
-# Modifications Copyright © 2018 Amdocs, Bell Canada
-# ================================================================================
-# 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.
-# ============LICENSE_END=========================================================
-*/}}
-
-apiVersion: v1
-kind: Service
-metadata:
- name: {{ include "common.servicename" . }}
- namespace: {{ include "common.namespace" . }}
- labels:
- app: {{ include "common.name" . }}
- chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }}
- release: {{ include "common.release" . }}
- heritage: {{ .Release.Service }}
-spec:
- type: {{ .Values.service.type }}
- ports:
- {{if eq .Values.service.type "NodePort" -}}
- - port: {{ .Values.service.externalPort }}
- nodePort: {{ .Values.global.nodePortPrefix | default .Values.nodePortPrefix }}{{ .Values.service.nodePort }}
- name: {{ .Values.service.name }}
- {{- else -}}
- - port: {{ .Values.service.externalPort }}
- targetPort: {{ .Values.service.internalPort }}
- name: {{ .Values.service.name }}
- {{- end}}
- selector:
- app: {{ include "common.name" . }}
- release: {{ include "common.release" . }}
-{{ if .Values.dcae_ns}}
----
-# Make consul visible inside DCAE component namespace under a well-known name
-apiVersion: v1
-kind: Service
-metadata:
- name: consul
- namespace: {{ .Values.dcae_ns }}
-spec:
- type: ExternalName
- externalName: {{ .Values.config.address.consul.host }}.{{ include "common.namespace" . }}.svc.cluster.local
----
-# Make Cloudify Manager visible inside DCAE component namespace under a well-known name
-apiVersion: v1
-kind: Service
-metadata:
- name: {{ include "common.servicename" . }}
- namespace: {{ .Values.dcae_ns }}
-spec:
- type: ExternalName
- externalName: {{ .Values.service.name }}.{{ include "common.namespace" . }}.svc.cluster.local
-{{ end }}
----
-# Provide alternate name for consul in common namespace to support CM plugin discovery
-apiVersion: v1
-kind: Service
-metadata:
- name: consul
- namespace: {{ include "common.namespace" . }}
-spec:
- type: ExternalName
- externalName: {{ .Values.config.address.consul.host }}.{{ include "common.namespace" . }}.svc.cluster.local
----