> For the complete documentation index, see [llms.txt](https://docs.vergeos-demo.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.vergeos-demo.com/learn-the-platform/module-10-scenario-labs/lab-uci.md).

# Lab: UCI Deployment

## Objective

Deploy VergeOS in an Ultra Converged Infrastructure (UCI) configuration using the Terraform playground. You will provision a multi-cluster topology with dedicated compute and storage clusters, then validate cross-cluster resource allocation and networking.

## Prerequisites

* Completed all prior modules (1–9)
* Completed the HCI Deployment Lab
* Access to the vergeos-terraform-playground repository
* Terraform CLI installed and configured
* A VergeOS environment or lab that supports nested deployments

## Difficulty

**Advanced** -- Requires understanding of UCI architecture, multi-cluster networking, and resource allocation

## Estimated Time

**2 hours**

## Steps

### Part 1: UCI Topology Review

Understand the UCI architecture before deploying.

1. Review `docs/architecture.md` in the terraform playground -- focus on UCI sections
2. Review `docs/deployment-scenarios.md` -- trace the UCI topology diagram
3. Identify the UCI `.tfvars` file in the examples directory
4. Examine the configuration and identify:
   * How many clusters are defined and their roles (compute vs storage)
   * Node assignments per cluster
   * Cross-cluster networking configuration
   * Storage tier allocation across clusters
5. Compare the UCI `.tfvars` with the HCI `.tfvars` files -- document key structural differences

### Part 2: UCI 3-Cluster Deployment

Deploy the UCI topology.

1. Run `terraform init` (if needed) and `terraform plan -var-file=<uci-3-cluster>.tfvars`
2. Review the planned resources -- note the additional cluster and networking resources compared to HCI
3. Run `terraform apply -var-file=<uci-3-cluster>.tfvars` to deploy
4. In the VergeOS UI, verify:
   * All clusters appear and are correctly labeled (compute, storage)
   * Nodes are assigned to their correct clusters
   * Cross-cluster core fabric networking is established
   * Storage pools are available to compute clusters
   * Controller nodes (nodes 1–2 for N+1, or 1–3 for N+2) are correctly designated and healthy

### Part 3: Resource Allocation & Scaling

Practice working with the UCI topology.

1. Create a VM on a compute cluster and verify it uses storage from the storage cluster
2. Monitor cross-cluster I/O in the dashboard
3. Explore how you would add a node to an existing cluster
4. Document the advantages of this UCI topology:
   * Independent scaling of compute and storage
   * Failure domain isolation between clusters
   * Workload placement flexibility
5. Compare the operational model to the HCI deployments from the previous lab

### Part 4: Design Decision Exercise

Apply what you've learned to a customer scenario.

1. **Scenario**: A customer has 200 VMs, 50TB of storage, needs to independently scale compute and storage, and has strict compliance requirements for data isolation. They currently run VMware vSAN with separate management and workload clusters.
2. Recommend a VergeOS topology (HCI or UCI) and justify your choice
3. Sketch the cluster layout (number of clusters, nodes per cluster, roles)
4. Identify which terraform playground example most closely matches your design
5. Document any modifications needed to the example `.tfvars` to match the customer requirements

## Verification

Your UCI deployment lab is complete when you can answer **yes** to all of the following:

* [ ] Successfully deployed a UCI 3-cluster topology via Terraform
* [ ] Verified all clusters, nodes, and cross-cluster networking in the VergeOS UI
* [ ] Created a VM on a compute cluster using storage from the storage cluster
* [ ] Documented the key differences between UCI and HCI operational models
* [ ] Completed the design decision exercise with a justified topology recommendation
* [ ] Cleaned up all lab resources with `terraform destroy`


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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.vergeos-demo.com/learn-the-platform/module-10-scenario-labs/lab-uci.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.
