Skip to content

Latest commit

 

History

History
96 lines (67 loc) · 3.15 KB

README.md

File metadata and controls

96 lines (67 loc) · 3.15 KB

EDC Ionos S3 deployment on external kubernetes cluster

Local Deployment

For local kubernetes installation please refer to the kind directory's readme.


External Deployment

To deploy the EDC Ionos S3 connector to external kubernetes cluster on IONOS cloud, follow this readme below.


Requirements


These are the services that are deployed:


Configuration

Set environment variables

Some notes:

  • You will need docker image of the EDC Ionos S3 connector pushed to a repository. If you don't have one, you can build it following the instructions in the readme;
  • To create the IONOS token please take a look at the following documentation;
  • If you are deploying multiple EDC Connectors on the same Kubernetes cluster, make sure TF_VAR_namespace and TF_VAR_vaultname parameters are unique for each Connector.
# Required configuration
export TF_VAR_namespace='edc-ionos-s3'
export TF_VAR_kubeconfig='path to kubeconfig'
export TF_VAR_vaultname='vault'  # optional if only 1 connector per cluster

export TF_VAR_s3_access_key='' # S3 access key
export TF_VAR_s3_secret_key='' # S3 secret key
export TF_VAR_s3_endpoint='' # s3 endpoint (e.g. s3-eu-central-1.ionoscloud.com)
export TF_VAR_ionos_token='' # IONOS Cloud token

In case you want to configure this Connector without Hashicorp Vault, you need to also set the parameters below in the helm values.yaml:

  ionos:
    endpoint: <YOUR-S3-ENDPOINT>
    accessKey: <YOUR-KEY>
    secretKey: <YOUR-SECRET-KEY>
    token: <IONOS-TOKEN>

They should be the same as the ones set in the environment variables. The ionos.endpoint is set to the default S3 location, but it can be changed to any other location.

If you don't want the Connector to be externally accessible, you need to set the following parameters in the helm values.yaml:

  service:
    type: ClusterIP

This will allocate a public IP address to the Connector. You can then access it on the ports 8181, 8182, and 8282.


Deploy

All commands paths are relative to the current directory where this readme is located.

1. Install the EDC Ionos S3 services

To install the services run the script deploy-services.sh in terraform directory.

cd terraform
./deploy-services.sh

2. Vault keys

After the services are installed you will have vault-keys.json file containing the vault keys in terraform directory.

3. Destroy the services

cd terraform
./destroy-services.sh