> For the complete documentation index, see [llms.txt](https://chameleoncloud.gitbook.io/chi-in-a-box/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://chameleoncloud.gitbook.io/chi-in-a-box/before-you-begin/hosts-and-services.md).

# Hosts and Services

## Types of Host

A Chameleon Site, deployed via CHI-in-a-box, consists of **`Control Nodes`**, which run the OpenStack services, and **`Compute Nodes`**, which host user workloads. Our primary configuration of  CHI-in-a-box currently only supports Baremetal Compute nodes, via OpenStack Ironic. For the rest of the document, we will refer to this variant of compute nodes as **`Baremetal Nodes`**.

{% hint style="warning" %}
This means that the smallest possible site **requires two machines**, one Controller Node to run all the services, and a second, dedicated Baremetal Compute node, which will be in use by a single user at a time.
{% endhint %}

You can also use an (optional) **`Deploy Host`**, which is only responsible for executing Ansible commands to configure other hosts. It makes upgrading and scaling larger configurations more convenient, but is unneeded in a monolithic installation.

It is possible to segregate services onto separate hosts more finely, for example to scale out network routing, monitoring, or database roles independently. Such customization is outside the scope of this guide, [refer to Kolla-Ansible's description of the host types for more detail](https://docs.openstack.org/kolla-ansible/latest/admin/production-architecture-guide.html#node-types-and-services-running-on-them).

## Overview of Services

A minimal CHI-in-a-Box deployment consists of:

* Dashboard: Horizon
* Identity: Keystone
* Networking: Neutron
* Compute: Nova
* Disk Images: Glance
* Baremetal: Ironic
* Reservation: Blazar
* Inventory: Doni

Optionally, an Object Store can be provided by Swift or Ceph RGW, and a Shared Filesystem provided by Manila


---

# 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, and the optional `goal` query parameter:

```
GET https://chameleoncloud.gitbook.io/chi-in-a-box/before-you-begin/hosts-and-services.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
