# OpenStack

> An OpenStack resource handler connects Cloud Management Platform (CMP) to an OpenStack cloud through its Identity (Keystone) service and manages the instances in the projects you import

---

Site [llms.txt](/llms.txt)

---

Each imported OpenStack project becomes a CMP environment.

## Before you begin

- An OpenStack account CMP can authenticate as, and network access from CMP to the Identity service, which listens on port `5000` by default.
- The account's domain name and a project ID. In the OpenStack dashboard, find them under **Identity** > **Domains** and **Identity** > **Projects**.

## Add an OpenStack resource handler

1. Go to **Admin** > **Resource Handlers**, select **Add**, then select **OpenStack** under **Private Cloud**.
1. Complete the credentials fields described below, then select **Continue**. CMP checks the connection at this point.
1. Enter a **Name**, and optionally a **Description**, **VM Names to Ignore**, and **VM Tags to Include**, then select **Done**.

| Field | Description |
| --- | --- |
| **Protocol** | **HTTP** or **HTTPS**, as served by the Identity service. The dialog opens with **HTTP**. |
| **Domain** | Required. The Identity domain the account belongs to, for example `default`. |
| **Project ID** | Required. The ID of a project the account can access. CMP authenticates against this project. |
| **IP address** | The host name or IP address of the Identity service. |
| **Port** | The Identity service port. Defaults to `5000`. |
| **Account username** | The OpenStack account CMP authenticates as. |
| **Password** | The password for that account. If the password vault feature is enabled, this field offers **Locally Stored** or **Vault Managed**. Select **Vault Managed** to read the secret from a configured vault provider. See [Use password vaults](/docs/cmp/configure/access-and-security/security/use-password-vaults/). |
| **SSL Verification** | Whether CMP verifies the Identity service's SSL certificate. |

## Import projects

A new handler has no environments until you import a project.

1. On the handler, open the **Projects** tab and select **Import projects**.
1. Select projects, then select **Import selected projects**.

CMP creates one environment for each project, and lists only projects the account can access.

## Import images

On the handler's **Images** tab, select **Import Images** to bring OpenStack images into CMP, or **Import Available Bootable Volumes** to import every bootable volume the handler can see.

## Manage servers

To bring existing instances into CMP, open the handler's **Servers** tab and select **Sync VMs from** followed by the handler's name. From a server's page in CMP, you can:

- Power it off and on, and reboot it.
- Add disks and network interfaces.
- Run scripts with **Ad Hoc Script**.
- Open a browser-based console. See [Console requirements](#console-requirements).

## Console requirements

The console opens the OpenStack noVNC proxy (`nova-novncproxy`) directly in the user's browser. The browser must be able to reach the proxy's address and port, usually `6080`, and **Console feature** must be enabled on the handler. It is enabled by default; to change it, select **Edit Settings** on the handler's **Overview** tab. For how to set up the proxy, see [Configure remote console access](https://docs.openstack.org/nova/latest/admin/remote-console-access.html) in the OpenStack documentation.

## OpenStack parameters

CMP provides these parameters for OpenStack servers.

| Parameter | Description |
| --- | --- |
| **Security groups** | One or more security groups defined in the handler's projects. |
| **Floating IP** | A floating IP address to assign to the instance when it starts. |
| **Availability Zone** | The availability zone to launch the instance into. |
| **User Data Customization Script** | A customization script passed to the instance when it is created. |

## Related

- [Resource handlers](/docs/cmp/configure/infrastructure/resource-handlers/): the technologies CMP connects to, and how to add one.
- [Environments](/docs/cmp/configure/infrastructure/environments/): what CMP creates for each project you import.
- [SSH keys](/docs/cmp/configure/access-and-security/security/ssh-keys/): how CMP stores and uses the key material for an OpenStack key pair.
- [Use password vaults](/docs/cmp/configure/access-and-security/security/use-password-vaults/): store passwords in HashiCorp Vault, CyberArk, Keeper, AWS Secrets Manager, or Azure Key Vault.
