Register a Data Plane

Follow these steps to register a data plane:

1. Configuration

Validate that the required Data Plane central configurations are set.

The required central configurations are auto-populated for hybrid-enabled control planes deployed with version 5.4 and later.

2. Get the Helm install command

  1. Go to Admin > Data Planes > Register Data Plane.

  2. Enter the details for the new data plane:

    • Name - An arbitrary, human-readable name for the data plane.

    • Namespace - The Kubernetes namespace where you want to install the data plane in the data plane cluster. This namespace will be created if it does not already exist.

    • Storage Class - The Kubernetes StorageClass name to use for execution volumes in this data plane. If blank, it will default to the control plane’s storage class specified by com.cerebro.domino.computegrid.kubernetes.volume.storageClass in the Central Configuration (default: dominodisk).

    • Data Plane Hostname - The subdomain component of the DNS name used for the data plane. For example, if the control plane is example.com and the data plane is dp.example.com, then you would enter dp here. You can also append : and a custom port number if your data plane load balancer runs on a port other than 443. See Enable a data plane for Workspaces.

    • Advanced:

      • Disable File Sync - Disable DFS file sync in this data plane.

      • Enable Istio - Indicate that Istio is running in this data plane’s cluster. This setting must be set for data planes with Istio; it is not sufficient to set the Helm value.

      • Override S3 Endpoint URL - Override the default S3 endpoint URL for this data plane.

  3. Click Done.

    When data plane registration is complete, Domino displays the Helm install command to install the data plane in the target cluster. This command is unique for each data plane.

3. Customize the Helm values

We recommend storing any Helm value overrides in a values.yaml file in a secure location for each data plane. To re-run the Helm command at a later date (for example, to upgrade the data plane), you can copy the new command and add -f values.yaml to include the overrides for that data plane.

Pod Security Policy (PSP)

If the data plane cluster has restrictive PSPs, you must create a policy for Domino pods to use. You can do this with the following Helm values:

global:
  podSecurityPolicy:
    enabled: true

Istio

If Istio is running in the data plane cluster, you must indicate this to the Helm chart with the following values:

global:
  istio:
    enabled: true
Note
This is automatically set in the generated Helm command if you select Enable Istio when setting up the data plane. You must select Enable Istio for data planes with Istio; it is not sufficient to set the Helm value.

OpenShift SCCs

Similar to Domino control plane deployments, data plane services are granted access to anyuid and privileged by default.

Custom Certificates

If your control plane makes use of non-public TLS certificates, you must manually copy domino-generated-certificates from the control plane to the data plane before running the Helm install command. Then, specify this configmap to the Helm chart to mount the certificates in platform service pods:

global:
  dataPlane:
    tls:
     certs: domino-generated-certificates

4. Run the install command

  1. Make sure that the nodes you wish to use for platform services in your data plane are labeled with dominodatalab.com/node-pool=platform.

  2. Make sure that your default Kubernetes context is the cluster in which you want to deploy the data plane.

  3. If you have a values.yaml file with Helm value overrides, add -f values.yaml to the Helm command.

  4. To enable Workspaces, see Enable a data plane for Workspaces and add the required values to the Helm command.

  5. Run the Helm command.

    It may take up to a minute for installation to complete and for the Domino UI to report that the data plane is healthy.