# Step 1: Create Infrastructure and Plan

Each DuploCloud Infrastructure is a connection to a unique Virtual Private Cloud (VPC) network that resides in a region that can host Kubernetes clusters.

After you supply a few basic inputs, DuploCloud creates an Infrastructure for you within Google Cloud Platform (GCP) and DuploCloud, with a few clicks. Behind the scenes, DuploCloud does a lot with what little you supply — generating the VPC, Subnets, NAT Gateway, Routes, and Google Kubernetes Engine ([GKE](https://cloud.google.com/kubernetes-engine?hl=en)) cluster.

With the Infrastructure as your foundation, you can customize an extensible, versatile Platform Engineering development environment by adding Tenants, Hosts, Services, and more.

*Estimated time to complete Step 1: 20 minutes. Much of this time is consumed by DuploCloud's creation of the Infrastructure and enabling your GKE cluster with Kubernetes.*

## Prerequisites

Before starting this tutorial:

* Learn more about DuploCloud [Infrastructure](/docs/automation-platform/application-focused-interface-duplocloud-architecture/infrastructure.md)s,[ Plans](/docs/automation-platform/application-focused-interface-duplocloud-architecture/plan.md), and [Tenant](/docs/automation-platform/application-focused-interface-duplocloud-architecture/tenant.md)[s](/docs/automation-platform/application-focused-interface-duplocloud-architecture/tenant.md).
* Reference the [Access Control](/docs/automation-platform/access-control.md) documentation to create User IDs with the **Administrator** role. To perform the tasks in this tutorial, you must have Administrator privileges.

## Creating a DuploCloud Infrastructure

1. In the DuploCloud Portal, navigate to **Administrator** -> **Infrastructure**. The **Infrastructure** page displays.
2. Click **Add**. The **Add Infrastructure** page displays.
3. From the table below, enter the values that correspond to the fields on the **Add Infrastructure** page. Accept all other default values for fields not specified.
4. Use the toggle switch to **Enable GKE**.
5. Select either **GKE Autopilot** or **GKE Standard** options. You will follow different paths in the tutorial for creating clusters with GKE Autopilot or GKE Standard.
6. Click **Create** to create the Infrastructure. DuploCloud begins creating and configuring your Infrastructure and GKE Cluster using Kubernetes. It may take up to twenty (20) minutes to create the Infrastructure.

| Add Infrastructure page field | Value                      |
| ----------------------------- | -------------------------- |
| **Name**                      | *`YOUR_INFRA_NAME`*        |
| **Account**                   | *`YOUR_GOOGLE_ACCOUNT`*    |
| **VPC CIDR**                  | `10.10.0.0/16`             |
| **Cloud**                     | `Google`                   |
| **Region**                    | *`YOUR_GEOGRAPHIC_REGION`* |
| **Subnet**                    | `CIDR 22`                  |

<figure><img src="/files/vTyapO169upl9dLOU03k" alt=""><figcaption><p><strong>Add Infrastructure</strong> page</p></figcaption></figure>

{% hint style="info" %}
It may take up to twenty (20) minutes for your Infrastructure to be created and Kubernetes (GKE) enablement to be complete. Use the **Kubernetes** card in the Infrastructure screen to monitor the status, which should display as **Enabled** when completed. You can also monitor progress by using the **Kubernetes** tab, as DuploCloud generates your **Cluster Name**, **Default VM Size**, **Server Endpoint**, and **Token**.
{% endhint %}

## Verifying that a Plan exists for your Infrastructure

Every DuploCloud Infrastructure generates a Plan. Plans are sets of templates that are used to configure the [Tenants ](/docs/automation-platform/application-focused-interface-duplocloud-architecture/tenant.md)or workspaces, in your Infrastructure. You will set up Tenants in the next tutorial step.

Before proceeding, confirm that a Plan exists that corresponds to your newly created Infrastructure.

1. In the DuploCloud Portal, navigate to **Administrator** -> **Plans**. The **Plans** page displays.
2. Verify that a Plan exists with the name you gave to the Infrastructure you created.

## Checking your work

You previously verified that your Infrastructure and Plan were created. Now verify that Kubernetes is enabled before proceeding to Create a Tenant.

1. In the DuploCloud Portal, navigate to **Administrator** -> **Infrastructure**. The **Infrastructure** page displays.
2. From the **NAME** column, click on the name of the Infrastructure you created.
3. Click the **GKE** tab. When Kubernetes has been **Enabled** for GKE, details are listed in the tab. The Infrastructure page displays the **Enabled** status on the **Kubernetes** card for GKE Clusters.

<div align="left"><figure><img src="/files/vWFRALYNfw7jjQ1z9SfW" alt=""><figcaption></figcaption></figure></div>

### Viewing GKE Cluster details

When an Infrastructure is created, a GKE Cluster is created by default. You can view the details and download the kubeconfig file from the DuploCloud portal.

From the DuploCloud portal, navigate to **Administrator** -> **Infrastructure**. Click on the name of the Infrastructure, and select the **GKE** tab. To download the kubeconfig file, click **Download Kube Config**.

<figure><img src="/files/nmNH2UFzMg6sCnUa1HJc" alt=""><figcaption><p>The <strong>Infrastructure</strong> details page with the <strong>GKE</strong> tab selected.</p></figcaption></figure>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.duplocloud.com/docs/automation-platform/overview-1/quick-start/step-1-infrastructure.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
