summaryrefslogtreecommitdiffstats
path: root/deployments/helm/v2/emco/etcd
diff options
context:
space:
mode:
Diffstat (limited to 'deployments/helm/v2/emco/etcd')
-rw-r--r--deployments/helm/v2/emco/etcd/.helmignore21
-rw-r--r--deployments/helm/v2/emco/etcd/Chart.yaml24
-rw-r--r--deployments/helm/v2/emco/etcd/requirements.yaml18
-rw-r--r--deployments/helm/v2/emco/etcd/templates/pv.yaml27
-rw-r--r--deployments/helm/v2/emco/etcd/templates/service.yaml37
-rw-r--r--deployments/helm/v2/emco/etcd/templates/statefulset.yaml236
-rw-r--r--deployments/helm/v2/emco/etcd/values.yaml76
7 files changed, 0 insertions, 439 deletions
diff --git a/deployments/helm/v2/emco/etcd/.helmignore b/deployments/helm/v2/emco/etcd/.helmignore
deleted file mode 100644
index f0c13194..00000000
--- a/deployments/helm/v2/emco/etcd/.helmignore
+++ /dev/null
@@ -1,21 +0,0 @@
-# Patterns to ignore when building packages.
-# This supports shell glob matching, relative path matching, and
-# negation (prefixed with !). Only one pattern per line.
-.DS_Store
-# Common VCS dirs
-.git/
-.gitignore
-.bzr/
-.bzrignore
-.hg/
-.hgignore
-.svn/
-# Common backup files
-*.swp
-*.bak
-*.tmp
-*~
-# Various IDEs
-.project
-.idea/
-*.tmproj
diff --git a/deployments/helm/v2/emco/etcd/Chart.yaml b/deployments/helm/v2/emco/etcd/Chart.yaml
deleted file mode 100644
index 210b3279..00000000
--- a/deployments/helm/v2/emco/etcd/Chart.yaml
+++ /dev/null
@@ -1,24 +0,0 @@
-# Copyright © 2019 Intel Corporation
-#
-# 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: v1
-name: etcd
-home: https://github.com/coreos/etcd
-version: 3.2.26
-appVersion: 2.2.5
-description: Distributed reliable key-value store for the most critical data of a
- distributed system.
--icon: https://raw.githubusercontent.com/coreos/etcd/master/logos/etcd-horizontal-color.png
-sources:
-- https://github.com/coreos/etcd
diff --git a/deployments/helm/v2/emco/etcd/requirements.yaml b/deployments/helm/v2/emco/etcd/requirements.yaml
deleted file mode 100644
index 9802dac4..00000000
--- a/deployments/helm/v2/emco/etcd/requirements.yaml
+++ /dev/null
@@ -1,18 +0,0 @@
-# Copyright © 2017 Amdocs, Bell Canada
-# Modifications Copyright © 2018 Orange
-#
-# 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
-dependencies:
- - name: common
- version: ~0.x-0
- repository: 'file://../common'
diff --git a/deployments/helm/v2/emco/etcd/templates/pv.yaml b/deployments/helm/v2/emco/etcd/templates/pv.yaml
deleted file mode 100644
index f0cf59ce..00000000
--- a/deployments/helm/v2/emco/etcd/templates/pv.yaml
+++ /dev/null
@@ -1,27 +0,0 @@
-{{ if .Values.persistence.enabled }}
-{{- $root := . -}}
-{{ range $i, $e := until (int $root.Values.replicaCount) }}
----
-apiVersion: v1
-kind: PersistentVolume
-metadata:
- name: {{ include "common.fullname" $root }}-data-{{ $i }}
- namespace: {{ $root.Release.Namespace }}
- labels:
- type: {{ $root.Values.persistence.storageType }}
- app: {{ include "common.fullname" $root }}
- chart: {{ $root.Chart.Name }}-{{ $root.Chart.Version | replace "+" "_" }}
- release: {{ $root.Release.Name }}
- heritage: {{ $root.Release.Service }}
-spec:
- capacity:
- storage: {{ $root.Values.persistence.storage }}
- accessModes:
- - {{ $root.Values.persistence.accessMode }}
- storageClassName: "{{ include "common.fullname" $root }}-data"
- hostPath:
- path: {{ $root.Values.persistence.mountPath }}/{{ $root.Release.Name }}/{{ $root.Values.persistence.mountSubPath }}-{{ $i }}
- persistentVolumeReclaimPolicy: {{ $root.Values.persistence.volumeReclaimPolicy }}
-{{ end }}
-{{ end }}
-
diff --git a/deployments/helm/v2/emco/etcd/templates/service.yaml b/deployments/helm/v2/emco/etcd/templates/service.yaml
deleted file mode 100644
index 692faa9f..00000000
--- a/deployments/helm/v2/emco/etcd/templates/service.yaml
+++ /dev/null
@@ -1,37 +0,0 @@
-# Copyright 2019 Intel Corporation Inc
-#
-# 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: v1
-kind: Service
-metadata:
- annotations:
- service.alpha.kubernetes.io/tolerate-unready-endpoints: "true"
-metadata:
- name: {{ include "common.servicename" . }}
- labels:
- heritage: "{{ .Release.Service }}"
- release: "{{ .Release.Name }}"
- chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
- app: {{ include "common.name" . }}
-spec:
- ports:
- - name: {{ .Values.service.peerPortName }}
- port: {{ .Values.service.peerInternalPort }}
- - name: {{ .Values.service.clientPortName }}
- port: {{ .Values.service.clientInternalPort }}
- clusterIP: None
- selector:
- app: {{ include "common.name" . }}
- release: "{{ .Release.Name }}"
-
diff --git a/deployments/helm/v2/emco/etcd/templates/statefulset.yaml b/deployments/helm/v2/emco/etcd/templates/statefulset.yaml
deleted file mode 100644
index d0387f8e..00000000
--- a/deployments/helm/v2/emco/etcd/templates/statefulset.yaml
+++ /dev/null
@@ -1,236 +0,0 @@
-# Copyright © 2019 Intel Corporation Inc
-#
-# 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
-metadata:
- name: {{ include "common.fullname" . }}
- labels:
- heritage: "{{ .Release.Service }}"
- release: "{{ .Release.Name }}"
- chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
- app: {{ include "common.name" . }}
-spec:
- serviceName: {{ include "common.servicename" .}}
- replicas: {{ .Values.replicaCount }}
- selector:
- matchLabels:
- release: "{{ .Release.Name }}"
- app: {{ include "common.name" . }}
- template:
- metadata:
- labels:
- release: "{{ .Release.Name }}"
- app: {{ include "common.name" . }}
- spec:
-{{- if .Values.affinity }}
- affinity:
-{{ toYaml .Values.affinity | indent 8 }}
-{{- end }}
-{{- if .Values.nodeSelector }}
- nodeSelector:
-{{ toYaml .Values.nodeSelector | indent 8 }}
-{{- end }}
-{{- if .Values.tolerations }}
- tolerations:
-{{ toYaml .Values.tolerations | indent 8 }}
-{{- end }}
- containers:
- - name: {{ include "common.fullname" . }}
- image: "{{ .Values.repository }}/{{ .Values.image }}"
- imagePullPolicy: "{{ .Values.pullPolicy }}"
- ports:
- - containerPort: {{ .Values.service.peerInternalPort }}
- name: {{ .Values.service.peerPortName }}
- - containerPort: {{ .Values.service.clientInternalPort }}
- name: {{ .Values.service.clientPortName }}
- {{- if eq .Values.liveness.enabled true }}
- livenessProbe:
- tcpSocket:
- port: {{ .Values.service.clientInternalPort }}
- initialDelaySeconds: {{ .Values.liveness.initialDelaySeconds }}
- periodSeconds: {{ .Values.liveness.periodSeconds }}
- timeoutSeconds: {{ .Values.liveness.timeoutSeconds }}
- {{ end }}
- resources:
-{{ include "common.resources" . | indent 10 }}
- env:
- - name: INITIAL_CLUSTER_SIZE
- value: {{ .Values.replicaCount | quote }}
- - name: SET_NAME
- value: {{ include "common.fullname" . }}
- - name: SERVICE_NAME
- value: {{ include "common.servicename" . }}
-{{- if .Values.extraEnv }}
-{{ toYaml .Values.extraEnv | indent 8 }}
-{{- end }}
- lifecycle:
- preStop:
- exec:
- command:
- - "/bin/sh"
- - "-ec"
- - |
- EPS=""
- for i in $(seq 0 $((${INITIAL_CLUSTER_SIZE} - 1))); do
- EPS="${EPS}${EPS:+,}http://${SET_NAME}-${i}.${SERVICE_NAME}:2379"
- done
-
- HOSTNAME=$(hostname)
-
- member_hash() {
- etcdctl member list | grep http://${HOSTNAME}.${SERVICE_NAME}:2380 | cut -d':' -f1 | cut -d'[' -f1
- }
-
- SET_ID=${HOSTNAME##*[^0-9]}
-
- if [ "${SET_ID}" -ge ${INITIAL_CLUSTER_SIZE} ]; then
- echo "Removing ${HOSTNAME} from etcd cluster"
- ETCDCTL_ENDPOINT=${EPS} etcdctl member remove $(member_hash)
- if [ $? -eq 0 ]; then
- # Remove everything otherwise the cluster will no longer scale-up
- rm -rf /var/run/etcd/*
- fi
- fi
- command:
- - "/bin/sh"
- - "-ec"
- - |
- HOSTNAME=$(hostname)
-
- # store member id into PVC for later member replacement
- collect_member() {
- while ! etcdctl member list &>/dev/null; do sleep 1; done
- etcdctl member list | grep http://${HOSTNAME}.${SERVICE_NAME}:2380 | cut -d':' -f1 | cut -d'[' -f1 > /var/run/etcd/member_id
- exit 0
- }
-
- eps() {
- EPS=""
- for i in $(seq 0 $((${INITIAL_CLUSTER_SIZE} - 1))); do
- EPS="${EPS}${EPS:+,}http://${SET_NAME}-${i}.${SERVICE_NAME}:2379"
- done
- echo ${EPS}
- }
-
- member_hash() {
- etcdctl member list | grep http://${HOSTNAME}.${SERVICE_NAME}:2380 | cut -d':' -f1 | cut -d'[' -f1
- }
-
- # we should wait for other pods to be up before trying to join
- # otherwise we got "no such host" errors when trying to resolve other members
- for i in $(seq 0 $((${INITIAL_CLUSTER_SIZE} - 1))); do
- while true; do
- echo "Waiting for ${SET_NAME}-${i}.${SERVICE_NAME} to come up"
- ping -W 1 -c 1 ${SET_NAME}-${i}.${SERVICE_NAME} > /dev/null && break
- sleep 1s
- done
- done
-
- # re-joining after failure?
- if [[ -e /var/run/etcd/default.etcd && -f /var/run/etcd/member_id ]]; then
- echo "Re-joining etcd member"
- member_id=$(cat /var/run/etcd/member_id)
-
- # re-join member
- ETCDCTL_ENDPOINT=$(eps) etcdctl member update ${member_id} http://${HOSTNAME}.${SERVICE_NAME}:2380 | true
- exec etcd --name ${HOSTNAME} \
- --listen-peer-urls http://0.0.0.0:2380 \
- --listen-client-urls http://0.0.0.0:2379\
- --advertise-client-urls http://${HOSTNAME}.${SERVICE_NAME}:2379 \
- --data-dir /var/run/etcd/default.etcd
- fi
-
- # etcd-SET_ID
- SET_ID=${HOSTNAME##*[^0-9]}
-
- # adding a new member to existing cluster (assuming all initial pods are available)
- if [ "${SET_ID}" -ge ${INITIAL_CLUSTER_SIZE} ]; then
- export ETCDCTL_ENDPOINT=$(eps)
-
- # member already added?
- MEMBER_HASH=$(member_hash)
- if [ -n "${MEMBER_HASH}" ]; then
- # the member hash exists but for some reason etcd failed
- # as the datadir has not be created, we can remove the member
- # and retrieve new hash
- etcdctl member remove ${MEMBER_HASH}
- fi
-
- echo "Adding new member"
- etcdctl member add ${HOSTNAME} http://${HOSTNAME}.${SERVICE_NAME}:2380 | grep "^ETCD_" > /var/run/etcd/new_member_envs
-
- if [ $? -ne 0 ]; then
- echo "Exiting"
- rm -f /var/run/etcd/new_member_envs
- exit 1
- fi
-
- cat /var/run/etcd/new_member_envs
- source /var/run/etcd/new_member_envs
-
- collect_member &
-
- exec etcd --name ${HOSTNAME} \
- --listen-peer-urls http://0.0.0.0:2380 \
- --listen-client-urls http://0.0.0.0:2379 \
- --advertise-client-urls http://${HOSTNAME}.${SERVICE_NAME}:2379 \
- --data-dir /var/run/etcd/default.etcd \
- --initial-advertise-peer-urls http://${HOSTNAME}.${SERVICE_NAME}:2380 \
- --initial-cluster ${ETCD_INITIAL_CLUSTER} \
- --initial-cluster-state ${ETCD_INITIAL_CLUSTER_STATE}
- fi
-
- PEERS=""
- for i in $(seq 0 $((${INITIAL_CLUSTER_SIZE} - 1))); do
- PEERS="${PEERS}${PEERS:+,}${SET_NAME}-${i}=http://${SET_NAME}-${i}.${SERVICE_NAME}:2380"
- done
-
- collect_member &
-
- # join member
- exec etcd --name ${HOSTNAME} \
- --initial-advertise-peer-urls http://${HOSTNAME}.${SERVICE_NAME}:2380 \
- --listen-peer-urls http://0.0.0.0:2380 \
- --listen-client-urls http://0.0.0.0:2379 \
- --advertise-client-urls http://${HOSTNAME}.${SERVICE_NAME}:2379 \
- --initial-cluster-token etcd-cluster-1 \
- --initial-cluster ${PEERS} \
- --initial-cluster-state new \
- --data-dir /var/run/etcd/default.etcd
- volumeMounts:
- - name: {{ include "common.fullname" . }}-data
- mountPath: /var/run/etcd
- {{- if .Values.persistence.enabled }}
- volumeClaimTemplates:
- - metadata:
- name: {{ include "common.fullname" . }}-data
- spec:
- accessModes:
- - "{{ .Values.persistence.accessMode }}"
- resources:
- requests:
- # upstream recommended max is 700M
- storage: "{{ .Values.persistence.storage }}"
- storageClassName: {{ include "common.fullname" . }}-data
- {{- else }}
- volumes:
- - name: {{ include "common.fullname" . }}-data
- {{- if .Values.memoryMode }}
- emptyDir:
- medium: Memory
- {{- else }}
- emptyDir: {}
- {{- end }}
- {{- end }}
-
diff --git a/deployments/helm/v2/emco/etcd/values.yaml b/deployments/helm/v2/emco/etcd/values.yaml
deleted file mode 100644
index 682af0d5..00000000
--- a/deployments/helm/v2/emco/etcd/values.yaml
+++ /dev/null
@@ -1,76 +0,0 @@
-# Copyright © 2019 Intel Corporation, Inc
-#
-# 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 configuration defaults.
-#################################################################
-global:
- nodePortPrefix: 302
- persistence: {}
-
-#################################################################
-# Application configuration defaults.
-#################################################################
-
-#repository: etcd
-repository: "k8s.gcr.io"
-image: "etcd-amd64:3.3.17"
-pullPolicy: Always
-
-# default number of instances in the StatefulSet
-replicaCount: 1
-
-nodeSelector: {}
-
-affinity: {}
-
-# probe configuration parameters
-liveness:
- initialDelaySeconds: 90
- periodSeconds: 30
- timeoutSeconds: 5
- # necessary to disable liveness probe when setting breakpoints
- # in debugger so K8s doesn't restart unresponsive container
- enabled: true
-
-persistence:
- enabled: false
- volumeReclaimPolicy: Retain
- accessMode: ReadWriteMany
- storageType: hostPath
- storage: 1Gi
- mountPath: /dockerdata-nfs
- mountSubPath: "etcd/data"
-
-## This is only available when persistentVolume is false:
-## If persistentVolume is not enabled, one can choose to use memory mode for ETCD by setting memoryMode to "true".
-## The system will create a volume with "medium: Memory"
-memoryMode: false
-
-service:
- name: emco-etcd
- peerInternalPort: 2380
- peerPortName: etcd-server
- clientInternalPort : 2379
- clientPortName: etcd-client
-
-## Node labels and tolerations for pod assignment
-## ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#nodeselector
-## ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#taints-and-tolerations-beta-feature
-nodeSelector: {}
-tolerations: []
-affinity: {}
-extraEnv: []
-resources: {}
-