> 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/setup-guides/production-baremetal.md).

# Production Baremetal

This is our "Default" configuration for associate sites. It supports federated user login, baremetal provisioning, and isolated, multi-tenant networking to the nodes.

{% hint style="info" %}
This configuration is baremetal only, and does not support virtualized instances!
{% endhint %}

### Site-Requirements Checklist

Before you begin, ensure you have the following, and note which will be used in your `defaults.yml` Refer to the host networking configuration for details.

{% content-ref url="/pages/yZVu0LvDOK2LNdsrO9oU" %}
[Host Networking Configuration](/chi-in-a-box/setup-guides/production-baremetal/hostnetworking.md)
{% endcontent-ref %}

* [ ] A name for your site
  * [ ] Friendly name, such as `CHI@SITE`: `openstack_region_name`
  * [ ] A short name, such as `site` : `chameleon_site_name`
* [ ] one or more [Control Nodes](https://github.com/ChameleonCloud/chi-in-a-box/blob/stable/xena/docs/setup-guides/production-baremetal/broken-reference/README.md)
  * [ ] The control node has a linux bridge named `public`: `kolla_external_vip_interface`
    * [ ] bridged to a physical interface
    * [ ] bridged to one half of a veth-pair
    * [ ] With an IP address assigned from a publicly routable subnet
    * [ ] in this subnet, a reserved (not bound) Public IP for HAProxy VIP: `kolla_external_vip_address`
      * [ ] Public DNS name for this address: `kolla_external_fqdn`
      * [ ] TLS Certificate for this address and name
    * [ ] in this subnet, reserved (not bound), one public IP per baremetal node and/or isolated network, minimum 1, 20+ recommended
  * [ ] The control node has a linux bridge named `internal`: `network_interface`
    * [ ] bridged to a physical interface with a vlan trunk to the dataplane switch
    * [ ] bridged to one half of a veth-pair
    * [ ] With an IP address assigned from a private subnet, referred to as the `internal_subnet`
    * [ ] with a spare (not bound) ip address in `internal_subnet` for the HAProxy VIP: `kolla_internal_vip_address`
* [ ] **at least** one [Baremetal Node](https://github.com/ChameleonCloud/chi-in-a-box/blob/stable/xena/docs/setup-guides/production-baremetal/broken-reference/README.md)
  * [ ] the out of band interface must be accessible by the controller node
* [ ] [a managed switch with vlan capability](broken://pages/Ow3s85ffermMIBFgkPnl)
  * [ ] Reserved VLANs: 2 minimum, 10+ recommended
    * [ ] Ironic Provisioning
    * [ ] Shared neutron network
    * [ ] 1 per isolated tenant network
  * [ ] the PXE capable interface on the Baremetal compute nodes must be connected to this switch
  * [ ] the controller node must have a tagged interface, and be a member of the above VLANs

Refer to the above, and we can now follow the QuickStart!

{% content-ref url="/pages/uuXWTt6JKFQn4yzXsLog" %}
[Baremetal QuickStart](/chi-in-a-box/setup-guides/production-baremetal/quickstart.md)
{% endcontent-ref %}


---

# 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/setup-guides/production-baremetal.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.
