Setting up Amazon Web Services location
Follow these steps to set up Cloud Databases enabled by IBM Cloud Satellite® in an on-premises location.
Prepare a Satellite location for Cloud Databases
Prepare your Satellite location before deploying the Cloud Databases enabled by the IBM Cloud Satellite service.
Attach extra hosts to the Satellite location
These additional-attached worker nodes are used to create a service cluster into which the database instances will later be deployed. Attach to your Satellite location:
- Three type 8x32 hosts
- On AWS, choose three hosts of type AWS m5d.2xlarge
- Three type 32x128 hosts
- On AWS choose three hosts of type AWS m5d.8xlarge
You should also attach an additional three 32x128 hosts to be kept in reserve. While optional, this step is recommended and you will see a notification in the UI until the reserve workers are attached.
To be assigned to a service cluster, your worker nodes must match these specifications exactly.
Create a Satellite block storage configuration
To set up your Satellite location using AWS, configure your block storage with Amazon Elastic Block Storage (EBS).
-
To create a block storage configuration for your Satellite location, refer to Creating an AWS EBS storage configuration.
-
An EBS storage configuration code example
ibmcloud sat storage config create \\
--name 'aws-ebs-config-storage-testing-1' \\
--template-name 'aws-ebs-csi-driver' \\
--template-version '0.9.14' \\
--location '${LOCATION_ID}' \\
-p "aws-access-key=${SAT_EBS_ADMIN_KEY_ID}" \\
-p "aws-secret-access-key=${SAT_EBS_ADMIN_KEY}"
Ensure location readiness
Before provisioning your Cloud Databases Satellite deployment, your location needs to report Normal
. This status can be confirmed in the UI, as shown in the following image:
![UI showing location is normal](images/sat-normal.png)
The normal
status can also be confirmed by using the CLI, with a command like:
ibmcloud sat location get --location <location name> --output=json -q | jq -r .state
If successful, the command output reports normal
.
Obtaining normal
state
To get to this state, attach a minimum of three 4x16 hosts to your location and assign them to the Control plane. After that step is complete, provisioning of the Control plane begins. Upon successful completion, the location state is going
to report as Normal
, as shown:
![Control plane in normal state](images/cp-normal.png)
Attempting to provision a database instance into a location without a running Control plane (that is, Normal
state), causes provisioning to fail.
Provisioning Cloud Databases Satellite deployment
You can provision your Cloud Databases Satellite deployment by selecting the Satellite location that you created from the Location dropdown on the provisioning page. For more information, see the relevant Provisioning documentation for your Cloud Databases Satellite deployment. After you create a new service instance, this instance will appear in the IBM Cloud® Resource List
as Provisioned
.
When you deploy the first database service instance, a service cluster is automatically deployed into your Satellite location. The deployment of the service cluster can take up to 1 hour.
You can verify in the IBM Cloud UI whether the service cluster is already created:
- From the left Navigation menu, select Satellite, then Locations.
- Select your Satellite location.
- Select Services.
After the service cluster is created, you must create a storage assignment manually (see next step) before the database instance will be started. Subsequent database service instances provision more quickly since instances land on the same service cluster.
Create a storage assignment
When the service cluster is available in your Satellite location, the next step is to create a Satellite storage assignment. Creating the storage assignment allows the service cluster to create volumes on the previously configured storage.
The first database you provision into a location remains "Provision in progress" until this step is complete.
For more information, see AWS EBS IBM Cloud Satellite documentation.
First, obtain your ROKS-Service-cluster-ID
by entering the following command into the IBM Cloud CLI:
ic sat service ls --location <location name/location id>
The output of the command includes the Cluster ID of the newly created Satellite service cluster.
Use the Cluster ID as an input parameter for --service-cluster-id
in the following AWS Satellite location storage assignment command:
ibmcloud sat storage assignment create \\
--name "ebs-assignment" \\
--service-cluster-id <ROKS-Service-cluster-ID> \\
--config 'aws-ebs-config-storage-testing-1'
Assigning a storage configuration to a service cluster autogenerates a --name
and any user-provided name is ignored.
After the storage assignment is created, allow up to 30 minutes for the database instance to be ready for usage.