Platform Service Controller Replication

Platform Service Controller replication can be setup in multiple ways, when I ran through a test configuration of 4 sites, each with a single PSC. I was wondering how replication would be automatically configured out of the box. When I installed the PSCs I used the previously configured PSC to configure the newly built PSC:

PSC1 (Built First) <—- PSC2 (built second) <—- PSC3 (built third) <—- PSC4 (built fourth)

The following commands allowed me to view the replication configuration and then setup a topology of my choice:

vdcrepadmin -f showservers -h FQDN_of_Local_PSC -u administrator -w password

This command will display all Platform Service Controllers in the vSphere Domain, You should see output similar to:

cn=psc1.vcrooky.local,cn=Servers,cn=home,cn=Sites,cn=Configuration,dc=vsphere,dc=local

cn=psc2.vcrooky.local,cn=Servers,cn=home,cn=Sites,cn=Configuration,dc=vsphere,dc=local

cn=psc3.vcrooky.local,cn=Servers,cn=East,cn=Sites,cn=Configuration,dc=vsphere,dc=local

cn=psc4.vcrooky.local,cn=Servers,cn=East,cn=Sites,cn=Configuration,dc=vsphere,dc=local

Next command uses the showpartners switch:

vdcrepadmin -f showpartners -h FQDN_of_Local_PSC -u administrator -w Password

This command displays the partnerships from the local PSC you run the command, I ran this on each of my four PSCs and got the output below:

vdcrepadmin -f showpartners -h psc1.vcrooky.local -u administrator -w MyPassword

ldap://psc2. vcrooky.local

vdcrepadmin -f showpartners -h psc2.vcrooky.local -u administrator -w MyPassword

ldap://psc1. vcrooky.local
ldaps://psc3. vcrooky.local

vdcrepadmin -f showpartners -h psc3.vcrooky.local -u administrator -w MyPassword

ldap://psc4. vcrooky.local
ldaps://psc2. vcrooky.local

vdcrepadmin -f showpartners -h psc4.vcrooky.local -u administrator -w MyPassword

ldap://psc3. vcrooky.local

This shows that replication is Linear/Cascade and not a Mesh Topology.

Next command is the showpartnerstatus switch:

vdcrepadmin -f showpartnerstatus -h FQDN_of_Local_PSC -u administrator -w Password

This one displays the current replication status of a PSC and any of the replication partners of the PSC. The output from this looks like:

Partner: psc2.vcrooky.local Host available: Yes Status available: Yes My last change number: 9502 Partner has seen my change number: 9502 Partner is 0 changes behind.

Partner: psc3.vcrooky.local Host available: Yes Status available: Yes My last change number: 7902 Partner has seen my change number: 7902 Partner is 0 changes behind.

Partner: psc4.vcrooky.local Host available: Yes Status available: Yes My last change number: 7125 Partner has seen my change number: 7125 Partner is 0 changes behind.

Last two are the commands used to create or remove replication agreements:

vdcrepadmin -f createagreement -h FQDN_of_Source_PSC -u administrator -w Password -H FQDN_of_Target_PSC

vdcrepadmin -f removeagreement -h FQDN_of_Source_PSC -u administrator -w Password -H FQDN_of_Target_PSC

These two allow for creation and removal of additional replication agreements between PSCs within a vSphere domain.

To run the commands on a Windows server, start the command prompt and navigate to “E:\Program Files\VMware\vCenter Server\vmdird” then the commands as above.

Using the showpartnerstatus CLI, you can monitor the current replication status across your environment.

After modifying objects within the PSC, either via creation, deletion or actual modification, these changes are replicated to the PSCs after 30 seconds. When multiple PSCs are daisy chained together (linear/cascade), this can result in a wave-replication in which PSCs in the chain will request an update, implement the update, and then its partner node will perform the same, eventually converge on the same replica data across the vSphere domain.

The problem with this topology is the impact of losing a single PSC. In this instance Platform Service Controller Replication would stop. This is the reason why I manually configured my Platform Service Controllers in a Mesh Topology.

2 comments

  1. Hi James,

    There seems to be some contradicting advice from VMware regarding PSC replication topology.

    The vSphere 6.0 Documentation Center says;
    Repeat Step 2 and Step 3 to verify that you configured a ring partnership topology of the external Platform Services Controller instances.

    This KB article Determining replication agreements and status with the Platform Services Controller 6.0 (2127057) | VMware KB says;
    Repeat this operation for additional PSCs until you have created an entire mesh topology.
    After completion, repeat Step 5 to confirm that you have generated a mesh topology.

    I reached out to Adam Eckerle (Sr product manager for vCenter) and Emad Younis to get their views on this and they agreed that ring is the recommended topology.

    Also recommended in this presentation;
    http://vmware.mediasite.com/mediasite/Play/2417db244c0043f2bee7410d1b3479421d?catalog=dbf1ec28-2557-4dd3-a381-e5fe4ceabc40

    Cheers,
    Jon

    1. Hey Jon,

      I’ve had many discussions (nearly arguments) about this, but I have to say I agree that the ring topology is definitely a much better option.

      The VMWorld session is the best explanation I’ve seem of what we should be doing and more importantly why we should be doing it, thanks for the link!

Leave a Reply

Your email address will not be published. Required fields are marked *