# Brain deployment in Nutanix

## Downloading the Latest Nutanix Brain Files

The current Nutanix Brain files (.zip containing .ova and python deployment script) can be downloaded from the Vectra Customer Support Portal after logging in.&#x20;

The URL for the download page is: <https://support.vectra.ai/vectra/additional-resources>.

* Click on the **Download** tab.
* Click on the **Nutanix Brain Files** and the the **File: Download** link.
  * A SHA256 hash is also provided to allow you to verify the download completed successfully.

{% hint style="info" %}
Always download a current copy when you go to deploy a new Nutanix Brain for your organization. This will save time during deployment as fewer updates will need to be downloaded after deployment. Make this file available via the local file system where you will run Prism Central client from.
{% endhint %}

![](https://content.gitbook.com/content/HJ1ltuWFvsArFWtevnRn/blobs/7QAlRdMc8aR7IkIC9ZPv/Nutanix_Brain_Deployment_Guide-2025_Oct_23-16.png)

## Uploading the OVA Image to Prism Central

* After downloading the .zip file from the Vectra support portal, unzip it using the tool of your choice.
  * Save the python script to the location of your choice. The location must have reachability to your Prism Central v3 APIs.
* Upload the `.ova` file to your OVA store in Prism Central.
  * Navigate to *Infrastructure → Compute → OVAs*.
  * Click **Upload OVA** and fill out the dialog.
    * Choose your AHV cluster.
    * Pick a name for the OVA. This will be used later selecting the image with the deployment script.
    * The Checksum file is not required as the OVA will automatically be verified by Nutanix based on information included in the OVA file.
    * Choose your file and click **Upload**.
  * It will take a few minutes to upload the OVA and then Prism Central will perform validation of the OVA.
  * You can check the status of these tasks in the **All Tasks** as seen below:

![](https://content.gitbook.com/content/HJ1ltuWFvsArFWtevnRn/blobs/fNehso2BVNpt7MzFDCb8/Nutanix_Brain_Deployment_Guide-2025_Oct_23-17.png)

* When the validation has completed, you can move on to deployment.

{% hint style="info" %}
**Please choose one of the following two deployment methods for the OVA:**

* [Deploying the OVA Using the Python Script (Recommended)](#deploying-the-ova-using-the-python-script-recommended)
* [Deploying the OVA Manually (Alternate Method)](#deploying-the-ova-manually-alternate-method)
  {% endhint %}

## Deploying the OVA Using the Python Script (Recommended)

### Script Guidance

* If you would like to pass all arguments to the script instead of running interactively, it is supported.
* Interactive deployment is recommended because the script will display options for the cluster, OVA image, and subnet names or UUIDs and you will not need to look them up elsewhere.
* The URL can include a trailing `/` or it can be left off, both formats will work but you should include the full URL including port, and not just the hostname.
* After the last question is answered or if all arguments were passed to script for a non-interactive deployment, the execution is nearly instantaneous.
  * You can then find the VM in Prism Central at *Infrastructure → Compute → VMs*.
* When choosing static IP addressing, additional questions will be asked during the script execution to capture the static IP details.
  * Brains that start with DHCP can be set to static addressing after deployment. See [Setting a static IP and DNS after initial DHCP deployment](https://docs.vectra.ai/deployment/ndr-virtual-cloud-appliances/nutanix-brain/post-deployment-guidance) for details.

{% hint style="info" %}
**Please Note:**

Per the [Nutanix Brain Resource Requirements and Throughput](https://docs.vectra.ai/deployment/ndr-virtual-cloud-appliances/introduction-and-requirements#nutanix-brain-resource-requirements-and-throughput) section, Vectra plans to make additional configurations available in the future.

* Initially, only the 32 core Brain is supported.
* Once available, the 4 and 6 core Respond UX specific configuration can only be used in Respond UX deployments. They are NOT supported for Quadrant UX deployments.
* **RespondUX** – Choose this option if you are doing a Respond UX for Network deployment.
  * When this option is selected, the Brain will boot directly into a state that is ready to be linked to the Vectra Cloud for use with the Respond UX. There will be no local Quadrant UX GUI served as there normally would be for a standard Nutanix Brain deployment before it is linked with Vectra for use with the Respond UX. Vectra personnel will still need to link your Brain to your Respond UX tenant to complete your deployment.
  * This option should be selected for any Respond UX for Network deployment. i.e. You still need to pick this option even if you previously chose the **6CORE\_RespondUX** configuration.
    {% endhint %}

### Running the Script

* The python deployment script can be run from any location that has reachability to your Prism Central APIs.
  * Your python interpreter must be v3.7 or higher.
  * Please see below for a sample interactive run using DHCP
    * Lines requiring user input are highlighted below:

<pre><code><strong>❯ python Vectra\ Nutanix\ Brain.py --interactive --insecure
</strong><strong>Enter Prism Central url (include port if applicable): https://your_prism_central:9440/
</strong><strong>Enter Prism Central username: admin
</strong><strong>Enter Prism Central password: ****Redacted****
</strong>INFO:vectrantnx:logging into prism central
To which cluster should the VM be deployed?
Choose one of the following objects:
UUID                                    Name
000639fc-7386-2da4-7938-bc2411a17fee    nutanix2
4a061048-29a6-4b6b-8f6d-f5bca68241e7    prism_central
<strong>Enter a UUID or name: nutanix2
</strong>Which ova should be used to deploy the VM?
Choose one of the following objects:
UUID                                    Name
42b71f41-60cc-43a2-ba72-b8c1b9975ad8    nutanix-vhe-image-10-8-2025
c593d1cb-1813-42a9-8c62-731b5c3f3e4b    Nutanix Brain - GA 9.6.0-16-10
<strong>Enter a UUID or name: Nutanix Brain - GA 9.6.0-16-10
</strong><strong>What should be the name of this VHE? Example_Nutanix_Brain
</strong>Which subnet should be used for the management interface?
Choose one of the following objects:
UUID                                    Name
f5d8c6bb-8ad9-42c5-b977-8bafbba10b81    default-subnet
5a4a32d9-76f6-4b40-8eda-eb2fa46899bc    test
<strong>Enter a UUID or name: default-subnet
</strong>What will be the size of this VHE? Profiles marked with RespondUX may only be used with RespondUX.
Valid choices are:
32CORE
<strong>Enter choice: 32CORE
</strong>Enable dhcp? Static networking options will be asked if False.
Valid choices are:
True
False
<strong>Enter choice: True
</strong>Should the VHE boot directly into RespondUX mode? This enables pairing with the Vectra AI Platform utilizing the Respond UX and disables the local UI.
Valid choices are:
True
False
<strong>Enter choice: False
</strong>INFO:vectrantnx:gathering info for deployment...
INFO:vectrantnx:deploying...
deployment started, check Prism Central for status
</code></pre>

* Help is available if you use the `--help` argument when running the script:

```
❯ python Vectra\ Nutanix\ Brain.py --help
usage: Vectra Nutanix Brain.py [-h] [--interactive] [--insecure] [--nutanix-host NUTANIX_HOST] [--nutanix-user NUTANIX_USER] [--nutanix-pass NUTANIX_PASS] [--cluster CLUSTER] [--ova OVA] [--name NAME] [--mgt-network MGT_NETWORK] [--profile {32CORE}] [--dhcp {True,False}] [--hostname HOSTNAME] [--ip-address IP_ADDRESS] [--ip-netmask IP_NETMASK] [--ip-gateway IP_GATEWAY] [--dns DNS] [--respondux {True,False}]
 
Vectra Nutanix deployment tool
 
options:
  -h, --help            show this help message and exit
  --interactive         Ask interactively for missing options
  --insecure            Disable tls certificate verification
  --nutanix-host NUTANIX_HOST
                        URL of your Prism Central instance, including port if applicable
  --nutanix-user NUTANIX_USER
                        Prism Central username
  --nutanix-pass NUTANIX_PASS
                        Prism Central password
  --cluster CLUSTER     UUID or name of cluster to which to deploy the VM
  --ova OVA             Name or uuid of ova to deploy
  --name NAME           Name of the virtual machine to be created
  --mgt-network MGT_NETWORK
                        Name or uuid of subnet to which to connect the management NIC
  --profile {32CORE}    Deployment profile (size) of VHE
  --dhcp {True,False}   Set to True to enable DHCP. Static networking options can be omitted if DHCP is enabled.
  --hostname HOSTNAME   The hostname or FDQN for the virtual machine.
  --ip-address IP_ADDRESS
                        Static IP address to assign to the management interface.
  --ip-netmask IP_NETMASK
                        The netmask for the management interface.
  --ip-gateway IP_GATEWAY
                        Default gateway for the management interface.
  --dns DNS             The DNS servers for the VM (comma separated). You may specify up to 2 DNS servers.
  --respondux {True,False}
                        Set to True to boot the VHE directly into RespondUX mode. This enables pairing with the Vectra AI Platform utilizing the Respond UX.
```

* Once deployed, you can move on to [Initial boot up and licensing](https://docs.vectra.ai/deployment/ndr-virtual-cloud-appliances/nutanix-brain/initial-startup-and-licensing).

## Deploying the OVA Manually (Alternate Method)

* Select the check box next to the OVA you uploaded and choose *Actions → Deploy as VM*.
  * Follow the instructions below for each screen.
  * The OVA should be visible in *Infrastructure → Compute → OVAs* in Prism Central.
* A dialog will open with Configuration, Resources, Management, and Review panes.

{% stepper %}
{% step %}

#### Configuration

* Set **Name** and **Description** as desired.
* Choose the **Cluster** you wish to deploy on.
* Under **VM Properties**, set the **CPUs** and **Memory** to one of the following configurations.
  * In all cases, set **Cores Per CPU** to 1:
  * 4 CPUs / 48GiB RAM (Respond UX ONLY) – Coming soon, do **NOT** use until Vectra approved by Vectra!
  * 6 CPUs / 48GiB RAM (Respond UX ONLY) – Coming soon, do **NOT** use until approved by Vectra!
  * 8 CPUs / 64GiB RAM – Coming soon, do **NOT** use until approved by Vectra!
  * 16 CPUs / 128GiB RAM – Coming soon, do **NOT** use until approved by Vectra!
  * **32 CPUs / 256GiB RAM - Only supported choice at initial launch of Nutanix Brain.**
* Under Advanced Settings, do **NOT** enable Memory Overcommit.
  {% endstep %}

{% step %}

#### Resources

* Do **NOT** change Disks, Boot Configuration, or Shield VM Security Settings!
* Select the **edit** (pencil) icon next to the NIC and configure it.
  * Choose the desired **subnet**.
  * For Network Connection State, choose **Connected**.
  * For NIC Configuration, choose **Access** and then **Save** your NIC configuration.
    {% endstep %}

{% step %}

#### Management

* **Default-Storage** policy can be enabled if this is your standard.
  * If performance testing (in [Post Deployment Guidance](https://docs.vectra.ai/deployment/ndr-virtual-cloud-appliances/nutanix-brain/post-deployment-guidance)) indicates too low of a disk throughput, you may need to alter or remove the policy later if the policy is the reason for the lower performance.
* Categories are **NOT** required.
* Timezone **must** be set to **UTC**.
  * Timezone can later be set in your Vectra UI if you desire to have a different timezone.
* Check **Use this VM as an Agent VM** if you want the Brain to boot before all other VMs.
  * This is **not** required, but is supported if desired.
* Under **Guest Customization**, choose **Script Type: Cloud-init (Linux)** and **Configuration Method: Custom Script**
* Add your configuration to the template below and paste it into the **Startup Script** box.
  * You can download the script below or copy it from the code block.

{% file src="<https://4227135129-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHJ1ltuWFvsArFWtevnRn%2Fuploads%2Fgit-blob-a80e9c866c42af7bbd1d9ef953bac96702c39554%2FStartup_Script_For_Manual_Deployment.txt?alt=media>" %}

```
#vectra
 
# Set this to True to enable DHCP. Static networking options can be left blank if DHCP is enabled.
dhcp=False
# The hostname or FDQN for the virtual machine.
hostname=
# Static IP address to assign to the management interface.
ip_address=
# The netmask for the management interface.
ip_netmask=
# Default gateway for the management interface.
ip_gateway=
# The DNS servers for the VM (comma separated). You may specify up to 2 DNS servers.
dns=
 
# Set this to True to boot the VHE directly into RespondUX mode. This enables pairing with the Vectra AI Platform utilizing the Respond UX.
network_to_cloud=False
```

{% endstep %}

{% step %}

#### Review

* Review your configuration, make changes if required, and when ready, click **Create VM**.
* After creation, you can then find the VM in Prism Central at *Infrastructure → Compute → VMs.*
  {% endstep %}
  {% endstepper %}
