Commit 0a92af26 by Guangbo Chen

update mongodb chart to use offical image and fixed the gke ingress issue of relevant charts

parent 7897c337
apiVersion: v1
description: EFK(Elasticsearch + FluentBit + Kibana)
name: efk
version: 0.1.0
version: 0.1.1
icon: https://image.slidesharecdn.com/challengesinamicroservicesage-170505115849/95/challenges-in-a-microservices-age-monitoring-logging-and-tracing-on-red-hat-openshift-68-638.jpg
sources:
- https://www.elastic.co/products/elasticsearch
......
......@@ -23,6 +23,9 @@ spec:
{{- end }}
spec:
serviceAccountName: {{ template "elasticsearch.fullname" . }}
securityContext:
runAsUser: 1000
fsGroup: 1000
{{- if eq .Values.master.antiAffinity "hard" }}
affinity:
podAntiAffinity:
......
......@@ -20,7 +20,7 @@ spec:
- host: {{ $host }}
http:
paths:
- path: /
- path:
backend:
serviceName: {{ $serviceName }}
servicePort: {{ $servicePort }}
......
......@@ -84,7 +84,7 @@ questions:
type: hostname
required: true
label: Hostname
- variable: server.type
- variable: service.type
default: "NodePort"
description: "Grafana service type"
type: enum
......
......@@ -105,8 +105,8 @@ questions:
type: hostname
required: true
label: Hostname
- variable: yarn.server.type
default: "ClusterIP"
- variable: yarn.service.type
default: "NodePort"
description: "yarn ui service type"
type: enum
group: "YARN UI"
......@@ -150,8 +150,8 @@ questions:
required: true
label: Hostname
show_if: "zeppelin.enabled=true"
- variable: zeppelin.server.type
default: "ClusterIP"
- variable: zeppelin.service.type
default: "NodePort"
description: "yarn ui service type"
type: enum
group: "Zeppelin"
......
......@@ -68,7 +68,6 @@ questions:
- "NodePort"
required: true
label: MariaDB Service Type
# show_if: "ingress.enabled=false"
show_subquestion_if: "NodePort"
group: "Services and Load Balancing"
subquestions:
......@@ -106,17 +105,3 @@ questions:
required: true
label: Enable Metrics
group: "MariaDB Settings"
# - variable: ingress.enabled
# default: "true"
# description: "Expose app using Layer 7 Load Balancer - ingress"
# type: boolean
# label: Expose app using Layer 7 Load Balancer
# show_subquestion_if: true
# group: "Services and Load Balancing"
# subquestions:
# - variable: ingress.host
# default: "xip.io"
# description: "layer 7 Load Balancer hostname"
# type: hostname
# required: true
# label: Layer 7 Load Balancer Hostname
{{- if .Values.ingress.enabled }}
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: {{ .Release.Name }}-ingress
labels:
app: {{ .Release.Name }}-ingress
annotations:
{{- if .Values.ingress.tls }}
ingress.kubernetes.io/secure-backends: "true"
{{- end }}
{{- range $key, $value := .Values.ingress.annotations }}
{{ $key }}: {{ $value | quote }}
{{- end }}
spec:
rules:
- host: {{ .Values.ingress.host }}
http:
paths:
- path: {{ default "/" .Values.ingress.path }}
backend:
serviceName: {{ template "mariadb.fullname" . }}
servicePort: 3306
{{- if .Values.ingress.tls }}
tls:
- hosts:
- {{ .Values.ingress.host }}
secretName: {{ .Values.ingress.tlsSecret }}
{{- end }}
{{- end }}
{{- if .Values.ingress.enabled }}
{{- range .Values.ingress.secrets }}
apiVersion: v1
kind: Secret
metadata:
name: {{ .Release.Name }}
labels:
app: {{ .Release.Name }}
type: kubernetes.io/tls
data:
tls.crt: {{ .certificate | b64enc }}
tls.key: {{ .key | b64enc }}
---
{{- end }}
{{- end }}
......@@ -108,42 +108,3 @@ securitySettings:
enabled: true
runAsUser: 1001
fsGroup: 1001
ingress:
## Set to true to enable ingress record generation
enabled: false
host: xip.io
## Set this to true in order to enable TLS on the ingress record
## A side effect of this will be that the backend service will be connected at port 443
tls: false
## If TLS is set to true, you must declare what secret will store the key/certificate for TLS
tlsSecret: app.local-tls
## Ingress annotations done as key:value pairs
## If you're using kube-lego, you will want to add:
## kubernetes.io/tls-acme: true
##
## For a full list of possible ingress annotations, please see
## ref: https://github.com/kubernetes/ingress-nginx/blob/master/docs/annotations.md
##
## If tls is set to true, annotation ingress.kubernetes.io/secure-backends: "true" will automatically be set
annotations:
# kubernetes.io/ingress.class: nginx
# kubernetes.io/tls-acme: true
secrets:
## If you're providing your own certificates, please use this to add the certificates as secrets
## key and certificate should start with -----BEGIN CERTIFICATE----- or
## -----BEGIN RSA PRIVATE KEY-----
##
## name should line up with a tlsSecret set further up
## If you're using kube-lego, this is unneeded, as it will create the secret for you if it is not set
##
## It is also possible to create and manage the certificates outside of this helm chart
## Please see README.md for more information
# - name: app.local-tls
# key:
# certificate:
......@@ -60,17 +60,3 @@ questions:
- "vv"
- "vvv"
required: true
# - variable: ingress.enabled
# default: "true"
# description: "Expose app using Layer 7 Load Balancer - ingress"
# type: boolean
# label: Expose app using Layer 7 Load Balancer
# show_subquestion_if: true
# group: "Layer 7 Load Balancer"
# subquestions:
# - variable: ingress.host
# default: "xip.io"
# description: "layer 7 Load Balancer hostname"
# type: hostname
# required: true
# label: Layer 7 Load Balancer Hostname
{{- if .Values.ingress.enabled }}
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: {{ .Release.Name }}-ingress
labels:
app: {{ .Release.Name }}-ingress
annotations:
{{- if .Values.ingress.tls }}
ingress.kubernetes.io/secure-backends: "true"
{{- end }}
{{- range $key, $value := .Values.ingress.annotations }}
{{ $key }}: {{ $value | quote }}
{{- end }}
spec:
rules:
- host: {{ .Values.ingress.host }}
http:
paths:
- path: {{ default "/" .Values.ingress.path }}
backend:
serviceName: {{ template "memcached.fullname" . }}
servicePort: 11211
{{- if .Values.ingress.tls }}
tls:
- hosts:
- {{ .Values.ingress.host }}
secretName: {{ .Values.ingress.tlsSecret }}
{{- end }}
{{- end }}
{{- if .Values.ingress.enabled }}
{{- range .Values.ingress.secrets }}
apiVersion: v1
kind: Secret
metadata:
name: {{ .Release.Name }}
labels:
app: {{ .Release.Name }}
type: kubernetes.io/tls
data:
tls.crt: {{ .certificate | b64enc }}
tls.key: {{ .key | b64enc }}
---
{{- end }}
{{- end }}
......@@ -35,44 +35,3 @@ resources:
requests:
memory: 64Mi
cpu: 50m
ingress:
## Set to true to enable ingress record generation
enabled: false
host: xip.io
## Set this to true in order to enable TLS on the ingress record
## A side effect of this will be that the backend service will be connected at port 443
tls: false
## If TLS is set to true, you must declare what secret will store the key/certificate for TLS
tlsSecret: memcached.local-tls
## Ingress annotations done as key:value pairs
## If you're using kube-lego, you will want to add:
## kubernetes.io/tls-acme: true
##
## For a full list of possible ingress annotations, please see
## ref: https://github.com/kubernetes/ingress-nginx/blob/master/docs/annotations.md
##
## If tls is set to true, annotation ingress.kubernetes.io/secure-backends: "true" will automatically be set
annotations:
# kubernetes.io/ingress.class: nginx
# kubernetes.io/tls-acme: true
secrets:
## If you're providing your own certificates, please use this to add the certificates as secrets
## key and certificate should start with -----BEGIN CERTIFICATE----- or
## -----BEGIN RSA PRIVATE KEY-----
##
## name should line up with a tlsSecret set further up
## If you're using kube-lego, this is unneeded, as it will create the secret for you if it is not set
##
## It is also possible to create and manage the certificates outside of this helm chart
## Please see README.md for more information
# - name: memcached.local-tls
# key:
# certificate:
{{- if .Values.ingress.enabled }}
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: {{ .Release.Name }}-ingress
labels:
app: {{ .Release.Name }}-ingress
annotations:
{{- if .Values.ingress.tls }}
ingress.kubernetes.io/secure-backends: "true"
{{- end }}
{{- range $key, $value := .Values.ingress.annotations }}
{{ $key }}: {{ $value | quote }}
{{- end }}
spec:
rules:
- host: {{ .Values.ingress.host }}
http:
paths:
- path: {{ default "/" .Values.ingress.path }}
backend:
serviceName: {{ template "mongodb.fullname" . }}
servicePort: 27017
{{- if .Values.ingress.tls }}
tls:
- hosts:
- {{ .Values.ingress.host }}
secretName: {{ .Values.ingress.tlsSecret }}
{{- end }}
{{- end }}
{{- if .Values.ingress.enabled }}
{{- range .Values.ingress.secrets }}
apiVersion: v1
kind: Secret
metadata:
name: {{ .Release.Name }}
labels:
app: {{ .Release.Name }}
type: kubernetes.io/tls
data:
tls.crt: {{ .certificate | b64enc }}
tls.key: {{ .key | b64enc }}
---
{{- end }}
{{- end }}
name: mongodb
version: 2.0.1
appVersion: 3.7.3
version: 2.0.2
appVersion: 3.6.5
description: NoSQL document-oriented database that stores JSON-like documents with dynamic schemas, simplifying the integration of data in content-driven applications.
keywords:
- mongodb
......
......@@ -11,17 +11,17 @@ questions:
group: "Container Images"
subquestions:
- variable: image.repository
default: "bitnami/mongodb"
default: "mongo"
description: "MongoDB image name"
type: string
label: MongoDB Image Name
- variable: image.tag
default: "3.7.3"
default: "3.6.5"
description: "MongoDB image tag"
type: string
label: Image Tag
- variable: auth.enabled
default: "false"
default: false
description: "Enabling access control on a MongoDB deployment enforces authentication, requiring users to identify themselves"
type: boolean
label: Enable Auth
......@@ -29,34 +29,27 @@ questions:
show_subquestion_if: true
group: "MongoDB Settings"
subquestions:
- variable: mongodbUsername
default: "admin"
description: "Username of new user"
- variable: auth.rootUsername
default: "root"
description: "MongoDB root username"
type: string
label: MongoDB Username
required: true
- variable: mongodbPassword
- variable: auth.rootPassword
default: ""
description: "Password for MongoDB user, defaults to a random 10-character alphanumeric string if not set"
description: "MongoDB root password, defaults to a random 10-character alphanumeric string if not set"
type: password
label: MongoDB Password
- variable: mongodbDatabase
default: ""
description: "Database name to create"
type: string
label: MongoDB Database
required: true
- variable: service.type
default: "ClusterIP"
default: "NodePort"
description: "MongoDB K8s Service type"
type: enum
group: "Services and Load Balancing"
group: "MongoDB Settings"
options:
- "ClusterIP"
- "NodePort"
required: true
label: MongoDB Service Type
# show_if: "ingress.enabled=false"
show_subquestion_if: "NodePort"
subquestions:
- variable: service.nodePort
......@@ -86,17 +79,3 @@ questions:
description: "If undefined or set to null, using the default storageClass. Defaults to null."
type: storageclass
label: Storage Class for MongoDB
# - variable: ingress.enabled
# default: "true"
# description: "Expose app using Layer 7 Load Balancer - ingress"
# type: boolean
# label: Expose app using Layer 7 Load Balancer
# show_subquestion_if: true
# group: "Services and Load Balancing"
# subquestions:
# - variable: ingress.host
# default: "xip.io"
# description: "layer 7 Load Balancer hostname"
# type: hostname
# required: true
# label: Layer 7 Load Balancer Hostname
......@@ -33,14 +33,6 @@ To connect to your database from outside the cluster execute the following comma
export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ template "mongodb.fullname" . }})
mongo --host $NODE_IP --port $NODE_PORT {{- if .Values.mongodbRootPassword }} -p {{ .Values.mongodbRootPassword }}{{- end }}
{{- else if contains "LoadBalancer" .Values.service.type }}
NOTE: It may take a few minutes for the LoadBalancer IP to be available.
Watch the status with: 'kubectl get svc --namespace {{ .Release.Namespace }} -w {{ template "mongodb.fullname" . }}'
export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ template "mongodb.fullname" . }} -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
mongo --host $SERVICE_IP --port {{ .Values.service.nodePort }} {{- if .Values.mongodbRootPassword }} -p {{ .Values.mongodbRootPassword }}{{- end }}
{{- else if contains "ClusterIP" .Values.service.type }}
export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app={{ template "mongodb.name" . }}" -o jsonpath="{.items[0].metadata.name}")
......
apiVersion: v1
kind: ConfigMap
metadata:
name: {{ template "mongodb.fullname" . }}
labels:
app: {{ template "mongodb.name" . }}
chart: "{{ .Chart.Name }}-{{ .Chart.Version }}"
release: "{{ .Release.Name }}"
heritage: "{{ .Release.Service }}"
data:
mongod.conf: |
# mongod.conf
# for documentation of all options, see:
# http://docs.mongodb.org/manual/reference/configuration-options/
# where to write logging data.
systemLog:
destination: file
logAppend: true
path: /var/log/mongodb/mongod.log
# Where and how to store data.
storage:
dbPath: {{ .Values.persistence.mountPath }}
journal:
enabled: true
# engine:
# mmapv1:
# wiredTiger:
# how the process runs
processManagement:
fork: true # fork and run in background
pidFilePath: /var/run/mongodb/mongod.pid # location of pidfile
timeZoneInfo: /usr/share/zoneinfo
# network interfaces
net:
port: 27017
bindIp: 127.0.0.1 # Enter 0.0.0.0,:: to bind to all IPv4 and IPv6 addresses or, alternatively, use the net.bindIpAll setting.
#security:
#operationProfiling:
......@@ -28,22 +28,18 @@ spec:
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
imagePullPolicy: {{ .Values.image.pullPolicy | quote }}
env:
- name: MONGODB_ROOT_PASSWORD
{{ if and .Values.auth.enabled .Values.auth.rootPassword }}
- name: MONGO_INITDB_ROOT_USERNAME
valueFrom:
secretKeyRef:
name: {{ template "mongodb.fullname" . }}
key: mongodb-root-password
- name: MONGODB_USERNAME
value: {{ default "" .Values.mongodbUsername | quote }}
{{ if and .Values.mongodbUsername .Values.mongodbDatabase }}
- name: MONGODB_PASSWORD
key: mongodb-root-username
- name: MONGO_INITDB_ROOT_PASSWORD
valueFrom:
secretKeyRef:
name: {{ template "mongodb.fullname" . }}
key: mongodb-password
key: mongodb-root-password
{{ end }}
- name: MONGODB_DATABASE
value: {{ default "" .Values.mongodbDatabase | quote }}
- name: MONGODB_EXTRA_FLAGS
value: {{ default "" .Values.mongodbExtraFlags | join " " }}
ports:
......@@ -65,10 +61,15 @@ spec:
{{ toYaml .Values.readinessProbe | indent 10 }}
volumeMounts:
- name: data
mountPath: /bitnami/mongodb
mountPath: {{ .Values.persistence.mountPath }}
- name: config
mountPath: /etc/mongo/mongod.conf
resources:
{{ toYaml .Values.resources | indent 10 }}
volumes:
- name: config
configMap:
name: {{ template "mongodb.fullname" . }}
- name: data
{{- if .Values.persistence.enabled }}
persistentVolumeClaim:
......
......@@ -9,15 +9,9 @@ metadata:
heritage: "{{ .Release.Service }}"
type: Opaque
data:
{{ if .Values.mongodbRootPassword }}
mongodb-root-password: {{ .Values.mongodbRootPassword | b64enc | quote }}
{{ if and .Values.auth.enabled .Values.auth.rootPassword }}
mongodb-root-password: {{ .Values.auth.rootPassword | b64enc | quote }}
{{ else }}
mongodb-root-password: {{ randAlphaNum 10 | b64enc | quote }}
{{ end }}
{{ if and .Values.mongodbUsername .Values.mongodbDatabase }}
{{ if .Values.mongodbPassword }}
mongodb-password: {{ .Values.mongodbPassword | b64enc | quote }}
{{ else }}
mongodb-password: {{ randAlphaNum 10 | b64enc | quote }}
{{ end }}
{{ end }}
mongodb-root-username: {{ .Values.auth.rootUsername | b64enc | quote }}
## Bitnami MongoDB image version
## ref: https://hub.docker.com/r/bitnami/mongodb/tags/
##
image:
# registry: docker.io DISABLED
repository: bitnami/mongodb
tag: 3.7.3
repository: mongo
tag: 3.6.5
## Specify a imagePullPolicy
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
## ref: http://kubernetes.io/docs/user-guide/images/#pre-pulling-images
......@@ -17,17 +14,11 @@ image:
# pullSecrets:
# - myRegistrKeySecretName
## MongoDB admin password
## ref: https://github.com/bitnami/bitnami-docker-mongodb/blob/master/README.md#setting-the-root-password-on-first-run
##
# mongodbRootPassword:
## MongoDB custom user and database
## ref: https://github.com/bitnami/bitnami-docker-mongodb/blob/master/README.md#creating-a-user-and-database-on-first-run
##
# mongodbUsername:
# mongodbPassword:
# mongodbDatabase:
auth:
enabled: true
## MongoDB root username and password
rootUsername: root
# rootPassword:
## MongoDB additional command line flags
##
......@@ -66,6 +57,7 @@ persistence:
# storageClass: "-"
accessMode: ReadWriteOnce
size: 8Gi
mountPath: /var/lib/mongo
## Configure resource requests and limits
## ref: http://kubernetes.io/docs/user-guide/compute-resources/
......@@ -93,42 +85,3 @@ readinessProbe:
timeoutSeconds: 5
failureThreshold: 6
successThreshold: 1
ingress:
## Set to true to enable ingress record generation
enabled: false
host: xip.io
## Set this to true in order to enable TLS on the ingress record
## A side effect of this will be that the backend service will be connected at port 443
tls: false
## If TLS is set to true, you must declare what secret will store the key/certificate for TLS
tlsSecret: app.local-tls
## Ingress annotations done as key:value pairs
## If you're using kube-lego, you will want to add:
## kubernetes.io/tls-acme: true
##
## For a full list of possible ingress annotations, please see
## ref: https://github.com/kubernetes/ingress-nginx/blob/master/docs/annotations.md
##
## If tls is set to true, annotation ingress.kubernetes.io/secure-backends: "true" will automatically be set
annotations:
# kubernetes.io/ingress.class: nginx
# kubernetes.io/tls-acme: true
secrets:
## If you're providing your own certificates, please use this to add the certificates as secrets
## key and certificate should start with -----BEGIN CERTIFICATE----- or
## -----BEGIN RSA PRIVATE KEY-----
##
## name should line up with a tlsSecret set further up
## If you're using kube-lego, this is unneeded, as it will create the secret for you if it is not set
##
## It is also possible to create and manage the certificates outside of this helm chart
## Please see README.md for more information
# - name: app.local-tls
# key:
# certificate:
......@@ -21,14 +21,14 @@ questions:
type: string
label: Image Tag
- variable: mysqlDatabase
default: ""
default: "admin"
description: "Name of database to create"
type: string
required: true
label: MySQL Database
group: "MySQL Settings"
- variable: mysqlUser
default: ""
default: "admin"
description: "Username of user to create"
type: string
required: true
......@@ -77,7 +77,6 @@ questions:
- "NodePort"
required: true
label: MySQL Service Type
# show_if: "ingress.enabled=false"
show_subquestion_if: "NodePort"
subquestions:
- variable: service.nodePort
......@@ -87,17 +86,3 @@ questions:
min: 30000
max: 32767
label: Service NodePort number
# - variable: ingress.enabled
# default: "true"
# description: "Expose app using Layer 7 Load Balancer - ingress"
# type: boolean
# label: Expose app using Layer 7 Load Balancer
# show_subquestion_if: true
# group: "Services and Load Balancing"
# subquestions:
# - variable: ingress.host
# default: "xip.io"
# description: "layer 7 Load Balancer hostname"
# type: hostname
# required: true
# label: Layer 7 Load Balancer Hostname
{{- if .Values.ingress.enabled }}
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: {{ .Release.Name }}-ingress
labels:
app: {{ .Release.Name }}-ingress
annotations:
{{- if .Values.ingress.tls }}
ingress.kubernetes.io/secure-backends: "true"
{{- end }}
{{- range $key, $value := .Values.ingress.annotations }}
{{ $key }}: {{ $value | quote }}
{{- end }}
spec:
rules:
- host: {{ .Values.ingress.host }}
http:
paths:
- path: {{ default "/" .Values.ingress.path }}
backend:
serviceName: {{ template "mysql.fullname" . }}
servicePort: {{ .Values.service.port }}
{{- if .Values.ingress.tls }}
tls:
- hosts:
- {{ .Values.ingress.host }}
secretName: {{ .Values.ingress.tlsSecret }}
{{- end }}
{{- end }}
{{- if .Values.ingress.enabled }}
{{- range .Values.ingress.secrets }}
apiVersion: v1
kind: Secret
metadata:
name: {{ .Release.Name }}
labels:
app: {{ .Release.Name }}
type: kubernetes.io/tls
data:
tls.crt: {{ .certificate | b64enc }}
tls.key: {{ .key | b64enc }}
---
{{- end }}
{{- end }}
......@@ -83,42 +83,3 @@ service:
type: ClusterIP
port: 3306
# nodePort: 32000
ingress:
## Set to true to enable ingress record generation
enabled: false
host: xip.io
## Set this to true in order to enable TLS on the ingress record
## A side effect of this will be that the backend service will be connected at port 443
tls: false
## If TLS is set to true, you must declare what secret will store the key/certificate for TLS
tlsSecret: app.local-tls
## Ingress annotations done as key:value pairs
## If you're using kube-lego, you will want to add:
## kubernetes.io/tls-acme: true
##
## For a full list of possible ingress annotations, please see
## ref: https://github.com/kubernetes/ingress-nginx/blob/master/docs/annotations.md
##
## If tls is set to true, annotation ingress.kubernetes.io/secure-backends: "true" will automatically be set
annotations:
# kubernetes.io/ingress.class: nginx
# kubernetes.io/tls-acme: true
secrets:
## If you're providing your own certificates, please use this to add the certificates as secrets
## key and certificate should start with -----BEGIN CERTIFICATE----- or
## -----BEGIN RSA PRIVATE KEY-----
##
## name should line up with a tlsSecret set further up
## If you're using kube-lego, this is unneeded, as it will create the secret for you if it is not set
##
## It is also possible to create and manage the certificates outside of this helm chart
## Please see README.md for more information
# - name: app.local-tls
# key:
# certificate:
......@@ -99,7 +99,7 @@ questions:
required: true
label: Hostname
- variable: server.service.type
default: "ClusterIP"
default: "NodePort"
description: "Server service type"
group: "Prometheus Server"
type: enum
......@@ -246,7 +246,7 @@ questions:
label: Hostname
show_if: "alertmanager.enabled=true"
- variable: alertmanager.service.type
default: "ClusterIP"
default: "NodePort"
description: "Alertmanager service type"
type: enum
show_if: "alertmanager.ingress.enabled=false&&alertmanager.enabled=true"
......
......@@ -23,7 +23,7 @@ spec:
- host: {{ first $url }}
http:
paths:
- path: /{{ rest $url | join "/" }}
- path: {{ rest $url | join "/" }}
backend:
serviceName: {{ $serviceName }}
servicePort: {{ $servicePort }}
......
......@@ -23,7 +23,7 @@ spec:
- host: {{ first $url }}
http:
paths:
- path: /{{ rest $url | join "/" }}
- path: {{ rest $url | join "/" }}
backend:
serviceName: {{ $serviceName }}
servicePort: {{ $servicePort }}
......
......@@ -78,20 +78,6 @@ questions:
description: "If undefined or null, uses the default StorageClass. Defaults to null."
type: storageclass
label: Default Storage Class
# - variable: ingress.enabled
# default: "true"
# description: "Expose app using Layer 7 Load Balancer - ingress"
# type: boolean
# label: Expose app using Layer 7 Load Balancer
# show_subquestion_if: true
# group: "Services and Load Balancing"
# subquestions:
# - variable: ingress.host
# default: "xip.io"
# description: "layer 7 Load Balancer hostname"
# type: hostname
# required: true
# label: Layer 7 Load Balancer Hostname
- variable: slave.service.type
default: "ClusterIP"
description: "Redis slave service type"
......@@ -102,7 +88,6 @@ questions:
- "NodePort"
required: true
label: Redis Slave Service Type
# show_if: "ingress.enabled=false"
show_subquestion_if: "NodePort"
subquestions:
- variable: slave.service.nodePort
......@@ -122,7 +107,6 @@ questions:
- "NodePort"
required: true
label: Redis Master Service Type
# show_if: "ingress.enabled=false"
show_subquestion_if: "NodePort"
subquestions:
- variable: master.service.nodePort
......
{{- if .Values.ingress.enabled }}
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: {{ .Release.Name }}-master-ingress
labels:
app: {{ .Release.Name }}-master-ingress
annotations:
{{- if .Values.ingress.tls }}
ingress.kubernetes.io/secure-backends: "true"
{{- end }}
{{- range $key, $value := .Values.ingress.annotations }}
{{ $key }}: {{ $value | quote }}
{{- end }}
spec:
rules:
- host: {{ .Values.ingress.host }}
http:
paths:
- path: {{ default "/" .Values.ingress.path }}
backend:
serviceName: {{ template "redis.fullname" . }}-master
servicePort: 6379
{{- if .Values.ingress.tls }}
tls:
- hosts:
- {{ .Values.ingress.host }}
secretName: {{ .Values.ingress.tlsSecret }}
{{- end }}
---
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: {{ .Release.Name }}-slave-ingress
labels:
app: {{ .Release.Name }}-slave-ingress
annotations:
{{- if .Values.ingress.tls }}
ingress.kubernetes.io/secure-backends: "true"
{{- end }}
{{- range $key, $value := .Values.ingress.annotations }}
{{ $key }}: {{ $value | quote }}
{{- end }}
spec:
rules:
- host: {{ .Values.ingress.host }}
http:
paths:
- path: {{ default "/" .Values.ingress.path }}
backend:
serviceName: {{ template "redis.fullname" . }}-slave
servicePort: 6379
{{- if .Values.ingress.tls }}
tls:
- hosts:
- {{ .Values.ingress.host }}
secretName: {{ .Values.ingress.tlsSecret }}
{{- end }}
{{- end }}
{{- if .Values.ingress.enabled }}
{{- range .Values.ingress.secrets }}
apiVersion: v1
kind: Secret
metadata:
name: {{ .Release.Name }}
labels:
app: {{ .Release.Name }}
type: kubernetes.io/tls
data:
tls.crt: {{ .certificate | b64enc }}
tls.key: {{ .key | b64enc }}
---
{{- end }}
{{- end }}
......@@ -248,42 +248,3 @@ slave:
# enabled: true
# fsGroup: 1001
# runAsUser: 1001
ingress:
## Set to true to enable ingress record generation
enabled: false
host: xip.io
## Set this to true in order to enable TLS on the ingress record
## A side effect of this will be that the backend service will be connected at port 443
tls: false
## If TLS is set to true, you must declare what secret will store the key/certificate for TLS
tlsSecret: app.local-tls
## Ingress annotations done as key:value pairs
## If you're using kube-lego, you will want to add:
## kubernetes.io/tls-acme: true
##
## For a full list of possible ingress annotations, please see
## ref: https://github.com/kubernetes/ingress-nginx/blob/master/docs/annotations.md
##
## If tls is set to true, annotation ingress.kubernetes.io/secure-backends: "true" will automatically be set
annotations:
# kubernetes.io/ingress.class: nginx
# kubernetes.io/tls-acme: true
secrets:
## If you're providing your own certificates, please use this to add the certificates as secrets
## key and certificate should start with -----BEGIN CERTIFICATE----- or
## -----BEGIN RSA PRIVATE KEY-----
##
## name should line up with a tlsSecret set further up
## If you're using kube-lego, this is unneeded, as it will create the secret for you if it is not set
##
## It is also possible to create and manage the certificates outside of this helm chart
## Please see README.md for more information
# - name: app.local-tls
# key:
# certificate:
apiVersion: v1
description: A Helm chart for Vault, a tool for managing secrets
name: vault-operator
version: 0.1.0
version: 0.1.1
icon: https://www.vaultproject.io/assets/images/mega-nav/logo-vault-0f83e3d2.svg
home: https://www.vaultproject.io/
appVersion: 0.9.1
......@@ -40,13 +40,13 @@ Parameter | Description | Default
## Using the Vault cluster
See the [Vault usage guide](./doc/user/vault.md) on how to initialize, unseal, and use the deployed Vault cluster.
See the [Vault usage guide](https://github.com/coreos/vault-operator/blob/master/doc/user/vault.md) on how to initialize, unseal, and use the deployed Vault cluster.
Consult the [monitoring guide](./doc/user/monitoring.md) on how to monitor and alert on a Vault cluster with Prometheus.
Consult the [monitoring guide](https://github.com/coreos/vault-operator/blob/master/doc/user/monitoring.md) on how to monitor and alert on a Vault cluster with Prometheus.
See the [recovery guide](./doc/user/recovery.md) on how to backup and restore Vault cluster data using the etcd opeartor
See the [recovery guide](https://github.com/coreos/vault-operator/blob/master/doc/user/recovery.md) on how to backup and restore Vault cluster data using the etcd opeartor
For an overview of the default TLS configuration or how to specify custom TLS assets for a Vault cluster see the [TLS setup guide](doc/user/tls_setup.md).
For an overview of the default TLS configuration or how to specify custom TLS assets for a Vault cluster see the [TLS setup guide](https://github.com/coreos/vault-operator/blob/master/doc/user/tls_setup.md).
[vault]: https://www.vaultproject.io/
[etcd-operator]: https://github.com/coreos/etcd-operator/
......@@ -20,7 +20,7 @@ spec:
- host: {{ $host }}
http:
paths:
- path: /
- path:
backend:
serviceName: {{ $serviceName }}
servicePort: {{ $servicePort }}
......
......@@ -51,8 +51,8 @@ ui:
- xip.io
annotations:
# AWS --> redirect http to https
kubernetes.io/ingress.class: nginx
ingress.kubernetes.io/force-ssl-redirect: "true"
# kubernetes.io/ingress.class: nginx
# ingress.kubernetes.io/force-ssl-redirect: "true"
tls:
# Secrets must be manually created in the namespace.
# - secretName: chart-example-tls
......
......@@ -168,6 +168,7 @@ questions:
type: int
min: 30000
max: 32767
show_if: "ingress.enabled=false&&serviceType=NodePort"
label: NodePort Http Port
- variable: nodePorts.https
default: ""
......@@ -175,6 +176,7 @@ questions:
type: int
min: 30000
max: 32767
show_if: "ingress.enabled=false&&serviceType=NodePort"
label: NodePort Https Port
- variable: ingress.enabled
default: "true"
......
......@@ -21,7 +21,7 @@ spec:
- host: {{ .name }}
http:
paths:
- path: {{ default "/" .path }}
- path: {{ default "" .path }}
backend:
serviceName: {{ template "fullname" $ }}
servicePort: 80
......
......@@ -17,7 +17,7 @@ spec:
- host: {{ .Values.ingress.host }}
http:
paths:
- path: {{ default "/" .Values.ingress.path }}
- path: {{ default "" .Values.ingress.path }}
backend:
serviceName: longhorn-frontend
servicePort: 80
......
apiVersion: v1
description: nfs-provisioner is an out-of-tree dynamic provisioner for Kubernetes.
name: nfs-provisioner
version: 0.1.0
version: 0.1.1
icon: https://wiki.amahi.org/images/a/a9/Nfs-logo.png
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment