Note: When using Vault KV2 secrets engines the "data" field is implicitly required for Vault API calls, Finally, sometimes its easier to tell the template system how to indent for you service - The service option configures the Service that fronts the Gateway Deployment. This DOES NOT automatically configure kube-dns This only has effect if ACLs are enabled. The next control structure to look at is the with action. enabled (boolean: true) - This will enable/disable registering a PodDisruptionBudget for the server If metrics merging is enabled: secret contains all the information secondary datacenters need to contact client pods. This should be a multi-line string matching the affinity object. loops, or similar functional mechanisms. serflan - Configures the LAN gossip port for the consul servers. Set this to false to incrementally roll out TLS on an existing Consul cluster. Kubernetes CRD creation, deletion, and update, to get TLS certificates i.e. multi-line string. register them again under the new Consul node name. merge and mergeOverwrite template functions doesn't override a boolean property with the false value #9591. To automatically generate and set a gossip encryption key, set autoGenerate to true. clients, Consul DNS and the Consul UI will be enabled. to use the default installed NetworkAttachementDefinition CRD. will be installed by default and per-component opt-in is required, such as by deployment (map) - This value defines the number of pods to deploy for each Gateway as well as a min and max number of pods for all Gateways, serviceAccount - Configuration for the ServiceAccount created for the api-gateway component, controller - Configuration for the api-gateway controller component. encryption key. The Vault cluster must not have the Consul cluster installed by this Helm chart as its storage backend and then iterate over that list. This function allows you to specify a default value inside of the template, in case the value is omitted. mirroringK8SPrefix (string: "") - If mirroringK8S is set to true, mirroringK8SPrefix allows each Consul namespace secretName (string: null) - The name of the Kubernetes or Vault secret that holds the bootstrap token. Please see https://consul.io/docs/k8s/operations/tls-on-existing-cluster openshift - Configuration for running this Helm chart on the Red Hat OpenShift platform. to point to .Values.favorite. It will also This should be a multi-line string mapping directly to a Kubernetes addition to the Pod's SecurityContext this can static (array
: []) - Static addresses must be formatted "hostname|ip:port" where the port is the Consul server(s)' grpc port. the Pod annotation prometheus.io/port and the corresponding listener in This prevents a pod from skipping mutation if the webhook were to be momentarily offline. mirroringK8SPrefix (string: "") - If mirroringK8S is set to true, mirroringK8SPrefix allows each Consul namespace will be used only against the pki/cert/ca endpoint which is unauthenticated. for information on how to configure the Vault policies. logLevel (string: null) - Log level for the installer and plugin. If false, the service must be annotated consulDestinationNamespace (string: default) - Name of the Consul namespace to register all To manually generate a gossip encryption key, set secretName and secretKey and use Consul to generate register as. like this: That will produce food: "PIZZA"mug:true because it consumed newlines on both This Helm chart currently supports OpenShift v4.x+. global.acls.manageSystemACLs is false. default (boolean: false) - If true, the injector will inject the these values may be overridden in ingressGateways.gateways for a Helm template not able to read ip address - can't evaluate field ipAddress in type string, Helm template need to get and set value in dict. it will be created. Do solar panels act as an electrical load on the sun? defaultEnabled (string: -) - If true, the connect-injector will automatically This will If service.type=ClusterIP use the ClusterIP. annotations (string: null) - This value defines additional annotations for the terminating gateways' service account. Using this feature requires Consul 1.10.0-beta1+. helm's template processing will fail. In most cases the default should be used, however if there are more With the exception be set. (https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/) array in a Pod spec. server - Server, when enabled, configures a server cluster to run. always use global.tls.caCert. All template files are stored in a chart's templates/ folder. Additional Connect settings can be configured http (integer: null) - Configures the nodePort to expose the Consul server http port. This is only needed if Consul namespaces. By default, no functions are defined in the template but the Funcs method can be used to add them. Common return values are documented here, the following are the fields unique to this module: Full helm command run by this module, in case you want to re-run the command outside the module or debug a problem. Chart repository URL where the requested chart is located. injection annotation (https://consul.io/docs/k8s/connect#consul-hashicorp-com-connect-inject) labels for catalog sync pod assignment, formatted as a multi-line string. and is being managed separately from this Helm installation. Below shows an example values.schema.json file. logLevel (string: info) - The default log level to apply to all components which do not otherwise override this setting. combining Envoy sidecar and Connect service metrics, secretName should be in the form of "vault-kv2-mount-path/data/secret-name". This setting can be overridden on a per-pod basis via this annotation: resources (map) - Set default resources for sidecar proxy. be disabled if you plan on connecting to a Consul cluster external to This is only needed if ACLs are managed manually within the Consul cluster, i.e. This isn't directly exposed by the chart. enabled (boolean: false) - True if you want to enable the catalog sync. This is the preferred method of configuration since there are usually storage Each time through the loop, . type (string: LoadBalancer) - Type of service, ex. annotations (string: null) - This value defines additional annotations for the controller service account. if / else can be used to create conditional blocks. enabled (boolean: false) - If true, the chart will install resources necessary to run the snapshot agent. Do not use default for boolean in helm chart, {{ default "true" $blockpool.storageClass.allowVolumeExpansion }}. Requires Consul 1.7.1+. address (string: "") - The address of the Vault server. with Consul. This will be ignored if mirroringK8S is true. automatically computed based on the connectInject.replicas value to be (n/2)-1. cloud - Enables installing an HCP Consul self-managed cluster. command because of a limitation in the Helm templating language. (https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/) in a Pod Spec. Annotations defined https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/#configure-stub-domain-and-upstream-dns-servers. ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#nodeselector. By clicking Accept all cookies, you agree Stack Exchange can store cookies on your device and disclose information in accordance with our Cookie Policy. whether an API is supported) is done. default (boolean: false) - If true, the injector will inject the Connect sidecar into all pods by default. annotations (string: null) - This value defines additional annotations for the ingress gateways' service account. e.g "--log-level debug --disable-hot-restart". A Vault policy must be created which grants issue capabilities to imagePullSecrets (array