Materialize Operator Configuration

Configure the Materialize operator

To configure the Materialize operator, you can:

  • Use a configuration YAML file (e.g., values.yaml) that specifies the configuration values and then install the chart with the -f flag:

    # Assumes you have added the Materialize operator Helm chart repository
    helm install my-materialize-operator materialize/materialize-operator \
       -f /path/to/your/config/values.yaml
    
  • Specify each parameter using the --set key=value[,key=value] argument to helm install. For example:

    # Assumes you have added the Materialize operator Helm chart repository
    helm install my-materialize-operator materialize/materialize-operator  \
      --set observability.podMetrics.enabled=true
    
Parameter Default
balancerd.enabled true
balancerd.nodeSelector {}
clusterd.nodeSelector {}
console.enabled true
console.imageTagMapOverride {}
console.nodeSelector {}
environmentd.nodeSelector {}
networkPolicies.egress {"cidrs":["0.0.0.0/0"],"enabled":false}
networkPolicies.enabled false
networkPolicies.ingress {"cidrs":["0.0.0.0/0"],"enabled":false}
networkPolicies.internal {"enabled":false}
observability.enabled true
observability.podMetrics.enabled false
observability.prometheus.scrapeAnnotations.enabled true
operator.args.enableInternalStatementLogging true
operator.args.startupLogFilter INFO,mz_orchestratord=TRACE
operator.cloudProvider.providers.aws.accountID
operator.cloudProvider.providers.aws.enabled false
operator.cloudProvider.providers.aws.iam.roles.connection
operator.cloudProvider.providers.aws.iam.roles.environment
operator.cloudProvider.providers.gcp {"enabled":false}
operator.cloudProvider.region kind
operator.cloudProvider.type local
operator.clusters.defaultReplicationFactor.analytics 0
operator.clusters.defaultReplicationFactor.probe 0
operator.clusters.defaultReplicationFactor.support 0
operator.clusters.defaultReplicationFactor.system 0
operator.clusters.defaultSizes.analytics 25cc
operator.clusters.defaultSizes.catalogServer 25cc
operator.clusters.defaultSizes.default 25cc
operator.clusters.defaultSizes.probe mz_probe
operator.clusters.defaultSizes.support 25cc
operator.clusters.defaultSizes.system 25cc
operator.image.pullPolicy IfNotPresent
operator.image.repository materialize/orchestratord
operator.image.tag v0.130.4
operator.nodeSelector {}
operator.resources.limits {"memory":"512Mi"}
operator.resources.requests {"cpu":"100m","memory":"512Mi"}
operator.secretsController kubernetes
rbac.create true
schedulerName nil
serviceAccount.create true
serviceAccount.name orchestratord
storage.storageClass.allowVolumeExpansion false
storage.storageClass.create false
storage.storageClass.name
storage.storageClass.parameters {"fsType":"ext4","storage":"lvm","volgroup":"instance-store-vg"}
storage.storageClass.provisioner
storage.storageClass.reclaimPolicy Delete
storage.storageClass.volumeBindingMode WaitForFirstConsumer
telemetry.enabled true
telemetry.segmentApiKey hMWi3sZ17KFMjn2sPWo9UJGpOQqiba4A
telemetry.segmentClientSide true
tls.defaultCertificateSpecs {}

Parameters

balancerd parameters

balancerd.enabled

Default: true

Flag to indicate whether to create balancerd pods for the environments

balancerd.nodeSelector

Default: {}

Node selector to use for balancerd pods spawned by the operator

clusterd parameters

clusterd.nodeSelector

Default: {}

Node selector to use for clusterd pods spawned by the operator

console parameters

console.enabled

Default: true

Flag to indicate whether to create console pods for the environments

console.imageTagMapOverride

Default: {}

Override the mapping of environmentd versions to console versions

console.nodeSelector

Default: {}

Node selector to use for console pods spawned by the operator

environmentd parameters

environmentd.nodeSelector

Default: {}

Node selector to use for environmentd pods spawned by the operator

networkPolicies parameters

networkPolicies.egress

Default: {“cidrs”:[“0.0.0.0/0”],“enabled”:false}

egress from Materialize pods to sources and sinks

networkPolicies.enabled

Default: false

Whether to enable network policies for securing communication between pods

networkPolicies.ingress

Default: {“cidrs”:[“0.0.0.0/0”],“enabled”:false}

Whether to enable ingress to the SQL and HTTP interfaces on environmentd or balancerd

networkPolicies.internal

Default: {“enabled”:false}

Whether to enable internal communication between Materialize pods

observability parameters

observability.enabled

Default: true

Whether to enable observability features

observability.podMetrics.enabled

Default: false

Whether to enable the pod metrics scraper which populates the Environment Overview Monitoring tab in the web console (requires metrics-server to be installed)

observability.prometheus.scrapeAnnotations.enabled

Default: true

Whether to annotate pods with common keys used for prometheus scraping.

operator parameters

operator.args.enableInternalStatementLogging

Default: true

operator.args.startupLogFilter

Default: INFO,mz_orchestratord=TRACE

Log filtering settings for startup logs

operator.cloudProvider.providers.aws.accountID

Default:

When using AWS, accountID is required

operator.cloudProvider.providers.aws.enabled

Default: false

operator.cloudProvider.providers.aws.iam.roles.connection

Default:

ARN for CREATE CONNECTION feature

operator.cloudProvider.providers.aws.iam.roles.environment

Default:

ARN of the IAM role for environmentd

operator.cloudProvider.providers.gcp

Default: {“enabled”:false}

GCP Configuration (placeholder for future use)

operator.cloudProvider.region

Default: kind

Common cloud provider settings

operator.cloudProvider.type

Default: local

Specifies cloud provider. Valid values are ‘aws’, ‘gcp’, ‘azure’, ‘generic’, or ’local’

operator.clusters.defaultReplicationFactor.analytics

Default: 0

operator.clusters.defaultReplicationFactor.probe

Default: 0

operator.clusters.defaultReplicationFactor.support

Default: 0

operator.clusters.defaultReplicationFactor.system

Default: 0

operator.clusters.defaultSizes.analytics

Default: 25cc

operator.clusters.defaultSizes.catalogServer

Default: 25cc

operator.clusters.defaultSizes.default

Default: 25cc

operator.clusters.defaultSizes.probe

Default: mz_probe

operator.clusters.defaultSizes.support

Default: 25cc

operator.clusters.defaultSizes.system

Default: 25cc

operator.image.pullPolicy

Default: IfNotPresent

Policy for pulling the image: “IfNotPresent” avoids unnecessary re-pulling of images

operator.image.repository

Default: materialize/orchestratord

The Docker repository for the operator image

operator.image.tag

Default: v0.130.4

The tag/version of the operator image to be used

operator.nodeSelector

Default: {}

operator.resources.limits

Default: {“memory”:“512Mi”}

Resource limits for the operator’s CPU and memory

operator.resources.requests

Default: {“cpu”:“100m”,“memory”:“512Mi”}

Resources requested by the operator for CPU and memory

operator.secretsController

Default: kubernetes

Which secrets controller to use for storing secrets. Valid values are ‘kubernetes’ and ‘aws-secrets-manager’. Setting ‘aws-secrets-manager’ requires a configured AWS cloud provider and IAM role for the environment with Secrets Manager permissions.

rbac parameters

rbac.create

Default: true

Whether to create necessary RBAC roles and bindings

schedulerName parameters

schedulerName

Default: nil

Optionally use a non-default kubernetes scheduler.

serviceAccount parameters

serviceAccount.create

Default: true

Whether to create a new service account for the operator

serviceAccount.name

Default: orchestratord

The name of the service account to be created

storage parameters

storage.storageClass.allowVolumeExpansion

Default: false

storage.storageClass.create

Default: false

Set to false to use an existing StorageClass instead. Refer to the Kubernetes StorageClass documentation

storage.storageClass.name

Default:

Name of the StorageClass to create/use: eg “openebs-lvm-instance-store-ext4”

storage.storageClass.parameters

Default: {“fsType”:“ext4”,“storage”:“lvm”,“volgroup”:“instance-store-vg”}

Parameters for the CSI driver

storage.storageClass.provisioner

Default:

CSI driver to use, eg “local.csi.openebs.io”

storage.storageClass.reclaimPolicy

Default: Delete

storage.storageClass.volumeBindingMode

Default: WaitForFirstConsumer

telemetry parameters

telemetry.enabled

Default: true

telemetry.segmentApiKey

Default: hMWi3sZ17KFMjn2sPWo9UJGpOQqiba4A

telemetry.segmentClientSide

Default: true

tls parameters

tls.defaultCertificateSpecs

Default: {}

See also

Back to top ↑