Universal PowerCLI Loader

PowerCLI is great tool, and the Team behind it surprises us on a regular basis with a new Release. With the v6.x generation we witnessed the introduction of Modules. And the Team keeps adding further integration with other VMware products.

With the PowerCLI installation comes a shortcut to a PowerShell sessions, loaded with all the PowerCLI goodness. And this is ideal to make your first steps in the wonderful world of PowerShell and PowerCLI.

But soon you’ll start using more advanced features of PowerShell. You’ll be scheduling jobs, running parallel workflows, start using PowerCLI in Desired State Configuration (DSC). At that moment, the simple PowerCLI session doesn’t cut it anymore, and even the Init scripts that are installed together with PowerCLI, will not give you the exact environment as you want it. Hence my Universal PowerCLI Loader!

universal

I have been using a “Universal PowerCLI loader” function since quite some time now. I thought it was time to prettify it a bit, and share it with the community.

Continue reading Universal PowerCLI Loader

LogInsight Module

While Archimedes once said “Give me a place to stand and with a lever I will move the whole world”, my personal preferred statement nowadays is “Give me an API, and I will automate it!”. And the LogInsight module I’m announcing is another step on that path.

pcli-loginsight

So I was very pleased when the Release Notes of the latest Log Insight version announced the availability of a Query API. On the blog of Steve Flanders there are several posts that go further into this new feature. Definitely worth a read to get a better understanding of what is available, and what is not (yet).

Log Insight 3.3: Authentication API
Log Insight 3.3: Query API
Log Insight Query API: Use Cases, Basics, Caveats, and Best Practices

My LogInsight PowerShell module makes use of these new API, and it will allow you to automate your interaction with Log Insight from within your PowerShell scripts.

Continue reading LogInsight Module

Ravello PowerShell Module – Automating a Lab Setup

On this blog you have recently seen a post about the Ravello PowerShell module, and another one showing some Examples on how to use that module.

rav-labI thought now would be a good time to show you one of my actual use cases. Discover how I deploy my main Lab in the Ravello cloud without a single click, and each time exactly the way I want it.

Continue reading Ravello PowerShell Module – Automating a Lab Setup

Ravello PowerShell Module – Examples

This post introduces the first set of example PowerShell scripts that use the Ravello PowerShell module to automate your Ravello Systems environment.

rav-title-examples

The examples serve primarily to demonstrate the use of the Ravello module cmdlets. But also how easy it is to automate your Ravello environment with the help of the Ravello PowerShell module. Note that the examples directory is introduced in v1.1.2.4 of the Ravello PowerShell module.
Continue reading Ravello PowerShell Module – Examples

Ravello PowerShell module v1.1

The Restful API offered by Ravello Systems was upgraded to v1.1 recently. This upgrade introduced quite some new, interesting features. As a consequence, the PowerShell module I published earlier, see my Ravello PowerShell Module post, needed an update. Here is my Ravello PowerShell module v1.1 !

Ravello PowerShell module v1.1

The new Restful API offered by Ravello Systems, comes with a completely overhauled and slick REST API reference.

Update 24th January 2016: now also available on the PowerShell Gallery for Windows 10 and WMF 5 users.

Continue reading Ravello PowerShell module v1.1

Ravello PowerShell Module

The first time I heard about Ravello Systems and their solution was way back in August 2013. Through pointers in blogs posts by Duncan (here) and William (here), I found an early research paper which explained what the HVX platform was all about. Needless to say I was very interested !

When Ravello Systems announced a beta for their Inception solution in April 2015, I was game. After a 2 week trial, I took a subscription. In June 2015 they also announced free access for vExperts (1000 CPU hours per month). And to top it off, I witnessed an excellent presentation during Virtualization Field Day 5 in June 2015 in Boston.

rav-title

One aspect of the Ravello Systems solution that immediately captured my attention, was the availability of a REST API, that offers all the functionality that is available through their Web Gui, and more. While a Web Gui might be nice, for automation purposes that will not really work. That’s when I decided to start writing a Ravello PowerShell module based on the REST API.

Continue reading Ravello PowerShell Module

Fixing a (minor) PowerCLI 6 R1 issue

With PowerCLI 6 R1 a major change was introduced, PowerCLI now has modules !

Such a major change is bound to introduce some minor nuisances, as some PowerCLI users have already discovered. This post will try to tackle some of these nuisances.

pcli-v6-bandaidThe first issue is with the PSConsoleFile, called vim.psc1, which was often used in batch invocations of PowerCLI scripts. Unfortunately this is a breaking change, but it can easily be fixed as this post will show.

The second annoyance has to do with the PowerShell environment variable called $env:PSModulePath. The installation package for PowerCLI 6 R1, sets the module path in the user environment variable, which might cause an issue. Read on.

Continue reading Fixing a (minor) PowerCLI 6 R1 issue

PowerCLI and PowerShell Workflows

In PowerShell v3 the Workflow feature was introduced. But until now there haven’t been too many examples available on how to use PowerCLI in PowerShell Workflows. Today I was triggered by a thread from Mark in the PowerCLI VMTN community, to revise some of my Workflow code snippets I had laying around.

Workflow-PowerCLI

And if you didn’t have enough arguments yet to upgrade to PowerCLI v6, which brings MODULES, the Workflow feature will give you another one !

Continue reading PowerCLI and PowerShell Workflows

DRSRule – a DRS rules and groups module

One of the nice vSphere features is the ability to define DRS rules.

DRSRule-introThe feature allows a vSphere administrator to control the placement of virtual machines in a vSphere cluster. There are the VM to VM affinity and anti-affinity rules, and the newer VM to VMHost rules. With the VM to VMHost rules, vSphere introduced the concept of VM and VMHost groups, and the ability to have rules that are a requirement (‘shall’) or a preference (‘should’).

In a recent VMTN PowerCLI community thread a PowerCLI user had a query about exporting and importing DRS rules and groups. At that point Matt Boren and myself developed the idea to provide a PowerShell module. The PowerShell module, which we named DRSRule, provides all the functions we deemed useful for working with DRS rules and groups. And yes, the module includes an export and an import cmdlet !

Continue reading DRSRule – a DRS rules and groups module

Tintri Automation Toolkit – Part 2 – VM Protection and Reporting

After Part 1 – The Basics in this series, I will show in Part 2 how you can set up Tintri’s VM Protection through Replication. And to conclude this post I will show some Reporting that you can do with the Tintri Automation Toolkit.

PS-PCL-Tintri

Continue reading Tintri Automation Toolkit – Part 2 – VM Protection and Reporting