Configuring the PowerConnect Cloud agent to use Object Storage
Overview
The PowerConnect Cloud agent can be configured to use Object Storage for its configuration and checkpoint data. This is useful when deploying in cloud environments such as AWS ECS or SAP Cloud Foundry where local disks for containers are ephemeral and therefore configuration is lost if the container is destroyed or migrated.
The PowerConnect Cloud agent supports AWS S3, Azure Blob Storage, Google Cloud Store and SAP Cloud Object Store.
Configuring PowerConnect Cloud to use SAP Object Store
SAP Object Store is a wrapper around the target cloud provider’s own object storage technology (S3, Azureblob etc.)
To configure the PowerConnect Cloud agent to use SAP Object Storage do the following:
Provision the object storage service in the target account (cf create-service objectstore standard …)
Bind the PowerConnect cloud application to the newly created object store
cf bind-service powerconnect-cloud <object-store-name>
Restage the PowerConnect cloud application for the binding to take effect
cf restage powerconnect-cloud
Collect the Object Store details from the environment variables under VCAP_SERVICES. These will be different depending on the object storage technology.
cf env powerconnect-cloud
Example from Azure:
Create the following environment variables in the manifest.yml file using the values above. The environment variables for each provider are documented in the sections below
Variable | Azure | AWS | GCP |
---|---|---|---|
|
|
|
|
|
|
|
|
|
|
| (not required) |
|
|
|
|
|
|
| (not required) |

Restage the PowerConnect Cloud application
cf restage powerconnect-cloud
The PowerConnect Cloud app should now be using the SAP Object Store as its storage provider
Configuring PowerConnect Cloud to use Amazon S3
To configure the PowerConnect Cloud agent to use an Amazon S3 bucket do the following:
Provision a new S3 bucket or leverage an existing S3 bucket
Create a user who has read and write access to the S3 bucket. This can be done using the AWS IAM Console
Note down the Access Key ID and Secret Access Key credentials for the user to connect to the S3 bucket
Set the following environment variables on the PowerConnect Cloud agent host:
export DATASTORE_PROVIDER=aws-s3
export DATASTORE_CONTAINER=<insert s3 bucket name>
export DATASTORE_IDENTITY=<insert access key id>
export DATASTORE_CREDENTIAL=<insert secret access key>
Restart the PowerConnect Cloud agent
Configuring PowerConnect Cloud to use Azure Blob Storage
To configure the PowerConnect Cloud agent to use an Azure Blob storage container do the following:
Get your account and key
Login to the Microsoft Azure Portal
Click Azure Services → Storage Accounts → Create
Enter the Storage Account Name. Make sure the account is available and then click Create
Under the newly created Storage Account click Access Keys under Security + networking
Click Show under the Key and note it down
Set the following environment variables on the PowerConnect Cloud agent host:
export DATASTORE_PROVIDER=azureblob
export DATASTORE_CONTAINER=<container name>
export DATASTORE_IDENTITY=<storage account name>
export DATASTORE_CREDENTIAL=<storage account key>
Restart the PowerConnect Cloud agent
Configuring PowerConnect Cloud to use Google Cloud Storage
To configure the PowerConnect Cloud agent to use an Google Cloud storage do the following:
Provision a new Bucket or leverage an existing Bucket
Get the JSON authentication service account key
Go to the Google Cloud Developer Console.
Under APIs and Services click Cloud Storage
Click Create Credentials.
Select "Service account"
Enter the details including a Service Account Name
Grant the required role for the Service Account to be able to read and write from Cloud Storage
Click on the newly created Service Account
Click Keys
Click Add Key → Create new key → JSON → Create
The JSON key for the Service Account will be created and downloaded
Set the following environment variables on the PowerConnect Cloud agent host:
export DATASTORE_PROVIDER=google-cloud-storage
export DATASTORE_CONTAINER=<bucket name>
export DATASTORE_CREDENTIAL=<contents of json key base64 encoded>
Restart the PowerConnect Cloud agent