VMware Cloud Community
jtokach
Contributor
Contributor

vCO - Cloning RHEL 6.1 Fails to Find NIC

Hi,

We are trying to use the cloning/customization workflows with RHEL 6.1 and, at the most basic level, getNumberOfNic() isn't working. In the same workflow, choosing a Windows VM returns a value of 1.0, but Linux, 0. After that there are mess of network related issues most likly because the workflow can't bind to the vm to get information.

The VM has the latest VMware Tools running, (hosted on an ESXi 4.1.0 host).

Any ideas?

Thanks,

Jim

Reply
0 Kudos
14 Replies
jtokach
Contributor
Contributor

So, I figured out that getNumberOfNic() doesn't have VirtualVmxnet3 as an option.

Does vCO not support this NIC type?

Reply
0 Kudos
Burke-
VMware Employee
VMware Employee

The library workflows for clone/customize indeed are missing support for that nic type due to that action not being updated. Here's what you can do as a work-around:

  • Duplicate the library workflow if you haven't already and give it your own name (ie: Custom Clone and Customize Linux)
  • Edit the workflow and remove that call to the getNicByNumber action
  • Add a Scriptable task to the workflow in the place that the getNicByNumber action was in
  • Paste the following code into that Scriptable task:

var devices = vm.config.hardware.device;
var sourceVirtualEthernetCard = null;
if (nicPosition <= 0 || nicPosition > 5) nicPosition = 1;
var actualPos = 1;
for (var i in devices) {
    if (devices[i] instanceof VcVirtualE1000 || devices[i] instanceof VcVirtualVmxnet || devices[i] instanceof VcVirtualPCNet32 || devices[i] instanceof VcVirtualVmxnet2 || devices[i] instanceof VcVirtualVmxnet3) {
        if (actualPos++ == nicPosition) {
            System.log("Found a Virtual Ethernet card at " + i + ". Key: " + devices[i].key);
            sourceVirtualEthernetCard = devices[i];
        }
    }
}

  • Add two inputs to that scriptable task:
    • vm (VC:VirtualMachine) - bind to the "vm" input parameter
    • nicPosition (number) - bind to the "nicPosition" attribute
  • Add one output to that task:
    • sourceVirtualEthernetCard (any) - bind to the "sourceVirtualEthernetCard" attribute
  • Click the "Validate" button at the top of the screen, make sure you don't have any errors
  • Save and Close
  • Test, Test, and Test again Smiley Happy

I have had to do this in a number of the projects I have worked on as well. The code snippet above is nearly identical to that of the action... I simply added a check for the VMXnet3 type Smiley Wink

If my answer resolved or helped you, please mark it as Correct or Helpful to award points. Thank you!

Visit http://www.vcoteam.info & http://blogs.vmware.com/orchestrator
for vRealize Orchestrator tips and tutorials - @TechnicalValues on Twitter
Burke-
VMware Employee
VMware Employee

Please note that the action HAS BEEN UPDATED in vCO 4.2 and newer so that the VMXNet3 NIC is recognized. If your action requires the code change I provided above to work, then you must be using an older version of vCO.

If my answer resolved or helped you, please mark it as Correct or Helpful to award points. Thank you!

Visit http://www.vcoteam.info & http://blogs.vmware.com/orchestrator
for vRealize Orchestrator tips and tutorials - @TechnicalValues on Twitter
jtokach
Contributor
Contributor

We're on 4.1.1. The problem seems to run a bit deeper, so I'm not sure how you got that working. I started tracing the path and had to change probably 3 workflows and four or five custom actions. I'll try your method while we see if we can get 4.2 in house.

Reply
0 Kudos
jtokach
Contributor
Contributor

4.2 upgrade wont be happening as we're not going to vSphere 5 in the immediate future.

Reply
0 Kudos
Burke-
VMware Employee
VMware Employee

Just as an FYI, vSphere 5 is not REQUIRED to use vCO 4.2 Smiley Wink 4.2 DOES work with vCenter 4.x

If my answer resolved or helped you, please mark it as Correct or Helpful to award points. Thank you!

Visit http://www.vcoteam.info & http://blogs.vmware.com/orchestrator
for vRealize Orchestrator tips and tutorials - @TechnicalValues on Twitter
Reply
0 Kudos
jtokach
Contributor
Contributor

Is that an officially support scenario?

The release notes aren't clear on that:

http://www.vmware.com/support/orchestrator/doc/vcenter-orchestrator-42-release-notes.html

The documentation points to the compatability matrix which doesn't say it is supported:

http://www.vmware.com/resources/compatibility/sim/interop_matrix.php

Reply
0 Kudos
ppanicherski
VMware Employee
VMware Employee

I looked into the code of VC plugin for vCO 4.2 and vCO 5.0 and I can confirm that there is support for VirtualVmxnet3 (since vCO 4.2). I can say also that we have backward compatibility and it is true that vCO 4.2 can work with vSphere 4.1, but I do not know why the documents do not state this clearly.

Reply
0 Kudos
Margarita
VMware Employee
VMware Employee

Docs point to the VMware Product Interoperability Matrixes, because it is hard to maintain this information at two places. Will try to figure out how to get the matrixes updated.

vCO 4.2 works with vCenter Server 4.1. This is stated in the Installation and Configuration docs.

Reply
0 Kudos
jtokach
Contributor
Contributor

There are three issues here, both which need clarification.

1. Does vCO 4.1.1 on vCenter 4.1 support Vmxnet3? The class is there and we have successfully wired up all of the workflows and custom actions. (This is of particular importance as we need to decide on how to move forward with our configuration.)

2. Based on the answer to number 1, is this an officially supported configuration?

3. Is vCO 4.2 on vCenter 4.x an officially support configuration?

"It works" is not sufficient. We need to maintain our systems and deliverables in a supported configuration. The documentation and website need to clearly reflect that.

Thanks for looking into it.

Jim

Reply
0 Kudos
jtokach
Contributor
Contributor

Any update?

Reply
0 Kudos
ppanicherski
VMware Employee
VMware Employee

Sorry for the late reply.

... to your questions...

1. Does vCO 4.1.1 on vCenter 4.1 support Vmxnet3? The class is there and we have successfully wired up all of the workflows and custom actions. (This is of particular importance as we need to decide on how to move forward with our configuration.)

2. Based on the answer to number 1, is this an officially supported configuration?

3. Is vCO 4.2 on vCenter 4.x an officially support configuration?

My  answers are:

1. Does vCO 4.1.1 on vCenter 4.1 support Vmxnet3? -> Yes - vCO 4.1.1 on vCenter 4.1 supports Vmxnet3

2. Is this an officially supported configuration? -> I can't say, because I do not see it in the compatibility matrix on the official site. We will need some time to investigate this and eventually to update matrix. We’ll have the answer in near future, but I can't say exactly when.

3. Is vCO 4.2 on vCenter 4.x an officially support configuration? -> vCO 4.2 is compatible with vCenter Server 4.1. Currently we’re making the necessary steps to update the matrix with this info.

Best Regards.

Reply
0 Kudos
jtokach
Contributor
Contributor

Thank you! I'll wait patiently for official answer.

Reply
0 Kudos
sakibpavel
Enthusiast
Enthusiast

Have you find any ethernet followings location in RHEL 6.1.
#/etc/sysconfig/network-script/eth0..
if not then copy etho file from you main VM.It May work..

Sakibpavel
Reply
0 Kudos