Skip to content

Commit

Permalink
Merge main into release-stage
Browse files Browse the repository at this point in the history
  • Loading branch information
hasura-bot committed Jan 14, 2025
2 parents 07332d5 + cdfb6ed commit 1f3f10b
Show file tree
Hide file tree
Showing 10 changed files with 155 additions and 103 deletions.
147 changes: 147 additions & 0 deletions docs/deployment/private-ddn/create-a-data-plane.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,147 @@
---
sidebar_position: 1
sidebar_label: Create a Data Plane
description: "Learn how to create a private Data Plane."
keywords:
- hasura ddn
- private ddn
- dedicated vpc
- enterprise ddn
- create private ddn
seoFrontMatterUpdated: false
---



import Thumbnail from '@site/src/components/Thumbnail';

# Create a Data Plane

## Introduction

A [Data Plane](/architecture/overview.mdx#data-plane) in Hasura provides dedicated infrastructure for running your GraphQL workloads. This guide walks you through the process of creating a new Data Plane for [dedicated Private DDN](/architecture/private/dedicated.mdx).

:::info Prerequisite

To create a Data Plane, an active Private DDN Subscription is required. If you don’t have one yet, please [contact us](https://hasura.io/contact-us) to get started.

:::

## How to create a new Data Plane on Dedicated Private DDN

### Step 1. Create a new Data Plane

Navigate to the `Data Plane Management` section in your [Hasura console](https://console.hasura.io).

<Thumbnail src="/img/data-plane/data-plane-management.png" alt="Data Plane Management" width="1000px" />

<br></br>

Click the `Create Data Plane` button.

<Thumbnail src="/img/data-plane/pending-provision-data-planes.png" alt="Data Plane Creation Pending" width="1000px" />

### Step 2. Complete the Data Plane Configuration Form


- **Name:** Enter a descriptive name using only letters and spaces, between 4-30 characters. This will be used to identify your Data Plane.
- **Domain:** This field is automatically generated from your Data Plane name. This is the base domain for the GraphQL API on this Data Plane.
- **Cloud Provider:** Select your preferred cloud provider. Currently available options: `AWS`.
- **Region:** Select the geographical region for your Data Plane.
- **Zones:** Select availability zones. For AWS, use AZ IDs (e.g., use1-az1, use1-az2) instead of AZ names (us-east-1a, us-east-1b) for your Data Plane. The maximum number of zones available to select depends on your Hasura Private DDN Subscription.

<details>
<summary>How to get AZ IDs for AWS?</summary>

**Availability Zone (AZ) IDs** are unique identifiers for AWS Availability Zones within a region. Using AZ IDs ensures
consistency across different AWS accounts and optimizes performance by aligning your Data Plane with your database's
physical location.

**Why Use AZ IDs Instead of AZ Names?**

- **Consistency:** AZ IDs are consistent across all AWS accounts, whereas AZ Names can differ.
- **Performance:** Deploying resources in the same physical AZ reduces latency.
- **Cost Efficiency:** Avoids cross-zone network costs by ensuring resources are within the same AZ.


Note: When selecting AZ IDs, ensure they correspond to the AZs where your database resides to maintain low latency
and avoid cross-zone network costs. It is recommended to choose at least two AZs for higher availability and fault
tolerance.

[Read more about AWS AZ IDs on AWS Docs](https://docs.aws.amazon.com/ram/latest/userguide/working-with-az-ids.html)

**Steps to Obtain AZ IDs**

You can obtain AZ IDs using either the **AWS CLI** or the **AWS Console**.


**1. Using AWS CLI:**

Run the following command, replacing `
<region>` with your desired region:

```bash

aws ec2 describe-availability-zones \
--region <region> \
--output table \
--query "AvailabilityZones[?State=='available'] | [].{ZoneName: ZoneName, ZoneId: ZoneId}"
```
Example output for us-east-1:

```
-----------------------------
| DescribeAvailabilityZones |
+-----------+---------------+
| ZoneId | ZoneName |
+-----------+---------------+
| use1-az1 | us-east-1a |
| use1-az2 | us-east-1b |
| use1-az3 | us-east-1c |
+-----------+---------------+
```


**2. Using AWS Console:**

- Log in to the AWS Console.
- Navigate to the EC2 service.
- Select your desired region from the top-right corner dropdown.
- On the EC2 Dashboard page, locate the "Service health" section.
- Under "Service health", find the "Zones" subsection. This section lists the Availability Zones along with their
corresponding Zone IDs.

</details>
- **VPC CIDR:** A /16 CIDR block that defines the IP address range for your Data Plane's Virtual Private Cloud (VPC). Default value: 10.0.0.0/16.
- **Kubernetes Service CIDR:** A /16-/20 CIDR block used for Kubernetes service cluster IP addresses in your Data Plane. This CIDR range is used internally by Kubernetes to assign IP addresses to services running in the cluster. Default value: 172.20.0.0/16.

:::warning Please note

VPC CIDR and Kubernetes Service CIDR cannot be modified once the Data Plane has been created with status Active.

:::

<Thumbnail src="/img/data-plane/vpc-form.png" alt="Data Plane Creation Form" width="800px" />


### Step 3. Create and Monitor your Data Plane

Click the `Create` button after filling out all required fields. The creation process will begin, and you'll see your Data Plane listed with a `Creating` status. The creation process typically takes 60 minutes to complete.

<Thumbnail src="/img/data-plane/data-plane-page.png" alt="Data Plane Page" width="1000px" />

<br></br>

Click on the `Creating` status button to see detailed progress.

<Thumbnail src="/img/data-plane/provisioning-status-modal.png" alt="Data Plane Creating Status" width="100px" />

## After Creation

Once creation is complete, the status will change to `Active` and you can use your Data Plane. To view detailed information about your Data Plane, click on the Data Plane name in the Data Planes table. This will take you to a detailed view page of a Data Plane.

<Thumbnail src="/img/data-plane/data-plane-detail.png" alt="Data Plane Detail" width="1000px" />

## Next steps

Now that you've created a Data Plane on dedicated Private DDN, [learn how to add collaborators](/deployment/private-ddn/data-plane-collaboration.mdx) so they can create projects.
10 changes: 6 additions & 4 deletions docs/deployment/private-ddn/create-a-project-on-a-data-plane.mdx
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
sidebar_position: 3
sidebar_label: Create a project on a Data Plane
sidebar_label: Create a project
description: "Learn how to create a project on a private Data Plane."
keywords:
- hasura ddn
Expand All @@ -17,12 +17,12 @@ import Prereqs from "@site/docs/_prereqs.mdx";

## Introduction

This guide will walk you through the steps for creating a project on a Private Hasura DDN Data Plane. Before proceeding,
This guide will walk you through the steps for creating a project on a Data Plane in [Private Hasura DDN](/deployment/private-ddn/index.mdx). Before proceeding,
you'll first need to be [invited](/deployment/private-ddn/data-plane-collaboration.mdx) to a Data Plane.

<Prereqs />

## Step 1. Initialize a local project
## Step 1. Authenticate your CLI

```sh title="Being by authenticating your CLI seession:"
ddn auth login
Expand Down Expand Up @@ -105,17 +105,19 @@ You can find all the Data Planes you have access to on this page: https://consol

:::info Available Plans

- ddn_free
- ddn_base
- ddn_advanced

Read more about plans [here](/reference/pricing.mdx)
:::


```sh title="Create a new project using your Data Plane ID and plan choice:"
ddn project init --data-plane-id <data-plane-id> --plan <plan-name>
```

The CLI will return information about your newly-created project.
The CLI will return information about your newly created project.

## Step 7. Build and deploy your supergraph

Expand Down
3 changes: 1 addition & 2 deletions docs/deployment/private-ddn/data-plane-collaboration.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -57,5 +57,4 @@ Currently there are only two roles available for Data Plane collaboration:

## Next steps

Now that you've provisioned a Data Plane, learned how to add collaborators.
[Learn how to create a project on a private Data Plane](/deployment/private-ddn/create-a-project-on-a-data-plane.mdx).
Learn how to [create a project on a Private Data Plane](/deployment/private-ddn/create-a-project-on-a-data-plane.mdx).
2 changes: 1 addition & 1 deletion docs/deployment/private-ddn/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ control, and CI/CD integration while keeping runtime operations secure and priva

Ready to get started with Hasura Private DDN? Here's what you can do next:

- [Provision a Data Plane](/deployment/private-ddn/provision-a-data-plane.mdx)
- [Create a Data Plane](/deployment/private-ddn/create-a-data-plane.mdx)
- [Add collaborators to a Data Plane](/deployment/private-ddn/data-plane-collaboration.mdx)
- [Create a project on a private Data Plane](/deployment/private-ddn/create-a-project-on-a-data-plane.mdx)
- [Learn more about the architecture](/architecture/overview.mdx)
96 changes: 0 additions & 96 deletions docs/deployment/private-ddn/provision-a-data-plane.mdx

This file was deleted.

Binary file modified static/img/data-plane/data-plane-detail.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified static/img/data-plane/data-plane-page.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified static/img/data-plane/pending-provision-data-planes.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified static/img/data-plane/provisioning-status-modal.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified static/img/data-plane/vpc-form.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 1f3f10b

Please sign in to comment.