• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar

virtuallyGhetto

  • About
  • Privacy
  • VMware Cloud
  • Home Lab
  • Nested Virtualization
  • Automation
    • VMware Kickstart
    • VMware API/SDK/CLI
    • VMware vMA/VIMA
    • VMware OVF / OVFTOOL
  • Apple Mac
  • VCSA
  • VSAN

powershell

Programmatically interact with the VMware Product Lifecycle Matrix

12/01/2020 by William Lam 1 Comment

I recently came across a really cool automation solution from Dale Coghlan who built a PowerShell module to interact with the VMware Configuration Maximum (Config Max) Tool.

So, I published a thing today.... VMware.CfgMax - A PowerShell module to interact with https://t.co/NBrbCO3hcf https://t.co/RRQkh7ma1q

— Dale Coghlan (@DaleCoghlan) December 1, 2020

Although the Config Max tool does not currently provide an API, there is still a way to interact with it programmatically. Behind the scenes, the application uses JSON for its payload which can then be retrieved programmatically using PowerShell or any other language for that matter to perform an HTTP GET. I also know the Config Max team quite well, as I had worked with them to incorporate the VMware Cloud on AWS configuration maximums which also required a few enhancements to the tool. If you have any feedback, feel free to drop a comment and I will be happy to share it with them and one of my first asks when I met the team, was to provide a public REST API 🙂

After sharing Dale's tweet, I saw a question about doing something similiar for the VMware's Product Lifecycle Matrix, which is a website that helps customers understand the support lifecycle of a given VMware product/solution. The product lifecycle site has also been recently revamped and although it also does not have a public API, using Chrome Developer Tools (super useful tool) to quickly inspect, it looks like you can also programmatically grab the payload which also happens to be using JSON 🙂

Disclaimer: The VMware Product Lifecycle Matrix does not provide a public API, this also means there are no guarantees or compatibility that the trick outlined below will continue to work going forward. This is why you want to have a public, documented and supported API.

[Read more...] about Programmatically interact with the VMware Product Lifecycle Matrix

Share this...
  • Twitter
  • Facebook
  • Linkedin
  • Reddit
  • Pinterest

Filed Under: Automation Tagged With: curl, powershell, product lifecycle matrix

Workspace One Access (vIDM) Powershell Module to automate creating 3rd Party Identity Provider

02/05/2020 by William Lam 1 Comment

One of the projects I am currently working on involves  Workspace One Access (formally VMware Identity Manager) and configuring a 3rd Party Identity Provider for Identity Federation. As with anything, using the UI for the first time to validate the workflow is perfectly fine for me but after that, I normally prefer to automate, especially as I was rebuilding this particular setup a few times. I saw that Workspace One Access (WSO Access) had a REST API but I was surprised that there were no APIs for actually managing the configurations.


I figured before giving up, I should see at least see how the UI was performing these operations as "some API" should exists and started up one of my favorite browser tools Chrome Developer Console to inspect the HTTP requests. I came to learn there were an additional set of "Jersey" APIs (no background on the Jersey name, but its part of the API URI) that might do exactly what I was looking for. After a bit of trial/error, I was able to fully automate the creation of both a WSO Access Directory as well as 3rd Party Identity Provider.

[Read more...] about Workspace One Access (vIDM) Powershell Module to automate creating 3rd Party Identity Provider

Share this...
  • Twitter
  • Facebook
  • Linkedin
  • Reddit
  • Pinterest

Filed Under: Automation, PowerCLI, VMware Cloud on AWS Tagged With: Identity Provider, powershell, PowerShellCore, VMware Identity Manager, Workspace One Access

PowerShell for PhotonOS on Raspberry Pi 3

01/25/2019 by William Lam 4 Comments

Did you know VMware PhotonOS can also run on a Raspberry Pi (rPI) 3? I definitely did not until recently when I found out the latest 3.0 version also had an image for the rPI. This is great for anyone who is already familiar with PhotonOS and wish to run it in an even smaller form factor such as an rPI. There are definitely some interesting use cases for an rPI such as a tiny management host, troubleshooting tool for consultants or even a quick PowerShell/PowerCLI host that contains some basic tools and scripts which you can quickly access.

I was definitely interested in getting PowerShell and PowerCLI running on top PhotonOS on the rPI. Although you can already run PowerShell on an rPI using the Raspbian OS, the current distribution from Microsoft is actually only 32-Bit, which is a problem for PhotonOS as it is a 64-Bit OS. I was about to give up but while browsing the Microsoft PowerShell repo, I came across their upcoming PowerShell 6.2.0 (Preview) release which now looks to include a 64-Bit ARM build, which is exactly what I needed. For PowerCLI, although I was able to get the modules loaded, I was not able to connect to a vCenter Server or ESXi endpoint, you can find more details at the bottom of this post.

Below are the instructions for installing PhotonOS on the rPI and getting PowerShell setup:

Step 1 - Download and install the Etcher tool which will be used to flash our rPI

Step 2 - Download and install PhotonOS 3.0 RC rPI image using Etcher


Once PhotonOS has been installed, you can login (default credentials are root/changeme) and we now have PhotonOS running on our rPI!


Next we will install PowerShell as well as the latest PowerCLI modules.
[Read more...] about PowerShell for PhotonOS on Raspberry Pi 3

Share this...
  • Twitter
  • Facebook
  • Linkedin
  • Reddit
  • Pinterest

Filed Under: Automation, Home Lab, PowerCLI Tagged With: Photon, PowerCLI, powershell, Raspberry Pi

How to retrieve the CSP Refresh Token expiry using the CSP API

01/11/2019 by William Lam Leave a Comment

I recently had question from a customer who wanted to automate the retrieval of the expiry for a given Cloud Services Platform (CSP) Refresh Token so that they could monitor it programmatically and setup notifications before the token expires. The CSP Refresh Token is required to interact with solutions within CSP including VMware Cloud on AWS (VMC).

Customers can check the current Refresh Token expiry along with the initiate create and last used time by navigating to "My Account" in the CSP UI and under "API Tokens" as shown in the screenshot below.


To retrieve this programmatically using the CSP REST API, you will need to provide a valid Refresh Token and then perform a POST am/api/auth/api-tokens/details

[Read more...] about How to retrieve the CSP Refresh Token expiry using the CSP API

Share this...
  • Twitter
  • Facebook
  • Linkedin
  • Reddit
  • Pinterest

Filed Under: Automation, VMware Cloud on AWS Tagged With: Cloud Services Platform, CSP, PowerCLI, powershell

Managing Distributed Firewall Rules in VMC using PowerShell & NSX-T Policy API

01/04/2019 by William Lam Leave a Comment

Back in November 2018, VMware Cloud on AWS (VMC) SDDC 1.5 Patch 1 was released and it was one of the most highly anticipated release by our customers. Although this was a "patch" release, it included a ton of new features and also brought the full power of the NSX-T platform to VMC as a generally available feature!

With NSX-T, customers also now have access to the highly requested Distributed Firewall (DFW) capability which enables granular control over East-West traffic between application workloads. In addition to enabling micro-segmentation in VMC, customers can now easily manage DFW rules using a number of grouping constructs (Tags, Virtual Machines & Conditional Statements) to create dynamic policies which follow their workloads.


Customers can configure DFW (as well as Edge Firewall) rules using the VMC Console UI but many of you have been asking for an automated method, especially if you need to create a large number of policies for more than a couple of workloads. After returning from the holiday, I spent the last couple of days updating my NSX-T Policy PowerShell Module which now includes basic support for managing DFW. For those of you who are new to using the NSX-T Policy API and PowerCLI, be sure to give these two articles a read here and here before proceeding further.

[Read more...] about Managing Distributed Firewall Rules in VMC using PowerShell & NSX-T Policy API

Share this...
  • Twitter
  • Facebook
  • Linkedin
  • Reddit
  • Pinterest

Filed Under: Automation, NSX, PowerCLI, VMware Cloud on AWS Tagged With: DFW, Distributed Firewall Rule, NSX-T, PowerCLI, powershell, PowerShellCore, VMware Cloud on AWS

VMware Fusion Powershell community module

10/05/2017 by William Lam 1 Comment

During the VMware Fusion 2017 Tech Preview, I was experimenting around with the new Fusion REST API and I had built a small prototype PowerShell Module as a way for me to learn how the API works. This allowed me to provide valuable feedback back to the Fusion Engineering team on improving the REST API UX. I was pleasantly happy to see that the majority of the feedback was indeed implemented for Fusion 10 which GA'ed a few weeks back.

Given the PowerShell module was pretty useful for my own use, I figure I would also publish it for others who might also be interested in Automating VM management using the new Fusion REST API, especially those with a PowerShell/PowerCLI background. Another nice thing about the module is that it can run across macOS/Linux via PowerShell Core or Windows using full blown PowerShell. I have been slowly tweaking the module to include the updated REST API changes and I am please to announce that the VMware.Hosted PowerShell Module which supports the new Fusion 10 REST API is now available!

The module includes the following 14 functions:

  • Connect-HostedServer
  • Disconnect-HostedServer
  • Get-HostedNetworks
  • Get-HostedVM
  • Get-HostedVMNic
  • Get-HostedVMSharedFolder
  • New-HostedVM
  • New-HostedVMSharedFolder
  • Remove-HostedVM
  • Remove-HostedVMSharedFolder
  • Resume-HostedVM
  • Start-HostedVM
  • Stop-HostedVM
  • Suspend-HostedVM


If you have ever used PowerCLI before, these functions should feel very familiar. We have basic Connect/Disconnect-HostedServer which will set an environmental variable called $DefaultHostedServer. This variable contains some basic information about the Fusion API endpoint as well as the base64 encoded credentials which are required when connecting to the new Fusion API. Below are a few examples using the new Fusion module, they are pretty basic and I have only implemented a sub-set of the Fusion REST API, so any community contributions are most welcome!

[Read more...] about VMware Fusion Powershell community module

Share this...
  • Twitter
  • Facebook
  • Linkedin
  • Reddit
  • Pinterest

Filed Under: Apple, Automation, Fusion, PowerCLI Tagged With: apple, fusion, powershell, PowerShellCore, REST API, vmrest

  • Go to page 1
  • Go to page 2
  • Go to page 3
  • Go to Next Page »

Primary Sidebar

Author

William Lam is a Senior Staff Solution Architect working in the VMware Cloud team within the Cloud Services Business Unit (CSBU) at VMware. He focuses on Automation, Integration and Operation for the VMware Cloud Software Defined Datacenters (SDDC)

  • Email
  • GitHub
  • LinkedIn
  • RSS
  • Twitter
  • Vimeo

Sponsors

Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
To find out more, including how to control cookies, see here: Cookie Policy