NSX vCloud Retrofit: Using NSX 6.1.x with vCloud Director 5.5.2.x VSE Redeployment Issue

This blog series extends my NSX Bytes Blog Posts to include a more detailed look at how to deploy NSX 6.1.x into an existing vCloud Director Environment. Initially we will be working with vCD 5.5.x which is the non SP Fork of vCD, but as soon as an upgrade path for 5.5.2 -> 5.6.x is released I’ll be including the NSX related improvements in that release.

In the latest round of VMware KB Updates posted this week I came across an interesting KB relating to vCD 5.5.2.x and NSX 6.1.x and an apparent error when redploying an existing vShield Edge (which run at version 5.3)

VMware KB: Using NSX 6.1.x with vCloud Director 5.5.2.x.

Details: When you redeploy an edge gateway from vCloud Director 5.5.2.x after you upgrade from vCloud Networking and Security 5.5.x to VMware NSX 6.1.x, the edge gateway is upgraded to version 6.x, which is not supported by vCloud Director.

Solution: Configure vCloud Director to use Edge gateway version 5.5 with NSX 6.1.x on an Microsoft SQL Server database
Add the following statement to the database.
INSERT INTO config (cat, name, value, sortorder) VALUES (‘vcloud’, ‘networking.edge_version_for_vsm6.1’, ‘5.5’, 0);
Restart the vCloud Director cell.

However during my work deploying NSX 6.1.x into vCD 5.5.2 I couldn’t remember coming across this behaviour… In my VSE Validation Post I go through doing a test deploying of a 5.3 VSE once vCNS is upgraded to NSX Manager. My fellow vCD expert Mohammed Salem triggered this KB and posted about it here as he saw this behaviour…

After upgrading NSX to 6.1.2, I had an interesting issue, When I was trying to redeploy an existing GW, I found out the GW was upgraded to v6.1.2 instead of 5.5.3. This caused me an issue because vCloud Director (at least v5.5.x) will not recognize GWs with a version higher than 5.5.3 (Which is the latest version supported by vCNS).

I decided to give this a go in my labs..I have two VSE’s deployed and Managed by vCloud 5.5.2.1…EDGE-192 was brought in from the upgrade to NSX and I created EDGE-208 with NSX Manager handling the deployment from vCD.

I went through the Re-Deploy Option and watching the progress from the Web Client Networking & Security Edges Menu

After this had completed the version remained at 5.5.3 and I was able to manage the VSE from the vCD GUI without issue. I did the same on the other VSE and that worked as well.

I ran the script from Mohammed’s post and found the expected entry before the addition put forward in the KB

So it seems that this behaviour is not consistent across instances…as it stands NSX and vCloud Director Integration is still in it’s infancy and I expect there to be differing behaviours as more and more people deploy NSX…however this sort of inconsistency is unexpected. One possible answer is that my instances are all mature vCD installs that have been upgraded from 1.5 onwards…that said, seems strange I don’t have the issue.

Point and case, test this behaviour first before looking to apply the DB entry…would be interesting to see if more people come across it…however there is no harm in adding the entry regardless…as Mohammed commented, this behaviour doesn’t seem to exist in vCD SP 5.6.3.

 

One comment

  • Just to clarify the behavior, in VCD 5.5.0, if it was used with NSX manager (where vCNS manager was upgraded to NSX Manager), then creating a new gateway would create a 5.5.x gateway, but redeploying a gateway that existed before vCNS manager was upgraded to NSX manager would cause the gateway edge to be upgraded to an NSX edge.

    To prevent this, in VCD 5.5.1 we added a database config table entry
    vcloud.networking.edge_version_for_vsm6.0=5.5

    And by default on a new install or upgrade, this config entry is present.
    Later on we ran into a problem with NSX 6.1 where the edge would again get upgraded because the database entry was only matching NSX 6.0 and not NSX 6.1, so the user would have to manually add another entry in the table like-
    vcloud.networking.edge_version_for_vsm6.1=5.5

    In VCD 5.5.3, we reversed the behavior so that if the NSX manager is any version higher than 5.x, it will not call upgrade on redeploy unless a database entry is there to allow it. The difference is that the previous behavior was that VCD should call upgrade unless a database entry is there to prevent it.

    One thing to note is that VCD will never “not recognize GWs with a version higher than 5.5.3”. I’m not sure the exact details of this but something so drastic would not happen.

Leave a Reply