Introducing PowerVCF

I am very excited to introduce to you PowerVCF a brand new PowerShell module to interact with SDDC Manager and the VCF stack.

Now I must immediately say I’m not the author rather an active contributor to the project, available currently on GitHub at https://github.com/PowerVCF/PowerVCF and for installation at PS Gallery.

The background story

A bit of a funny story: I did start working on my own version of PowerVCF many months ago but had little time to make actual progress. Time was approaching end of Nov 2019 and it just so happened I was chatting to Ben Sier and I mentioned I was working on new module I wanted to call PowerVCF to which his reply was “PowerVCF already exists”. Needless to say the following was my reaction (ok I didn’t really turned indigo)

Turns out Brian O’Connell from the VMware HCI BU had the same idea and was ahead of me in the development so long story short I aborted my local draft and joined his project as contributor. Other contributors are Gary Blake (again VMware HCI BU) as well as Brandon Willmott

Reach out if you want to help us!

PLEASE NOTE: all people working on PowerVCF are doing it during their spare time; we all have our daily job on top of which we’re developing this so let’s clarify something:
PowerVCF is not officially supported by VMware.

In case you didn’t know…

Beginning with VCF 3.8 the APIs have been exposed and are publicly consumable. From within SDDC Manager there is a nicely built-in API explorer, same as the one available from vCenter Server

The API documentation is also accessible publicly at https://code.vmware.com/apis/685/vmware-cloud-foundation

PowerVCF documentation is automatically generated leveraging ReadTheDocs and is available at https://powervcf.readthedocs.io
There you can find cookbooks that explains how to achieve a particular task and all the required steps (in cmdlets) to script it, as well as each function documentation.

So what do we (currently) have?

There are around 50 cmdlets covering ~70% of the APIs available with VCF 3.9.0

Although I do work for Dell EMC and am heavily involved with VCF on VxRail I only have a nested VCF environment in my lab (see Building a nested VCF lab using VLC) so no VxRail systems have been harmed during the code development 🙂 That said, since VCF on VxRail has VxRail Manager and many operations (cluster/hosts) are handed over from SDDC Manager to VxRail Manager, we could not properly test PowerVCF on VCF on VxRail, some cmdlets might work others won’t – testing is required so you have been warned!

Goes without saying if you find problems please open a PR on GitHub and we’ll try to get it fixed as soon possible, but please bear in mind we do have our daily job so it won’t get done the next business day.

Resources

Brian PowerVCF blog
https://lifeofbrianoc.com/2020/01/14/introducing-powervcf-a-powershell-module-for-the-vmware-cloud-foundation-api/

Gary PowerVCF blog
https://my-cloudy-world.com/2020/01/14/introducing-powervcf/

Brandon PowerVCF blog
https://brandonwillmott.com/2020/01/13/automating-vmware-cloud-foundation-with-powervcf/

GitHub project https://github.com/PowerVCF/PowerVCF

Documentation https://powervcf.readthedocs.io/

Be sociable, share!Tweet about this on Twitter
Twitter
Share on LinkedIn
Linkedin
Share on Facebook
Facebook
Email this to someone
email

2 Comments

 Add your comment
  1. Hi Giuliano,

    Great to find your blog. Full disclosure I am also an employee of a company in the family. Regarding PowerVCF with VxRail, the post Workload Domain actions such as vRealize deploy, get tasks, licensing, etc do work as these are VCF core actions.

    However VxRail still remains a manual stand up at this time as no public APIs are available for VxRail standup or VxRail workload domain management.

    It’s a great tool I’ve been using quite a bit making initial deploys much faster.

Leave a Comment

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.

1 Trackback

  1. Technology Short Take 123 - s0x (Pingback)