I've been playing around with port binding this week. I will save ephemeral port binding for it's own post, as there is a lot more to it. I'll also save port binding on the ESXi host until a later post, and focus on vCenter port binding.
Static Port binding is the default. With static port binding a vnic is assigned a port with that vnic is placed in to the portgroup. As long as the vnic is in the portgroup, it is consuming a port, regardless of whether it is turned on. By default static portgroups are configured to be elastic so more ports can be added when you run out. If they are fixed rather than elastic, when you try to add a vnic that exceeds the number of available ports, you will get an error message.
Dynamic port binding functions more like a standard switch. It has been deprecated in favor of static port binding with elastic growth. With dynamic port binding, a vnic is not assigned a port until the virtual machine is powered on. That binding is maintained until the VM shuts down, at that point, the port becomes available again. The vnic will have a preference for getting the same port when it's powered on, and other vnics will not use that port if they have another option, so it's sort of a "soft" static port binding. The difference between the two does not become apparent until you use up all of your available ports. First off, dynamic ports are not elastic, so the number of ports does not grow. Secondly, as dynamic binding will allow you to assign more vnics to a portgroup than there are ports. This means that if you consume all your available ports, and power on a VM, it will not get a port, and you will not get a warning. The only way you will know this occured is that the VM does not communicate, and the connected box under edit settings is unchecked.
If all of the available ports have been used at least once, but some are available due to powered off VMs, then the vnic will get the next available port and "bump off" the vnic that was there before. When the old vnic tried to connect in the future, it will look for a new port, and not have a preference for the old one, even if it is available.
The biggest reason that staying on the same port matters is gathering port level statistics. With static binding, vDS port statistics persist across vMotions, reboots, and any other action that does not change portgroups.
No comments:
Post a Comment