Overview
This guide will walk you through the process of deploying SGP in an AWS account. SGP AWS infrastructure is defined by terraform modules managed by Scale.Prerequisites
- Access to an AWS account with sufficient permissions to create resources
- The following tools installed:
- The following from Scale:
- The SGP AWS Infrastructure Terraform modules
- A
workspace_idandregistration_secretunique to your deployment install.shscript to bootstrap the SGP cluster
- A new application configured in your identity provider to authenticate to the SGP platform (SAML or OIDC) (optional)
- A custom domain for your deployment (optional)
Installation
Step 1: Prepare Terraform Root Module
In a new directory, create a.tf file to invoke the SGP AWS infrastructure Terraform modules. Reference the egp-hybrid-cloud-customer-deployment module as the entrypoint for the SGP infrastructure.
Step 2: Provision Infrastructure via Terraform
Run the following commands in the same directory as the previous step’s .tf file.If a pre-created certificate and domain entry are not provided, you will likely encounter the following error:Resolve this by properly configuring DNS and TLS for your domain before re-running
terraform apply.Step 3: Bootstrap the Cluster
Note the following values from the previous step’s apply output:Configure EKS access
Configure access for yourself to the provisioned EKS cluster:- Navigate to “Elastic Kubernetes Service” on the AWS console
- Go to the required cluster
- Go to Access
- Under IAM access entries click Create Access Entry
- Select your current AWS IAM role from the dropdown, leave the Type as Standard
- Add the
AmazonEKSAdminPolicyandAmazonEKSClusterAdminPolicyto the Cluster scope - Click create
Allowlist your IP (if needed)
- Navigate to “Elastic Kubernetes Service” on the AWS console
- Go to the required cluster
- Go to Networking
- On the right, click Manage and click Endpoint Access
- Under Advanced settings add your IP address
Execute install.sh
Run theinstall.sh script to create the following Kubernetes resources:
- AWS Secret Manager CSI Driver
- Spicedb
- SGP System Manager
Step 4: Verify the Deployment
Wait for all services to be ready:Step 5: Configure Identity Provider
SAML Configuration
In your Identity Provider, configure a new SAML application with the following settings:- Service Entity ID:
https://auth.<domain> - Redirect URI:
https://auth.<domain>/dashboard/org/saml/callback
scale-egp-<workspace_id>/identity-service-saml-secrets (either via System Manager or directly in AWS Secrets Manager):
OIDC Configuration
In your Identity Provider, configure a new OIDC application with the following settings:- Redirect URI:
https://auth.<domain>/dashboard/org/oidc/callback
scale-egp-<workspace_id>/identity-service-oidc-secrets (either via System Manager or directly in AWS Secrets Manager) with the following JSON:
sgp-system-manager deployment to apply the changes.
Accessing the Platform
If all goes smoothly, you should be able to navigate to the SGP platform athttps://<workspace_id>.workspace.egp.scale.com (or your custom domain) and authenticate via the configured identity provider.
