mirror of
https://github.com/helm/charts.git
synced 2026-08-23 22:37:45 +00:00
[incubator/spring-cloud-data-flow] Update to new app version 1.3.0 (#3525)
* [incubator/spring-cloud-data-flow] Update to new app version 1.3.0 - Add new spring-cloud-skipper component - Add RBAC support - Update requirements versions * Updating chart for RBAC best practices * Addressing further review comments - use "scdf" prefix for name/fullname/serviceAccountName templates - remove namespace from Role definition - update to latest image tags for Data Flow server * Address review comments - add seviceAccount config to README - remove most port config options - move SPRING_APPLICATION_JSON to ConfigMap * Update Chart.yaml with latest release version * Adding names to container ports - refer to ports by name for services and probes - remove TCP protocol since it is the default - add probes for skipper deployment * Avoid warning message for skipper init-mysql-database init container * Modifying init container init-wait-mysql for skipper component * Fix env var references that include the release name - replaces any '-' characters with '_' to create valid env var references
This commit is contained in:
committed by
k8s-ci-robot
parent
ffcce6180f
commit
4eece2c7b7
@@ -1,12 +1,13 @@
|
||||
apiVersion: v1
|
||||
description: Open source, multi-cloud toolkit for building data integration and real-time data processing pipelines.
|
||||
description: Toolkit for building data processing pipelines.
|
||||
name: spring-cloud-data-flow
|
||||
version: 0.1.0
|
||||
appVersion: 1.2.2.RELEASE
|
||||
version: 0.2.0
|
||||
appVersion: 1.3.1.RELEASE
|
||||
home: http://cloud.spring.io/spring-cloud-dataflow/
|
||||
sources:
|
||||
- https://github.com/spring-cloud/spring-cloud-dataflow
|
||||
- https://github.com/spring-cloud/spring-cloud-dataflow-server-kubernetes
|
||||
- https://github.com/spring-cloud/spring-cloud-skipper
|
||||
- https://github.com/spring-cloud/spring-cloud-dataflow-metrics-collector
|
||||
icon: https://raw.githubusercontent.com/spring-cloud/spring-cloud-dataflow/master/spring-cloud-dataflow-docs/src/main/docbook/images/logo.png
|
||||
maintainers:
|
||||
|
||||
@@ -36,6 +36,19 @@ Note that this chart pulls in many different Docker images so can take a while t
|
||||
|
||||
The following tables lists the configurable parameters and their default values.
|
||||
|
||||
### RBAC Configuration
|
||||
|
||||
| Parameter | Description | Default |
|
||||
| ------------- | --------------------------- | ------------------------- |
|
||||
| rbac.create | Create RBAC configurations | true
|
||||
|
||||
### ServiceAccount Configuration
|
||||
|
||||
| Parameter | Description | Default |
|
||||
| --------------------- | ---------------------- | --------------------------- |
|
||||
| serviceAccount.create | Create ServiceAccount | true
|
||||
| serviceAccount.name | ServiceAccount name | (generated if not specified)
|
||||
|
||||
### Data Flow User Accounts
|
||||
|
||||
| Parameter | Description | Default |
|
||||
@@ -45,19 +58,25 @@ The following tables lists the configurable parameters and their default values.
|
||||
| dataflowRoles | The roles assigned to the primary user | ROLE_VIEW, ROLE_CREATE
|
||||
| dataflowAdminUsername | The username for the admin user | admin
|
||||
| dataflowAdminPassword | The password for the admin user | admin
|
||||
| dataflowAdminRoles | The roles assigned to the admin user ROLE_MANAGE, ROLE_VIEW
|
||||
| dataflowAdminRoles | The roles assigned to the admin user | ROLE_MANAGE, ROLE_VIEW
|
||||
|
||||
### Data Flow Server Configuration
|
||||
|
||||
| Parameter | Description | Default |
|
||||
| --------------------------------- | -------------------------------------------------- | ---------------- |
|
||||
| server.version | The version/tag of the Data Flow server | 1.2.2.RELEASE
|
||||
| server.version | The version/tag of the Data Flow server | 1.3.0.RELEASE
|
||||
| server.imagePullPolicy | The imagePullPolicy of the Data Flow server | IfNotPresent
|
||||
| server.service.type | The service type for the Data Flow server | LoadBalancer
|
||||
| server.service.externalPort | The external port for the Data Flow server | 80
|
||||
| server.service.internalPort | The internal port for the Data Flow server | 80
|
||||
| server.service.resources.limits | Data Flow server Resource limits | cpu: 1.0 memory: 2048Mi
|
||||
| server.service.resources.requests | Data Flow server Resource resuests | cpu: 0.5 memory: 1024Mi
|
||||
|
||||
### Skipper Server Configuration
|
||||
|
||||
| Parameter | Description | Default |
|
||||
| ---------------------------------- | ------------------------------------------------- | ---------------- |
|
||||
| skipper.version | The version/tag of the Skipper server | 1.0.0.RELEASE
|
||||
| skipper.imagePullPolicy | The imagePullPolicy of the Skipper server | IfNotPresent
|
||||
| skipper.platformName | The name of the configured platform account | minikube
|
||||
| skipper.service.type | The service type for the Skipper server | ClusterIP
|
||||
|
||||
### Metrics Server Configuration
|
||||
|
||||
@@ -66,23 +85,21 @@ The following tables lists the configurable parameters and their default values.
|
||||
| metrics.version | The version/tag of the Metrics server | 1.0.0.RELEASE
|
||||
| metrics.imagePullPolicy | The imagePullPolicy of the Metrics server | IfNotPresent
|
||||
| metrics.service.type | The service type for the Metrics server | ClusterIP
|
||||
| metrics.service.externalPort | The external port for the Metrics server | 80
|
||||
| metrics.service.internalPort | The internal port for the Metrics server | 80
|
||||
| metrics.service.resources.limits | Metrics server Resource limits | cpu: 1.0 memory: 1024Mi
|
||||
| metrics.service.resources.requests | Metrics server Resource limits | cpu: 0.5 memory: 640Mi
|
||||
|
||||
### Spring Cloud Deployer Configuration
|
||||
|
||||
| Parameter | Description | Default |
|
||||
| ------------------------------------------- | -------------------------------------- | ------------------------- |
|
||||
| deployer.resourceLimits.cpu | Deployer resource limit for cpu | 500m
|
||||
| deployer.resourceLimits.memory | Deployer resource limit for memory | 1024Mi
|
||||
| deployer.readinessProbe.initialDelaySeconds | Deployer readiness probe initial delay | 120
|
||||
| deployer.livenessProbe.initialDelaySeconds | Deployer liveness probe initial delay | 90
|
||||
|
||||
### Rabbit MQ Configuration
|
||||
### RabbitMQ Configuration
|
||||
|
||||
| Parameter | Description | Default |
|
||||
| -------------------------- | --------------------- | ------------------------- |
|
||||
| rabbitmq.rabbitmqUsername | Rebbit MQ user name | user
|
||||
| rabbitmq.rabbitmqUsername | RabbitMQ user name | user
|
||||
|
||||
### MySQL Configuration
|
||||
|
||||
|
||||
@@ -1,24 +1,12 @@
|
||||
dependencies:
|
||||
- condition: ""
|
||||
enabled: false
|
||||
import-values: null
|
||||
name: mysql
|
||||
- name: mysql
|
||||
repository: https://kubernetes-charts.storage.googleapis.com/
|
||||
tags: null
|
||||
version: 0.2.6
|
||||
- condition: ""
|
||||
enabled: false
|
||||
import-values: null
|
||||
name: redis
|
||||
version: 0.3.4
|
||||
- name: redis
|
||||
repository: https://kubernetes-charts.storage.googleapis.com/
|
||||
tags: null
|
||||
version: 0.7.0
|
||||
- condition: ""
|
||||
enabled: false
|
||||
import-values: null
|
||||
name: rabbitmq
|
||||
version: 1.1.11
|
||||
- name: rabbitmq
|
||||
repository: https://kubernetes-charts.storage.googleapis.com/
|
||||
tags: null
|
||||
version: 0.5.3
|
||||
digest: sha256:49551c5220854587689ffacf8ff53167aec2dd302593d163dcea2f6eb412b5a5
|
||||
generated: 2017-07-05T15:31:20.67673899-04:00
|
||||
version: 0.6.16
|
||||
digest: sha256:b16ffdc5da316b3a7e677d3a83670341b13670d7e59f8ce74d023a01df05f135
|
||||
generated: 2018-01-31T09:21:26.470351-05:00
|
||||
|
||||
@@ -1,10 +1,10 @@
|
||||
dependencies:
|
||||
- name: mysql
|
||||
version: 0.2.6
|
||||
version: 0.3.4
|
||||
repository: https://kubernetes-charts.storage.googleapis.com/
|
||||
- name: redis
|
||||
version: 0.7.0
|
||||
version: 1.1.11
|
||||
repository: https://kubernetes-charts.storage.googleapis.com/
|
||||
- name: rabbitmq
|
||||
version: 0.5.3
|
||||
version: 0.6.16
|
||||
repository: https://kubernetes-charts.storage.googleapis.com/
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ template "scdf.fullname" . }}-server -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
|
||||
echo http://$SERVICE_IP:{{ .Values.server.service.externalPort }}
|
||||
{{- else if contains "ClusterIP" .Values.service.type }}
|
||||
export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app={{ template "scdf.fullname" . }}-server" -> -l "app={{ template "name" . }},release={{ .Release.Name }},component=server"
|
||||
echo "Visit http://127.0.0.1:{{ .Values.server.service.internalPort }} to use your application"
|
||||
kubectl port-forward $POD_NAME {{ .Values.server.service.internalPort }}:{{ .Values.service.externalPort }}
|
||||
export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app={{ template "scdf.fullname" . }}-server" -> -l "app={{ template "scdf.name" . }},release={{ .Release.Name }},component=server"
|
||||
echo "Visit http://127.0.0.1:8080 to use your application"
|
||||
kubectl port-forward $POD_NAME 8080:{{ .Values.server.service.externalPort }}
|
||||
{{- end }}
|
||||
|
||||
@@ -2,19 +2,10 @@
|
||||
{{/*
|
||||
Expand the name of the chart.
|
||||
*/}}
|
||||
{{- define "name" -}}
|
||||
{{- define "scdf.name" -}}
|
||||
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create a default fully qualified app name.
|
||||
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||
*/}}
|
||||
{{- define "fullname" -}}
|
||||
{{- $name := default .Chart.Name .Values.nameOverride -}}
|
||||
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create a default short app name to use for resource naming.
|
||||
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||
@@ -25,10 +16,27 @@ We truncate at 63 chars because some Kubernetes name fields are limited to this
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create a default short app name to use for environment variables.
|
||||
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||
Create an uppercase app name to use for environment variables.
|
||||
*/}}
|
||||
{{- define "scdf.envname" -}}
|
||||
{{- $name := default "data-flow" .Values.appNameOverride -}}
|
||||
{{- printf "%s_%s" .Release.Name $name | upper | replace "-" "_" | trunc 63 | trimSuffix "_" -}}
|
||||
{{- printf "%s_%s" .Release.Name $name | upper | replace "-" "_" | trimSuffix "_" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create an uppercase release prefix to use for environment variables.
|
||||
*/}}
|
||||
{{- define "scdf.envrelease" -}}
|
||||
{{- printf "%s" .Release.Name | upper | replace "-" "_" | trimSuffix "_" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create the name of the service account to use
|
||||
*/}}
|
||||
{{- define "scdf.serviceAccountName" -}}
|
||||
{{- if .Values.serviceAccount.create -}}
|
||||
{{ default (include "scdf.fullname" .) .Values.serviceAccount.name }}
|
||||
{{- else -}}
|
||||
{{ default "default" .Values.serviceAccount.name }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
@@ -3,7 +3,7 @@ kind: Deployment
|
||||
metadata:
|
||||
name: {{ template "scdf.fullname" . }}-metrics
|
||||
labels:
|
||||
app: {{ template "name" . }}
|
||||
app: {{ template "scdf.name" . }}
|
||||
component: metrics
|
||||
chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
|
||||
release: "{{ .Release.Name }}"
|
||||
@@ -13,7 +13,7 @@ spec:
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: {{ template "name" . }}
|
||||
app: {{ template "scdf.name" . }}
|
||||
component: metrics
|
||||
release: "{{ .Release.Name }}"
|
||||
spec:
|
||||
@@ -22,30 +22,35 @@ spec:
|
||||
image: {{ .Values.metrics.image }}:{{ .Values.metrics.version }}
|
||||
imagePullPolicy: {{ .Values.metrics.imagePullPolicy }}
|
||||
ports:
|
||||
- containerPort: {{ .Values.metrics.service.internalPort }}
|
||||
- containerPort: 8080
|
||||
name: http
|
||||
resources:
|
||||
{{ toYaml .Values.metrics.resources | indent 10 }}
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
path: /health
|
||||
port: {{ .Values.metrics.service.internalPort }}
|
||||
initialDelaySeconds: 60
|
||||
timeoutSeconds: 10
|
||||
port: http
|
||||
initialDelaySeconds: 90
|
||||
periodSeconds: 15
|
||||
timeoutSeconds: 5
|
||||
readinessProbe:
|
||||
httpGet:
|
||||
path: /health
|
||||
port: {{ .Values.metrics.service.internalPort }}
|
||||
initialDelaySeconds: 30
|
||||
timeoutSeconds: 10
|
||||
port: http
|
||||
initialDelaySeconds: 60
|
||||
periodSeconds: 15
|
||||
timeoutSeconds: 5
|
||||
env:
|
||||
- name: SERVER_PORT
|
||||
value: '80'
|
||||
value: '8080'
|
||||
- name: SPRING_CLOUD_CONFIG_ENABLED
|
||||
value: 'false'
|
||||
- name: SECURITY_BASIC_ENABLED
|
||||
value: 'false'
|
||||
- name: SPRING_RABBITMQ_HOST
|
||||
value: '${{ printf "{%s" .Release.Name | upper }}_RABBITMQ_SERVICE_HOST}'
|
||||
value: '${{ printf "{" }}{{ template "scdf.envrelease" . }}_RABBITMQ_SERVICE_HOST}'
|
||||
- name: SPRING_RABBITMQ_PORT
|
||||
value: '${{ printf "{%s" .Release.Name | upper }}_RABBITMQ_SERVICE_PORT_AMPQ}'
|
||||
value: '${{ printf "{" }}{{ template "scdf.envrelease" . }}_RABBITMQ_SERVICE_PORT_AMQP}'
|
||||
- name: SPRING_RABBITMQ_USERNAME
|
||||
value: '{{ .Values.rabbitmq.rabbitmqUsername }}'
|
||||
- name: SPRING_RABBITMQ_PASSWORD
|
||||
@@ -53,3 +58,4 @@ spec:
|
||||
secretKeyRef:
|
||||
name: {{ printf "%s-%s" .Release.Name "rabbitmq" | trunc 63 | trimSuffix "-" }}
|
||||
key: rabbitmq-password
|
||||
serviceAccountName: {{ template "scdf.serviceAccountName" . }}
|
||||
|
||||
@@ -3,7 +3,7 @@ apiVersion: v1
|
||||
metadata:
|
||||
name: {{ template "scdf.fullname" . }}-metrics
|
||||
labels:
|
||||
app: {{ template "name" . }}
|
||||
app: {{ template "scdf.name" . }}
|
||||
component: metrics
|
||||
chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
|
||||
release: "{{ .Release.Name }}"
|
||||
@@ -11,11 +11,10 @@ metadata:
|
||||
spec:
|
||||
type: {{ .Values.metrics.service.type }}
|
||||
ports:
|
||||
- port: {{ .Values.metrics.service.externalPort }}
|
||||
targetPort: {{ .Values.metrics.service.internalPort }}
|
||||
protocol: TCP
|
||||
- port: 80
|
||||
targetPort: http
|
||||
name: http
|
||||
selector:
|
||||
app: {{ template "name" . }}
|
||||
app: {{ template "scdf.name" . }}
|
||||
component: metrics
|
||||
release: {{ .Release.Name }}
|
||||
|
||||
@@ -3,7 +3,7 @@ kind: Secret
|
||||
metadata:
|
||||
name: {{ template "scdf.fullname" . }}
|
||||
labels:
|
||||
app: {{ template "name" . }}
|
||||
app: {{ template "scdf.name" . }}
|
||||
chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
|
||||
release: "{{ .Release.Name }}"
|
||||
heritage: "{{ .Release.Service }}"
|
||||
|
||||
@@ -3,7 +3,7 @@ kind: ConfigMap
|
||||
metadata:
|
||||
name: {{ template "scdf.fullname" . }}-server
|
||||
labels:
|
||||
app: {{ template "name" . }}
|
||||
app: {{ template "scdf.name" . }}
|
||||
component: server
|
||||
chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
|
||||
release: "{{ .Release.Name }}"
|
||||
@@ -26,15 +26,15 @@ data:
|
||||
{{ .Values.dataflowUsername }}: ${data-flow-password}, {{ .Values.dataflowRoles }}
|
||||
deployer:
|
||||
kubernetes:
|
||||
environmentVariables: 'SPRING_RABBITMQ_HOST=${{ printf "{%s" .Release.Name | upper }}_RABBITMQ_SERVICE_HOST},SPRING_RABBITMQ_PORT=${{ printf "{%s" .Release.Name | upper }}_RABBITMQ_SERVICE_PORT_AMPQ},SPRING_RABBITMQ_USERNAME={{ .Values.rabbitmq.rabbitmqUsername }},SPRING_RABBITMQ_PASSWORD=${rabbitmq-password},SPRING_REDIS_HOST=${{ printf "{%s" .Release.Name | upper }}_REDIS_SERVICE_HOST},SPRING_REDIS_PORT=${{ printf "{%s" .Release.Name | upper }}_REDIS_SERVICE_PORT},SPRING_REDIS_PASSWORD=${redis-password}'
|
||||
environmentVariables: 'SPRING_RABBITMQ_HOST=${{ printf "{" }}{{ template "scdf.envrelease" . }}_RABBITMQ_SERVICE_HOST},SPRING_RABBITMQ_PORT=${{ printf "{" }}{{ template "scdf.envrelease" . }}_RABBITMQ_SERVICE_PORT_AMQP},SPRING_RABBITMQ_USERNAME={{ .Values.rabbitmq.rabbitmqUsername }},SPRING_RABBITMQ_PASSWORD=${rabbitmq-password},SPRING_REDIS_HOST=${{ printf "{" }}{{ template "scdf.envrelease" . }}_REDIS_SERVICE_HOST},SPRING_REDIS_PORT=${{ printf "{" }}{{ template "scdf.envrelease" . }}_REDIS_SERVICE_PORT},SPRING_REDIS_PASSWORD=${redis-password}'
|
||||
datasource:
|
||||
url: 'jdbc:mysql://${{ printf "{%s" .Release.Name | upper }}_MYSQL_SERVICE_HOST}:3306/dataflow'
|
||||
url: 'jdbc:mysql://${{ printf "{" }}{{ template "scdf.envrelease" . }}_MYSQL_SERVICE_HOST}:3306/dataflow'
|
||||
driverClassName: org.mariadb.jdbc.Driver
|
||||
username: root
|
||||
password: ${mysql-root-password}
|
||||
testOnBorrow: true
|
||||
validationQuery: "SELECT 1"
|
||||
redis:
|
||||
host: ${{ printf "{%s" .Release.Name | upper }}_REDIS_SERVICE_HOST}
|
||||
port: ${{ printf "{%s" .Release.Name | upper }}_REDIS_SERVICE_PORT}
|
||||
host: ${{ printf "{" }}{{ template "scdf.envrelease" . }}_REDIS_SERVICE_HOST}
|
||||
port: ${{ printf "{" }}{{ template "scdf.envrelease" . }}_REDIS_SERVICE_PORT}
|
||||
password: ${redis-password}
|
||||
|
||||
@@ -3,7 +3,7 @@ kind: Deployment
|
||||
metadata:
|
||||
name: {{ template "scdf.fullname" . }}-server
|
||||
labels:
|
||||
app: {{ template "name" . }}
|
||||
app: {{ template "scdf.name" . }}
|
||||
component: server
|
||||
chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
|
||||
release: "{{ .Release.Name }}"
|
||||
@@ -13,7 +13,7 @@ spec:
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: {{ template "name" . }}
|
||||
app: {{ template "scdf.name" . }}
|
||||
component: server
|
||||
release: "{{ .Release.Name }}"
|
||||
spec:
|
||||
@@ -44,13 +44,14 @@ spec:
|
||||
}
|
||||
]
|
||||
ports:
|
||||
- containerPort: {{ .Values.server.service.internalPort }}
|
||||
- containerPort: 8080
|
||||
name: http
|
||||
resources:
|
||||
{{ toYaml .Values.server.resources | indent 10 }}
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
path: /management/health
|
||||
port: {{ .Values.server.service.internalPort }}
|
||||
port: http
|
||||
httpHeaders:
|
||||
- name: Authorization
|
||||
value: 'Basic {{ printf "%s:%s" .Values.dataflowAdminUsername .Values.dataflowAdminPassword | b64enc }}'
|
||||
@@ -60,7 +61,7 @@ spec:
|
||||
readinessProbe:
|
||||
httpGet:
|
||||
path: /management/health
|
||||
port: {{ .Values.server.service.internalPort }}
|
||||
port: http
|
||||
httpHeaders:
|
||||
- name: Authorization
|
||||
value: 'Basic {{ printf "%s:%s" .Values.dataflowAdminUsername .Values.dataflowAdminPassword | b64enc }}'
|
||||
@@ -73,15 +74,17 @@ spec:
|
||||
fieldRef:
|
||||
fieldPath: "metadata.namespace"
|
||||
- name: SERVER_PORT
|
||||
value: '{{ .Values.server.service.internalPort }}'
|
||||
value: '8080'
|
||||
- name: SPRING_CLOUD_CONFIG_ENABLED
|
||||
value: 'false'
|
||||
- name: SPRING_CLOUD_DATAFLOW_FEATURES_ANALYTICS_ENABLED
|
||||
value: 'true'
|
||||
- name: SPRING_CLOUD_DEPLOYER_KUBERNETES_CREATE_DEPLOYMENT
|
||||
value: 'true'
|
||||
- name: SPRING_CLOUD_DEPLOYER_KUBERNETES_CPU
|
||||
value: '{{ .Values.deployer.resourceLimits.cpu }}'
|
||||
- name: SPRING_CLOUD_DEPLOYER_KUBERNETES_MEMORY
|
||||
value: 640Mi
|
||||
value: '{{ .Values.deployer.resourceLimits.memory }}'
|
||||
- name: SPRING_CLOUD_DEPLOYER_KUBERNETES_READINESS_PROBE_DELAY
|
||||
value: '{{ .Values.deployer.readinessProbe.initialDelaySeconds }}'
|
||||
- name: SPRING_CLOUD_DEPLOYER_KUBERNETES_LIVENESS_PROBE_DELAY
|
||||
@@ -92,6 +95,10 @@ spec:
|
||||
value: 'true'
|
||||
- name: SPRING_CLOUD_KUBERNETES_SECRETS_PATHS
|
||||
value: /etc/secrets
|
||||
- name: SPRING_CLOUD_DATAFLOW_FEATURES_SKIPPER_ENABLED
|
||||
value: 'true'
|
||||
- name: SPRING_CLOUD_SKIPPER_CLIENT_SERVER_URI
|
||||
value: 'http://${{ printf "{" }}{{ template "scdf.envname" . }}_SKIPPER_SERVICE_HOST}/api'
|
||||
- name: SPRING_CLOUD_DATAFLOW_METRICS_COLLECTOR_URI
|
||||
value: 'http://${{ printf "{" }}{{ template "scdf.envname" . }}_METRICS_SERVICE_HOST}'
|
||||
- name: SPRING_CLOUD_DATAFLOW_SERVER_URI
|
||||
@@ -125,3 +132,4 @@ spec:
|
||||
}
|
||||
}
|
||||
]
|
||||
serviceAccountName: {{ template "scdf.serviceAccountName" . }}
|
||||
|
||||
@@ -0,0 +1,41 @@
|
||||
{{- if .Values.rbac.create -}}
|
||||
kind: Role
|
||||
apiVersion: rbac.authorization.k8s.io/{{ required "A valid .Values.rbac.apiVersion entry required!" .Values.rbac.apiVersion }}
|
||||
metadata:
|
||||
name: {{ template "scdf.fullname" . }}
|
||||
labels:
|
||||
app: {{ template "scdf.name" . }}
|
||||
chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
|
||||
release: "{{ .Release.Name }}"
|
||||
heritage: "{{ .Release.Service }}"
|
||||
rules:
|
||||
- apiGroups: [""]
|
||||
resources: ["services", "pods", "replicationcontrollers", "persistentvolumeclaims"]
|
||||
verbs: ["get", "list", "watch", "create", "delete", "update"]
|
||||
- apiGroups: [""]
|
||||
resources: ["configmaps", "secrets"]
|
||||
verbs: ["get", "list", "watch"]
|
||||
- apiGroups: ["apps"]
|
||||
resources: ["statefulsets"]
|
||||
verbs: ["get", "list", "watch", "create", "delete", "update"]
|
||||
- apiGroups: ["extensions"]
|
||||
resources: ["deployments", "replicasets", "jobs"]
|
||||
verbs: ["get", "list", "watch", "create", "delete", "update", "patch"]
|
||||
---
|
||||
kind: RoleBinding
|
||||
apiVersion: rbac.authorization.k8s.io/{{ required "A valid .Values.rbac.apiVersion entry required!" .Values.rbac.apiVersion }}
|
||||
metadata:
|
||||
name: {{ template "scdf.fullname" . }}
|
||||
labels:
|
||||
app: {{ template "scdf.name" . }}
|
||||
chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
|
||||
release: "{{ .Release.Name }}"
|
||||
heritage: "{{ .Release.Service }}"
|
||||
roleRef:
|
||||
kind: Role
|
||||
name: {{ template "scdf.fullname" . }}
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: {{ template "scdf.serviceAccountName" . }}
|
||||
{{- end -}}
|
||||
@@ -3,7 +3,7 @@ apiVersion: v1
|
||||
metadata:
|
||||
name: {{ template "scdf.fullname" . }}-server
|
||||
labels:
|
||||
app: {{ template "name" . }}
|
||||
app: {{ template "scdf.name" . }}
|
||||
component: server
|
||||
chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
|
||||
release: "{{ .Release.Name }}"
|
||||
@@ -13,10 +13,9 @@ spec:
|
||||
type: {{ .Values.server.service.type }}
|
||||
ports:
|
||||
- port: {{ .Values.server.service.externalPort }}
|
||||
targetPort: {{ .Values.server.service.internalPort }}
|
||||
protocol: TCP
|
||||
targetPort: http
|
||||
name: http
|
||||
selector:
|
||||
app: {{ template "name" . }}
|
||||
app: {{ template "scdf.name" . }}
|
||||
component: server
|
||||
release: {{ .Release.Name }}
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
{{- if .Values.serviceAccount.create -}}
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: {{ template "scdf.serviceAccountName" . }}
|
||||
labels:
|
||||
app: {{ template "scdf.name" . }}
|
||||
chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
|
||||
release: "{{ .Release.Name }}"
|
||||
heritage: "{{ .Release.Service }}"
|
||||
{{- end -}}
|
||||
@@ -0,0 +1,12 @@
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: {{ template "scdf.fullname" . }}-skipper
|
||||
labels:
|
||||
app: {{ template "scdf.name" . }}
|
||||
component: skipper
|
||||
chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
|
||||
release: "{{ .Release.Name }}"
|
||||
heritage: "{{ .Release.Service }}"
|
||||
data:
|
||||
spring.application.json: '{"spring.cloud.skipper.server.enableLocalPlatform" : false, "spring.cloud.skipper.server.platform.kubernetes.accounts.{{ .Values.skipper.platformName }}.environmentVariables" : "SPRING_RABBITMQ_HOST=${{ printf "{" }}{{ template "scdf.envrelease" . }}_RABBITMQ_SERVICE_HOST},SPRING_RABBITMQ_PORT=${{ printf "{" }}{{ template "scdf.envrelease" . }}_RABBITMQ_SERVICE_PORT_AMQP},SPRING_RABBITMQ_USERNAME={{ .Values.rabbitmq.rabbitmqUsername }},SPRING_RABBITMQ_PASSWORD=${RABBITMQ_PASSWORD}","spring.cloud.skipper.server.platform.kubernetes.accounts.{{ .Values.skipper.platformName }}.memory" : "{{ .Values.deployer.resourceLimits.memory }}","spring.cloud.skipper.server.platform.kubernetes.accounts.{{ .Values.skipper.platformName }}.cpu" : "{{ .Values.deployer.resourceLimits.cpu }}","spring.cloud.skipper.server.platform.kubernetes.accounts.{{ .Values.skipper.platformName }}.createDeployment" : true}'
|
||||
@@ -0,0 +1,79 @@
|
||||
apiVersion: extensions/v1beta1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: {{ template "scdf.fullname" . }}-skipper
|
||||
labels:
|
||||
app: {{ template "scdf.name" . }}
|
||||
component: skipper
|
||||
chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
|
||||
release: "{{ .Release.Name }}"
|
||||
heritage: "{{ .Release.Service }}"
|
||||
spec:
|
||||
replicas: 1
|
||||
template:
|
||||
metadata:
|
||||
labels:
|
||||
app: {{ template "scdf.name" . }}
|
||||
component: skipper
|
||||
release: "{{ .Release.Name }}"
|
||||
spec:
|
||||
containers:
|
||||
- name: {{ template "scdf.fullname" . }}-skipper
|
||||
image: {{ .Values.skipper.image }}:{{ .Values.skipper.version }}
|
||||
imagePullPolicy: {{ .Values.skipper.imagePullPolicy }}
|
||||
ports:
|
||||
- containerPort: 7577
|
||||
name: http
|
||||
resources:
|
||||
{{ toYaml .Values.skipper.resources | indent 10 }}
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
path: /api/about
|
||||
port: http
|
||||
initialDelaySeconds: 90
|
||||
periodSeconds: 15
|
||||
timeoutSeconds: 5
|
||||
readinessProbe:
|
||||
httpGet:
|
||||
path: /api/about
|
||||
port: http
|
||||
initialDelaySeconds: 30
|
||||
periodSeconds: 15
|
||||
timeoutSeconds: 5
|
||||
env:
|
||||
- name: SPRING_DATASOURCE_URL
|
||||
value: 'jdbc:mysql://${{ printf "{" }}{{ template "scdf.envrelease" . }}_MYSQL_SERVICE_HOST}:3306/skipper'
|
||||
- name: SPRING_DATASOURCE_USERNAME
|
||||
value: root
|
||||
- name: SPRING_DATASOURCE_PASSWORD
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: {{ printf "%s-%s" .Release.Name "mysql" | trunc 63 | trimSuffix "-" }}
|
||||
key: mysql-root-password
|
||||
- name: SPRING_DATASOURCE_DRIVER_CLASS_NAME
|
||||
value: org.mariadb.jdbc.Driver
|
||||
- name: RABBITMQ_PASSWORD
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: {{ printf "%s-%s" .Release.Name "rabbitmq" | trunc 63 | trimSuffix "-" }}
|
||||
key: rabbitmq-password
|
||||
- name: SPRING_APPLICATION_JSON
|
||||
valueFrom:
|
||||
configMapKeyRef:
|
||||
name: {{ template "scdf.fullname" . }}-skipper
|
||||
key: spring.application.json
|
||||
value:
|
||||
initContainers:
|
||||
- name: init-mysql-wait
|
||||
image: busybox
|
||||
command: ['sh', '-c', 'until nc -w3 -z {{ printf "%s-%s" .Release.Name "mysql" | trunc 63 | trimSuffix "-" }} 3306; do echo waiting for mysql; sleep 3; done;']
|
||||
- name: init-mysql-database
|
||||
image: mysql:5.7.14
|
||||
env:
|
||||
- name: MYSQL_PWD
|
||||
valueFrom:
|
||||
secretKeyRef:
|
||||
name: {{ printf "%s-%s" .Release.Name "mysql" | trunc 63 | trimSuffix "-" }}
|
||||
key: mysql-root-password
|
||||
command: ['sh', '-c', 'mysql -h {{ printf "%s-%s" .Release.Name "mysql" | trunc 63 | trimSuffix "-" }} -u root -e "CREATE DATABASE IF NOT EXISTS skipper;"']
|
||||
serviceAccountName: {{ template "scdf.serviceAccountName" . }}
|
||||
@@ -0,0 +1,20 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: {{ template "scdf.fullname" . }}-skipper
|
||||
labels:
|
||||
app: {{ template "scdf.name" . }}
|
||||
component: skipper
|
||||
chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
|
||||
release: "{{ .Release.Name }}"
|
||||
heritage: "{{ .Release.Service }}"
|
||||
spec:
|
||||
type: {{ .Values.skipper.service.type }}
|
||||
ports:
|
||||
- port: 80
|
||||
targetPort: http
|
||||
name: http
|
||||
selector:
|
||||
app: {{ template "scdf.name" . }}
|
||||
component: skipper
|
||||
release: {{ .Release.Name }}
|
||||
@@ -7,14 +7,26 @@ dataflowRoles: ROLE_VIEW, ROLE_CREATE
|
||||
dataflowAdminUsername: admin
|
||||
dataflowAdminPassword: admin
|
||||
dataflowAdminRoles: ROLE_MANAGE, ROLE_VIEW
|
||||
|
||||
rbac:
|
||||
# Specifies whether RBAC resources should be created
|
||||
create: true
|
||||
apiVersion: v1beta1
|
||||
|
||||
serviceAccount:
|
||||
# Specifies whether a service account should be created
|
||||
create: true
|
||||
# The name of the service account to use.
|
||||
# If not set and create is true, a name is generated using the serviceAccountName template
|
||||
name:
|
||||
|
||||
server:
|
||||
image: springcloud/spring-cloud-dataflow-server-kubernetes
|
||||
version: 1.2.2.RELEASE
|
||||
version: 1.3.1.RELEASE
|
||||
imagePullPolicy: IfNotPresent
|
||||
service:
|
||||
type: LoadBalancer
|
||||
externalPort: 80
|
||||
internalPort: 80
|
||||
resources: {}
|
||||
# limits:
|
||||
# cpu: 1.0
|
||||
@@ -22,14 +34,14 @@ server:
|
||||
# requests:
|
||||
# cpu: 0.5
|
||||
# memory: 640Mi
|
||||
metrics:
|
||||
image: springcloud/metrics-collector-rabbit
|
||||
version: 1.0.0.RELEASE
|
||||
|
||||
skipper:
|
||||
image: springcloud/spring-cloud-skipper-server
|
||||
version: 1.0.1.RELEASE
|
||||
imagePullPolicy: IfNotPresent
|
||||
platformName: minikube
|
||||
service:
|
||||
type: ClusterIP
|
||||
externalPort: 80
|
||||
internalPort: 80
|
||||
resources: {}
|
||||
# limits:
|
||||
# cpu: 1.0
|
||||
@@ -37,12 +49,32 @@ metrics:
|
||||
# requests:
|
||||
# cpu: 0.5
|
||||
# memory: 640Mi
|
||||
|
||||
metrics:
|
||||
image: springcloud/metrics-collector-rabbit
|
||||
version: 1.0.0.RELEASE
|
||||
imagePullPolicy: IfNotPresent
|
||||
service:
|
||||
type: ClusterIP
|
||||
resources: {}
|
||||
# limits:
|
||||
# cpu: 1.0
|
||||
# memory: 1024Mi
|
||||
# requests:
|
||||
# cpu: 0.5
|
||||
# memory: 640Mi
|
||||
|
||||
deployer:
|
||||
resourceLimits:
|
||||
cpu: 500m
|
||||
memory: 1024Mi
|
||||
readinessProbe:
|
||||
initialDelaySeconds: 120
|
||||
livenessProbe:
|
||||
initialDelaySeconds: 90
|
||||
|
||||
rabbitmq:
|
||||
rabbitmqUsername: user
|
||||
|
||||
mysql:
|
||||
mysqlDatabase: dataflow
|
||||
|
||||
Reference in New Issue
Block a user