Powershell Cmdlets for Managing VMWare Photon Platform 1.2.1

VMware announced End of Availability (EOA) of Photon Platform on 6th October 2017 with the PKS Service due to launch soon. This is a product I started looking at in June for developing a strategy for offering Kubernetes-as-a-Service delivery to multi-tenant customers and if this was viable to develop into a Service Provider offering. I was not happy with the management tools available but there was a lot of potential for this to be a good fit.

I figured the best way to understand the product was to add some value by developing some PowerShell cmdlets from the REST API to manage the platform which quickly turned into a major exercise in-itself. The scope quickly got away from me part time developing this after work and other projects. With the product going end of life I have decided to publish what I have as-is (very incomplete, partial testing, needs work) as a code sample as if anyone is using Photon Platform at the moment this may be useful or at least of some benefit :) This was really useful for me to get better at coding against REST based API using swagger and some reverse engineering so although this was not how I wanted this project to end it has been valuable and I hope it is to someone else :)

There is a bunch of functions to explore (Get-Command -Module Module-Vmware-PhotonPlatform and Get-Help cmdlet) which should be documented (mostly) I have made an effort but beware the code quality :)

Available on Github here.

Basic functionality that generally has been tested/works is;

  • Host Management
  • Availability Zone Management
  • Cloud Image Management
  • Subnet Management
  • Quota Management
  • Tenant/Project Management