-
Notifications
You must be signed in to change notification settings - Fork 2.1k
helm: Adds 'aws', 'gcp', 'standalone' and ‘custom’ modes to teleport-cluster chart
#6344
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
81fe141
a9de3eb
d0a41e3
a55f058
e8eb2bc
35c887b
03ffb5f
4946f33
8c0f2a8
6249f88
f290094
8147c70
eca03b2
762a38e
ef0762d
b3042c3
ff2da02
effaaff
c26f55b
1c4b5c5
023f752
6116c72
c7ab016
ff9e589
bd73c92
d02a7da
cff07ff
590336b
f64f6af
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,4 @@ | ||
| extends: relaxed | ||
| rules: | ||
| line-length: | ||
| max: 120 |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,8 +1,9 @@ | ||
| name: teleport-auto-trustedcluster | ||
| apiVersion: v2 | ||
| version: 0.0.8 | ||
| version: 0.0.9 | ||
| appVersion: "6" | ||
| description: Teleport trusted cluster installation which automatically joins itself back to the provided root cluster. | ||
| description: "[deprecated] Teleport trusted cluster installation which automatically joins itself back to the provided root cluster." | ||
|
webvictim marked this conversation as resolved.
|
||
| icon: https://goteleport.com/images/logos/logo-teleport-square.svg | ||
| keywords: | ||
| - Teleport Enterprise | ||
| deprecated: true | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1 +1,3 @@ | ||
| clusterName: test-cluster-name | ||
| extraArgs: | ||
| - "--insecure" |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,3 @@ | ||
| clusterName: test-acme-cluster | ||
| acme: true | ||
| acmeEmail: test@email.com |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,29 @@ | ||
| clusterName: test-gcp-cluster | ||
| chartMode: gcp | ||
| gcp: | ||
| projectId: gcpproj-123456 | ||
| backendTable: test-teleport-firestore-storage-collection | ||
| auditLogTable: test-teleport-firestore-auditlog-collection | ||
| sessionRecordingBucket: test-gcp-session-storage-bucket | ||
| highAvailability: | ||
| replicaCount: 2 | ||
| affinity: | ||
| nodeAffinity: | ||
| requiredDuringSchedulingIgnoredDuringExecution: | ||
| nodeSelectorTerms: | ||
| - matchExpressions: | ||
| - key: gravitational.io/dedicated | ||
| operator: In | ||
| values: | ||
| - teleport | ||
| podAntiAffinity: | ||
| preferredDuringSchedulingIgnoredDuringExecution: | ||
| - podAffinityTerm: | ||
| labelSelector: | ||
| matchExpressions: | ||
| - key: app | ||
| operator: In | ||
| values: | ||
| - teleport | ||
| topologyKey: kubernetes.io/hostname | ||
| weight: 1 |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,17 @@ | ||
| clusterName: helm-lint | ||
| annotations: | ||
| config: | ||
| kubernetes.io/config: "test-annotation" | ||
| kubernetes.io/config-different: 2 | ||
| deployment: | ||
| kubernetes.io/deployment: "test-annotation" | ||
| kubernetes.io/deployment-different: 3 | ||
| pod: | ||
| kubernetes.io/pod: "test-annotation" | ||
| kubernetes.io/pod-different: 4 | ||
| service: | ||
| kubernetes.io/service: "test-annotation" | ||
| kubernetes.io/service-different: 5 | ||
| serviceAccount: | ||
| kubernetes.io/serviceaccount: "test-annotation" | ||
| kubernetes.io/serviceaccount-different: 6 |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,14 @@ | ||
| clusterName: test-aws-cluster | ||
| chartMode: aws | ||
| aws: | ||
| region: us-west-2 | ||
| backendTable: test-dynamodb-backend-table | ||
| auditLogTable: test-dynamodb-auditlog-table | ||
| sessionRecordingBucket: test-s3-session-storage-bucket | ||
| highAvailability: | ||
| replicaCount: 3 | ||
| certManager: | ||
| enabled: true | ||
| issuerName: letsencrypt-production | ||
| labels: | ||
| env: aws |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,12 @@ | ||
| clusterName: test-aws-cluster | ||
| chartMode: aws | ||
| aws: | ||
| region: us-west-2 | ||
| backendTable: test-dynamodb-backend-table | ||
| auditLogTable: test-dynamodb-auditlog-table | ||
| sessionRecordingBucket: test-s3-session-storage-bucket | ||
| highAvailability: | ||
| replicaCount: 3 | ||
| requireAntiAffinity: true | ||
| labels: | ||
| env: aws |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,11 @@ | ||
| clusterName: test-aws-cluster | ||
| chartMode: aws | ||
| aws: | ||
| region: us-west-2 | ||
| backendTable: test-dynamodb-backend-table | ||
| auditLogTable: test-dynamodb-auditlog-table | ||
| sessionRecordingBucket: test-s3-session-storage-bucket | ||
| highAvailability: | ||
| replicaCount: 3 | ||
| labels: | ||
| env: aws |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,11 @@ | ||
| clusterName: test-aws-cluster | ||
| chartMode: aws | ||
| aws: | ||
| region: us-west-2 | ||
| backendTable: test-dynamodb-backend-table | ||
| auditLogTable: test-dynamodb-auditlog-table | ||
| sessionRecordingBucket: test-s3-session-storage-bucket | ||
| acme: true | ||
| acmeEmail: test@email.com | ||
| labels: | ||
| env: aws |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,14 @@ | ||
| clusterName: test-gcp-cluster | ||
| chartMode: gcp | ||
| gcp: | ||
| projectId: gcpproj-123456 | ||
| backendTable: test-teleport-firestore-storage-collection | ||
| auditLogTable: test-teleport-firestore-auditlog-collection | ||
| sessionRecordingBucket: test-gcp-session-storage-bucket | ||
| highAvailability: | ||
| replicaCount: 3 | ||
| certManager: | ||
| enabled: true | ||
| issuerName: letsencrypt-production | ||
| labels: | ||
| env: gcp |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,12 @@ | ||
| clusterName: test-gcp-cluster | ||
| chartMode: gcp | ||
| gcp: | ||
| projectId: gcpproj-123456 | ||
| backendTable: test-teleport-firestore-storage-collection | ||
| auditLogTable: test-teleport-firestore-auditlog-collection | ||
| sessionRecordingBucket: test-gcp-session-storage-bucket | ||
| highAvailability: | ||
| replicaCount: 3 | ||
| requireAntiAffinity: true | ||
| labels: | ||
| env: gcp |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,11 @@ | ||
| clusterName: test-gcp-cluster | ||
| chartMode: gcp | ||
| gcp: | ||
| projectId: gcpproj-123456 | ||
| backendTable: test-teleport-firestore-storage-collection | ||
| auditLogTable: test-teleport-firestore-auditlog-collection | ||
| sessionRecordingBucket: test-gcp-session-storage-bucket | ||
| highAvailability: | ||
| replicaCount: 3 | ||
| labels: | ||
| env: gcp |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,11 @@ | ||
| clusterName: test-gcp-cluster | ||
| chartMode: gcp | ||
| gcp: | ||
| projectId: gcpproj-123456 | ||
| backendTable: test-teleport-firestore-storage-collection | ||
| auditLogTable: test-teleport-firestore-auditlog-collection | ||
| sessionRecordingBucket: test-gcp-session-storage-bucket | ||
| acme: true | ||
| acmeEmail: test@email.com | ||
| labels: | ||
| env: gcp |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,5 @@ | ||
| clusterName: helm-lint | ||
|
webvictim marked this conversation as resolved.
|
||
| initContainers: | ||
| - name: "teleport-init" | ||
| image: "alpine" | ||
| args: ["echo test"] | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,10 @@ | ||
| clusterName: helm-lint | ||
| # These are just sample values to test the chart. | ||
| # They are not intended to be guidelines or suggestions for running teleport. | ||
| resources: | ||
| limits: | ||
| cpu: 2 | ||
| memory: 4Gi | ||
| requests: | ||
| cpu: 1 | ||
| memory: 2Gi |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,8 @@ | ||
| clusterName: test-standalone-cluster | ||
| chartMode: standalone | ||
| standalone: | ||
| existingClaimName: teleport-storage | ||
| acme: true | ||
| acmeEmail: test@email.com | ||
| labels: | ||
| env: standalone |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,8 @@ | ||
| clusterName: test-standalone-cluster | ||
| chartMode: standalone | ||
| standalone: | ||
| volumeSize: 50Gi | ||
| acme: true | ||
| acmeEmail: test@email.com | ||
| labels: | ||
| env: standalone |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,18 @@ | ||
| clusterName: test-aws-cluster | ||
| chartMode: aws | ||
| aws: | ||
| region: us-west-2 | ||
| backendTable: test-dynamodb-backend-table | ||
| auditLogTable: test-dynamodb-auditlog-table | ||
| sessionRecordingBucket: test-s3-session-storage-bucket | ||
| highAvailability: | ||
| replicaCount: 3 | ||
| tolerations: | ||
| - key: "dedicated" | ||
| operator: "Equal" | ||
| value: "teleport" | ||
| effect: "NoExecute" | ||
| - key: "dedicated" | ||
| operator: "Equal" | ||
| value: "teleport" | ||
| effect: "NoSchedule" |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,8 @@ | ||
| clusterName: helm-lint | ||
| extraVolumeMounts: | ||
| - name: "my-mount" | ||
| path: "/path/to/mount" | ||
| extraVolumes: | ||
| - name: "my-mount" | ||
| secret: | ||
| secretName: "mySecret" |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,6 +1,6 @@ | ||
| name: teleport-cluster | ||
| apiVersion: v2 | ||
| version: 6.0.0 | ||
| version: "6" | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. oh, we're using only the major version?
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Hmm, that's not the intention. When The This is a bit confusing now I look back on it. I'm not sure how we can handle this better, though. I could update the logic in
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Can we publish a Alternatively, if we already conditioned users to use helm from master, maybe de-couple |
||
| appVersion: "6" | ||
| description: Teleport is a unified access plane for your infrastructure | ||
| icon: https://goteleport.com/images/logos/logo-teleport-square.svg | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,16 @@ | ||
| {{- if .Values.highAvailability.certManager.enabled }} | ||
|
webvictim marked this conversation as resolved.
|
||
| You have enabled cert-manager support in high availability mode. | ||
|
|
||
| There may be a short delay before Teleport pods start while an ACME certificate is issued. | ||
| You can check the status of the certificate with `kubectl -n {{ .Release.Namespace }} describe certificate/{{ .Release.Name }}` | ||
|
|
||
| NOTE: For certificates to be provisioned, you must also install cert-manager (https://cert-manager.io/docs/) and configure an appropriate | ||
| Issuer with access to your DNS provider to handle DNS01 challenges (https://cert-manager.io/docs/configuration/acme/dns01/#supported-dns01-providers) | ||
|
|
||
| For more information, please see the Helm guides in the Teleport docs (https://goteleport.com/docs/kubernetes-access/helm/guides/) | ||
| {{- else if (gt (int .Values.highAvailability.replicaCount) 1) }} | ||
|
webvictim marked this conversation as resolved.
|
||
| You have requested more than 1 replica but have not enabled cert-manager support (highAvailability.certManager.enabled=true) to get ACME certificates. | ||
| Your Teleport cluster will not be properly accessible by remote nodes until TLS certificates with the correct clusterName ({{ .Values.clusterName }}) are configured. | ||
|
|
||
| For more information, please see the Helm guides in the Teleport docs (https://goteleport.com/docs/kubernetes-access/helm/guides/) | ||
| {{- end }} | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,17 @@ | ||
| {{- if .Values.highAvailability.certManager.enabled }} | ||
| {{- $domain:= (required "clusterName is required in chartValues when certManager is enabled" .Values.clusterName) }} | ||
| {{- $domainWildcard := printf "*.%s" (required "clusterName is required in chartValues when certManager is enabled" .Values.clusterName) }} | ||
| apiVersion: cert-manager.io/v1 | ||
| kind: Certificate | ||
| metadata: | ||
| name: {{ .Release.Name }} | ||
| namespace: {{ .Release.Namespace }} | ||
| spec: | ||
| secretName: teleport-tls | ||
| dnsNames: | ||
| - {{ quote $domain }} | ||
| - {{ quote $domainWildcard }} | ||
| issuerRef: | ||
| name: {{ required "highAvailability.certManager.issuerName is required in chart values" .Values.highAvailability.certManager.issuerName }} | ||
| kind: {{ required "highAvailability.certManager.issuerKind is required in chart values" .Values.highAvailability.certManager.issuerKind }} | ||
| {{- end }} |
Uh oh!
There was an error while loading. Please reload this page.