VMware Cloud Community
samrocks1
Contributor
Contributor

How to pass all the physical nics directly to the guest.

Hi All,

I am new to vmware esxi 7.0. I have 8 interfaces on my physical server and I want to pass all the 8 interfaces to the guest so that all the ip addresses assigned on the guest are pingable.

What is the network design I should opt for ?

I already tried by assigning a dedicated physical nic to a vSwitch and then creating a new port group.I assign these port group in order when I create a new virtual machine.This method works fine till i create 3 port groups and assign to the vm network menu but as soon as I increase it to 4 all the other interfaces in the guest stop pinging including the management network.

 

Any leads will really be helpful 

Labels (1)
Reply
0 Kudos
16 Replies
depping
Leadership
Leadership

Why would you need to use physical interfaces for this? Wouldn't it be easier to use VLANs and configure the interfaces connected to the portgroup on which the VMs is attached to allow those VLANs?

Reply
0 Kudos
samrocks1
Contributor
Contributor

Thanks for the reply !!
My software architecture forces me to pass each physical interface to the vm.

 

Is it possible to do it ?

 

Cheers !

Reply
0 Kudos
depping
Leadership
Leadership

You may want to provide more details, which software? What is the Guest OS? As this appears to be a more a "gues os" issue then a VMware issue.

Reply
0 Kudos
Arthos
Enthusiast
Enthusiast

There are other ways to solve your problem. But if you are specifically looking for assigning physical nics to vm.

You can use PCI passthru functionality. Refer the below link , please.

https://docs.vmware.com/en/VMware-vSphere/7.0/com.vmware.vsphere.networking.doc/GUID-386F225C-C890-4...

Once the device is set for passthru. One can add it to a vm from vm settings. This requires full vm memory reservation.

 

if it helps, consider marking it as helpful.

Reply
0 Kudos
Hasaranga007
Contributor
Contributor

HI @Arthos 

Hi @Arthos  ,

Just out of curiosity , can this be done with SR-IOV too ?

Howabout , mapping one pNIC to a vSwitch and connect it to vmnic through a portgroup. In this case he needs 8 vSwitchs for the 8 pNIC.

Are there any particular differences between SR-IOV , Passthrough  and above method ?

 

Thanks .

Hasaranga.

If you find this answer useful please give a Kudo.
Don't forget to follow me on Twitter @hasaranga007 |
LinkedIn : https://www.linkedin.com/in/hasaranga/
Reply
0 Kudos
Arthos
Enthusiast
Enthusiast

@Hasaranga007 

-> Just out of curiosity , can this be done with SR-IOV too ?

You can assign Virtual functions of a SRIOV nic to a VM . SRIOV enablement depends on nic capability/support.

Howabout , mapping one pNIC to a vSwitch and connect it to vmnic through a portgroup. In this case he needs 8 vSwitchs for the 8 pNIC. 

Yes.

Are there any particular differences between SR-IOV , Passthrough  and above method ?

SRIOV is creating multiple virtual function on a PCIe card which has limited capability. Passthru is directly assigning the PCIe card to a VM. Above method uses VMware network stack.

Reply
0 Kudos
samrocks1
Contributor
Contributor

Hi,

 

The guest os is RHEL 7.7. I am highly confused about the network architecture which I should keep at the vmware level which will help me to work this out.

Reply
0 Kudos
scott28tt
VMware Employee
VMware Employee

"My software architecture forces me to pass each physical interface to the vm."

What does that actually mean?

Does your software need the bandwidth of the NICs? Does it need to be bound to specific MAC addresses? Does it only work with certain NIC drivers?

Or something else?

 


-------------------------------------------------------------------------------------------------------------------------------------------------------------

Although I am a VMware employee I contribute to VMware Communities voluntarily (ie. not in any official capacity)
VMware Training & Certification blog
Reply
0 Kudos
samrocks1
Contributor
Contributor

Spoiler
The design is very simple.Each nic card represents a different network altogether which performs different function on the guest.I will give you my detailed requirement,

HOST-                                                                                 GUEST(RHEL 7.8)
 
nic1(management interface) --------------------------------->eth0

nic2(network a)-----------------------------------------------> eth1

nic3(network b)----------------------------------------------> eth2

nic4(network c)----------------------------------------------->eth3

nic5 (network d)----------------------------------------------->eth4

nic6 (network e)------------------------------------------------> eth5

nic7 (network f)---------------------------------------------------> eth6

nic8(network g)---------------------------------------------------> eth7

This is my simple requirement as of now.I have assigned each nic on the host to a vswitch respectively and attached to the respective portgroup.For eg,

nic1(vswitch0)

nic2(vswitch1)

.

.

.

so on.

This method works for me for the first three nic on the guest and all first three interfaces are pingable.Once i attach the 4th network adapter,all the other 3 interfaces stop pinging.

 

Reply
0 Kudos
scott28tt
VMware Employee
VMware Employee

That doesn't really answer my question, never mind.

 


-------------------------------------------------------------------------------------------------------------------------------------------------------------

Although I am a VMware employee I contribute to VMware Communities voluntarily (ie. not in any official capacity)
VMware Training & Certification blog
Reply
0 Kudos
samrocks1
Contributor
Contributor

I did this but the VM crashed and didnt come up.

Reply
0 Kudos
samrocks1
Contributor
Contributor

Could you please detail the question as I am a newbie to the Vmware and virtualization.Do you want any other detail apart from the network architecture I am aiming for(which I have mentioned in the comment).

 

Thanks !

Reply
0 Kudos
scott28tt
VMware Employee
VMware Employee

These questions:

"My software architecture forces me to pass each physical interface to the vm." What does that actually mean?

Does your software need the bandwidth of the NICs? Does it need to be bound to specific MAC addresses? Does it only work with certain NIC drivers?

Or something else?


-------------------------------------------------------------------------------------------------------------------------------------------------------------

Although I am a VMware employee I contribute to VMware Communities voluntarily (ie. not in any official capacity)
VMware Training & Certification blog
Reply
0 Kudos
samrocks1
Contributor
Contributor

Hello Mates,

I have virtualized my system using KVM and RHEL on host.I was able to check the connectivity of those interfaces by assigning IP's to the interfaces and then using ping -I <interface_name>.

 

On vmware esxi host,

esxcli network nic list
Name PCI Device Driver Admin Status Link Status Speed Duplex MAC Address MTU Description
------ ------------ ------ ------------ ----------- ----- ------ ----------------- ---- -----------
vmnic0 0000:17:00.0 igbn Up Up 1000 Full e4:43:4b:c0:b9:70 1500 Intel Corporation Gigabit 4P I350-t rNDC
vmnic1 0000:17:00.1 igbn Up Up 1000 Full e4:43:4b:c0:b9:71 1500 Intel Corporation Gigabit 4P I350-t rNDC
vmnic2 0000:17:00.2 igbn Up Up 1000 Full e4:43:4b:c0:b9:72 1500 Intel Corporation Gigabit 4P I350-t rNDC
vmnic3 0000:17:00.3 igbn Up Up 1000 Full e4:43:4b:c0:b9:73 1500 Intel Corporation Gigabit 4P I350-t rNDC
vmnic4 0000:65:00.0 i40en Up Up 1000 Full f8:f2:1e:8f:c4:00 1500 Intel(R) Ethernet Controller X710 for 10GbE SFP+
vmnic5 0000:65:00.1 i40en Up Up 1000 Full f8:f2:1e:8f:c4:01 1500 Intel(R) Ethernet Controller X710 for 10GbE SFP+
vmnic6 0000:65:00.2 i40en Up Up 1000 Full f8:f2:1e:8f:c4:02 1500 Intel(R) Ethernet Controller X710 for 10GbE SFP+
vmnic7 0000:65:00.3 i40en Up Up 1000 Full f8:f2:1e:8f:c4:03 1500 Intel(R) Ethernet Controller X710 for 10GbE SFP+

 

I have 8 nics.How can i do a similar thing here and check the connectivity of the interfaces .

 

Thanks for the help,

Sam

Reply
0 Kudos
scott28tt
VMware Employee
VMware Employee

My questions remain unanswered, and it isn't clear (to me at least) what your new comment means.

 


-------------------------------------------------------------------------------------------------------------------------------------------------------------

Although I am a VMware employee I contribute to VMware Communities voluntarily (ie. not in any official capacity)
VMware Training & Certification blog
Reply
0 Kudos
depping
Leadership
Leadership

if there's a vmkernel interface on the portgroup you can use "vmkping" to ping via that vmkernel interface

Reply
0 Kudos