Added feature annotation only to latest chart version

pull/658/head
Akanksha Kumari 2023-02-03 13:23:28 +05:30
parent a46fd95c25
commit 64cffe63d8
32 changed files with 329 additions and 288 deletions

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,9 @@
dependencies:
- name: grafana
repository: ""
version: 6.32.9
- name: prometheus
repository: ""
version: 15.8.5
digest: sha256:4399c78f4e445e4fbb26151707c9b481fece2002ac02ae20612d9f26e6b66643
generated: "2023-01-30T15:49:57.609147621Z"

View File

@ -5,7 +5,14 @@ annotations:
catalog.cattle.io/kube-version: '>= 1.17.0-0' catalog.cattle.io/kube-version: '>= 1.17.0-0'
catalog.cattle.io/release-name: k10 catalog.cattle.io/release-name: k10
apiVersion: v2 apiVersion: v2
appVersion: 5.5.2 appVersion: 5.5.4
dependencies:
- name: grafana
repository: file://./charts/grafana
version: 6.32.9
- name: prometheus
repository: file://./charts/prometheus
version: 15.8.5
description: Kastens K10 Data Management Platform description: Kastens K10 Data Management Platform
home: https://kasten.io/ home: https://kasten.io/
icon: https://docs.kasten.io/_static/logo-kasten-k10-blue-white.png icon: https://docs.kasten.io/_static/logo-kasten-k10-blue-white.png
@ -13,4 +20,4 @@ maintainers:
- email: contact@kasten.io - email: contact@kasten.io
name: kastenIO name: kastenIO
name: k10 name: k10
version: 5.5.201 version: 5.5.401

View File

@ -176,14 +176,39 @@ Parameter | Description | Default
`injectKanisterSidecar.webhookServer.port` | Port number on which the mutating webhook server accepts request | `8080` `injectKanisterSidecar.webhookServer.port` | Port number on which the mutating webhook server accepts request | `8080`
`gateway.insecureDisableSSLVerify` | Specifies whether to disable SSL verification for gateway pods | `false` `gateway.insecureDisableSSLVerify` | Specifies whether to disable SSL verification for gateway pods | `false`
`gateway.exposeAdminPort` | Specifies whether to expose Admin port for gateway service | `true` `gateway.exposeAdminPort` | Specifies whether to expose Admin port for gateway service | `true`
`gateway.resources.[requests\|limits].[cpu\|memory]` | Resource requests and limits for gateway pod | `{}`
`genericVolumeSnapshot.resources.[requests\|limits].[cpu\|memory]` | Resource requests and limits for Generic Volume Snapshot restore pods | `{}` `genericVolumeSnapshot.resources.[requests\|limits].[cpu\|memory]` | Resource requests and limits for Generic Volume Snapshot restore pods | `{}`
`prometheus.server.enabled` | If false, K10's Prometheus server will not be created, reducing the dashboard's functionality. | `true` `prometheus.k10image.registry` | (optional) Set Prometheus image registry. | `gcr.io`
`prometheus.server.persistentVolume.enabled` | If true, K10 Prometheus server will create a Persistent Volume Claim | `true` `prometheus.k10image.repository` | (optional) Set Prometheus image repository. | `kasten-images`
`prometheus.server.persistentVolume.size` | K10 Prometheus server data Persistent Volume size | `30Gi` `prometheus.initChownData.enabled` | (optional) Prometheus init container configuration. Enable `initChownData` init container | `false`
`prometheus.server.persistentVolume.storageClass` | StorageClassName used to create Prometheus PVC. Setting this option overwrites global StorageClass value | `""` `prometheus.rbac.create` | (optional) Whether to create Prometheus RBAC configuration. Warning - this action will allow prometheus to scrape pods in all k8s namespaces | `false`
`prometheus.alertmanager.enabled` | (optional) Enable Prometheus `alertmanager` service | `false`
`prometheus.kubeStateMetrics.enabled` | (optional) Enable Prometheus `kubeStateMetrics` service | `false`
`prometheus.networkPolicy.enabled` | (optional) Enable Prometheus `networkPolicy` | `false`
`prometheus.nodeExporter.enabled` | (optional) Enable Prometheus `nodeExporter` | `false`
`prometheus.pushgateway.enabled` | (optional) Enable Prometheus `pushgateway` | `false`
`prometheus.scrapeCAdvisor` | (optional) Enable Prometheus ScrapeCAdvisor | `false`
`prometheus.server.enabled` | (optional) If false, K10's Prometheus server will not be created, reducing the dashboard's functionality. | `true`
`prometheus.server.securityContext.runAsUser` | (optional) Set security context `runAsUser` ID for Prometheus server pod | `65534`
`prometheus.server.securityContext.runAsNonRoot` | (optional) Enable security context `runAsNonRoot` for Prometheus server pod | `true`
`prometheus.server.securityContext.runAsGroup` | (optional) Set security context `runAsGroup` ID for Prometheus server pod | `65534`
`prometheus.server.securityContext.fsGroup` | (optional) Set security context `fsGroup` ID for Prometheus server pod | `65534`
`prometheus.server.retention` | (optional) K10 Prometheus data retention | `"30d"` `prometheus.server.retention` | (optional) K10 Prometheus data retention | `"30d"`
`prometheus.server.strategy.rollingUpdate.maxSurge` | (optional) The number of Prometheus server pods that can be created above the desired amount of pods during an update | `"100%"`
`prometheus.server.strategy.rollingUpdate.maxUnavailable` | (optional) The number of Prometheus server pods that can be unavailable during the upgrade process | `"100%"`
`prometheus.server.strategy.type` | (optional) Change default deployment strategy for Prometheus server | `"RollingUpdate"`
`prometheus.server.persistentVolume.enabled` | (optional) If true, K10 Prometheus server will create a Persistent Volume Claim | `true`
`prometheus.server.persistentVolume.size` | (optional) K10 Prometheus server data Persistent Volume size | `30Gi`
`prometheus.server.persistentVolume.storageClass` | (optional) StorageClassName used to create Prometheus PVC. Setting this option overwrites global StorageClass value | `""`
`prometheus.server.configMapOverrideName` | (optional) Prometheus configmap name to override default generated name| `k10-prometheus-config`
`prometheus.server.fullnameOverride` | (optional) Prometheus deployment name to override default generated name| `prometheus-server`
`prometheus.server.baseURL` | (optional) K10 Prometheus external url path at which the server can be accessed | `/k10/prometheus/` `prometheus.server.baseURL` | (optional) K10 Prometheus external url path at which the server can be accessed | `/k10/prometheus/`
`prometheus.server.prefixURL` | (optional) K10 Prometheus prefix slug at which the server can be accessed | `/k10/prometheus/` `prometheus.server.prefixURL` | (optional) K10 Prometheus prefix slug at which the server can be accessed | `/k10/prometheus/`
`prometheus.server.serviceAccounts.alertmanager.create` | (optional) Set true to create ServiceAccount for Prometheus `Alertmanager` service | `false`
`prometheus.server.serviceAccounts.kubeStateMetrics.create` | (optional) Set true to create ServiceAccount for Prometheus `kubeStateMetrics` service | `false`
`prometheus.server.serviceAccounts.nodeExporter.create` | (optional) Set true to create ServiceAccount for Prometheus `nodeExporter` service | `false`
`prometheus.server.serviceAccounts.pushgateway.create` | (optional) Set true to create ServiceAccount for Prometheus `pushgateway` service | `false`
`prometheus.server.serviceAccounts.server.create` | (optional) Set true to create ServiceAccount for Prometheus server service | `true`
`grafana.enabled` | (optional) If false Grafana will not be available | `true` `grafana.enabled` | (optional) If false Grafana will not be available | `true`
`grafana.prometheusPrefixURL` | (optional) URL for Prometheus datasource in Grafana (must match `prometheus.server.prefixURL`) | `/k10/prometheus/` `grafana.prometheusPrefixURL` | (optional) URL for Prometheus datasource in Grafana (must match `prometheus.server.prefixURL`) | `/k10/prometheus/`
`resources.<podName>.<containerName>.[requests\|limits].[cpu\|memory]` | Overwrite default K10 [container resource requests and limits](https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/) | varies by container `resources.<podName>.<containerName>.[requests\|limits].[cpu\|memory]` | Overwrite default K10 [container resource requests and limits](https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/) | varies by container

View File

@ -1,3 +1,4 @@
{{/* Autogenerated, do NOT modify */}} {{/* Autogenerated, do NOT modify */}}
{{- define "k10.grafanaImageTag" -}}9.1.5{{- end -}} {{- define "k10.grafanaImageTag" -}}9.1.5{{- end -}}
{{- define "k10.grafanaInitContainerImageTag" -}}8.7-923.1669829893{{- end -}} {{- define "k10.grafanaInitContainerImageRepo" -}}registry.access.redhat.com/ubi9/ubi-minimal{{- end -}}
{{- define "k10.grafanaInitContainerImageTag" -}}9.1.0-1656.1669627757{{- end -}}

View File

@ -253,10 +253,17 @@ based on the value of global.airgapped.repository
{{- if .Values.global.upstreamCertifiedImages }} {{- if .Values.global.upstreamCertifiedImages }}
{{- printf "%s/%s/ubi-minimal" .Values.k10image.registry .Values.k10image.repository }} {{- printf "%s/%s/ubi-minimal" .Values.k10image.registry .Values.k10image.repository }}
{{- else }} {{- else }}
{{- print .Values.ubi.image.repository }} {{- include "k10.grafanaInitContainerImageRepo" . }}
{{- end }} {{- end }}
{{- end }} {{- end }}
{{/*
Figure out the Grafana init image
*/}}
{{- define "get.grafanaInitImage" }}
{{- .Values.global.images.init | default (include "get.grafanaInitContainerImage" .) }}
{{- end }}
{{/* {{/*
Figure out the config based on Figure out the config based on
the value of airgapped.repository the value of airgapped.repository

View File

@ -21,8 +21,8 @@ initContainers:
{{- end }} {{- end }}
{{- if ( and .Values.global.persistence.enabled .Values.initChownData.enabled ) }} {{- if ( and .Values.global.persistence.enabled .Values.initChownData.enabled ) }}
- name: init-chown-data - name: init-chown-data
image: "{{ include "get.grafanaInitContainerImage" . }}" image: "{{ include "get.grafanaInitImage" . }}"
imagePullPolicy: {{ .Values.ubi.image.pullPolicy }} imagePullPolicy: {{ .Values.initChownData.image.pullPolicy }}
securityContext: securityContext:
runAsNonRoot: false runAsNonRoot: false
runAsUser: 0 runAsUser: 0
@ -41,7 +41,7 @@ initContainers:
{{- if .Values.downloadDashboardsImage.sha }} {{- if .Values.downloadDashboardsImage.sha }}
image: "{{ .Values.downloadDashboardsImage.repository }}:{{ .Values.downloadDashboardsImage.tag }}@sha256:{{ .Values.downloadDashboardsImage.sha }}" image: "{{ .Values.downloadDashboardsImage.repository }}:{{ .Values.downloadDashboardsImage.tag }}@sha256:{{ .Values.downloadDashboardsImage.sha }}"
{{- else }} {{- else }}
image: "{{ include "get.grafanaInitContainerImage" . }}" image: "{{ include "get.grafanaInitImage" . }}"
{{- end }} {{- end }}
imagePullPolicy: {{ .Values.downloadDashboardsImage.pullPolicy }} imagePullPolicy: {{ .Values.downloadDashboardsImage.pullPolicy }}
command: ["/bin/sh"] command: ["/bin/sh"]

View File

@ -5,13 +5,6 @@ enabled: true
prometheusName: prometheus-server prometheusName: prometheus-server
prometheusPrefixURL: /k10/prometheus prometheusPrefixURL: /k10/prometheus
#general purpose image for init container
ubi:
image:
repository: registry.access.redhat.com/ubi8/ubi-minimal
tag: 8.7-923.1669829893
pullPolicy: IfNotPresent
k10image: k10image:
registry: gcr.io registry: gcr.io
repository: kasten-images repository: kasten-images
@ -336,11 +329,11 @@ initChownData:
## initChownData container image ## initChownData container image
## ##
# image: image:
# repository: busybox pullPolicy: IfNotPresent
# tag: "1.31.1" # repository: busybox
# sha: "" # tag: "1.31.1"
# pullPolicy: IfNotPresent # sha: ""
## initChownData resource requests and limits ## initChownData resource requests and limits
## Ref: http://kubernetes.io/docs/user-guide/compute-resources/ ## Ref: http://kubernetes.io/docs/user-guide/compute-resources/

View File

@ -1,5 +1,5 @@
apiVersion: v2 apiVersion: v2
appVersion: 2.34.0 appVersion: 5.5.4
dependencies: dependencies:
- condition: kubeStateMetrics.enabled - condition: kubeStateMetrics.enabled
name: kube-state-metrics name: kube-state-metrics

View File

@ -1,3 +1 @@
{{/* Autogenerated, do NOT modify */}} {{/* Autogenerated, do NOT modify */}}
{{- define "k10.prometheusImageTag" -}}v2.34.0{{- end -}}
{{- define "k10.prometheusConfigMapReloaderImageTag" -}}v0.5.0{{- end -}}

View File

@ -84,101 +84,59 @@ We truncate at 63 chars because some Kubernetes name fields are limited to this
{{- end -}} {{- end -}}
{{/* {{/*
Figure out the config based on Get the ConfigMap Reload image
the value of airgapped.repository
*/}} */}}
{{- define "get.cmreloadimage" }} {{- define "get.cmreloadimage" }}
{{- if not .Values.global.rhMarketPlace }} {{- (get .Values.global.images (include "prometheus.cmreloadImageName" .)) | default (include "prometheus.cmreloadImage" .) }}
{{- if .Values.global.airgapped.repository }}
{{- printf "%s/configmap-reload:%s" .Values.global.airgapped.repository (include "get.cmReloadImageTag" .) }}
{{- else }}
{{- printf "%s:%s" (include "get.cmReloadImageRepo" .) (include "get.cmReloadImageTag" .) }}
{{- end }}
{{- else }}
{{- printf "%s" (get .Values.global.images "configmap-reload") }}
{{- end -}}
{{- end }} {{- end }}
{{- define "prometheus.cmreloadImage" }}
{{- printf "%s:%s" (include "prometheus.cmreloadImageRepo" .) (include "prometheus.cmreloadImageTag" .) }}
{{- end -}}
{{- define "prometheus.cmreloadImageRepo" -}}
{{- if .Values.global.airgapped.repository }}
{{- printf "%s/%s" .Values.global.airgapped.repository (include "prometheus.cmreloadImageName" .) }}
{{- else }}
{{- printf "%s/%s" .Values.global.image.registry (include "prometheus.cmreloadImageName" .) }}
{{- end }}
{{- end -}}
{{- define "prometheus.cmreloadImageName" -}}
{{- printf "configmap-reload" }}
{{- end -}}
{{- define "prometheus.cmreloadImageTag" -}}
{{- .Values.global.image.tag | default .Chart.AppVersion }}
{{- end -}}
{{/* {{/*
Figure out the config based on Get the Prometheus image
the value of airgapped.repository
*/}} */}}
{{- define "get.serverimage" }} {{- define "get.serverimage" }}
{{- if not .Values.global.rhMarketPlace }} {{- (get .Values.global.images (include "prometheus.prometheusImageName" .)) | default (include "prometheus.prometheusImage" .) }}
{{- if .Values.global.airgapped.repository }}
{{- printf "%s/prometheus:%s" .Values.global.airgapped.repository (include "get.promImageTag" .) }}
{{- else }}
{{- printf "%s:%s" (include "get.promImageRepo" .) (include "get.promImageTag" .) }}
{{- end }}
{{- else }}
{{- printf "%s" (get .Values.global.images "prometheus") }}
{{- end -}} {{- end -}}
{{- end }}
{{- define "prometheus.prometheusImage" }}
{{- printf "%s:%s" (include "prometheus.prometheusImageRepo" .) (include "prometheus.prometheusImageTag" .) }}
{{- end -}}
{{/* {{- define "prometheus.prometheusImageRepo" -}}
Figure out the configmap-reload image tag {{- if .Values.global.airgapped.repository }}
based on the value of global.upstreamCertifiedImages {{- printf "%s/%s" .Values.global.airgapped.repository (include "prometheus.prometheusImageName" .) }}
*/}} {{- else }}
{{- define "get.cmReloadImageTag"}} {{- printf "%s/%s" .Values.global.image.registry (include "prometheus.prometheusImageName" .) }}
{{- if .Values.global.upstreamCertifiedImages }} {{- end }}
{{- if .Values.global.airgapped.repository }} {{- end -}}
{{- printf "k10-%s-rh-ubi" (include "k10.prometheusConfigMapReloaderImageTag" .) }}
{{- else }}
{{- printf "%s-rh-ubi" (include "k10.prometheusConfigMapReloaderImageTag" .) }}
{{- end }}
{{- else }}
{{- if .Values.global.airgapped.repository }}
{{- printf "k10-%s" (include "k10.prometheusConfigMapReloaderImageTag" .) }}
{{- else }}
{{- printf "%s" (include "k10.prometheusConfigMapReloaderImageTag" .) }}
{{- end }}
{{- end }}
{{- end }}
{{/* {{- define "prometheus.prometheusImageName" -}}
Figure out the prometheus image tag {{- printf "prometheus" }}
based on the value of global.upstreamCertifiedImages {{- end -}}
*/}}
{{- define "get.promImageTag"}}
{{- if .Values.global.upstreamCertifiedImages }}
{{- if .Values.global.airgapped.repository }}
{{- printf "k10-%s-rh-ubi" (include "k10.prometheusImageTag" .) }}
{{- else }}
{{- printf "%s-rh-ubi" (include "k10.prometheusImageTag" .) }}
{{- end }}
{{- else }}
{{- if .Values.global.airgapped.repository }}
{{- printf "k10-%s" (include "k10.prometheusImageTag" .) }}
{{- else }}
{{- printf "%s" (include "k10.prometheusImageTag" .) }}
{{- end }}
{{- end }}
{{- end }}
{{/* {{- define "prometheus.prometheusImageTag" -}}
Figure out the configmap-reload image repo {{- .Values.global.image.tag | default .Chart.AppVersion }}
based on the value of global.upstreamCertifiedImages {{- end -}}
*/}}
{{- define "get.cmReloadImageRepo" }}
{{- if .Values.global.upstreamCertifiedImages }}
{{- printf "%s/%s/configmap-reload" .Values.k10image.registry .Values.k10image.repository }}
{{- else }}
{{- print .Values.configmapReload.prometheus.image.repository }}
{{- end }}
{{- end }}
{{/*
Figure out the prom image repo
based on the value of global.upstreamCertifiedImages
*/}}
{{- define "get.promImageRepo" }}
{{- if .Values.global.upstreamCertifiedImages }}
{{- printf "%s/%s/prometheus" .Values.k10image.registry .Values.k10image.repository }}
{{- else }}
{{- print .Values.server.image.repository }}
{{- end }}
{{- end }}
{{/* {{/*
Create a fully qualified alertmanager name. Create a fully qualified alertmanager name.

View File

@ -1,7 +1,3 @@
k10image:
registry: gcr.io
repository: kasten-images
rbac: rbac:
create: true create: true

View File

@ -26,9 +26,9 @@ vbrintegrationapi:
primary: dashboardbff primary: dashboardbff
{{- end -}} {{- end -}}
{{- define "k10.colocatedServiceLookup" -}}crypto: {{- define "k10.colocatedServiceLookup" -}}crypto:
- garbagecollector
- bloblifecyclemanager - bloblifecyclemanager
- events - events
- garbagecollector
dashboardbff: dashboardbff:
- vbrintegrationapi - vbrintegrationapi
state: state:
@ -46,7 +46,6 @@ state:
{{- define "k10.backupActionsDetails" -}}backupactions/details{{- end -}} {{- define "k10.backupActionsDetails" -}}backupactions/details{{- end -}}
{{- define "k10.reportActions" -}}reportactions{{- end -}} {{- define "k10.reportActions" -}}reportactions{{- end -}}
{{- define "k10.reportActionsDetails" -}}reportactions/details{{- end -}} {{- define "k10.reportActionsDetails" -}}reportactions/details{{- end -}}
{{- define "k10.restorePointRepositories" -}}restorepointrepositories{{- end -}}
{{- define "k10.storageRepositories" -}}storagerepositories{{- end -}} {{- define "k10.storageRepositories" -}}storagerepositories{{- end -}}
{{- define "k10.restoreActions" -}}restoreactions{{- end -}} {{- define "k10.restoreActions" -}}restoreactions{{- end -}}
{{- define "k10.restoreActionsDetails" -}}restoreactions/details{{- end -}} {{- define "k10.restoreActionsDetails" -}}restoreactions/details{{- end -}}
@ -100,7 +99,6 @@ state:
{{- define "k10.defaultKanisterCheckRepoTimeout" -}}20{{- end -}} {{- define "k10.defaultKanisterCheckRepoTimeout" -}}20{{- end -}}
{{- define "k10.defaultKanisterStatsTimeout" -}}20{{- end -}} {{- define "k10.defaultKanisterStatsTimeout" -}}20{{- end -}}
{{- define "k10.defaultKanisterEFSPostRestoreTimeout" -}}45{{- end -}} {{- define "k10.defaultKanisterEFSPostRestoreTimeout" -}}45{{- end -}}
{{- define "k10.defaultK10RootlessContainers" -}}false{{- end -}}
{{- define "k10.cloudProviders" -}} aws google azure {{- end -}} {{- define "k10.cloudProviders" -}} aws google azure {{- end -}}
{{- define "k10.serviceResources" -}} {{- define "k10.serviceResources" -}}
admin-svc: admin-svc:
@ -203,5 +201,5 @@ state-svc:
{{- define "k10.multiClusterVersion" -}}2{{- end -}} {{- define "k10.multiClusterVersion" -}}2{{- end -}}
{{- define "k10.mcExternalPort" -}}18000{{- end -}} {{- define "k10.mcExternalPort" -}}18000{{- end -}}
{{- define "k10.defaultKubeVirtVMsUnfreezeTimeout" -}}5m{{- end -}} {{- define "k10.defaultKubeVirtVMsUnfreezeTimeout" -}}5m{{- end -}}
{{- define "k10.kanisterToolsImageTag" -}}0.85.0{{- end -}} {{- define "k10.kanisterToolsImageTag" -}}0.88.0{{- end -}}
{{- define "k10.dexImageTag" -}}v2.35.3{{- end -}} {{- define "k10.dexImageTag" -}}v2.35.3{{- end -}}

View File

@ -267,7 +267,7 @@ required
{{- if .Values.global.airgapped.repository }} {{- if .Values.global.airgapped.repository }}
{{- printf "%s/dex" .Values.global.airgapped.repository }} {{- printf "%s/dex" .Values.global.airgapped.repository }}
{{- else }} {{- else }}
{{- printf "%s/%s/dex" .Values.image.registry .Values.image.repository }} {{- printf "%s/dex" .Values.global.image.registry }}
{{- end}} {{- end}}
{{- else }} {{- else }}
{{- if .Values.global.airgapped.repository }} {{- if .Values.global.airgapped.repository }}
@ -325,20 +325,16 @@ Get the emissary image.
{{- if .Values.global.airgapped.repository }} {{- if .Values.global.airgapped.repository }}
{{- printf "%s/%s" .Values.global.airgapped.repository (include "k10.emissaryImageName" .) }} {{- printf "%s/%s" .Values.global.airgapped.repository (include "k10.emissaryImageName" .) }}
{{- else }} {{- else }}
{{- if hasPrefix .Values.image.registry .Values.image.repository }} {{- printf "%s/%s" .Values.global.image.registry (include "k10.emissaryImageName" .) }}
{{- printf "%s/%s" .Values.image.repository (include "k10.emissaryImageName" .) }}
{{- else }}
{{- printf "%s/%s/%s" .Values.image.registry .Values.image.repository (include "k10.emissaryImageName" .) }}
{{- end }}
{{- end }} {{- end }}
{{- end -}} {{- end -}}
{{- define "k10.emissaryImageName" -}} {{- define "k10.emissaryImageName" -}}
{{- printf "emissary" }} {{- printf "emissary" }}
{{- end -}} {{- end -}}
{{- define "k10.emissaryImageTag" -}} {{- define "k10.emissaryImageTag" -}}
{{- default .Chart.AppVersion .Values.image.tag }} {{- .Values.global.image.tag | default .Chart.AppVersion }}
{{- end -}} {{- end -}}
{{/* {{/*
@ -751,3 +747,56 @@ running in the same cluster.
{{- define "k10.ambassadorId" -}} {{- define "k10.ambassadorId" -}}
"kasten.io/k10" "kasten.io/k10"
{{- end -}} {{- end -}}
{{/*
Indicates the multi-cluster mode
*/}}
{{- define "k10.multicluster" -}}
{{ (default .Values.features dict).multicluster }}
{{- end -}}
{{/*
Indicates whether K10 is configured as a multi-cluster primary
*/}}
{{- define "k10.isMulticlusterPrimary" -}}
{{ if eq (include "k10.multicluster" .) "primary" }}true{{ end }}
{{- end -}}
{{/* Check that image.values are not set. */}}
{{- define "image.values.check" -}}
{{- if not (empty .main.Values.image) }}
{{- $registry := .main.Values.image.registry }}
{{- $repository := .main.Values.image.repository }}
{{- if or $registry $repository }}
{{- $registry = coalesce $registry "gcr.io" }}
{{- $repository = coalesce $repository "kasten-images" }}
{{- $oldCombinedRegistry := "" }}
{{- if hasPrefix $registry $repository }}
{{- $oldCombinedRegistry = $repository }}
{{- else }}
{{- $oldCombinedRegistry = printf "%s/%s" $registry $repository }}
{{- end }}
{{- if ne $oldCombinedRegistry .main.Values.global.image.registry }}
{{- fail "Setting image.registry and image.repository is no longer supported use global.image.registry instead" }}
{{- end }}
{{- end }}
{{- $tag := .main.Values.image.tag }}
{{- if $tag }}
{{- if ne $tag .main.Values.global.image.tag }}
{{- fail "Setting image.tag is no longer supported use global.image.tag instead" }}
{{- end }}
{{- end }}
{{- $pullPolicy := .main.Values.image.pullPolicy }}
{{- if $pullPolicy }}
{{- if ne $pullPolicy .main.Values.global.image.pullPolicy }}
{{- fail "Setting image.pullPolicy is no longer supported use global.image.pullPolicy instead" }}
{{- end }}
{{- end }}
{{- end }}
{{- end -}}

View File

@ -20,7 +20,7 @@
{{- with .main }} {{- with .main }}
- name: {{ $service }}-svc - name: {{ $service }}-svc
{{- dict "main" . "k10_service" $service | include "serviceImage" | indent 8 }} {{- dict "main" . "k10_service" $service | include "serviceImage" | indent 8 }}
imagePullPolicy: {{ .Values.image.pullPolicy }} imagePullPolicy: {{ .Values.global.image.pullPolicy }}
{{- if eq $service "aggregatedapis" }} {{- if eq $service "aggregatedapis" }}
args: args:
- "--secure-port={{ .Values.service.aggregatedApiPort }}" - "--secure-port={{ .Values.service.aggregatedApiPort }}"
@ -248,11 +248,9 @@ stating that types are not same for the equality check
{{- if or (eq $service "kanister") (eq $service "executor")}} {{- if or (eq $service "kanister") (eq $service "executor")}}
- name: DATA_MOVER_IMAGE - name: DATA_MOVER_IMAGE
{{- if .Values.global.airgapped.repository }} {{- if .Values.global.airgapped.repository }}
value: {{ default .Chart.AppVersion .Values.image.tag | print .Values.global.airgapped.repository "/datamover:" }} value: {{ default .Chart.AppVersion .Values.global.image.tag | print .Values.global.airgapped.repository "/datamover:" }}
{{- else if contains .Values.image.registry .Values.image.repository }}
value: {{ default .Chart.AppVersion .Values.image.tag | print .Values.image.repository "/datamover:" }}
{{- else }} {{- else }}
value: {{ default .Chart.AppVersion .Values.image.tag | print .Values.image.registry "/" .Values.image.repository "/datamover:" }} value: {{ default .Chart.AppVersion .Values.global.image.tag | print .Values.global.image.registry "/datamover:" }}
{{- end }}{{/* if .Values.global.airgapped.repository */}} {{- end }}{{/* if .Values.global.airgapped.repository */}}
- name: KANISTER_POD_READY_WAIT_TIMEOUT - name: KANISTER_POD_READY_WAIT_TIMEOUT
@ -427,11 +425,6 @@ stating that types are not same for the equality check
configMapKeyRef: configMapKeyRef:
name: k10-config name: k10-config
key: KanisterEFSPostRestoreTimeout key: KanisterEFSPostRestoreTimeout
- name: K10_ROOTLESS_CONTAINERS
valueFrom:
configMapKeyRef:
name: k10-config
key: K10RootlessContainers
{{- end }} {{- end }}
{{- if and (eq $service "executor") (.Values.awsConfig.efsBackupVaultName) }} {{- if and (eq $service "executor") (.Values.awsConfig.efsBackupVaultName) }}
- name: EFS_BACKUP_VAULT_NAME - name: EFS_BACKUP_VAULT_NAME
@ -465,13 +458,6 @@ stating that types are not same for the equality check
name: k10-token-auth name: k10-token-auth
key: auth key: auth
{{- end }} {{- end }}
{{- if eq $service "kanister" }}
- name: K10_ROOTLESS_CONTAINERS
valueFrom:
configMapKeyRef:
name: k10-config
key: K10RootlessContainers
{{- end }}
{{- if eq "true" (include "overwite.kanisterToolsImage" .) }} {{- if eq "true" (include "overwite.kanisterToolsImage" .) }}
- name: KANISTER_TOOLS - name: KANISTER_TOOLS
valueFrom: valueFrom:
@ -711,19 +697,14 @@ stating that types are not same for the equality check
{{- else if $serviceStateful }} {{- else if $serviceStateful }}
- name: upgrade-init - name: upgrade-init
securityContext: securityContext:
{{- if $main_context.Values.global.rootlessContainers }}
capabilities: capabilities:
add: add:
- FOWNER - FOWNER
- CHOWN - CHOWN
runAsUser: 1000 runAsUser: 1000
allowPrivilegeEscalation: false allowPrivilegeEscalation: false
{{- else }}
runAsUser: 0
allowPrivilegeEscalation: true
{{- end }}
{{- dict "main" $main_context "k10_service" "upgrade" | include "serviceImage" | indent 8 }} {{- dict "main" $main_context "k10_service" "upgrade" | include "serviceImage" | indent 8 }}
imagePullPolicy: {{ $main_context.Values.image.pullPolicy }} imagePullPolicy: {{ $main_context.Values.global.image.pullPolicy }}
env: env:
- name: MODEL_STORE_DIR - name: MODEL_STORE_DIR
valueFrom: valueFrom:
@ -736,7 +717,7 @@ stating that types are not same for the equality check
{{- if eq $service "catalog" }} {{- if eq $service "catalog" }}
- name: schema-upgrade-check - name: schema-upgrade-check
{{- dict "main" $main_context "k10_service" $service | include "serviceImage" | indent 8 }} {{- dict "main" $main_context "k10_service" $service | include "serviceImage" | indent 8 }}
imagePullPolicy: {{ $main_context.Values.image.pullPolicy }} imagePullPolicy: {{ $main_context.Values.global.image.pullPolicy }}
env: env:
{{- if $main_context.Values.clusterName }} {{- if $main_context.Values.clusterName }}
- name: CLUSTER_NAME - name: CLUSTER_NAME

View File

@ -34,7 +34,7 @@ spec:
--- ---
{{- end }}{{/* if $.stateful */}} {{- end }}{{/* if $.stateful */}}
{{ $service_list := include "k10.restServices" . | splitList " " }} {{ $service_list := include "k10.restServices" . | splitList " " }}
{{- if not (default .Values.features dict).multicluster -}} {{- if not (include "k10.isMulticlusterPrimary" .) -}}
{{- $service_list = without $service_list "mccontrollermanager" -}} {{- $service_list = without $service_list "mccontrollermanager" -}}
{{- end -}} {{- end -}}
kind: ConfigMap kind: ConfigMap
@ -135,19 +135,14 @@ spec:
initContainers: initContainers:
- name: upgrade-init - name: upgrade-init
securityContext: securityContext:
{{- if .Values.global.rootlessContainers }}
capabilities: capabilities:
add: add:
- FOWNER - FOWNER
- CHOWN - CHOWN
runAsUser: 1000 runAsUser: 1000
allowPrivilegeEscalation: false allowPrivilegeEscalation: false
{{- else }}
runAsUser: 0
allowPrivilegeEscalation: true
{{- end }}
{{- dict "main" . "k10_service" "upgrade" | include "serviceImage" | indent 8 }} {{- dict "main" . "k10_service" "upgrade" | include "serviceImage" | indent 8 }}
imagePullPolicy: {{ .Values.image.pullPolicy }} imagePullPolicy: {{ .Values.global.image.pullPolicy }}
env: env:
- name: MODEL_STORE_DIR - name: MODEL_STORE_DIR
value: /var/reports/ value: /var/reports/
@ -158,7 +153,7 @@ spec:
containers: containers:
- name: {{ $service }}-svc - name: {{ $service }}-svc
{{- dict "main" . "k10_service" $service | include "serviceImage" | indent 8 }} {{- dict "main" . "k10_service" $service | include "serviceImage" | indent 8 }}
imagePullPolicy: {{ .Values.image.pullPolicy }} imagePullPolicy: {{ .Values.global.image.pullPolicy }}
{{- if eq .Release.Namespace "default" }} {{- if eq .Release.Namespace "default" }}
{{- $podName := (printf "%s-svc" $service) }} {{- $podName := (printf "%s-svc" $service) }}
{{- $containerName := (printf "%s-svc" $service) }} {{- $containerName := (printf "%s-svc" $service) }}

View File

@ -7,20 +7,19 @@ Using substr to remove repo from ambassadorImage
*/}} */}}
{{- define "serviceImage" -}} {{- define "serviceImage" -}}
{{/* {{/*
we are maintaining the field .Values.images to override it when we are maintaining the field .Values.global.images to override it when
we install the chart for red hat marketplace. If we dont we install the chart for red hat marketplace. If we dont
have the value specified use earlier flow, if it is, use the have the value specified use earlier flow, if it is, use the
value that is specified. value that is specified.
*/}} */}}
{{- include "image.values.check" . -}}
{{- if not .main.Values.global.rhMarketPlace }} {{- if not .main.Values.global.rhMarketPlace }}
{{- $serviceImage := "" -}} {{- $serviceImage := "" -}}
{{- $tagFromDefs := "" -}} {{- $tagFromDefs := "" -}}
{{- if .main.Values.global.airgapped.repository }} {{- if .main.Values.global.airgapped.repository }}
{{- $serviceImage = default .main.Chart.AppVersion .main.Values.image.tag | print .main.Values.global.airgapped.repository "/" .k10_service ":" }} {{- $serviceImage = default .main.Chart.AppVersion .main.Values.global.image.tag | print .main.Values.global.airgapped.repository "/" .k10_service ":" }}
{{- else if contains .main.Values.image.registry .main.Values.image.repository }}
{{- $serviceImage = default .main.Chart.AppVersion .main.Values.image.tag | print .main.Values.image.repository "/" .k10_service ":" }}
{{- else }} {{- else }}
{{- $serviceImage = default .main.Chart.AppVersion .main.Values.image.tag | print .main.Values.image.registry "/" .main.Values.image.repository "/" .k10_service ":" }} {{- $serviceImage = default .main.Chart.AppVersion .main.Values.global.image.tag | print .main.Values.global.image.registry "/" .k10_service ":" }}
{{- end }}{{/* if .main.Values.global.airgapped.repository */}} {{- end }}{{/* if .main.Values.global.airgapped.repository */}}
{{- $serviceImageKey := print (replace "-" "" .k10_service) "Image" }} {{- $serviceImageKey := print (replace "-" "" .k10_service) "Image" }}
{{- if eq $serviceImageKey "ambassadorImage" }} {{- if eq $serviceImageKey "ambassadorImage" }}

View File

@ -4,9 +4,6 @@
{{- $container_port := .Values.service.internalPort -}} {{- $container_port := .Values.service.internalPort -}}
{{- $namespace := .Release.Namespace -}} {{- $namespace := .Release.Namespace -}}
{{- range include "k10.aggregatedAPIs" . | splitList " " -}} {{- range include "k10.aggregatedAPIs" . | splitList " " -}}
{{- $isNotReposAPI := (ne . "repositories") }}
{{- $reposAPIEnabled := (default $main.Values.features dict).repositoriesAPI }}
{{- if or $isNotReposAPI $reposAPIEnabled }}
--- ---
apiVersion: apiregistration.k8s.io/v1 apiVersion: apiregistration.k8s.io/v1
kind: APIService kind: APIService
@ -25,5 +22,4 @@ spec:
versionPriority: 10 versionPriority: 10
insecureSkipTLSVerify: true insecureSkipTLSVerify: true
{{ end }} {{ end }}
{{ end }}
{{- end -}} {{- end -}}

View File

@ -7,7 +7,7 @@ Generates deployment specs for K10 services and other services such as
{{- $stateless_services := include "k10.statelessServices" . | splitList " " -}} {{- $stateless_services := include "k10.statelessServices" . | splitList " " -}}
{{- $colocated_services := include "k10.colocatedServices" . | fromYaml -}} {{- $colocated_services := include "k10.colocatedServices" . | fromYaml -}}
{{ $service_list := include "k10.restServices" . | splitList " " }} {{ $service_list := include "k10.restServices" . | splitList " " }}
{{- if not (default .Values.features dict).multicluster -}} {{- if not (include "k10.isMulticlusterPrimary" .) -}}
{{- $service_list = without $service_list "mccontrollermanager" -}} {{- $service_list = without $service_list "mccontrollermanager" -}}
{{- end -}} {{- end -}}
{{- range $skip, $k10_service := $service_list }} {{- range $skip, $k10_service := $service_list }}

View File

@ -126,11 +126,11 @@ spec:
image: {{ include "k10.emissaryImage" . }} image: {{ include "k10.emissaryImage" . }}
resources: resources:
limits: limits:
cpu: 1000m cpu: {{ .Values.gateway.resources.limits.cpu | quote }}
memory: 1Gi memory: {{ .Values.gateway.resources.limits.memory | quote }}
requests: requests:
cpu: 200m cpu: {{ .Values.gateway.resources.requests.cpu | quote }}
memory: 300Mi memory: {{ .Values.gateway.resources.requests.memory | quote }}
env: env:
- name: AMBASSADOR_NAMESPACE - name: AMBASSADOR_NAMESPACE
valueFrom: valueFrom:

View File

@ -9,8 +9,6 @@ metadata:
allowPrivilegedContainer: false allowPrivilegedContainer: false
allowHostNetwork: false allowHostNetwork: false
allowHostDirVolumePlugin: true allowHostDirVolumePlugin: true
priority: null
allowedCapabilities: null
allowHostPorts: true allowHostPorts: true
allowHostPID: false allowHostPID: false
allowHostIPC: false allowHostIPC: false

View File

@ -50,8 +50,6 @@ data:
kubeVirtVMsUnFreezeTimeout: {{ default (include "k10.defaultKubeVirtVMsUnfreezeTimeout" .) .Values.kubeVirtVMs.snapshot.unfreezeTimeout | quote }} kubeVirtVMsUnFreezeTimeout: {{ default (include "k10.defaultKubeVirtVMsUnfreezeTimeout" .) .Values.kubeVirtVMs.snapshot.unfreezeTimeout | quote }}
K10RootlessContainers: {{ default (include "k10.defaultK10RootlessContainers" .) ( not ( empty .Values.global.rootlessContainers ) ) | quote }}
{{- if .Values.awsConfig.efsBackupVaultName }} {{- if .Values.awsConfig.efsBackupVaultName }}
efsBackupVaultName: {{ quote .Values.awsConfig.efsBackupVaultName }} efsBackupVaultName: {{ quote .Values.awsConfig.efsBackupVaultName }}
{{- end }} {{- end }}

View File

@ -52,7 +52,7 @@ spec:
ports: ports:
- protocol: TCP - protocol: TCP
port: {{ .Values.service.externalPort }} port: {{ .Values.service.externalPort }}
{{- if ( .Values.features | default dict).multicluster }} {{- if (include "k10.isMulticlusterPrimary" .) }}
--- ---
kind: NetworkPolicy kind: NetworkPolicy
apiVersion: networking.k8s.io/v1 apiVersion: networking.k8s.io/v1

View File

@ -3,7 +3,7 @@
{{- if .Values.gateway.exposeAdminPort -}} {{- if .Values.gateway.exposeAdminPort -}}
{{- $scrape_services = append (include "k10.restServices" . | splitList " " ) "gateway" -}} {{- $scrape_services = append (include "k10.restServices" . | splitList " " ) "gateway" -}}
{{- end -}} {{- end -}}
{{- if not (default .Values.features dict).multicluster -}} {{- if not (include "k10.isMulticlusterPrimary" .) -}}
{{- $scrape_services = without $scrape_services "mccontrollermanager" -}} {{- $scrape_services = without $scrape_services "mccontrollermanager" -}}
{{- end -}} {{- end -}}
{{- include "check.validateMonitoringProperties" .}} {{- include "check.validateMonitoringProperties" .}}

View File

@ -8,8 +8,6 @@ metadata:
allowPrivilegedContainer: false allowPrivilegedContainer: false
allowHostNetwork: false allowHostNetwork: false
allowHostDirVolumePlugin: true allowHostDirVolumePlugin: true
priority: null
allowedCapabilities: null
allowHostPorts: true allowHostPorts: true
allowHostPID: false allowHostPID: false
allowHostIPC: false allowHostIPC: false

View File

@ -8,12 +8,12 @@
{{- $os_postfix := default .Release.Name .Values.route.path -}} {{- $os_postfix := default .Release.Name .Values.route.path -}}
{{- $main_context := . -}} {{- $main_context := . -}}
{{ $service_list := append (include "k10.restServices" . | splitList " ") "frontend" }} {{ $service_list := append (include "k10.restServices" . | splitList " ") "frontend" }}
{{- if not (default .Values.features dict).multicluster -}} {{- if not (include "k10.isMulticlusterPrimary" .) -}}
{{- $service_list = without $service_list "mccontrollermanager" -}} {{- $service_list = without $service_list "mccontrollermanager" -}}
{{- end -}} {{- end -}}
{{- range $service_list }} {{- range $service_list }}
{{- $exposed_service := (has . $exposed_services) }} {{- $exposed_service := (has . $exposed_services) }}
{{- $mc_exposed_service := (and (eq . "mccontrollermanager") (default $.Values.features dict).multicluster) }} {{- $mc_exposed_service := (and (eq . "mccontrollermanager") (include "k10.isMulticlusterPrimary" $)) }}
{{ if not (hasKey $colocated_services . ) }} {{ if not (hasKey $colocated_services . ) }}
apiVersion: v1 apiVersion: v1
kind: Service kind: Service

View File

@ -2,42 +2,6 @@
"$schema": "https://json-schema.org/draft/2019-09/schema", "$schema": "https://json-schema.org/draft/2019-09/schema",
"type": "object", "type": "object",
"properties": { "properties": {
"image": {
"type": "object",
"title": "Container images config",
"description": "Configure docker images for all the containers",
"properties": {
"registry": {
"type": "string",
"default": "gcr.io",
"title": "Container images registry address",
"description": "Change default registry for all the images"
},
"repository": {
"type": "string",
"default": "kasten-images",
"title": "Container images repository name",
"description": "Change default repository for all the images"
},
"tag": {
"type": "string",
"default": "",
"title": "Container images tag",
"description": "Change default tag for all the images"
},
"pullPolicy": {
"type": "string",
"default": "Always",
"title": "Container images pullPolicy",
"description": "Change default pullPolicy for all the images",
"enum": [
"IfNotPresent",
"Always",
"Never"
]
}
}
},
"rbac": { "rbac": {
"type": "object", "type": "object",
"title": "RBAC configuration", "title": "RBAC configuration",
@ -100,6 +64,36 @@
"type": "object", "type": "object",
"title": "Global settings", "title": "Global settings",
"properties": { "properties": {
"image": {
"type": "object",
"title": "K10 image configurations",
"description": "Change K10 image settings",
"properties": {
"registry": {
"type": "string",
"default": "gcr.io/kasten-images",
"title": "K10 image registry",
"description": "Change default K10 image registry"
},
"tag": {
"type": "string",
"default": "",
"title": "K10 image tag",
"description": "Change default K10 tag"
},
"pullPolicy": {
"type": "string",
"default": "Always",
"title": "Container images pullPolicy",
"description": "Change default pullPolicy for all the images",
"enum": [
"IfNotPresent",
"Always",
"Never"
]
}
}
},
"airgapped": { "airgapped": {
"type": "object", "type": "object",
"title": "Airgapped offline installation", "title": "Airgapped offline installation",
@ -240,13 +234,13 @@
"type": "string", "type": "string",
"default": "", "default": "",
"title": "Admin service container image", "title": "Admin service container image",
"description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(image.registry/image.repository)/<service-name>:(Chart.AppVersion)|(image.tag)'" "description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(global.image.registry)/<service-name>:(Chart.AppVersion)|(image.tag)'"
}, },
"aggregatedapis": { "aggregatedapis": {
"type": "string", "type": "string",
"default": "", "default": "",
"title": "Aggregatedapis service container image", "title": "Aggregatedapis service container image",
"description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(image.registry/image.repository)/<service-name>:(Chart.AppVersion)|(image.tag)'" "description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(global.image.registry)/<service-name>:(Chart.AppVersion)|(image.tag)'"
}, },
"ambassador": { "ambassador": {
"type": "string", "type": "string",
@ -258,25 +252,25 @@
"type": "string", "type": "string",
"default": "", "default": "",
"title": "Auth service container image", "title": "Auth service container image",
"description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(image.registry/image.repository)/<service-name>:(Chart.AppVersion)|(image.tag)'" "description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(global.image.registry)/<service-name>:(Chart.AppVersion)|(image.tag)'"
}, },
"bloblifecyclemanager": { "bloblifecyclemanager": {
"type": "string", "type": "string",
"default": "", "default": "",
"title": "Bloblifecyclemanager service container image", "title": "Bloblifecyclemanager service container image",
"description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(image.registry/image.repository)/<service-name>:(Chart.AppVersion)|(image.tag)'" "description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(global.image.registry)/<service-name>:(Chart.AppVersion)|(image.tag)'"
}, },
"catalog": { "catalog": {
"type": "string", "type": "string",
"default": "", "default": "",
"title": "Catalog service container image", "title": "Catalog service container image",
"description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(image.registry/image.repository)/<service-name>:(Chart.AppVersion)|(image.tag)'" "description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(global.image.registry)/<service-name>:(Chart.AppVersion)|(image.tag)'"
}, },
"cephtool": { "cephtool": {
"type": "string", "type": "string",
"default": "", "default": "",
"title": "Cephtool service container image", "title": "Cephtool service container image",
"description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(image.registry/image.repository)/<service-name>:(Chart.AppVersion)|(image.tag)'" "description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(global.image.registry)/<service-name>:(Chart.AppVersion)|(image.tag)'"
}, },
"configmap-reload": { "configmap-reload": {
"type": "string", "type": "string",
@ -288,19 +282,19 @@
"type": "string", "type": "string",
"default": "", "default": "",
"title": "Controllermanager service container image", "title": "Controllermanager service container image",
"description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(image.registry/image.repository)/<service-name>:(Chart.AppVersion)|(image.tag)'" "description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(global.image.registry)/<service-name>:(Chart.AppVersion)|(image.tag)'"
}, },
"crypto": { "crypto": {
"type": "string", "type": "string",
"default": "", "default": "",
"title": "Crypto service container image", "title": "Crypto service container image",
"description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(image.registry/image.repository)/<service-name>:(Chart.AppVersion)|(image.tag)'" "description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(global.image.registry)/<service-name>:(Chart.AppVersion)|(image.tag)'"
}, },
"dashboardbff": { "dashboardbff": {
"type": "string", "type": "string",
"default": "", "default": "",
"title": "Dashboardbff service container image", "title": "Dashboardbff service container image",
"description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(image.registry/image.repository)/<service-name>:(Chart.AppVersion)|(image.tag)'" "description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(global.image.registry)/<service-name>:(Chart.AppVersion)|(image.tag)'"
}, },
"datamover": { "datamover": {
"type": "string", "type": "string",
@ -318,25 +312,25 @@
"type": "string", "type": "string",
"default": "", "default": "",
"title": "Emissary service container image", "title": "Emissary service container image",
"description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(image.registry/image.repository)/<service-name>:(Chart.AppVersion)|(image.tag)'" "description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(global.image.registry)/<service-name>:(Chart.AppVersion)|(image.tag)'"
}, },
"events": { "events": {
"type": "string", "type": "string",
"default": "", "default": "",
"title": "Events service container image", "title": "Events service container image",
"description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(image.registry/image.repository)/<service-name>:(Chart.AppVersion)|(image.tag)'" "description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(global.image.registry)/<service-name>:(Chart.AppVersion)|(image.tag)'"
}, },
"executor": { "executor": {
"type": "string", "type": "string",
"default": "", "default": "",
"title": "Executor service container image", "title": "Executor service container image",
"description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(image.registry/image.repository)/<service-name>:(Chart.AppVersion)|(image.tag)'" "description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(global.image.registry)/<service-name>:(Chart.AppVersion)|(image.tag)'"
}, },
"frontend": { "frontend": {
"type": "string", "type": "string",
"default": "", "default": "",
"title": "Frontend service container image", "title": "Frontend service container image",
"description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(image.registry/image.repository)/<service-name>:(Chart.AppVersion)|(image.tag)'" "description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(global.image.registry)/<service-name>:(Chart.AppVersion)|(image.tag)'"
}, },
"grafana": { "grafana": {
"type": "string", "type": "string",
@ -348,30 +342,31 @@
"type": "string", "type": "string",
"default": "", "default": "",
"title": "Jobs service container image", "title": "Jobs service container image",
"description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(image.registry/image.repository)/<service-name>:(Chart.AppVersion)|(image.tag)'" "description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(global.image.registry)/<service-name>:(Chart.AppVersion)|(image.tag)'"
}, },
"kanister-tools": { "kanister-tools": {
"type": "string", "type": "string",
"default": "", "default": "",
"title": "Kanister-tools service container image" "title": "Kanister-tools service container image",
"description": "Kanister-tools service container image contains set of tools, required for all kanister related operations. It is used for debug, troubleshooting, primer purposes as well"
}, },
"kanister": { "kanister": {
"type": "string", "type": "string",
"default": "", "default": "",
"title": "Kanister service container image", "title": "Kanister service container image",
"description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(image.registry/image.repository)/<service-name>:(Chart.AppVersion)|(image.tag)'" "description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(global.image.registry)/<service-name>:(Chart.AppVersion)|(image.tag)'"
}, },
"logging": { "logging": {
"type": "string", "type": "string",
"default": "", "default": "",
"title": "Logging service container image", "title": "Logging service container image",
"description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(image.registry/image.repository)/<service-name>:(Chart.AppVersion)|(image.tag)'" "description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(global.image.registry)/<service-name>:(Chart.AppVersion)|(image.tag)'"
}, },
"metering": { "metering": {
"type": "string", "type": "string",
"default": "", "default": "",
"title": "Metering service container image", "title": "Metering service container image",
"description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(image.registry/image.repository)/<service-name>:(Chart.AppVersion)|(image.tag)'" "description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(global.image.registry)/<service-name>:(Chart.AppVersion)|(image.tag)'"
}, },
"paygo_daemonset": { "paygo_daemonset": {
"type": "string", "type": "string",
@ -389,13 +384,13 @@
"type": "string", "type": "string",
"default": "", "default": "",
"title": "State service container image", "title": "State service container image",
"description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(image.registry/image.repository)/<service-name>:(Chart.AppVersion)|(image.tag)'" "description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(global.image.registry)/<service-name>:(Chart.AppVersion)|(image.tag)'"
}, },
"upgrade": { "upgrade": {
"type": "string", "type": "string",
"default": "", "default": "",
"title": "Upgrade service container image", "title": "Upgrade service container image",
"description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(image.registry/image.repository)/<service-name>:(Chart.AppVersion)|(image.tag)'" "description": "Used for packaging RedHat Operator. Setting this flag along with global.rhMarketPlace=true overrides the default image name. This flag is only for internal purposes. If not set, the image name is formed with '(global.airgapped.repository)|(global.image.registry)/<service-name>:(Chart.AppVersion)|(image.tag)'"
}, },
"vbrintegrationapi": { "vbrintegrationapi": {
"type": "string", "type": "string",
@ -473,7 +468,7 @@
"type": "string", "type": "string",
"default": "", "default": "",
"title": "External prometheus port number", "title": "External prometheus port number",
"descrption": "Set prometheus port number" "description": "Set prometheus port number"
}, },
"baseURL": { "baseURL": {
"type": "string", "type": "string",
@ -494,7 +489,7 @@
"type": "boolean", "type": "boolean",
"default": false, "default": false,
"title": "Enable ipv6", "title": "Enable ipv6",
"Description": "Set true to enable ipv6" "description": "Set true to enable ipv6"
} }
} }
} }
@ -738,7 +733,8 @@
"accept": { "accept": {
"type": "boolean", "type": "boolean",
"default": false, "default": false,
"title": " enable accept EULA before installation" "title": "Enable accept EULA before installation",
"description": "An End-user license agreement (EULA) is a legal agreement granting a user a license to use an application or software. It must be consented to before a user buys, installs, or downloads an application or software owned by the service provider."
} }
} }
}, },
@ -766,25 +762,6 @@
"title": "Internal Prometheus configuration", "title": "Internal Prometheus configuration",
"description": "Configure internal Prometheus", "description": "Configure internal Prometheus",
"properties": { "properties": {
"k10image": {
"type": "object",
"title": "Prometheus image configurations",
"description": "Change Prometheus image settings",
"properties": {
"registry": {
"type": "string",
"default": "gcr.io",
"title": "Prometheus image registry",
"description": "Change default Prometheus image registry"
},
"repository": {
"type": "string",
"default": "kasten-images",
"title": "Prometheus image repository",
"description": "Change default Prometheus image repository"
}
}
},
"initChownData": { "initChownData": {
"type": "object", "type": "object",
"title": "Prometheus init container", "title": "Prometheus init container",
@ -806,8 +783,8 @@
"create": { "create": {
"type": "boolean", "type": "boolean",
"default": false, "default": false,
"title": "Enable Prometheus rbac", "title": "Enable Prometheus rbac. Warning - cluster wide permissions",
"description": "Whether to create Prometheus rbac configuration" "description": "Whether to create Prometheus rbac configuration. Warning - this action will allow prometheus to scrape pods in all k8s namespaces."
} }
} }
}, },
@ -1837,12 +1814,14 @@
"userAttr": { "userAttr": {
"type": "string", "type": "string",
"default": "", "default": "",
"title": "Attribute in the user's entry that must match with the groupAttr while searching for groups" "title": "Attribute in the user's entry",
"description": "Attribute in the user's entry that must match with the groupAttr while searching for groups"
}, },
"groupAttr": { "groupAttr": {
"type": "string", "type": "string",
"default": "", "default": "",
"title": "Attribute in the group's entry that must match with the userAttr while searching for groups" "title": "Attribute in the group's entry",
"description": "Attribute in the group's entry that must match with the userAttr while searching for groups"
} }
} }
}, },
@ -1924,7 +1903,7 @@
"title": "Enable VBRIntegratipnAPI service", "title": "Enable VBRIntegratipnAPI service",
"description": "Set true to enable VBRIntegratipnAPI service", "description": "Set true to enable VBRIntegratipnAPI service",
"type": "boolean", "type": "boolean",
"default": false "default": true
} }
} }
} }
@ -2292,6 +2271,63 @@
"default": true, "default": true,
"title": "Expose Admin port", "title": "Expose Admin port",
"description": "Whether to expose Admin port for gateway service" "description": "Whether to expose Admin port for gateway service"
},
"resources": {
"type": "object",
"title": "Gateway pod resource config",
"description": "Configure resource request and limits by Gateway pod",
"properties": {
"requests": {
"type": "object",
"title": "Gateway resource requests",
"description": "Gateway resource requests configuration",
"properties": {
"memory": {
"type": "string",
"default": "300Mi",
"title": "Gateway pod memory request",
"description": "Gateway pod memory request",
"examples": [
"1Gi"
]
},
"cpu": {
"type": "string",
"default": "200m",
"title": "Gateway pod cpu request",
"description": "Gateway pod cpu request",
"examples": [
"1"
]
}
}
},
"limits": {
"type": "object",
"title": "Gateway resource limits",
"description": "Gateway resource limits configuration",
"properties": {
"memory": {
"type": "string",
"default": "1Gi",
"title": "Gateway pod memory limit",
"description": "Gateway pod memory limit",
"examples": [
"1Gi"
]
},
"cpu": {
"type": "string",
"default": "1000m",
"title": "Gateway pod cpu limit",
"description": "Gateway pod cpu limit",
"examples": [
"1"
]
}
}
}
}
} }
} }
}, },

View File

@ -1,11 +1,6 @@
# Default values for k10. # Default values for k10.
# This is a YAML-formatted file. # This is a YAML-formatted file.
# Declare variables to be passed into your templates. # Declare variables to be passed into your templates.
image:
registry: gcr.io
repository: kasten-images
tag: ''
pullPolicy: Always
rbac: rbac:
create: true create: true
@ -22,10 +17,13 @@ scc:
networkPolicy: networkPolicy:
create: true create: true
# Empty value of airgapped.repository specifies that the installation is
# going to be online and if we provide this value using --set flag that
# means that the installation is going to be offline
global: global:
# These are the default values for picking k10 images. They can be overridden
# to specify a particular registy and tag.
image:
registry: gcr.io/kasten-images
tag: ''
pullPolicy: Always
airgapped: airgapped:
repository: '' repository: ''
persistence: persistence:
@ -166,10 +164,6 @@ cluster:
domainName: "cluster.local" #default value is cluster.local domainName: "cluster.local" #default value is cluster.local
prometheus: prometheus:
k10image:
# take this value from image.repository
registry: gcr.io
repository: kasten-images
# Disabling init container # Disabling init container
# which uses root cmds # which uses root cmds
initChownData: initChownData:
@ -367,7 +361,7 @@ auth:
optionalColocatedServices: optionalColocatedServices:
vbrintegrationapi: vbrintegrationapi:
enabled: false enabled: true
cacertconfigmap: cacertconfigmap:
name: "" #Name of the configmap name: "" #Name of the configmap
@ -436,6 +430,13 @@ limiter:
gateway: gateway:
insecureDisableSSLVerify: false insecureDisableSSLVerify: false
exposeAdminPort: true exposeAdminPort: true
resources:
requests:
memory: 300Mi
cpu: 200m
limits:
memory: 1Gi
cpu: 1000m
kanister: kanister:
backupTimeout: 45 backupTimeout: 45

View File

@ -11316,11 +11316,12 @@ entries:
- annotations: - annotations:
catalog.cattle.io/certified: partner catalog.cattle.io/certified: partner
catalog.cattle.io/display-name: K10 catalog.cattle.io/display-name: K10
catalog.cattle.io/featured: "1"
catalog.cattle.io/kube-version: '>= 1.17.0-0' catalog.cattle.io/kube-version: '>= 1.17.0-0'
catalog.cattle.io/release-name: k10 catalog.cattle.io/release-name: k10
apiVersion: v2 apiVersion: v2
appVersion: 5.5.4 appVersion: 5.5.4
created: "2023-02-03T12:59:29.683008617+05:30" created: "2023-02-03T13:07:51.681650973+05:30"
dependencies: dependencies:
- name: grafana - name: grafana
repository: file://./charts/grafana repository: file://./charts/grafana
@ -11329,7 +11330,7 @@ entries:
repository: file://./charts/prometheus repository: file://./charts/prometheus
version: 15.8.5 version: 15.8.5
description: Kastens K10 Data Management Platform description: Kastens K10 Data Management Platform
digest: e541d010ceab6c3506352799d7dfa38bfec7190be335e308349a14d5c0900b3c digest: 0cd5de4ce9cff4cb21f74e76019aeb339bc025d5b3c47b6607552af0fce6277b
home: https://kasten.io/ home: https://kasten.io/
icon: https://docs.kasten.io/_static/logo-kasten-k10-blue-white.png icon: https://docs.kasten.io/_static/logo-kasten-k10-blue-white.png
maintainers: maintainers:
@ -11342,12 +11343,11 @@ entries:
- annotations: - annotations:
catalog.cattle.io/certified: partner catalog.cattle.io/certified: partner
catalog.cattle.io/display-name: K10 catalog.cattle.io/display-name: K10
catalog.cattle.io/featured: "1"
catalog.cattle.io/kube-version: '>= 1.17.0-0' catalog.cattle.io/kube-version: '>= 1.17.0-0'
catalog.cattle.io/release-name: k10 catalog.cattle.io/release-name: k10
apiVersion: v2 apiVersion: v2
appVersion: 5.5.3 appVersion: 5.5.3
created: "2023-02-03T12:59:29.671285008+05:30" created: "2023-02-03T13:06:27.239073035+05:30"
dependencies: dependencies:
- name: grafana - name: grafana
repository: file://./charts/grafana repository: file://./charts/grafana
@ -11356,7 +11356,7 @@ entries:
repository: file://./charts/prometheus repository: file://./charts/prometheus
version: 15.8.5 version: 15.8.5
description: Kastens K10 Data Management Platform description: Kastens K10 Data Management Platform
digest: 353d1b9c22e57769c638c8b1fb1e5863de79e2f85fd0fc7b9d6a5959503e514e digest: 4f202085e8d74f9e8c588c9f8e52033962b7248e4e36e6882875924a35b77d32
home: https://kasten.io/ home: https://kasten.io/
icon: https://docs.kasten.io/_static/logo-kasten-k10-blue-white.png icon: https://docs.kasten.io/_static/logo-kasten-k10-blue-white.png
maintainers: maintainers:
@ -11369,14 +11369,13 @@ entries:
- annotations: - annotations:
catalog.cattle.io/certified: partner catalog.cattle.io/certified: partner
catalog.cattle.io/display-name: K10 catalog.cattle.io/display-name: K10
catalog.cattle.io/featured: "1"
catalog.cattle.io/kube-version: '>= 1.17.0-0' catalog.cattle.io/kube-version: '>= 1.17.0-0'
catalog.cattle.io/release-name: k10 catalog.cattle.io/release-name: k10
apiVersion: v2 apiVersion: v2
appVersion: 5.5.2 appVersion: 5.5.2
created: "2023-02-03T12:59:33.87787867+05:30" created: "2023-02-03T13:06:27.227488128+05:30"
description: Kastens K10 Data Management Platform description: Kastens K10 Data Management Platform
digest: 367d3aff52703e2b36395b6e03aa77b6b95c93b2f6ea42a9b58c39ab12806c79 digest: af49c6f27803fcc389533d9129aa59f03e9c34fe63fc4ac42b3c49e29df22d79
home: https://kasten.io/ home: https://kasten.io/
icon: https://docs.kasten.io/_static/logo-kasten-k10-blue-white.png icon: https://docs.kasten.io/_static/logo-kasten-k10-blue-white.png
maintainers: maintainers:
@ -11389,13 +11388,12 @@ entries:
- annotations: - annotations:
catalog.cattle.io/certified: partner catalog.cattle.io/certified: partner
catalog.cattle.io/display-name: K10 catalog.cattle.io/display-name: K10
catalog.cattle.io/featured: "1"
catalog.cattle.io/release-name: k10 catalog.cattle.io/release-name: k10
apiVersion: v2 apiVersion: v2
appVersion: 5.5.1 appVersion: 5.5.1
created: "2023-02-03T12:59:29.647074033+05:30" created: "2023-02-03T13:06:27.215326217+05:30"
description: Kastens K10 Data Management Platform description: Kastens K10 Data Management Platform
digest: 894fcbfbf4e895e353b240591124e7a6ba03391cc1d2834e0c2c275f6760ec63 digest: 46bd8ade716098eae02d0500591750c406d5fbeb228e11ea67e7f6cbff199b83
home: https://kasten.io/ home: https://kasten.io/
icon: https://docs.kasten.io/_static/logo-kasten-k10-blue-white.png icon: https://docs.kasten.io/_static/logo-kasten-k10-blue-white.png
kubeVersion: '>= 1.17.0-0' kubeVersion: '>= 1.17.0-0'