Skip to content

Commit

Permalink
ft: add cloudserver manager
Browse files Browse the repository at this point in the history
  • Loading branch information
Salim committed Jul 20, 2018
1 parent c160c55 commit 295fa42
Show file tree
Hide file tree
Showing 4 changed files with 157 additions and 75 deletions.
73 changes: 73 additions & 0 deletions charts/cloudserver-front/templates/_env.tpl
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
{{- define "cloudserver-front.env" }}
env:
- name: DATA_HOST
value: "{{- printf "%s-%s" .Release.Name "s3-data" | trunc 63 | trimSuffix "-" -}}"
- name: REDIS_HOST
value: "{{- printf "%s-%s" .Release.Name "redis" | trunc 63 | trimSuffix "-" -}}"
- name: REDIS_PORT
value: "6379"
- name: REDIS_HA_HOST
value: "{{- printf "%s-%s" .Release.Name "redis-ha-master-svc" | trunc 63 | trimSuffix "-" -}}"
- name: REDIS_HA_PORT
value: "6379"
- name: CRR_METRICS_HOST
value: "{{- printf "%s-%s" .Release.Name "backbeat-api" | trunc 63 | trimSuffix "-" -}}"
- name: CRR_METRICS_PORT
value: "8900"
- name: LOG_LEVEL
value: {{ .Values.logging.level }}
- name: ENDPOINT
value: "{{ .Release.Name }}-cloudserver-front,{{ .Values.endpoint }}"
- name: HEALTHCHECKS_ALLOWFROM
value: "{{ .Values.allowHealthchecksFrom }}"
{{- if .Values.storageLimit.enabled }}
- name: STORAGE_LIMIT_ENABLED
value: "true"
{{- end }}
{{- if .Values.proxy.http }}
- name: http_proxy
value: "{{ .Values.proxy.http }}"
- name: HTTP_PROXY
value: "{{ .Values.proxy.http }}"
- name: https_proxy
value: "{{- if .Values.proxy.https }}{{ .Values.proxy.https }}{{- else }}{{ .Values.proxy.http }}{{- end }}"
- name: HTTPS_PROXY
value: "{{- if .Values.proxy.https }}{{ .Values.proxy.https }}{{- else }}{{ .Values.proxy.http }}{{- end }}"
{{- else if .Values.proxy.https }}
- name: https_proxy
value: "{{ .Values.proxy.https }}"
- name: HTTPS_PROXY
value: "{{ .Values.proxy.https }}"
{{- end }}
{{- if .Values.proxy.caCert }}
- name: NODE_EXTRA_CA_CERTS
value: "/ssl/ca.crt"
{{- end }}
- name: S3METADATA
value: "mongodb"
- name: MONGODB_HOSTS
value: "{{ template "cloudserver-front.mongodb-hosts" . }}"
- name: MONGODB_RS
value: "{{ default "rs0" .Values.mongodb.replicaSet }}"
{{- if .Values.orbit.enabled }}
- name: REMOTE_MANAGEMENT_DISABLE
value: "0"
- name: MANAGEMENT_ENDPOINT
value: "{{- .Values.orbit.endpoint -}}"
- name: PUSH_ENDPOINT
value: "{{- .Values.orbit.pushEndpoint -}}"
{{- else }}
- name: REMOTE_MANAGEMENT_DISABLE
value: "1"
- name: SCALITY_ACCESS_KEY_ID
valueFrom:
secretKeyRef:
name: {{ template "cloudserver-front.fullname" . }}
key: keyId
- name: SCALITY_SECRET_ACCESS_KEY
valueFrom:
secretKeyRef:
name: {{ template "cloudserver-front.fullname" . }}
key: secretKey
{{- end }}
{{- end }}
78 changes: 6 additions & 72 deletions charts/cloudserver-front/templates/deployment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -30,79 +30,13 @@ spec:
ports:
- name: http
containerPort: 8000
env:
- name: DATA_HOST
value: "{{- printf "%s-%s" .Release.Name "s3-data" | trunc 63 | trimSuffix "-" -}}"
- name: REDIS_HOST
value: "{{- printf "%s-%s" .Release.Name "redis" | trunc 63 | trimSuffix "-" -}}"
- name: REDIS_PORT
value: "6379"
- name: REDIS_HA_HOST
value: "{{- printf "%s-%s" .Release.Name "redis-ha-master-svc" | trunc 63 | trimSuffix "-" -}}"
- name: REDIS_HA_PORT
value: "6379"
- name: CRR_METRICS_HOST
value: "{{- printf "%s-%s" .Release.Name "backbeat-api" | trunc 63 | trimSuffix "-" -}}"
- name: CRR_METRICS_PORT
value: "8900"
- name: LOG_LEVEL
value: {{ .Values.logging.level }}
- name: ENDPOINT
value: "{{ .Release.Name }}-cloudserver-front,{{ .Values.endpoint }}"
- name: HEALTHCHECKS_ALLOWFROM
value: "{{ .Values.allowHealthchecksFrom }}"
{{- if .Values.storageLimit.enabled }}
- name: STORAGE_LIMIT_ENABLED
value: "true"
{{- end }}
{{- if .Values.proxy.http }}
- name: http_proxy
value: "{{ .Values.proxy.http }}"
- name: HTTP_PROXY
value: "{{ .Values.proxy.http }}"
- name: https_proxy
value: "{{- if .Values.proxy.https }}{{ .Values.proxy.https }}{{- else }}{{ .Values.proxy.http }}{{- end }}"
- name: HTTPS_PROXY
value: "{{- if .Values.proxy.https }}{{ .Values.proxy.https }}{{- else }}{{ .Values.proxy.http }}{{- end }}"
{{- else if .Values.proxy.https }}
- name: https_proxy
value: "{{ .Values.proxy.https }}"
- name: HTTPS_PROXY
value: "{{ .Values.proxy.https }}"
{{- end }}
{{- if .Values.proxy.caCert }}
- name: NODE_EXTRA_CA_CERTS
value: "/ssl/ca.crt"
{{- end }}
- name: S3METADATA
value: "mongodb"
- name: MONGODB_HOSTS
value: "{{ template "cloudserver-front.mongodb-hosts" . }}"
- name: MONGODB_RS
value: "{{ default "rs0" .Values.mongodb.replicaSet }}"
{{- if .Values.orbit.enabled }}
- name: REMOTE_MANAGEMENT_DISABLE
value: "0"
- name: MANAGEMENT_ENDPOINT
value: "{{- .Values.orbit.endpoint -}}"
{{ include "cloudserver-front.env" . | indent 10 }}
- name: MANAGEMENT_MODE
value: "{{- .Values.orbit.mode -}}"
- name: PUSH_ENDPOINT
value: "{{- .Values.orbit.pushEndpoint -}}"
{{- else }}
- name: REMOTE_MANAGEMENT_DISABLE
value: "1"
- name: SCALITY_ACCESS_KEY_ID
valueFrom:
secretKeyRef:
name: {{ template "cloudserver-front.fullname" . }}
key: keyId
- name: SCALITY_SECRET_ACCESS_KEY
valueFrom:
secretKeyRef:
name: {{ template "cloudserver-front.fullname" . }}
key: secretKey
{{- end }}
value: "{{- .Values.orbit.workerMode -}}"
{{- range $key, $value := .Values.env }}
- name: {{ $key | upper | replace "." "_" }}
value: {{ $value | quote }}
{{- end }}
args: ['npm', 'run', 'start_s3server']
livenessProbe:
httpGet:
Expand Down
72 changes: 72 additions & 0 deletions charts/cloudserver-front/templates/manager-deployment.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
{{- if .Values.orbit.enabled -}}
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: {{ template "cloudserver-front.fullname" . }}-manager
labels:
app: {{ template "cloudserver-front.name" . }}
chart: {{ template "cloudserver-front.chart" . }}
release: {{ .Release.Name }}
heritage: {{ .Release.Service }}
spec:
replicas: 1
selector:
matchLabels:
app: {{ template "cloudserver-front.name" . }}
release: {{ .Release.Name }}
template:
metadata:
annotations:
{{- if .Values.proxy.https }}
checksum/config: {{ include (print $.Template.BasePath "/certificate.yaml") . | sha256sum }}
{{- end }}
labels:
app: {{ template "cloudserver-front.name" . }}
release: {{ .Release.Name }}
spec:
containers:
- name: manager
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
ports:
- name: http
containerPort: 8000
{{ include "cloudserver-front.env" . | indent 10 }}
- name: MANAGEMENT_MODE
value: "{{- .Values.orbit.managerMode -}}"
{{- range $key, $value := .Values.env }}
- name: {{ $key | upper | replace "." "_" }}
value: {{ $value | quote }}
{{- end }}
args: ['npm', 'run', 'start_s3server']
livenessProbe:
httpGet:
path: /_/healthcheck
port: http
volumeMounts:
{{- if .Values.proxy.caCert }}
- name: proxy-cert
mountPath: "/ssl"
readOnly: true
{{- end }}
resources:
{{ toYaml .Values.resources | indent 12 }}
{{- with .Values.nodeSelector }}
nodeSelector:
{{ toYaml . | indent 8 }}
{{- end }}
{{- with .Values.affinity }}
affinity:
{{ toYaml . | indent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{ toYaml . | indent 8 }}
{{- end }}
volumes:
{{- if .Values.proxy.caCert }}
- name: proxy-cert
secret:
secretName: {{ template "cloudserver-front.fullname" . }}-proxy
{{- end }}
{{- end}}
9 changes: 6 additions & 3 deletions charts/cloudserver-front/values.yaml
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
# Default values for cloudserver-front.
# Default values for cloudserver.
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.

orbit:
enabled: true
endpoint: https://api.zenko.io
pushEndpoint: https://push.api.zenko.io
mode: push
managerMode: push
workerMode: poll
# When 'orbit.enabled' is 'true', these aren't used, please use
# https://zenko.io to manage your deployment
storageLimit:
Expand All @@ -23,11 +24,13 @@ logging:

allowHealthchecksFrom: '0.0.0.0/0'

env: {}

mongodb:
replicaSet: rs0
replicas: 3

replicaCount: 1
replicaCount: 2

image:
repository: zenko/cloudserver
Expand Down

0 comments on commit 295fa42

Please sign in to comment.