VRA Version 8.4, Vsphere version 7.x, NSX-T 3.1
I'm attempting to deploy a simple VRA Cloud Template with two Nics (both NSX-T networks).
The problem is when I deploy the template both the NICs will have the same IP range and they shouldn't. (One Network Profile clobbers the others IP range).
Here is some detail to make it clear what is happening.
The template looks something like this.
formatVersion: 1
inputs: {}
resources:
Nsxone:
type: Cloud.NSX.Network
properties:
networkType: private
constraints:
- tag: 'otherTagB:hard'
NsxTwo:
type: Cloud.NSX.Network
properties:
networkType: private
constraints:
- tag: 'customTag:A:hard'
VirtualMachineNode:
type: Cloud.vSphere.Machine
properties:
flavor: Medium
image: Win10Ansible
networks:
- network: '${resource.NsxTwo.id}'
deviceIndex: 0
- network: '${resource.Nsxone.id}'
deviceIndex: 1
Within the provisioning diagram I can see that each network is independently allocated to each tagged resource network profile.
The details of the two profiles are listed below but effectively they are identical except they have different CIDRs:
Network Profile with Tag otherTag:B
Infastructure -> Network Profiles -> Summary
- Name: NetworkB
Capability tags: otherTag:B
Infastructure -> Network Profiles -> Network Policies
Isolation Policy:
- Transport Zone: overlay
- Tier-0 Logical Router: gateway
- Edge Cluster: Edge-Cluster
IP Address managment:
source: internal
CIDR: 5.5.0.0/16
Subnet Size: /24
IP Range assignment: static and DHCP
Network Profile with TagcustomTag:A
Infastructure -> Network Profiles -> Summary
- Name: NetworkA
Capability tags: TagcustomTag:A
Infastructure -> Network Profiles -> Network Policies
Isolation Policy:
- Transport Zone: overlay
- Tier-0 Logical Router: gateway
- Edge Cluster: Edge-Cluster
IP Address managment:
source: internal
CIDR: 10.22.0.0/16
Subnet Size: /24
IP Range assignment: static and DHCP
After the deployment completes the two NSX networks will have CIDRs from the same range.
For example one network will be NsxOne will have CIDR: 10.22.1.0/24 and NsxTwo will have CIDR 10.22.2.0/24
OR
For example one network will be NsxOne will have CIDR: 5.5.1.0/24 and NsxTwo will have CIDR 5.5.2.0/24
The expected result from deploying the network should be:
For example one network will be NsxOne will have CIDR: 10.22.1.0/24 and NsxTwo will have CIDR 5.5.1.0/24
I have also tested with no virtual machine present and I get the expected result. i.e NsxOne will have CIDR: 10.22.1.0/24 and NsxTwo will have CIDR 5.5.1.0/24
I have also tested with two virtual machines one connected to each network and I got the expected result. i.e NsxOne will have CIDR: 10.22.1.0/24 and NsxTwo will have CIDR 5.5.1.0/24
When I tested it with two virtual machines one connected to both networks and one connected to one network I did not get the correct result I got something like NsxOne will have CIDR: 10.22.1.0/24 and NsxTwo will have CIDR 10.22.2.0/24
For those who prefer to see the issue below are two images of the above two scenarios I just described:
No Issue with No Dual NIC
Dual Nic With Issue
So after contacting VMware through VMware support this is a but that exists in VRA 8.4.0.
It is fixed in VRA 8.4.2, the only fix is to update VRA.
So after contacting VMware through VMware support this is a but that exists in VRA 8.4.0.
It is fixed in VRA 8.4.2, the only fix is to update VRA.