Connecting an IBM Cloud application
Gen 2
Applications running in IBM Cloud can be bound to your IBM Cloud® Databases for MongoDB deployment.
Connecting a Kubernetes Service application
There are two steps to connecting a Cloud databases deployment to a Kubernetes Service application. First, your deployment needs a to be bound to your cluster and its connection strings stored in a secret. The second step is configuring your application to use the connection strings.
Before connecting your Kubernetes Service application to a deployment, make sure that the deployment and cluster are both in the same region and resource group.
Binding your deployment
-
Private endpoints
To use a private endpoint, create a service key for your database. Kubernetes uses it when binding to the database.
ibmcloud resource service-key-create <YOUR-PRIVATE-KEY> --instance-name <INSTANCE_NAME_OR_CRN> --service-endpoint privateThe private service endpoint is selected with
--service-endpoint private. After that, you bind the database to the Kubernetes cluster through the private endpoint with thecluster service bindcommand.ibmcloud ks cluster service bind <YOUR_CLUSTER_NAME> <RESOURCE_GROUP> <INSTANCE_NAME_OR_CRN> --key <YOUR-PRIVATE-KEY> -
Verify - Verify that the Kubernetes secret was created in your cluster namespace. Running the following command, you get the API key for accessing the instance of your deployment in your account.
kubectl get secrets --namespace=defaultMore information on binding services is found in the Kubernetes Service documentation.
Configuring in your Kubernetes app
When you bind your application to Kubernetes Service, it creates an environment variable from the cluster's secrets. Your deployment's connection information lives in BINDING as a JSON object. Load and parse the JSON object into
your application to retrieve the information your application's driver needs to make a connection to the database.
The Getting connection strings page contains a reference of the JSON fields.
For more information, see the Kubernetes Service documentation.