1. Manage StreamNative Clusters
  2. Manage BYOC Infrastructure

StreamNative BYOC Overview

StreamNative delivers a fully-managed Pulsar solution operating within your cloud environment through the Bring Your Own Cloud (BYOC) deployment option. This approach is enabled by StreamNative Cloud's architecture, which separates the control plane from the data plane.

In a BYOC deployment:

  • The infrastructure and network are under your ownership but managed by StreamNative.
  • You utilize your own public cloud accounts (AWS, GCP, and Azure).
  • The system requires minimal administration on your part.
  • You control security protocols, maintain data visibility, and comply with data sovereignty requirements.

Below is a diagram illustrating the BYOC architecture within StreamNative Cloud.

image of BYOC architecture

Responsibility model

The responsibilities under the StreamNative BYOC model differ from those of the StreamNative Hosted model. For a comparison of responsibilities across different cloud deployment options, refer to the Responsibility Model.

How to provision a BYOC infrastructure pool

To deploy a StreamNative cluster within your cloud account, you must first set up a BYOC infrastructure pool.

  1. Grant StreamNative Vendor Access: Authorize the StreamNative Cloud control plane to access your cloud account by applying the StreamNative Vendor Access Terraform module. This module ensures only the minimum necessary access is used to establish your Pulsar clusters. For detailed information on our access approach, please see our access model.

  2. Create a Cloud Connection: After granting access, establish a Cloud Connection to allow the StreamNative Cloud control plane to interact with your cloud account.

  3. Create Cloud Environments: With a Cloud Connection in place, you can then create one or more Cloud Environments. Each Cloud Environment encompasses the essential infrastructure resources—compute, storage, and networking—needed for deploying Pulsar clusters.

After setting up one or more Cloud Environments, you can create an Instance and deploy a Pulsar Cluster to your cloud account that the cloud connection uses.

You can watch the playlist of Provisioning StreamNative BYOC Clusters.

Note

When you create an Instance with snctl, you need to specify a poolRef. This poolRef refers to your Cloud Connection.

BYOC Provisioning FAQs

  • Can I create Cloud Connections from different Cloud Providers? Yes - you can either create multiple Cloud Connections from the same cloud provider if you have multiple accounts with them, or create Cloud Connections from multiple different providers.
  • Can I create multiple Cloud Enivronments in the same region? You cannot create multiple Cloud Environments in the same region using the same Cloud Connection. However, if you are using different Cloud Connections, you may do so.

Next steps

Deploy BYOC Clusters on AWS

  1. Grant StreamNative access to your AWS account.
  2. Create a Cloud Connection to your AWS account.
  3. Create Cloud Environments in your AWS account.
  4. Create a BYOC Instance using the established cloud connection.
  5. Create a BYOC cluster.

If you need to configure a custom domain for your Pulsar cluster, see set up custom AWS DNS domain.

Deploy BYOC Clusters on GCP

  1. Grant StreamNative access to your GCP project.
  2. Create a Cloud Connection to your GCP project.
  3. Create Cloud Environments in your GCP project.
  4. Create a BYOC Instance using the established cloud connection.
  5. Create a BYOC cluster.

Deploy BYOC Clusters on Azure

  1. Grant StreamNative access to your Azure account.
  2. Create a Cloud Connection to your Azure account.
  3. Create Cloud Environments in your Azure account.
  4. Create a BYOC Instance using the established cloud connection.
  5. Create a BYOC cluster.
Previous
Cluster Types and Regions