If you prefer to automate or use CLI for the NSX Manager installation, you can use the VMware OVF Tool, which is a command-line utility.

By default, nsx_isSSHEnabled and nsx_allowSSHRootLogin are both disabled for security reasons. When they are disabled, you cannot SSH or log in to the NSX Manager command line. If you enable nsx_isSSHEnabled but not nsx_allowSSHRootLogin, you can SSH to NSX Manager but you cannot log in as root.

Prerequisites

  • Verify that the system requirements are met. See System Requirements.
  • Verify that the required ports are open. See Ports and Protocols.
  • Verify that a datastore is configured and accessible on the ESXi host.
  • Verify that you have the IP address and gateway, DNS server IP addresses, domain search list, and the NTP server IP address for the NSX Manager to use.
  • If you do not already have one, create the target VM port group network. Place the NSX-T Data Center appliances on a management VM network.

    If you have multiple management networks, you can add static routes to the other networks from the NSX-T Data Center appliance.

  • Plan your NSX Manager IPv4 or IPv6 IP addressing scheme.

Procedure

  1. Run the ovftool command with the appropriate parameters.
    The process depends on whether the host is standalone or managed by vCenter Server.
    • For a standalone host:
      • Windows example:
        C:\Program Files\VMware\VMware OVF Tool>ovftool \
        --sourceType=OVA \
        --name=nsx-manager \ 
        --X:injectOvfEnv \
        --X:logFile=<filepath>\nsxovftool.log \
        --allowExtraConfig \
        --datastore=<datastore name> \
        --network=<network name> \
        --acceptAllEulas \
        --noSSLVerify \
        --diskMode=thin \ 
        --powerOn \
        --prop:"nsx_role=nsx-manager nsx-controller" \
        --prop:"nsx_ip_0=10.168.110.75" \
        --prop:"nsx_netmask_0=255.255.255.0" \
        --prop:"nsx_gateway_0=10.168.110.1" \
        --prop:"nsx_dns1_0=10.168.110.10" \
        --prop:"nsx_domain_0=corp.local" \
        --prop:"nsx_ntp_0=10.168.110.10" \
        --prop:"nsx_isSSHEnabled=<True|False>" \
        --prop:"nsx_allowSSHRootLogin=<True|False>" \
        --prop:"nsx_passwd_0=<password>" \
        --prop:"nsx_cli_passwd_0=<password>" \
        --prop:"nsx_cli_audit_passwd_0=<password>" \
        --prop:"nsx_hostname=nsx-manager" \
        <nsx-unified-appliance-release>.ova \
        vi://root:<password>@10.168.110.51
        
        Note: The above Windows code block uses the backslash (\) to indicate the continuation of the command line. In actual use, omit the backslash and put the entire command in a single line.
        Note: In the above example, 10.168.110.51 is the IP address of the host machine where NSX Manager is to be deployed.
      • Linux example:
        mgrformfactor="small"
        ipAllocationPolicy="fixedPolicy"
        mgrdatastore="QNAP-Share-VMs"
        mgrnetwork="Management-VLAN-210"
        
        mgrname01="nsx-manager-01"
        mgrhostname01="nsx-manager-01"
        mgrip01="192.168.210.121"
        
        mgrnetmask="255.255.255.0"
        mgrgw="192.168.210.254"
        mgrdns="192.168.110.10"
        mgrntp="192.168.210.254"
        mgrpasswd="<password>"
        mgrssh="<True|False>"
        mgrroot="<True|False>"
        logLevel="trivia"
        
        mgresxhost01="192.168.110.113"
        
        ovftool --noSSLVerify --skipManifestCheck --powerOn \
        --deploymentOption=$mgrformfactor \
        --diskMode=thin \
        --acceptAllEulas \
        --allowExtraConfig \
        --ipProtocol=IPv4 \
        --ipAllocationPolicy=$ipAllocationPolicy \
        --datastore=$mgrdatastore \
        --network=$mgrnetwork \
        --name=$mgrname01 \
        --prop:nsx_hostname=$mgrhostname01 \
        --prop:nsx_role="nsx-manager nsx-controller" \
        --prop:nsx_ip_0=$mgrip01 \
        --prop:nsx_netmask_0=$mgrnetmask \
        --prop:nsx_gateway_0=$mgrgw \
        --prop:nsx_dns1_0=$mgrdns \
        --prop:nsx_ntp_0=$mgrntp \
        --prop:nsx_passwd_0=$mgrpasswd \
        --prop:nsx_cli_passwd_0=$mgrpasswd \
        --prop:nsx_cli_audit_passwd_0=$mgrpasswd \
        --prop:nsx_isSSHEnabled=$mgrssh \
        --prop:nsx_allowSSHRootLogin=$mgrroot \
        --X:logFile=nsxt-manager-ovf.log \
        --X:logLevel=$logLevel \
        /home/<user/nsxt-autodeploy/<nsx-unified-appliance-release>.ova \
        vi://root:<password>@$mgresxhost01
      The result should look something like this:
      Opening OVA source: nsx-<component>.ova
      The manifest validates
      Source is signed and the certificate validates
      Opening VI target: vi://root:<password>@10.168.110.51
      Deploying to VI: vi://root:<password>@10.168.110.51
      Transfer Completed
      Powering on VM: nsx-manager nsx-controller
      Task Completed
      Completed successfully
      
    • For a host managed by vCenter Server:
      • Windows example:
        C:\Users\Administrator\Downloads>ovftool 
        --name=nsx-manager \
        --X:injectOvfEnv \
        --X:logFile=ovftool.log \
         --allowExtraConfig \
        --datastore=ds1 \
        --network="management" \
        --acceptAllEulas \
        --noSSLVerify \
        --diskMode=thin \ 
        --powerOn \
        --prop:"nsx_role=nsx-manager nsx-controller" \
        --prop:"nsx_ip_0=10.168.110.75" \
        --prop:"nsx_netmask_0=255.255.255.0" \
        --prop:"nsx_gateway_0=10.168.110.1" \
        --prop:"nsx_dns1_0=10.168.110.10" \
        --prop:"nsx_domain_0=corp.local" \
        --prop:"nsx_ntp_0=10.168.110.10" \
        --prop:"nsx_isSSHEnabled=<True|False>" \
        --prop:"nsx_allowSSHRootLogin=<True|False>" \ 
        --prop:"nsx_passwd_0=<password>" \ 
        --prop:"nsx_cli_passwd_0=<password>" \ 
        --prop:"nsx_hostname=nsx-manager" \ 
        <nsx-unified-appliance-release>.ova \
        vi://administrator@vsphere.local:<password>@10.168.110.24/?ip=10.168.110.51
        
        Note: The above Windows code block uses the backslash (\) to indicate the continuation of the command line. In actual use, omit the backslash and put the entire command in a single line.
      • Linux example:
        mgrformfactor="small"
        ipAllocationPolicy="fixedPolicy"
        mgrdatastore="QNAP-Share-VMs"
        mgrnetwork="Management-VLAN-210"
        
        mgrname01="nsx-manager-01"
        mgrhostname01="nsx-manager-01"
        mgrip01="192.168.210.121"
        
        mgrnetmask="255.255.255.0"
        mgrgw="192.168.210.254"
        mgrdns="192.168.110.10"
        mgrntp="192.168.210.254"
        mgrpasswd="<password>"
        mgrssh="<True|False>"
        mgrroot="<True|False>"
        logLevel="trivia"
        
        vcadmin="administrator@vsphere.local"
        vcpass="<password>"
        vcip="192.168.110.151"
        mgresxhost01="192.168.110.113"
        
        ovftool --noSSLVerify --skipManifestCheck --powerOn \
        --deploymentOption=$mgrformfactor \
        --diskMode=thin \
        --acceptAllEulas \
        --allowExtraConfig \
        --ipProtocol=IPv4 \
        --ipAllocationPolicy=$ipAllocationPolicy \
        --datastore=$mgrdatastore \
        --network=$mgrnetwork \
        --name=$mgrname01 \
        --prop:nsx_hostname=$mgrhostname01 \
        --prop:nsx_role="nsx-manager nsx-controller" \
        --prop:nsx_ip_0=$mgrip01 \
        --prop:nsx_netmask_0=$mgrnetmask \
        --prop:nsx_gateway_0=$mgrgw \
        --prop:nsx_dns1_0=$mgrdns \
        --prop:nsx_ntp_0=$mgrntp \
        --prop:nsx_passwd_0=$mgrpasswd \
        --prop:nsx_cli_passwd_0=$mgrpasswd \
        --prop:nsx_cli_audit_passwd_0=$mgrpasswd \
        --prop:nsx_isSSHEnabled=$mgrssh \
        --prop:nsx_allowSSHRootLogin=$mgrroot \
        --X:logFile=nsxt-manager-ovf.log \
        --X:logLevel=$logLevel \
        /home/<user/nsxt-autodeploy/<nsx-unified-appliance-release>.ova \
        vi://$vcadmin:$vcpass@$vcip/?ip=$mgresxhost01
      The result should look something like this:
      Opening OVA source: nsx-<component>.ova
      The manifest validates
      Source is signed and the certificate validates
      Opening VI target: vi://administrator@vsphere.local@10.168.110.24:443/
      Deploying to VI: vi://administrator@vsphere.local@10.168.110.24:443/
      Transfer Completed
      Powering on VM: nsx-manager nsx-controller
      Task Completed
      Completed successfully
      
  2. For an optimal performance, reserve memory for the NSX Manager appliance.

    Set the reservation to ensure that NSX Manager has sufficient memory to run efficiently. See NSX Manager VM System Requirements.

  3. From the vSphere Client, open NSX Manager VM console to track the boot process.
  4. After the NSX Manager boots, log in to the CLI as admin and run the get interface eth0 command to verify that the IP address was applied as expected.
  5. Verify that your NSX Manager has the required connectivity.
    Make sure that you can perform the following tasks.
    • Ping your NSX Manager from another machine.
    • The NSX Manager can ping its default gateway.
    • The NSX Manager can ping the hypervisor hosts that are in the same network as the NSX Manager using the management interface.
    • The NSX Manager can ping its DNS server and its NTP server.
    • If you enabled SSH, make sure that you can SSH to your NSX Manager.

    If connectivity is not established, make sure that the network adapter of the virtual appliance is in the proper network or VLAN.

What to do next

Log in to the NSX Manager from a supported web browser. See Log In to the Newly Created NSX Manager.