Skip to content

Installation and setup

Constellation runs entirely in your cloud environment and can be controlled via a dedicated command-line interface (CLI) or a Terraform provider.

Make sure the following requirements are met:

  • Your machine is running Linux
  • You have admin rights on your machine
  • kubectl is installed
  • You have requestad an User Access Token (UAT) for the Infrastructure API via Service request.
  • You have a STACKIT service account: Create a service account
  • The STACKIT service account needs the editor role to create STACKIT LoadBalancers. You have assigned the required project permissions to this service account: Assign permissions to a service account
  • You have created an Access Token for this service account: Get access token

If you prefer to use Terraform, you can alternatively use the Terraform provider to manage the cluster’s lifecycle.

The CLI executable is available at GitHub. Install it with the following commands:

  1. Download the CLI:
    curl -LO https://github.com/edgelesssys/constellation/releases/latest/download/constellation-linux-amd64
  2. Optional: Verify the signature
  3. Install the CLI to your PATH:
    sudo install constellation-linux-amd64 /usr/local/bin/constellation

The CLI supports autocompletion for various shells. To set it up, run constellation completion and follow the given steps.

You need to authenticate with the infrastructure API (OpenStack). The following lists the required steps for testing and production environments.

  1. Create a configuration file ~/.config/openstack/clouds.yaml (%AppData%\openstack\clouds.yaml on Windows) containing the UAT name, UAT password, the STACKIT project ID and the STACKIT project name:
    clouds:
    stackit:
    auth:
    auth_url: https://keystone.api.iaas.eu01.stackit.cloud/v3
    username: <UAT_TOKEN_NAME>
    password: <UAT_PASSWORD>
    project_id: <STACKIT_PROJECT_ID>
    project_name: <STACKIT_PROJECT_NAME>
    user_domain_name: portal_mvp
    project_domain_name: portal_mvp
    region_name: RegionOne
    identity_api_version: 3
  2. Create a configuration file under ~/.stackit/credentials.json (%USERPROFILE%\.stackit\credentials.json on Windows) with the following content:
    {"STACKIT_SERVICE_ACCOUNT_TOKEN":"REPLACE_WITH_TOKEN"}

You are now ready to Create a Confidential Kubernetes cluster.