---
title: "NIOS-X on OpenStack with KVM"
canonical: "https://docs.infoblox.com/space/BloxOneInfrastructure/204800584/NIOS-X%20on%20OpenStack%20with%20KVM"
format: markdown
---
Infoblox recommends that you dedicate the minimum system requirements to the <span style="color: #000000">NIOS-X server</span> you plan to deploy. The dedicated resources cannot be shared with or used for other non-Infoblox applications. Sharing resources will negatively affect the performance of your Infoblox services. For information about the minimum system requirements and port usage, see the following:

- <span style="color: #000000">*[Firewall Requirements for Infoblox Cloud Services](https://infoblox-docs.atlassian.net/wiki/spaces/BloxOneInfrastructure/pages/873660456)*</span>
- *[Minimum System Requirements for NIOS-X Servers](https://infoblox-docs.atlassian.net/wiki/spaces/BloxOneInfrastructure/pages/873758806)*
- <span style="color: #000000">*[Supported Platforms for NIOS-X Servers](https://infoblox-docs.atlassian.net/wiki/spaces/BloxOneInfrastructure/pages/873693279)*</span>
- <span style="color: #000000">*[Port Usage for Bare-Metal NIOS-X Servers](https://infoblox-docs.atlassian.net/wiki/spaces/BloxOneInfrastructure/pages/873758860)*</span>

# <span style="color: #000000">Prerequisites</span>

<span style="color: #000000">Before deploying a NIOS-X server and enabling Infoblox services, ensure that you prepare the deployment environment according to the requirements for the supported platforms and open all necessary ports for unrestricted outbound access.</span>

Before you start the deployment, consider and complete the following:

- For details on sizing and system requirements, see *[Minimum System Requirements for NIOS-X Servers](https://infoblox-docs.atlassian.net/wiki/spaces/BloxOneInfrastructure/pages/873758806)*.
- Ensure that your deployment environment meets the minimum <u>*[deployment requirements](https://infoblox-docs.atlassian.net/wiki/spaces/BloxOneInfrastructure/pages/873758806)*</u>.
- Infoblox supports all versions of OpenStack.
- Open all required ports on the <span style="color: #000000">NIOS-X server</span>s, as list in *[Port Usage for Bare-Metal NIOS-X Servers](https://infoblox-docs.atlassian.net/wiki/spaces/BloxOneInfrastructure/pages/873758860)*, in addition to the ports required for firewalls.
- Ensure that there are no other processes using port 53 on the server system on which your <span style="color: #000000">NIOS-X server</span> will be deployed. For example, some Ubuntu systems running local DNS cache (system-resolved) might occupy port 53, and your <span style="color: #000000">NIOS-X server</span> might not function properly in this case.

Infoblox supports KVM deployment managed by OpenStack via the OpenStack dashboard or CLI commands.

> ❌ <span style="color: #000000">KVM does not support adding, editing, or deleting network interfaces through the Infoblox Portal. Once a KVM host is deployed, additional interfaces cannot be added. All required interfaces must be configured during the initial deployment. If interfaces are initially added in the KVM manager, they will persist in the Infoblox Portal. Even if they are later deleted from the KVM manager, they will still be visible in the Infoblox Portal. However, this does not affect the functionality of other interfaces.</span>


# <span style="color: #000000">Known Limitation</span>

- <span style="color: #000000">Network interface configuration is not supported through the Infoblox Portal.</span>

## Downloading the QCOW2 Package for OpenStack

1. <span style="color: #000000">Log in to the Infoblox Portal.</span>
2. Go to **System > Downloads**.
3. Go to the **NIOS-X** section, click **NIOS-X Servers **drop-down and select **Download QCOW2**.

# Deploying NIOS-X Servers via OpenStack Dashboard

1. Open a new browser window and launch the OpenStack dashboard.
2. Log in to the dashboard using a project user credentials.
3. Select the appropriate project from the drop down menu at the top left.
4. On the **Project** tab, open the **Compute** tab and click **Images** category.
5. Click **Create Image**, and the *Create An Image* dialog appears.
6. Complete following image details, as show in the screenshot:
  - **Image Name**: Give your image a unique name.
  - **Image Source**: Select **File** and browse to the location to which you downloaded the QCOW2 image from the Infoblox Portal.
  - **Format**: Choose **QCOW2-QEMU Emulator** from the drop-down menu  
For more information about image details, refer to the OpenStack documentation.
7. Click **Create Image**.
8. Open the **Project** tab -> **Compute** tab, and click **Instances**.
9. Choose the image you just created, and click **Launch Instance**.
10. In the *Launch Instance* dialog, specify the following:
  - **Availability Zone**: By default, this value is set to the availability zone given by the cloud provider (for example, `us-west` or `apac-south`). For some cases, it could be **nova**.
  - **Instance Name**: Specify a name for the <span style="color: #000000">NIOS-X server</span>.
  - **Flavor**: Choose **m1.large** for the regular image and **B1-HC**.
  - **Instance Count**: Enter **1**.
  - **Instance Boot Source**: Choose **Boot from image**.
  - **Image Name**: Choose the image name you have given to the image.
11. Click **Access & Security** at the top.
12. Under **Security Groups**, select **default** to use the default security groups, or select **permissive** to open a few default ports.
13. Click **Networking** at the top.
14. Add interfaces by selecting applicable networks from the list. You can choose multiple networks for multiple interfaces.
15. Click **Post-Creation** at the top to add customized scripts, if needed.
16. **Customization Script Source**: Choose **Direct Input** and enter the script in the Script Data field, or you can upload a file that contains scripts such as the join token for a cluster account, as follows. To obtain a join token, see *[Creating Join Tokens](https://infoblox-docs.atlassian.net/wiki/spaces/BloxOneInfrastructure/pages/87556657)*. <span style="color: #000000">For information on how to use the </span><span style="color: #000000">*userdata*</span><span style="color: #000000"> file, see </span><span style="color: #000000">*[YML and JSON Templates](https://infoblox-docs.atlassian.net/wiki/pages/createpage.action?spaceKey=BloxOneThreatDefense&title=Appendix%20B%3A%20YML%20and%20JSON%20Templates)*</span><span style="color: #000000">.</span>
  `#cloud-config`  
`host_setup:`  
`jointoken: ECJ0yOZL3WVO7NSLxM7j_w7vLfTAFMRZxxxxx`  
  
> Macro (inline-media-image)
17. Click **Advanced Options** at the top to specify whether to do disk partition manually or automatically, and then select the **Configuration Drive** checkbox to write metadata to a configuration drive if cloud_init is not available.
18. Click **Launch** to launch the instance.  
The <span style="color: #000000">NIOS-X server</span> is displayed on the **Instance** page. Optionally, click **Console** at the top of the Instance page to view instance details in the console. You can also assign a floating IP address to the instance, if needed.  
  
You have now successfully deployed the <span style="color: #000000">NIOS-X server</span>. It might take a couple minutes for the server and the Infoblox Portal to connect.
19. To check the current status of the <span style="color: #000000">NIOS-X server</span>, you can go to **Network > Services & Servers > Servers** in the Infoblox Portal. For more information about the server status see *[Viewing Host Status](https://docs.infoblox.com/display/BloxOneCloud/Viewing+On-Prem+Host+Status)*.

# Deploying KVM NIOS-X Server Using CLI Commands

You must complete the following before you can use the OpenStack CLI:

- Install the OpenStackClient.
- <span style="color: #333333">Provide your OpenStack a username, password, project, and auth endpoint.</span>
- <span style="color: #333333">Enable DHCP as the default configuration for any private network.</span>

<span style="color: #333333">To deploy the KVM </span><span style="color: #000000">NIOS-X server</span><span style="color: #333333">, complete the following:</span>

1. <span style="color: #000000">Log in to the Infoblox Portal.</span>
2. <span style="color: #000000">Go to </span>**System > Downloads**<span style="color: #000000">.</span>
3. On the *Downloads* page ><span style="color: #000000">** NIOS-X (BloxOne) Server**</span>**s**<span style="color: #000000"> section,</span> select **Download Package for KVM/QCOW (60 GB Disk)** for the regular image<span style="color: #000000">.</span>
4. Click **Download Package**.
5. <span style="color: #333333">Open the command-line window and enter the following commands at the prompt to perform specified tasks.</span>
  1. Create an image:
  2. Verify whether your image has been created:
  3. Add or configure networks:
  4. Create security group to access the Device UI:
  5. Verify the security group you just created:
  6. Create Cloud-init file and rename this file to *user_data.yaml*:
  7. Launch the VM:
  8. Verify your VM has been deployed: