- Provisioning BYOC Infrastructure
Create a Cloud Connection
Public Preview
This feature is currently in Public Preview. Exercise caution before using this for provisioning production environments. If you encounter issues creating a Cloud Connection or Cloud Environment, please submit a ticket.
Note
This document assumes that you have already run the Vendor Access Module for your respective cloud provider. StreamNative will not be able to connect to your cloud account until you have done so. If you have not yet done so, please run the Vendor Access Module for your cloud provider using the instructions provided (AWS, Azure), and then return to this page to continue setting up your Cloud Connection.
Overview
Cloud Connections allow StreamNative to connect to your AWS, GCP, or Azure account, and provision your Cloud Enivironment so that it can run Pulsar Clusters. You can create a Cloud Connection either through snctl
, or StreamNative's terraform provider.
Create a Cloud Connection with snctl
To create a Cloud Connection using snctl, use snctl create cloudconnection
. Usage:
snctl create cloudconnection [NAME] [flags]
Flag | Description |
---|---|
--account-id | The account ID of your AWS account if type is aws . |
--client-id | The client ID of your Azure account if type is azure . |
-h, --help | Displays cloudconnection help message. |
--project-id | The project ID of your GCP project if type is gcp .. |
--subscription-id | The subscription ID of Azure account if type is azure . |
--support-client-id | The support client ID of Azure account if type is azure . |
--tenant-id | The tenant ID of Azure account if type is azure . |
--type | The type of cloud provider, one of: aws , gcp or azure . |
Examples
AWS:
snctl create cloudconnection shared-aws --type aws --account-id ACCOUNT_ID -n orgname
GCP:
snctl create cloudconnection shared-gcp --type gcp --project-id gcp-byoc-test -n orgname
Azure:
snctl create cloudconnection shared-azure --type azure --subscription-id <> --tenant-id <> --client-id <> --support-client-id <> -n orgname
Create a Cloud Connection with terraform
To create a Cloud Connection with terraform:
- Prepare
main.tf
- Run
terraform init
- Run
terraform apply
Please refer to our Terraform module documentation on Cloud Connections for additional details.
Cloud Connection Schema
Field | Type | Description |
---|---|---|
name, required | String | Name of the cloud connection |
organization, required | String | The organization name |
aws, read-only | List of Object | AWS configuration for the connection (see below for nested schema) |
azure, read-only | List of Object | Azure configuration for the connection (see below for nested schema) |
gcp, read-only | List of Object | GCP configuration for the connection (see below for nested schema) |
id, read-only | String | The ID of this resource. |
type, read-only | String | Type of cloud connection, aws , gcp , or azure |
account_id, read-only | (String) | Nested Schema for aws |
Examples
resource "streamnative_cloud_connection" "shared_aws" {
organization = "orgname"
name = "shared_aws"
type = "aws"
aws {
account_id = "000000400000"
}
}