So, that web page mentions the “VM network” port group that is a default port group that is created once you deploy an ESXi host. In my case, it was auto-deployed with different port groups and that one didn’t exist.

Hence, I decided to create a port group called “VM Network” in the host that I am trying to deploy the vCSA and…it worked!

Now, as you can see, I can see that port group and I was able to continue the installation with success!

It seems that with you must have this port group if you are deploying a vCSA at least from your PC, so, bear in mind if you are trying to deploy a new vCSA and you don’t have the default port groups when deploying a vCenter Server.

As said in previous articles, this series is only focused on VMware vSphere hence, VMware Horizon View is not contemplated (Linked clones are commonly used in that product).

What is a linked clone?

What can you see here?

Keanu Reaves has been linked cloned!

In the previous image, you can see 3 different characters but they share something in common…the actor!

Linked clones are the same! A linked clone is a type of clone (a copy of a virtual machine) where the parent VM shares virtual disks with their clones.

The resulting linked clone will be created from the parent’s VM snapshot and because of being a snapshot, it will have the same state that was the snapshot was taken.

When the linked clone is created, it shares his own virtual disk (.vmdk file) with the snapshot from the parent VM, this leads to some unique features:

The clone will be dependent from the parent VM because they are sharing their virtual disks. If you delete the parent’s VM snapshot, it will corrupt the clone’s virtual disk.

Even both VMs are sharing their storage, any changes performed in the clone won’t affect the parent VM and vice-versa.

The linked clone will have the exact same data as the source VM because it was created from a snapshot.

The save spacings are obvious because the clone will only write the new modifications in its own virtual disk. So, the clone’s virtual disk size will be only the amount of data that changed after it was created!

General process

Use or prepare a VM (Parent VM) that will be used as a master/parent to deploy the linked clones

Power-off the Parent VM (Recommended but not mandatory)

Perform a snapshot of the VM.

Time to create Linked clones referencing the snapshot we created previously.

Power-on the clones and customize them (apply customization specifications for example).

(Extra) Before powering-on the linked clone, perform another snapshot of the clone to use it as a rollback (if the end-user needs it).

(Extra) Power-on the clone and is ready to be delivered.

(Extra plus) If you decide to keep the linked clone for any reason, you can perform a full clone of it and it will become an independent VM!

In the next section, I will show you how to create a linked clone with PowerCLI from a Windows VM and in my case, I will use Custom Specifications within the script to launch the clone.

In this script, I am also using the OSCustomizationSpec parameter, while using the sentence to create the linked clone, to change the IP, name and join again to the domain the resultant clone. Also, I am changing the SQL instance name in my case because it’s a server with MSSQL server installed.

Once the script finished, a new linked clone is created and powered on with the name “SQL-LC1”.

We can see the amount of time that takes to create a Linked clone (5 seconds):

And now look at the storage allocated by the Linked clone (powered off), 750 MB approximately:

After the Linked clone is created and powered on, you can do whatever you want.

I had to wait some minutes (around 10 min. in my case) until the OS customization specification finish all the actions specified (power on the VM, join to the domain, reboot the VM, execute a script to update SQL instance, etc.)

Here is the “real” space allocated after the Linked clone has booted up and I logged in with a user, around 4 GB:

A look inside the Guest OS of the linked clone (new hostname, IP and has the same storage as the Parent VM:

Use cases

It’s commonly used in VDI and DEV environments but here are some examples:

Desktop Deployment

QA

Bug testing

DB server testing

File server testing

General testing

Benefits and limits

Let’s summarize which are the benefits and limits that we can find in linked clones:

Pros

Super fast cloning compared to a Full/Normal clone, it takes seconds instead of minutes to clone large VMs.

Space savings due to changes are stored in a separated disk (clone’s flat disk).

Useful for development environments or if you want to keep the clone just, perform a full clone of it!

Deploy as many linked clones as you want, they will reference the snapshot in the Parent VM hence, there is no disk chain on that (except for the snapshot you created of course) and the benefits of replicating .

Ongoing changes made in the virtual disk of the source VM don’t affect the linked clones and changes to the disk of the linked don’t affect the parent.

It can be performed with the parent VM powered on but, it will have some performance degradation and probably inconsistent data (if for example, the parent VM hosts a DB).

Cons

Recommended but not mandatory that the parent VM has to be powered off.

There is a storage/disk dependency as the linked clone is created from the parent’s VM snapshot then, if you delete that snapshot, inconsistencies will occur in the clone (and at the end you will delete it).

Performance on the destination clone will be impacted (as virtual machines are sharing storage)

To conclude

Linked clones have multiple benefits compared to full clones and it has many use cases as we saw before.

You can easily replicate the status of a VM (snapshot) and deploy linked clones to your end-users with all the benefits as for example space savings or the deployment speed.

To end this series, we will look at instant clones, another type of clone that is even faster than linked clones but, with some particularities.

I am going to talk about my experience at a local VMUG, in my case the VMUG from Barcelona (BCN). It was my first time at a local VMUG event and this is why I decided to share my thoughts about it.

VMUG – What is?

As you probably know VMUG stands for VMware User Group. Basically, you will find an international community of people where they share their experiences and discuss things related to VMware and other technologies.

At your local VMUG, you will find VMUG members that you can meet online or in person, sponsors. There you can find many passionate people about VMware and connect with them, so I highly recommend to attend to the VMUG events as it is a great experience to learn concepts or technologies and connect with a lot of people.

There are many communities around the world if you want to find your local VMUG go and register at https://www.vmug.com/

VMUG – Why attend?

Because you won’t regret it!

I didn’t imagine that the environment and people were so good, everyone is passioned about technology, mainly VMware things, and you can hear their stories and share experiences that both probably lived in your life.

Hence, it doesn’t matter if you’re presenting or attending your local VMUG, the thing is to go there, meet people and learn about the sessions! You will find that a lot of people share some passion for VMware and technology so, don’t be shy to say hello and try to meet them.

Presenting at a local VMUG

I’ve been involved in this local VMUG for a year approximately but, I never had the chance to attend any event. Since VMworld I didn’t hear anything about a new event so, I spoke with the VMUG forum about when would be a new event and finally, it ended with myself presenting my session.

In my case, I presented a session (in Spanish) about Clones in vSphere (I’ll do a post about presenting in the near future) on March, 15th.

You didn’t expect something like my case, I was lucky to present at my first time in this event but, usually, it’s better to go there and meet the people before presenting and not in the other way.

Final thoughts

I am glad that I finally was able to attend and meet a lot of VMUG members, you can learn a lot from people through their sessions and also make connections that will be valuable in the future.

I would highly recommend attending and experience the passion of VMUG members and the knowledge that you can gather from them.

Also, I would like to acknowledge the VMUG leaders from the BCN VMUG for letting me present and the sponsors that make it possible.

Continuing with the cloning virtual machines in vSphere series, today I am going to write about the full clone, how it works and some useful information about it.

So, let’s talk about clones… but just full clones.

How does it work?

As you probably know a full clone is an exact copy of a source VM, meaning that, everything from the parent VM is copied (VM settings, disks, files, etc.).

This action can be performed if the parent VM is powered off or powered on and, if it has snapshots it will consolidate them once the clone is done.

When you clone a VM be aware that, all data will be identical so, if you power on the clone without performing any customization, probably you will have conflicts with IPs, MAC addresses, SIDs (Windows), etc.

The great thing about a full clone is that, after the cloning operations are performed the clone will be an independent copy of a virtual machine that doesn’t share anything with the parent virtual machine (we are talking about from a compute and storage perspective within vSphere).

Ways to do it

First of all, you will need VMware vCenter to do it.

There are other ways (not official) like copying all data related to the virtual machine (.vmdk and .vmx files) and then register the “new” VM with another name.

Let’s continue with the usual ways:

vSphere Web Client

You can do it through vSphere Web Client, as simple as, right-click a VM -> “Clone to Virtual Machine…” :

Once it finishes, it takes some time (depends on the storage that the source VM has allocated) but in the end, you will have your new clone.

Likely you are more familiar about deploying templates…

Deploying a template is the same as cloning but. aside from copying the same data from the parent virtual machine, vSphere lets you customize the deployed VM for creating many clones and with different configurations as you wish.

PowerCLI

Of course, you can do it with PowerCLI. These are the minimal parameters needed to perform it (Disk Storage Format parameter is optional but recommended because, by default, it will convert all disks to Thick Provision Eager Zeroed):

In the previous screenshot, you can see the minimum parameters required to perform a full clone, if you want to see more options you can check it here.

As you can see in the code, it’s similar to deploying a template, isn’t it?

Use cases

The main use case is deploying from a template, maybe we are not aware but, deploying from a template is just cloning our source VM (Master template) and then customizing it.

I saw many customers use it as a “rollback” when they have to perform a destructive task within the Guest OS. In this way, just shutting down the parent VM and powering on the clone.

If you think a snapshot can do the same as a clone well, not always… some applications don’t handle well doing a quiesced snapshot.

This is why, as a solution, you can create a full clone when the virtual machine is powered off and then, have a copy that will be consistent and without corruption.

Another use case could be to perform a full clone to use it in other environments. Although there are better ways to do this (with other products), when the Guest OS has many customizations, this can be an alternative solution of re-creating the entire virtual machine.

Benefits and limitations

The benefits of a full clone were mentioned before:

If the cloning operation is executed when the source VM is powered off, it can be used as a rollback in many cases (there are better options like a VM backup but, it can help a lot).

Creation of an independent VM that shares nothing with the source VM.

Used in templates, so, they are very useful!

These are some limitations instead of disadvantages that we can find:

It takes some time to create a full clone (it depends on the allocated storage) as it has to copy all storage from the source VM.

It can only be performed with VMware vCenter (there are other ways as I explained before but they are not official).

If done when the VM is powered on, it has an impact on the source VM that can be noticed by the business so, isn’t the best option to do it while the virtual machine is in running.

Conclusion

To sum up, a full clone is a great way to have an identical copy of another VM to use it as a permanent virtual machine once you configure it accordingly.

As said before, is the same as deploying a template because you are just cloning a VM (deploying a template) and then customizing it.

It usually takes some minutes to finish the clone (depending on the storage allocated in the parent VM), this is why there are other ways to deploy clones in a faster way (on the next posts!).

Most of you already know how to clone virtual machines within vSphere, and I mean cloning from the vSphere Web client within vCenter but, beyond that, there are other types of clones you can use in vCenter like, Linked Clones or Instant Clones (aka Project Fargo/VMfork)

Due to the large content that can be discussed about each clone’s type, I decided to make a short series of posts talking about cloning VMs!

Types of clone

Here I will summarize each type of clone that exists in vSphere, some of them are used in different products or interfaces but in the end, all of them are accessible through PowerCLI.

Full clone

This is the “classic” clone you can perform in vSphere Web Client no matter which is the VM’s status (powered on or off), that you can perform a copy of the VM.

If you want to perform a consistent clone, it’s recommended that you power off the VM and then perform the clone.

This is an independent copy and has no dependency from the parent virtual machine after the clone is complete (meaning that you can remove the parent VM if you need it).

The main advantage is that you can have a reliable copy of the Parent VM (remember this is not a backup) if you want to replace it. As this is a full copy of the VM (it will copy the entire disk), this might take several minutes depending on the size of the VM.

After you perform it, remember that everything will be the same then, all configuration (SID, network configuration, hostname, etc.) within the VM will be identical hance, it can lead to problems if both VMs co-exist at the same time without the proper configuration.

Full clone

Linked clone

Is a clone made from a snapshot of the Parent VM. This means that both VMs (the Linked clone and the parent VM) have in common virtual disks.

So, the linked clone is dependent on the parent VM, meaning that the linked clone needs access to the parent VM. The clone must be done while the Parent VM is powered off (as a best practice).

Once a linked clone is performed, changes on the parent VM doesn’t affect the linked clone and in the other way, changes in the linked clone don’t affect the original VM. Mainly the benefits of using linked clones are:

Saving disk space because only the differences between the origin snapshot and the linked clone are allocated and the fast.

Quickly deploy tens or hundreds of VMs in a fast way as it doesn’t need to copy the entire disk.

This is a technology commonly used in VMware Horizon View to provide desktop deployment (rapidly deploy a lot of VMs). The thing is that we can also use it with PowerCLI without having Horizon View and use it for more use cases.

Linked clone

Instant clone

Similar to the linked clone, Instant Clone is like an improved version of linked clone technology. This is something “new” in vSphere 6.7 as is available through the API.

Like the linked clone technology, there is a parent VM which will share the disk with the clone (Instant clone) but, in this case, it will share the memory too (even if TPS is disabled).

There are two types of Instant Clones that I will explain in more detail in the next posts but, as a summary, you can do an instant clone from a source VM from a point in time and deliver many VMs (instant clones) as you want.

The Parent VM must be powered-on instead of powered off like other types of clones, in this way, it can provide even a faster way to deploy VMs because it will not require to power-cycle the Instant Clones.

As benefits, we will have the same as in Linked Clones technology plus memory efficiency (because it shares memory between VMs) and the ability to resume the VM in a point of time without power cycling the clone.

In the other hand, depending on which type of instant clone you can run with a lot of delta disks.

Instant clone

So…

I tried to summarize each clone’s type that we can perform within vSphere and if you want to read more, stay tuned to go in more detail in the coming series of posts related to cloning VMs within vSphere.

To finish these posts about VMworld 2018 Europe, I am going to summarize day 3 and day 4 together as day 4 is usually the less busy of all of them (people usually leave in the morning).

On day 3 (Wednesday), I rest like 5-6 hours (pretty normal to me) after spending some part of the night at the Veeam Party. I made it to be at the enclosure at 8:30 AM because at 9:00 it will start the second general session.

I grabbed some coffee and go to the correspondent Hall, the same as the day before.

2nd General Session

For me it was a weaker session than on the previous day but, I was great.

In the previous post, I forgot to mention the VMware ESXi on a Raspberry PI as a prototype, that Pat and Ray showed us, really cool.

vCommunity, vStreetfighter and more

I must say that I had like 4 sessions scheduled on Wednesday and I only went to a couple of those. The most of the time I was hanging with people from the vCommunity and playing also I played some Street Fighter V in the gaming area. We have a group for that, check out #vstreetfighter for some tweets on Twitter and join us!

First, let me show us a couple of fights that I had against Bilal Ahmed (I lost and I don’t how yet…). You can check here that Gregg Robertson offered a challenge against me at the gaming area.

So I was Ryu he was ken . I beat him 3 times in a row…..then we played alpha2 and I was akuma and he whooooppped my ass 🤣 I do admit there was some luck and button bashing on my part lol pic.twitter.com/XqDEBy5icI

I can’t be happier to be able to meet these persons and more that I didn’t mention or couldn’t take a photo. When you are there, the time passes by quick and because of this, I didn’t go to some sessions (I knew that I could watch them later at home).

I enjoyed having dinner with Chris a couple of times, hanging a lot in the Solutions Exchange area or with Jorge de la Cruz to everywhere.

I thought about making a huge post about the VCAP6-DCV experience (resources, notes, etc.) but, I don’t want to overwhelm you know. Hence, I am going to make another post for that, hence this post will be shorter and more readable.

1st attempt (Java error at the beginning)

At September, 21st I sat down to take my first attempt in a VCAP exam. I was confident because I was studying the previous 10 weeks approximately and I covered all the objectives.

Well, my exam was scheduled at 10:00 AM, I sat down and my exam starts. The interface is exactly the same as the HOLs, so, if you familiarized with it, you will gain a lot of time!

The lab was deploying and the manual on the right side showed some information but as soon as the lab finishes to deploy…bum!

I contacted the TA and she told me that my exam was finished, and I was like “What? In 2 minutes?”. After spending some hours with Pearson VUE, the TA (Test Administrator) opened a case with Pearson VUE and I left the Test Center.

I left with a feeling that this test center has serious issues, the TA didn’t know how to speak in English (I was taking it in Barcelona, Spain) and finally, I ended talking my self with Pearson VUE and explaining the problem. They couldn’t do anything as my exam was finished (it wasn’t my fault obviously)

A week later I received a voucher code for my crashed exam.

2nd attempt (Manual stuck in loading)

This second attempt was scheduled at October, 5th. I rescheduled in another Test Center as I didn’t trust the TA for that Test Center.

The problem you face with the VCAP exams is that they are delivered in fewer Test Centers, therefore, there are less available spots to take it. I found another Test Center here in Barcelona, so I scheduled there even I didn’t know that one.

Well, my exam started at 10:00 am, the server’s console loaded correctly after the lab was deployed (nice!) but, the manual didn’t appear, there was only a grey window without content.

After waiting for 5 minutes, I spoke with the TA, and he told me to wait another 5 minutes. So, as expected, the manual was stuck loading and even trying to stop and start the exam didn’t fix the problem.

Hence, the TA contacts Pearson VUE and Pearson VUE fixed the problem this time! But what happened with all the time I lost in my exam? Well, the TA told me Pearson VUE would contact with VMware and the time will be added meanwhile I am taking it.

At that time, the exam started again but I had a weird feeling about.

In the exam, I finished writing down each question number and a brief description on the erasable board, in this manner, I could check quickly which questions I can take first and cross out which I have done.

It was curious that at times, backspace and shift keys worked in Putty. Also, occasionally, during 5-10 minutes I experienced quite delay with the Web Client. I continued with the exam, contacted with the TA about the time but no response from Pearson VUE and time were running out…

The time isn’t going to be added, hence, I had to left like 4 or 5 empty questions because I didn’t have more time (I lost 30 minutes) and the exam finalizes automatically. I felt bad because of the 30 mins. would be nice to try other questions.

After that, I spoke with the TA and he opened a case with Pearson VUE about the time lost. One hour later, I received my score report, 278/500 (almost got it!).

After a few days, Pearson VUE reviewed my case and, as I was close to passing the exam (remember that you need 300/500), I suppose they decided to give me another voucher code, so I felt good about the free re-schedule but bad for the score and the time lost.

3rd attempt (Redeployed lab and final attempt)

Well, this is really a lie, because I “took” 2 exams in a row. Let me explain…

On October, 16th, my exam was scheduled at 10:00 AM, I studied a bit the previous night just to remember some things. My last attempt was 11 days ago and I was focused on other things so, it’s always good to brush up some concepts.

Well, the exam started and the lab was deploying itself… then, it appeared a notification like “Query not found”. This time the manual loaded correctly, but the pop-up appeared all the time, appearing and disappearing, and the console didn’t load as the error appears instead.

Therefore, the TA (Test Administrator) contacted Pearson VUE and for my surprise, Pearson VUE this time could contact VMware quite fast. The TA told me that VMware was going to redeploy another lab (Now my time wasn’t wasted at all!) and I could try in 30 minutes.

Finally, I tried again and it worked correctly, the manual and console loaded correctly so, I took the exam. The connection seemed a bit better so I can’t complain about. Also, the backspace and shift keys worked as in my previous exam, therefore, I took advantage of it.

Now, I tried to answer all questions (I left 1 answer empty because I didn’t want to lose more time) and I finished my exam (well the lab finished and it closes automatically) with a good feeling.

In 1 hour approximately I received the email and…a PASS! Couldn’t be happier! Finally, a full exam without issues made me pass the exam!

Conclusion

I can do a recap of what I learned about my experience with that exam and all the issues I experienced:

If you have any problem, contact your TA, don’t waste time to wait for the manual or console to load.

Test if backspace and shift keys work! I was concerned that these keys were blocked but I was able to use it and avoid the On-Screen keyboard, maybe it can work for you.

Manage your time, manage your time. Everything you will read about this exam (or new ones) is about managing your time and I couldn’t agree more.

Use the erasable board! I used to write down each question number and a brief description, it helped me to know if I was running out of time and focus in the “easy” questions.

Be aware of the dates, it was like a month ago since I scheduled the first attempt, so, if you are going to take it because your certification is expiring, be sure to schedule it in advance.

I am not going sugar coat the fact that I was happy with the exam’s delivery because I suffered many issues…but, finally, with some patience it was paid-off.

I hope this can be helpful for someone and I will write another post about the resources and how I prepared my self about this exam.

Some time ago, I was doing some clean up on VMs that have attached an image file, when I found a particular VM with an strange behavior, each disk from the VM (local and RDM disks) was showing 0 MB of disk size:

So, what I did?

First of all, I checked the guest OS and verified that it was up and running. So I was wondering how the guest OS seems correct but vSphere Web Client (I refreshed several times the browser) was showing no space in all disks and I verified in the Datastores that the .vmdk files were there.

Investigation

I found in the Events tab for this VM, an error about a snapshot a few weeks ago that it wasn’t successfully created (from the 3rd party Software), so, maybe this problem is related to the snapshots?

I verified the .vmx file configuration and check that was correct, also reviewing each descriptor file (vmdk), they were pointing to the disk data (vmdk-flat) that really exists in the datastore, so it couldn’t be a problem related to snapshots.

Anyway, I logged out and logged in just to verify that it wasn’t a problem of the vSphere Web client but it showed the same (no luck), all disks (LUNs and disks) attached to that VM showed 0 MB .

Conclusion

Well, it’s an easy solution, if you power-off the VM, unregister and register the VM in the vCenter then… it works! The VM appeared as usual (showing the allocated space for each disk).

Hence, which was the error? I can’t assure which was the error but maybe something happened to the .vmx file and unregistering and registering the VM again “repaired” the VM configuration file.

A quick post talking about a new external PSC in vSphere 6.0 environments.

As you may now the vCenter product is composed by the PSC (Platform Services Controller) and the vCenter component.

Services provided by each component:

Platform Services Controller

vCenter

vCenter Single Sign-On

PostgreSQL or SQL Express (in 6.0 version)

VMware Certificate Authority

vSphere Web Client

vSphere License Service

vSphere Client

vSphere ESXi Dump Collector

vSphere Syslog Collector

vSphere Auto Deploy

vSphere Update Manager

Let’s go to the point. I am going to repoint a vCenter with an embedded PSC (a vCSA called “pokecenter”) to an external PSC I created in a Windows server called “digicenter” (I know is kinda original). Digicenter is already joined to the same SSO domain as pokecenter.

Note: If you have any problem when adding an external PSC to an existing SSO domain, check cmsso-util unregister command in the vCSA appliance. In my case, I had to re-install it three times and in the last one, I used the command.

So…

If found some problems when repointing to the external PSC, make sure the time on both servers is the same (check NTP server), also DNS resolution of the external PSC. Give some time for the vSphere Client to initialize after the repointment.

Finally, be patient, I found some errors (SSO errors about the external PSC) when login to the vSphere Web Client but, after waiting about 10 minutes finally it initialized up successfully.

Today let’s talk about vSphere Network I/O Control (NIOC) version 3 (vSphere 6.0), it’s a feature in the vSphere Distributed Switch that allows you to control granularly the output/egress bandwidth from a VM network adapter level. Besides there are other useful options within NIOC capabilities, today, I will focus only in the network adapter bandwidth limit for VMs.

Prerequisites:

Enable the feature in the dvSwitch (in our case the one with Data Network):Scenario:

2 VMs within 2 Networks (Portgroups in dvSwitch)

KenshiroVM is a VM with Ubuntu that simulates traffic with iperf as a client.

Objective:

We will look in how Network I/O control (NIOC) let us limit the bandwidth granularly from a Virtual Machine (KenshiroVM), so, we will limit the bandwidth for a single NIC and see if it really works.

Testing:

Lab time! I enabled NIOC in the dvSwitch that I have created for OS traffic (Data Network), dvSwitch is called “DSwitch_DataNW”. The other dvSwitch is “DSwitchMGMT” and NIOC is not enabled (no NIOC = no restrictions).

As I said before we have 2 networks:

Data Network: 10.10.6.0/24

Management Network: 192.168.1.0/24

Main steps:

1. Verify that the client (KenshiroVM) has no restrictions within the network.

2. Then, we will limit the Data Network adapter from KenshiroVM, launch iperf to simulate traffic and review the limitation configured.

3. Finally we will test iperf again but in the Management Network and review that we have no restrictions.

1.Currently, KenshiroVM has no restrictions configured (notice that in the blue rectangle there are no options for NIOC because that portgroup (Management) it’s located in another dvSwitch where we didn’t enable NIOC):

If we launch iperf command with 200Mbps on port 9999 from KenshiroVM:

We can see the traffic on the destination (Win10Pro) on the Data Network Adapter (you can see the subnet in the screenshot):

Also, we can review it in vSphere Web Client (25 MBps = 200 Mbps):

2. Now we are going to set a limit on KenshiroVM Data Network adapter to 88 Mbits:

Now, we perform the same command with iperf on the client (KenshiroVM):

Even pushing 200 Mbits through the Data Netowork Adapter using iperf, NIOC will limit the traffic to 88 Mbits as set before. Here is the traffic seen by Win10Pro Data Network adapter:

In KenshiroVM, iperf performed the transfer in 88 Mbps approximately:

3. Now, if we do the same experiment (150 Mbps) but in the adapter where NIOC is not enabled:

KenshiroVM confirmed that it performed at 150 Mbps approximately:

Conclusion

As a result of using vSphere NIOC, we can granularly set limits in the bandwidth in a VM network adapter and it will obey the settings configured. It only works for outbound traffic, if you set a limit in a destination VM adapter, then, NIOC will not make any restrictions regarding the inbound traffic.