Deploy the Data Plane Artifacts
This section is an overview of data plane deployment. There are slight differences in how this happens, depending on the deployment environment. For example, on premises or on a cloud such as Microsoft Azure or Google Cloud Platform (GCP).
Installation is the same for all cloud environments except for one step in which you create a volume with a JDBC driver. You deploy a data plane as a system administrator at the command line.
Once you have registered a new data plane in the control plane, you must deploy the data plane configuration to your Kubernetes cluster.
In the dpp-data-plane-[version]
folder extracted from the release bundle tarball, edit the data-plane-values.yaml
configuration file. Specify the following values:
Set
clean
tofalse
.Set
externalHostname
to the hostname you configured for the data proxy in the control plane.Set
controlPlane
→hostName
to the full hostname of the control plane you deployed previously.Set
controlPlane
→dataAgentId
to thedataPlaneId
in the data agent configuration file you downloaded from the control plane.Set
controlPlane
→exchangeId
to theexchangeId
in the data agent configuration file you downloaded from the control plane.Set
controlPlane
→certificateFile
to the full path to the control plane public certificate you downloaded when creating the public key infrastructure.Set
images
→load
totrue
.Set
images
→push
totrue
.Set
images
→targetRegistry
to your container registry path. This setting will depend on the various flavours of Kubernetes (and cloud providers).Set
dataPlaneConfigClaimname
to the name of thePersistentVolumeClaim
you configured as part of the prerequisites.Set
clientAuth
→dataAgentPrivateKeyFile
to the full path of the private key for the data agent you created in the data plane.Set
clientAuth
→dynamicProxyPrivateKeyFile
to the full path of the private key for the data proxy you created in the data plane.
Once this configuration is complete, you can deploy the components:
./dppctl install -f ./data-plane-values.yaml
Once deployed, you must configure the Kubernetes gateway to allow communication with your data agent. This is simply a guide to how that command will look:
kubectl patch gateway data-plane-gateway -n [data plane namespace] --type=merge -p "{\"spec\":{\"selector\":{\"istio\":\"istio-ingress-[data plane namespace]\"}}}"