A vPC is configured on a Cisco Nexus switch and allows Layer 2 port-channels from a downstream device to span two separate switches.

vPC consists of two vPC peer switches connected by a vPC peer link. One switch is primary and the other is secondary. A vPC domain is formed by both Nexus switches. A Nexus can only be part of one vPC domain and only two switches can make up a vPC domain.

vPC peer link creates a single control plane which forwards BPDUs or LACP packets from the primary vPC switch to the secondary vPC switch. A vPC peer link is formed into a port-channel which can be a maximum of 16 ports but at a minimum it should be 2 ports. The peer link synchronizes MAC addresses and STP BPDUs.

In addition to the vPC peer link, there is a peer keepalive link which monitors the vPC peer switch. A keepalive link can be configured using the management interface or through an SVI. There is no data sent over this link. It’s sole purpose is for vPC keepalives.

A vPC port is a port assigned to a vPC channel group. Ports part of the vPC are split between the vPC peers.

Components of a vPC

One primary switch and one secondary switch (vPC peers)

Layer 3 link for peer-keepalives (resolves dual-active scenarios)

Redundant port channel for a peer link between vPC peers.

vPC port members forming a the virtual Port Channel.

Configuration

Connect each switch together to create a vPC peer link. You need two 10 GbE interfaces.

Connect the management interfaces to each switch to form the vPC keepalive link. You lose out on using the management interface. In my scenario, these two Nexus switches will be racked together.

switch1#show vpc ?
1-4096 Enter a Virtual Port Channel number
> Redirect it to a file
>> Redirect it to a file in append mode
brief Brief display of vPC status
consistency-parameters Show vPC Consistency Parameters
orphan-ports Show ports that are not part of vPC but have common VLANs
peer-keepalive VPC keepalive status
role VPC role status
statistics Statistics
| Pipe command output to filter

To get a summary of the vPC configuration use show vpc brief. Take note of the vPC domain ID that is used, status of vPC, what role the current switch is in, peer-link status, and more.

The above is a brief description of Cisco vPC on Nexus switches and a general configuration of vPC between two peer switches. I tested this configuration on two Nexus 3524s with a downstream Catalyst 2960X stack. The 2960X stack had two 10GbE uplinks, one to each Nexus.

When one of the Nexus switches loses its uplink, connectivity was maintained through the other Nexus through the vPC peer link.

If one Nexus was to fail completely, the secondary Nexus would change its role to primary for the vPC domain.

I’m still learning a lot about vPC in my lab which includes more complex designs. If you’d like to provide any input or maybe if there’s an error in my text above, please let me know in the comments below.