SlideShare a Scribd company logo
1 of 51
Getting Started with PowerShell and PowerCLI for Your VMware
Environment
Kyle Ruddy, VMware, Inc
Chris Wahl, Rubrik
INF8038
#INF8038
• This presentation may contain product features that are currently under development.
• This overview of new technology represents no commitment from VMware to deliver these
features in any generally available product.
• Features are subject to change, and must not be included in contracts, purchase orders, or
sales agreements of any kind.
• Technical feasibility and market demand will affect final delivery.
• Pricing and packaging for any new technologies or features discussed or presented have not
been determined.
Disclaimer
CONFIDENTIAL 2
Who is Kyle Ruddy?
Writer
GitHub
Podcast
Twitter
@ ThatCouldBeAProblem.com
@ github.com/kmruddy
@ vBrownBag.com
@kmruddy
Senior Technical Marketing Engineer, VMware
Who is @ChrisWahl?
Writer
Host
Instructor
Evangelist
Microsoft
VMware
@ WahlNetwork.com
@ DatanautsPodcast.com
@ Pluralsight.com
@ Rubrik.com
MVP (PowerShell)
VCDX (DCV & NV)
5
Agenda
• What are PowerShell and PowerCLI?
• The Lingo Dictionary
• Setup and Configuration
• Starting to Code
• Writing Logic Statements
What are PowerShell and PowerCLI?
6
7
“Windows PowerShell is a task automation
and configuration management
framework from Microsoft, consisting of a
command-line shell and associated scripting
language built on the .NET Framework.”
https://en.wikipedia.org/wiki/Windows_PowerShell
8
PowerShell
• A simple and straight-forward path to automation
– Already installed on all modern Windows Operating Systems
– Integrated and rich help system
• Alpha build available for Linux and MacOS
– https://github.com/PowerShell/PowerShell
9
PowerShell
• Modular and object-oriented
– The best of a programming language melded with a scripting
language
– True portability of code via modules (and snap-ins)
10
VMware vSphere PowerCLI
• VMware’s command-line and scripting tool built on
Windows PowerShell
• Features more than 500 cmdlets for managing and
automating vSphere, vCloud, and Horizon environments
• One of the most robust and complete PowerShell
deployments in the world
The Lingo Dictionary
12
What is a Module?
• Set of related Windows PowerShell functionalities,
grouped together as a convenient unit
• Usually saved in a single directory
• Example Locations:
– DocumentsWindowsPowerShellModules
– Program FilesWindowsPowerShellModules
– Windowssystem32WindowsPowerShellv1.0Modules
13
What is a Module?
• No installation required
– Just plop it into a path recognized by $env:PSModulePath
14
What is a Module Manifest?
• PSD1 extension
• Describes how the module was constructed
• Identifies functions / cmdlets / variables / aliases to
export
• DSC resources
• PowerShell Gallery data
15
Module Manifests
16
17
What is a snap-in?
• For our intents and purposes …
• Precursor to Modules
– Must be written in .NET
– Must be available as an Assembly
– Installed (not copied)
– Puts keys in the registry
• Try to avoid them!
18
What is a Function?
• List of Windows PowerShell statements that has a name
that you assign
• Can be called by name
– Define a function named “Get-SquarePants”
• Load it in a module or dot source it
– Dot sourcing = . .Get-SquarePants.ps1
– Now you can type Get-SquarePants and it will execute
19
Function – Descriptive Details
<#
.SYNOPSIS
<Overview of script>
.DESCRIPTION
<Brief description of script>
.PARAMETER <Parameter_Name>
<Brief description of parameter input required. Repeat this attribute if required>
.INPUTS
<Inputs if any, otherwise state None>
.OUTPUTS
<Outputs if any, otherwise state None - example: Log file stored in C:WindowsTemp<name>.log>
.NOTES
Version: 1.0
Author: <Name>
Creation Date: <Date>
Purpose/Change: Initial script development
.EXAMPLE
<Example goes here. Repeat this attribute for more than one example>
#>
20
Function – The Meat and Potatoes
Function <FunctionName>{
Param()
Begin{
Do this stuff first
}
Process{
Do this stuff as much as desired
}
End{
Do this stuff last
}
}
21
What is a Script?
• A much less fancy version of a function
– Just the “Do this stuff as much as desired” part
• Cannot be called by name like a function can
• Handy for ad-hoc work
• Suggestion!
– Focus on writing functions, not scripts
– Use scripts in the ISE for testing code snipets
Setup and Configuration
23
Setting up PowerShell
• Native to all modern Windows deployments
• Latest version is 5.0
– Use $PSVersionTable to see what you’re running
24
Update using Windows Management Framework 5.0
• https://www.microsoft.com/en-us/download/details.aspx?id=50395
 Console
 The command line interface
 Microsoft.PowerShell_profile.ps1
 ISE
 Integrated Scripting Environment
 Microsoft.PowerShellISE_profile.ps1
 Console + ISE
 profile.ps1
Profiles make life easier and happier
Set up your profile
 Current User:
%USERPROFILE%DocumentsWindowsPowerShell
 All Users:
%WINDIR%System32WindowsPowerShellv1.0
Profiles make life easier and happier
Drop in your profile
Set-ExecutionPolicy Bypass
Set-Location C:DropboxCode
if ($psISE)
{
Start-Steroids
Clear-Host
Write-Host 'BEAST MODE (╯°□°)╯︵ ┻━┻'
}
Write yourself fun messages
Self motivation for the win!
Set-ExecutionPolicy Bypass
Set-Location C:DropboxCode
if ($psISE)
{
Start-Steroids
Clear-Host
Write-Host 'BEAST MODE (╯°□°)╯︵ ┻━┻'
}
Write yourself fun messages
Self motivation for the win!
29
Where do I get PowerCLI from?
Start at: vmware.com/go/powercli
30
What version of PowerShell and PowerCLI do I want?
• PowerShell
– Version 5 recommended
– Version 3 minimum
• PowerCLI
– Newest version is always recommended
• Prerequisites
– .NET Framework 4.5.x
31
How do I install PowerCLI? What about updates?
• Download the newest version of VMware vSphere
PowerCLI
• Execute the downloaded PowerCLI installer file
• If upgrading:
– Acknowledge an earlier version of PowerCLI exists, click OK
32
How do I install PowerCLI? What about updates?
• On the Welcome page, click Next.
• Accept the license agreement terms, click Next.
• On the Custom Setup page:
– Select the PowerCLI components you want to install.
– (Optional) To change the default install location for VMware
vSphere PowerCLI, click Change and select a different
Destination Folder.
– Click Next.
33
How do I install PowerCLI? What about updates?
• On the Ready to Install the Program page,
click Install to proceed with the installation.
• Click Finish to complete the installation process.
34
Initialization of PowerCLI
• Shortcuts vs native PowerShell console
• PCLI Initialization script
35
Flings
• PowerActions:
– https://labs.vmware.com/flings/poweractions-for-vsphere-web-
client
• Onyx
– https://labs.vmware.com/flings/onyx-for-the-web-client
Starting to Code
37
Identify safe cmdlets and begin pulling data from vSphere
• Safe = Does not modify data
38
Safe vs Non-safe cmdlets
• Suggest starting with cmdlets that pull or display data
– These are “Safe” in that they are unable to modify data
• This is helpful for learning the PowerShell syntax
– Never ending journey 
39
WhatIf and Confirm
• Extra safeguards for you to use!
• Whatif
– Shows you what WOULD happen without actually modifying data
– Switch
• Confirm
– Asks you to confirm before any changes are made
– Boolean ($true or $false)
40
WhatIf and Confirm
41
Common Verbs
• Cmdlets use properly formatted verbs
– Use Get-Verb to see the available options
• Most features follow a very simple pattern
– Get = Gather data
– Set = Change data
– New = Create data
– Remove = Delete data
Writing Logic Statements
43
Sample Use Case
• Cluster configuration
– What values are currently configured?
– Let’s change a few of them to match our desired state
• DRS Settings
– HA is Enabled
– DRS Automation Level is Fully Automated
44
Gather the Data
# Variables
$cluster = 'Demo'
# Gather Cluster Data
$clusterConfig = Get-Cluster -Name $cluster
45
Results are Stored as Objects
46
Decision Making Process
• Add logic to test these values!
if ($clusterConfig.DrsAutomationLevel -ne
'FullyAutomated')
{
Write-Warning -Message 'DRS Automation Level is wrong!'
}
47
Decision Making Process
• Add logic to test these values!
if ($clusterConfig.DrsAutomationLevel -ne
'FullyAutomated')
{
Write-Warning -Message 'DRS Automation Level is wrong!'
Set-Cluster -DrsAutomationLevel FullyAutomated
}
48
Reference Links
• The Complete Guide to PowerShell Punctuation
– https://www.simple-talk.com/sysadmin/powershell/the-complete-
guide-to-powershell-punctuation/
• PowerCLI 6.3 R1 Reference Poster
– http://vmware.com/go/posters
Thank you!
Kyle Ruddy – Tech Marketing Ninja, VMware
Chris Wahl – Technical Evangelist, Rubrik
VMworld 2016: Getting Started with PowerShell and PowerCLI for Your VMware Enviornment
VMworld 2016: Getting Started with PowerShell and PowerCLI for Your VMware Enviornment

More Related Content

What's hot

VMworld 2015: vSphere Web Client- Yesterday, Today, and Tomorrow
VMworld 2015: vSphere Web Client- Yesterday, Today, and TomorrowVMworld 2015: vSphere Web Client- Yesterday, Today, and Tomorrow
VMworld 2015: vSphere Web Client- Yesterday, Today, and TomorrowVMworld
 
VMworld 2015: The Future of Software- Defined Storage- What Does it Look Like...
VMworld 2015: The Future of Software- Defined Storage- What Does it Look Like...VMworld 2015: The Future of Software- Defined Storage- What Does it Look Like...
VMworld 2015: The Future of Software- Defined Storage- What Does it Look Like...VMworld
 
VMworld 2016: Virtual Volumes Technical Deep Dive
VMworld 2016: Virtual Volumes Technical Deep DiveVMworld 2016: Virtual Volumes Technical Deep Dive
VMworld 2016: Virtual Volumes Technical Deep DiveVMworld
 
VMworld 2015: Just Because You COULD, Doesn’t Mean You SHOULD – vSphere 6.0 A...
VMworld 2015: Just Because You COULD, Doesn’t Mean You SHOULD – vSphere 6.0 A...VMworld 2015: Just Because You COULD, Doesn’t Mean You SHOULD – vSphere 6.0 A...
VMworld 2015: Just Because You COULD, Doesn’t Mean You SHOULD – vSphere 6.0 A...VMworld
 
VMworld 2015: Networking Virtual SAN's Backbone
VMworld 2015: Networking Virtual SAN's BackboneVMworld 2015: Networking Virtual SAN's Backbone
VMworld 2015: Networking Virtual SAN's BackboneVMworld
 
VMworld 2015: How To Troubleshoot Using vRealize Operations Manager (Deep Liv...
VMworld 2015: How To Troubleshoot Using vRealize Operations Manager (Deep Liv...VMworld 2015: How To Troubleshoot Using vRealize Operations Manager (Deep Liv...
VMworld 2015: How To Troubleshoot Using vRealize Operations Manager (Deep Liv...VMworld
 
VMworld 2015: Site Recovery Manager and Policy Based DR Deep Dive with Engine...
VMworld 2015: Site Recovery Manager and Policy Based DR Deep Dive with Engine...VMworld 2015: Site Recovery Manager and Policy Based DR Deep Dive with Engine...
VMworld 2015: Site Recovery Manager and Policy Based DR Deep Dive with Engine...VMworld
 
VMworld 2016: vSphere 6.x Host Resource Deep Dive
VMworld 2016: vSphere 6.x Host Resource Deep DiveVMworld 2016: vSphere 6.x Host Resource Deep Dive
VMworld 2016: vSphere 6.x Host Resource Deep DiveVMworld
 
VMworld 2015: Monitoring and Managing Applications with vRealize Operations 6...
VMworld 2015: Monitoring and Managing Applications with vRealize Operations 6...VMworld 2015: Monitoring and Managing Applications with vRealize Operations 6...
VMworld 2015: Monitoring and Managing Applications with vRealize Operations 6...VMworld
 
VMworld 2015: Extreme Performance Series - vSphere Compute & Memory
VMworld 2015: Extreme Performance Series - vSphere Compute & MemoryVMworld 2015: Extreme Performance Series - vSphere Compute & Memory
VMworld 2015: Extreme Performance Series - vSphere Compute & MemoryVMworld
 
VMworld 2016 - INF8036 - enforcing a vSphere cluster design with powercli aut...
VMworld 2016 - INF8036 - enforcing a vSphere cluster design with powercli aut...VMworld 2016 - INF8036 - enforcing a vSphere cluster design with powercli aut...
VMworld 2016 - INF8036 - enforcing a vSphere cluster design with powercli aut...Duncan Epping
 
VMworld 2015: What's New in vSphere?
VMworld 2015: What's New in vSphere?VMworld 2015: What's New in vSphere?
VMworld 2015: What's New in vSphere?VMworld
 
STO7535 Virtual SAN Proof of Concept - VMworld 2016
STO7535 Virtual SAN Proof of Concept - VMworld 2016STO7535 Virtual SAN Proof of Concept - VMworld 2016
STO7535 Virtual SAN Proof of Concept - VMworld 2016Cormac Hogan
 
VMworld 2015: Managing vSphere 6 Deployments and Upgrades
VMworld 2015: Managing vSphere 6 Deployments and Upgrades VMworld 2015: Managing vSphere 6 Deployments and Upgrades
VMworld 2015: Managing vSphere 6 Deployments and Upgrades VMworld
 
VMworld 2016: Advances in Remote Display Protocol Technology with VMware Blas...
VMworld 2016: Advances in Remote Display Protocol Technology with VMware Blas...VMworld 2016: Advances in Remote Display Protocol Technology with VMware Blas...
VMworld 2016: Advances in Remote Display Protocol Technology with VMware Blas...VMworld
 
VMworld 2016: The KISS of vRealize Operations!
VMworld 2016: The KISS of vRealize Operations! VMworld 2016: The KISS of vRealize Operations!
VMworld 2016: The KISS of vRealize Operations! VMworld
 
VMworld 2015: VMware NSX Deep Dive
VMworld 2015: VMware NSX Deep DiveVMworld 2015: VMware NSX Deep Dive
VMworld 2015: VMware NSX Deep DiveVMworld
 
VMworld 2015: Horizon View Storage - Let's Dive Deep!
VMworld 2015: Horizon View Storage - Let's Dive Deep!VMworld 2015: Horizon View Storage - Let's Dive Deep!
VMworld 2015: Horizon View Storage - Let's Dive Deep!VMworld
 
HBC9363 Virtualization 2.0 How the Cloud is Evolving the Modern Data Center
HBC9363 Virtualization 2.0 How the Cloud is Evolving the Modern Data CenterHBC9363 Virtualization 2.0 How the Cloud is Evolving the Modern Data Center
HBC9363 Virtualization 2.0 How the Cloud is Evolving the Modern Data Centerdavehill99
 

What's hot (20)

VMworld 2015: vSphere Web Client- Yesterday, Today, and Tomorrow
VMworld 2015: vSphere Web Client- Yesterday, Today, and TomorrowVMworld 2015: vSphere Web Client- Yesterday, Today, and Tomorrow
VMworld 2015: vSphere Web Client- Yesterday, Today, and Tomorrow
 
VMworld 2015: The Future of Software- Defined Storage- What Does it Look Like...
VMworld 2015: The Future of Software- Defined Storage- What Does it Look Like...VMworld 2015: The Future of Software- Defined Storage- What Does it Look Like...
VMworld 2015: The Future of Software- Defined Storage- What Does it Look Like...
 
VMworld 2016: Virtual Volumes Technical Deep Dive
VMworld 2016: Virtual Volumes Technical Deep DiveVMworld 2016: Virtual Volumes Technical Deep Dive
VMworld 2016: Virtual Volumes Technical Deep Dive
 
VMworld 2015: Just Because You COULD, Doesn’t Mean You SHOULD – vSphere 6.0 A...
VMworld 2015: Just Because You COULD, Doesn’t Mean You SHOULD – vSphere 6.0 A...VMworld 2015: Just Because You COULD, Doesn’t Mean You SHOULD – vSphere 6.0 A...
VMworld 2015: Just Because You COULD, Doesn’t Mean You SHOULD – vSphere 6.0 A...
 
VMworld 2015: Networking Virtual SAN's Backbone
VMworld 2015: Networking Virtual SAN's BackboneVMworld 2015: Networking Virtual SAN's Backbone
VMworld 2015: Networking Virtual SAN's Backbone
 
VMworld 2015: How To Troubleshoot Using vRealize Operations Manager (Deep Liv...
VMworld 2015: How To Troubleshoot Using vRealize Operations Manager (Deep Liv...VMworld 2015: How To Troubleshoot Using vRealize Operations Manager (Deep Liv...
VMworld 2015: How To Troubleshoot Using vRealize Operations Manager (Deep Liv...
 
VMworld 2015: Site Recovery Manager and Policy Based DR Deep Dive with Engine...
VMworld 2015: Site Recovery Manager and Policy Based DR Deep Dive with Engine...VMworld 2015: Site Recovery Manager and Policy Based DR Deep Dive with Engine...
VMworld 2015: Site Recovery Manager and Policy Based DR Deep Dive with Engine...
 
VMworld 2016: vSphere 6.x Host Resource Deep Dive
VMworld 2016: vSphere 6.x Host Resource Deep DiveVMworld 2016: vSphere 6.x Host Resource Deep Dive
VMworld 2016: vSphere 6.x Host Resource Deep Dive
 
VMworld 2015: Monitoring and Managing Applications with vRealize Operations 6...
VMworld 2015: Monitoring and Managing Applications with vRealize Operations 6...VMworld 2015: Monitoring and Managing Applications with vRealize Operations 6...
VMworld 2015: Monitoring and Managing Applications with vRealize Operations 6...
 
VMworld 2015: Extreme Performance Series - vSphere Compute & Memory
VMworld 2015: Extreme Performance Series - vSphere Compute & MemoryVMworld 2015: Extreme Performance Series - vSphere Compute & Memory
VMworld 2015: Extreme Performance Series - vSphere Compute & Memory
 
VMworld 2016 - INF8036 - enforcing a vSphere cluster design with powercli aut...
VMworld 2016 - INF8036 - enforcing a vSphere cluster design with powercli aut...VMworld 2016 - INF8036 - enforcing a vSphere cluster design with powercli aut...
VMworld 2016 - INF8036 - enforcing a vSphere cluster design with powercli aut...
 
VMworld 2015: What's New in vSphere?
VMworld 2015: What's New in vSphere?VMworld 2015: What's New in vSphere?
VMworld 2015: What's New in vSphere?
 
STO7535 Virtual SAN Proof of Concept - VMworld 2016
STO7535 Virtual SAN Proof of Concept - VMworld 2016STO7535 Virtual SAN Proof of Concept - VMworld 2016
STO7535 Virtual SAN Proof of Concept - VMworld 2016
 
VMworld 2015: Managing vSphere 6 Deployments and Upgrades
VMworld 2015: Managing vSphere 6 Deployments and Upgrades VMworld 2015: Managing vSphere 6 Deployments and Upgrades
VMworld 2015: Managing vSphere 6 Deployments and Upgrades
 
VMworld 2016: Advances in Remote Display Protocol Technology with VMware Blas...
VMworld 2016: Advances in Remote Display Protocol Technology with VMware Blas...VMworld 2016: Advances in Remote Display Protocol Technology with VMware Blas...
VMworld 2016: Advances in Remote Display Protocol Technology with VMware Blas...
 
VMworld 2016: The KISS of vRealize Operations!
VMworld 2016: The KISS of vRealize Operations! VMworld 2016: The KISS of vRealize Operations!
VMworld 2016: The KISS of vRealize Operations!
 
VMworld 2015: VMware NSX Deep Dive
VMworld 2015: VMware NSX Deep DiveVMworld 2015: VMware NSX Deep Dive
VMworld 2015: VMware NSX Deep Dive
 
VMworld 2015: Horizon View Storage - Let's Dive Deep!
VMworld 2015: Horizon View Storage - Let's Dive Deep!VMworld 2015: Horizon View Storage - Let's Dive Deep!
VMworld 2015: Horizon View Storage - Let's Dive Deep!
 
PowerCLI & Onyx
PowerCLI & OnyxPowerCLI & Onyx
PowerCLI & Onyx
 
HBC9363 Virtualization 2.0 How the Cloud is Evolving the Modern Data Center
HBC9363 Virtualization 2.0 How the Cloud is Evolving the Modern Data CenterHBC9363 Virtualization 2.0 How the Cloud is Evolving the Modern Data Center
HBC9363 Virtualization 2.0 How the Cloud is Evolving the Modern Data Center
 

Viewers also liked

VMworld 2016: Virtualize Active Directory, the Right Way!
VMworld 2016: Virtualize Active Directory, the Right Way! VMworld 2016: Virtualize Active Directory, the Right Way!
VMworld 2016: Virtualize Active Directory, the Right Way! VMworld
 
VMworld 2016: Ask the vCenter Server Exerts Panel
VMworld 2016: Ask the vCenter Server Exerts PanelVMworld 2016: Ask the vCenter Server Exerts Panel
VMworld 2016: Ask the vCenter Server Exerts PanelVMworld
 
VMworld 2016: Migrating from a hardware based firewall to NSX to improve perf...
VMworld 2016: Migrating from a hardware based firewall to NSX to improve perf...VMworld 2016: Migrating from a hardware based firewall to NSX to improve perf...
VMworld 2016: Migrating from a hardware based firewall to NSX to improve perf...VMworld
 
VMworld 2016: What's New with Horizon 7
VMworld 2016: What's New with Horizon 7VMworld 2016: What's New with Horizon 7
VMworld 2016: What's New with Horizon 7VMworld
 
VMworld 2016: Advanced Network Services with NSX
VMworld 2016: Advanced Network Services with NSXVMworld 2016: Advanced Network Services with NSX
VMworld 2016: Advanced Network Services with NSXVMworld
 
VMworld 2016: How to Deploy VMware NSX with Cisco Infrastructure
VMworld 2016: How to Deploy VMware NSX with Cisco InfrastructureVMworld 2016: How to Deploy VMware NSX with Cisco Infrastructure
VMworld 2016: How to Deploy VMware NSX with Cisco InfrastructureVMworld
 
VMworld 2015: Building a Business Case for Virtual SAN
VMworld 2015: Building a Business Case for Virtual SANVMworld 2015: Building a Business Case for Virtual SAN
VMworld 2015: Building a Business Case for Virtual SANVMworld
 
Power on, Powershell
Power on, PowershellPower on, Powershell
Power on, PowershellRoo7break
 
PowerShell Plus v4.7 Overview
PowerShell Plus v4.7 OverviewPowerShell Plus v4.7 Overview
PowerShell Plus v4.7 OverviewRichard Giles
 
Office 365 & PowerShell - A match made in heaven
Office 365 & PowerShell - A match made in heavenOffice 365 & PowerShell - A match made in heaven
Office 365 & PowerShell - A match made in heavenSébastien Levert
 
Practical PowerShell Programming for Professional People - Extended Edition
Practical PowerShell Programming for Professional People - Extended EditionPractical PowerShell Programming for Professional People - Extended Edition
Practical PowerShell Programming for Professional People - Extended EditionBen Ten (0xA)
 
Better, Faster, Stronger! Boost Your Team-Based SharePoint Development Using ...
Better, Faster, Stronger! Boost Your Team-Based SharePoint Development Using ...Better, Faster, Stronger! Boost Your Team-Based SharePoint Development Using ...
Better, Faster, Stronger! Boost Your Team-Based SharePoint Development Using ...Richard Calderon
 
Powershell Seminar @ ITWorx CuttingEdge Club
Powershell Seminar @ ITWorx CuttingEdge ClubPowershell Seminar @ ITWorx CuttingEdge Club
Powershell Seminar @ ITWorx CuttingEdge ClubEssam Salah
 
Windows Server 2008 (PowerShell Scripting Uygulamaları)
Windows Server 2008 (PowerShell Scripting Uygulamaları)Windows Server 2008 (PowerShell Scripting Uygulamaları)
Windows Server 2008 (PowerShell Scripting Uygulamaları)ÇözümPARK
 
PowerShell from *nix user perspective
PowerShell from *nix user perspectivePowerShell from *nix user perspective
PowerShell from *nix user perspectiveJuraj Michálek
 
Managing Virtual Infrastructures With PowerShell
Managing Virtual Infrastructures With PowerShellManaging Virtual Infrastructures With PowerShell
Managing Virtual Infrastructures With PowerShellguesta849bc8b
 

Viewers also liked (17)

VMworld 2016: Virtualize Active Directory, the Right Way!
VMworld 2016: Virtualize Active Directory, the Right Way! VMworld 2016: Virtualize Active Directory, the Right Way!
VMworld 2016: Virtualize Active Directory, the Right Way!
 
VMworld 2016: Ask the vCenter Server Exerts Panel
VMworld 2016: Ask the vCenter Server Exerts PanelVMworld 2016: Ask the vCenter Server Exerts Panel
VMworld 2016: Ask the vCenter Server Exerts Panel
 
VMworld 2016: Migrating from a hardware based firewall to NSX to improve perf...
VMworld 2016: Migrating from a hardware based firewall to NSX to improve perf...VMworld 2016: Migrating from a hardware based firewall to NSX to improve perf...
VMworld 2016: Migrating from a hardware based firewall to NSX to improve perf...
 
VMworld 2016: What's New with Horizon 7
VMworld 2016: What's New with Horizon 7VMworld 2016: What's New with Horizon 7
VMworld 2016: What's New with Horizon 7
 
VMworld 2016: Advanced Network Services with NSX
VMworld 2016: Advanced Network Services with NSXVMworld 2016: Advanced Network Services with NSX
VMworld 2016: Advanced Network Services with NSX
 
VMworld 2016: How to Deploy VMware NSX with Cisco Infrastructure
VMworld 2016: How to Deploy VMware NSX with Cisco InfrastructureVMworld 2016: How to Deploy VMware NSX with Cisco Infrastructure
VMworld 2016: How to Deploy VMware NSX with Cisco Infrastructure
 
VMworld 2015: Building a Business Case for Virtual SAN
VMworld 2015: Building a Business Case for Virtual SANVMworld 2015: Building a Business Case for Virtual SAN
VMworld 2015: Building a Business Case for Virtual SAN
 
Power on, Powershell
Power on, PowershellPower on, Powershell
Power on, Powershell
 
PowerShell Plus v4.7 Overview
PowerShell Plus v4.7 OverviewPowerShell Plus v4.7 Overview
PowerShell Plus v4.7 Overview
 
Office 365 & PowerShell - A match made in heaven
Office 365 & PowerShell - A match made in heavenOffice 365 & PowerShell - A match made in heaven
Office 365 & PowerShell - A match made in heaven
 
Practical PowerShell Programming for Professional People - Extended Edition
Practical PowerShell Programming for Professional People - Extended EditionPractical PowerShell Programming for Professional People - Extended Edition
Practical PowerShell Programming for Professional People - Extended Edition
 
Better, Faster, Stronger! Boost Your Team-Based SharePoint Development Using ...
Better, Faster, Stronger! Boost Your Team-Based SharePoint Development Using ...Better, Faster, Stronger! Boost Your Team-Based SharePoint Development Using ...
Better, Faster, Stronger! Boost Your Team-Based SharePoint Development Using ...
 
Powershell Seminar @ ITWorx CuttingEdge Club
Powershell Seminar @ ITWorx CuttingEdge ClubPowershell Seminar @ ITWorx CuttingEdge Club
Powershell Seminar @ ITWorx CuttingEdge Club
 
Windows Server 2008 (PowerShell Scripting Uygulamaları)
Windows Server 2008 (PowerShell Scripting Uygulamaları)Windows Server 2008 (PowerShell Scripting Uygulamaları)
Windows Server 2008 (PowerShell Scripting Uygulamaları)
 
PowerShell from *nix user perspective
PowerShell from *nix user perspectivePowerShell from *nix user perspective
PowerShell from *nix user perspective
 
Managing Virtual Infrastructures With PowerShell
Managing Virtual Infrastructures With PowerShellManaging Virtual Infrastructures With PowerShell
Managing Virtual Infrastructures With PowerShell
 
PowerShell UIAtomation
PowerShell UIAtomationPowerShell UIAtomation
PowerShell UIAtomation
 

Similar to VMworld 2016: Getting Started with PowerShell and PowerCLI for Your VMware Enviornment

PowerShellForDBDevelopers
PowerShellForDBDevelopersPowerShellForDBDevelopers
PowerShellForDBDevelopersBryan Cafferky
 
VMworld 2013: PowerCLI Best Practices - A Deep Dive
VMworld 2013: PowerCLI Best Practices - A Deep DiveVMworld 2013: PowerCLI Best Practices - A Deep Dive
VMworld 2013: PowerCLI Best Practices - A Deep DiveVMworld
 
Supercharge PBCS with PowerShell
Supercharge PBCS with PowerShellSupercharge PBCS with PowerShell
Supercharge PBCS with PowerShellKyle Goodfriend
 
Holy PowerShell, BATman! - dogfood edition
Holy PowerShell, BATman! - dogfood editionHoly PowerShell, BATman! - dogfood edition
Holy PowerShell, BATman! - dogfood editionDave Diehl
 
Introduction to PowerShell - Be a PowerShell Hero - SPFest workshop
Introduction to PowerShell - Be a PowerShell Hero - SPFest workshopIntroduction to PowerShell - Be a PowerShell Hero - SPFest workshop
Introduction to PowerShell - Be a PowerShell Hero - SPFest workshopMichael Blumenthal (Microsoft MVP)
 
PowerShell for the Anxious ITPro
PowerShell for the Anxious ITProPowerShell for the Anxious ITPro
PowerShell for the Anxious ITProJason Himmelstein
 
VMware Automation, PowerCLI presented at the Northern California PSUG
VMware Automation, PowerCLI presented at the Northern California PSUGVMware Automation, PowerCLI presented at the Northern California PSUG
VMware Automation, PowerCLI presented at the Northern California PSUGAlan Renouf
 
PowerShell for SharePoint Admins
PowerShell for SharePoint AdminsPowerShell for SharePoint Admins
PowerShell for SharePoint AdminsRick Taylor
 
Setting Up CircleCI Workflows for Your Salesforce Apps
Setting Up CircleCI Workflows for Your Salesforce AppsSetting Up CircleCI Workflows for Your Salesforce Apps
Setting Up CircleCI Workflows for Your Salesforce AppsDaniel Stange
 
Power shell training
Power shell trainingPower shell training
Power shell trainingDavid Brabant
 
Power shell for sp admins
Power shell for sp adminsPower shell for sp admins
Power shell for sp adminsRick Taylor
 
PowerShell Workshop Series: Session 2
PowerShell Workshop Series: Session 2PowerShell Workshop Series: Session 2
PowerShell Workshop Series: Session 2Bryan Cafferky
 
Windows 2012 R2 Multi Server Management
Windows 2012 R2 Multi Server ManagementWindows 2012 R2 Multi Server Management
Windows 2012 R2 Multi Server ManagementSharkrit JOBBO
 
VMworld Europe 2014: Taking Reporting and Command Line Automation to the Next...
VMworld Europe 2014: Taking Reporting and Command Line Automation to the Next...VMworld Europe 2014: Taking Reporting and Command Line Automation to the Next...
VMworld Europe 2014: Taking Reporting and Command Line Automation to the Next...VMworld
 
PowerShell for Penetration Testers
PowerShell for Penetration TestersPowerShell for Penetration Testers
PowerShell for Penetration TestersNikhil Mittal
 
Sql Server & PowerShell
Sql Server & PowerShellSql Server & PowerShell
Sql Server & PowerShellAaron Shilo
 
2019 Blackhat Booth Presentation - PowerUpSQL
2019 Blackhat Booth Presentation - PowerUpSQL2019 Blackhat Booth Presentation - PowerUpSQL
2019 Blackhat Booth Presentation - PowerUpSQLScott Sutherland
 

Similar to VMworld 2016: Getting Started with PowerShell and PowerCLI for Your VMware Enviornment (20)

PowerShellForDBDevelopers
PowerShellForDBDevelopersPowerShellForDBDevelopers
PowerShellForDBDevelopers
 
powershell.pdf
powershell.pdfpowershell.pdf
powershell.pdf
 
VMworld 2013: PowerCLI Best Practices - A Deep Dive
VMworld 2013: PowerCLI Best Practices - A Deep DiveVMworld 2013: PowerCLI Best Practices - A Deep Dive
VMworld 2013: PowerCLI Best Practices - A Deep Dive
 
Supercharge PBCS with PowerShell
Supercharge PBCS with PowerShellSupercharge PBCS with PowerShell
Supercharge PBCS with PowerShell
 
Holy PowerShell, BATman! - dogfood edition
Holy PowerShell, BATman! - dogfood editionHoly PowerShell, BATman! - dogfood edition
Holy PowerShell, BATman! - dogfood edition
 
Powershell training material
Powershell training materialPowershell training material
Powershell training material
 
Introduction to PowerShell - Be a PowerShell Hero - SPFest workshop
Introduction to PowerShell - Be a PowerShell Hero - SPFest workshopIntroduction to PowerShell - Be a PowerShell Hero - SPFest workshop
Introduction to PowerShell - Be a PowerShell Hero - SPFest workshop
 
PowerShell for the Anxious ITPro
PowerShell for the Anxious ITProPowerShell for the Anxious ITPro
PowerShell for the Anxious ITPro
 
VMware Automation, PowerCLI presented at the Northern California PSUG
VMware Automation, PowerCLI presented at the Northern California PSUGVMware Automation, PowerCLI presented at the Northern California PSUG
VMware Automation, PowerCLI presented at the Northern California PSUG
 
PowerShell for SharePoint Admins
PowerShell for SharePoint AdminsPowerShell for SharePoint Admins
PowerShell for SharePoint Admins
 
Setting Up CircleCI Workflows for Your Salesforce Apps
Setting Up CircleCI Workflows for Your Salesforce AppsSetting Up CircleCI Workflows for Your Salesforce Apps
Setting Up CircleCI Workflows for Your Salesforce Apps
 
Power shell training
Power shell trainingPower shell training
Power shell training
 
Power shell for sp admins
Power shell for sp adminsPower shell for sp admins
Power shell for sp admins
 
PowerShell Workshop Series: Session 2
PowerShell Workshop Series: Session 2PowerShell Workshop Series: Session 2
PowerShell Workshop Series: Session 2
 
Windows 2012 R2 Multi Server Management
Windows 2012 R2 Multi Server ManagementWindows 2012 R2 Multi Server Management
Windows 2012 R2 Multi Server Management
 
VMworld Europe 2014: Taking Reporting and Command Line Automation to the Next...
VMworld Europe 2014: Taking Reporting and Command Line Automation to the Next...VMworld Europe 2014: Taking Reporting and Command Line Automation to the Next...
VMworld Europe 2014: Taking Reporting and Command Line Automation to the Next...
 
PowerShell for Penetration Testers
PowerShell for Penetration TestersPowerShell for Penetration Testers
PowerShell for Penetration Testers
 
Sql Server & PowerShell
Sql Server & PowerShellSql Server & PowerShell
Sql Server & PowerShell
 
2019 Blackhat Booth Presentation - PowerUpSQL
2019 Blackhat Booth Presentation - PowerUpSQL2019 Blackhat Booth Presentation - PowerUpSQL
2019 Blackhat Booth Presentation - PowerUpSQL
 
PowerShell-1
PowerShell-1PowerShell-1
PowerShell-1
 

More from VMworld

VMworld 2015: Virtual Volumes Technical Deep Dive
VMworld 2015: Virtual Volumes Technical Deep DiveVMworld 2015: Virtual Volumes Technical Deep Dive
VMworld 2015: Virtual Volumes Technical Deep DiveVMworld
 
VMworld 2015: The Best SDDC!
VMworld 2015: The Best SDDC!VMworld 2015: The Best SDDC!
VMworld 2015: The Best SDDC!VMworld
 
VMworld 2015: Conversation with the VMware CIO Suggestions on being an IT Leader
VMworld 2015: Conversation with the VMware CIO Suggestions on being an IT LeaderVMworld 2015: Conversation with the VMware CIO Suggestions on being an IT Leader
VMworld 2015: Conversation with the VMware CIO Suggestions on being an IT LeaderVMworld
 
VMware 2015: Next Horizon for Cloud Networking and Security
VMware 2015: Next Horizon for Cloud Networking and SecurityVMware 2015: Next Horizon for Cloud Networking and Security
VMware 2015: Next Horizon for Cloud Networking and SecurityVMworld
 
VMworld 2015: VMware NSX Deep Dive
VMworld 2015: VMware NSX Deep DiveVMworld 2015: VMware NSX Deep Dive
VMworld 2015: VMware NSX Deep DiveVMworld
 
VMworld 2015: vSphere Distributed Switch 6 –Technical Deep Dive
VMworld 2015: vSphere Distributed Switch 6 –Technical Deep DiveVMworld 2015: vSphere Distributed Switch 6 –Technical Deep Dive
VMworld 2015: vSphere Distributed Switch 6 –Technical Deep DiveVMworld
 
VMworld 2015: Introducing Application Self service with Networking and Security
VMworld 2015: Introducing Application Self service with Networking and SecurityVMworld 2015: Introducing Application Self service with Networking and Security
VMworld 2015: Introducing Application Self service with Networking and SecurityVMworld
 

More from VMworld (7)

VMworld 2015: Virtual Volumes Technical Deep Dive
VMworld 2015: Virtual Volumes Technical Deep DiveVMworld 2015: Virtual Volumes Technical Deep Dive
VMworld 2015: Virtual Volumes Technical Deep Dive
 
VMworld 2015: The Best SDDC!
VMworld 2015: The Best SDDC!VMworld 2015: The Best SDDC!
VMworld 2015: The Best SDDC!
 
VMworld 2015: Conversation with the VMware CIO Suggestions on being an IT Leader
VMworld 2015: Conversation with the VMware CIO Suggestions on being an IT LeaderVMworld 2015: Conversation with the VMware CIO Suggestions on being an IT Leader
VMworld 2015: Conversation with the VMware CIO Suggestions on being an IT Leader
 
VMware 2015: Next Horizon for Cloud Networking and Security
VMware 2015: Next Horizon for Cloud Networking and SecurityVMware 2015: Next Horizon for Cloud Networking and Security
VMware 2015: Next Horizon for Cloud Networking and Security
 
VMworld 2015: VMware NSX Deep Dive
VMworld 2015: VMware NSX Deep DiveVMworld 2015: VMware NSX Deep Dive
VMworld 2015: VMware NSX Deep Dive
 
VMworld 2015: vSphere Distributed Switch 6 –Technical Deep Dive
VMworld 2015: vSphere Distributed Switch 6 –Technical Deep DiveVMworld 2015: vSphere Distributed Switch 6 –Technical Deep Dive
VMworld 2015: vSphere Distributed Switch 6 –Technical Deep Dive
 
VMworld 2015: Introducing Application Self service with Networking and Security
VMworld 2015: Introducing Application Self service with Networking and SecurityVMworld 2015: Introducing Application Self service with Networking and Security
VMworld 2015: Introducing Application Self service with Networking and Security
 

Recently uploaded

Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Hyundai Motor Group
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 

Recently uploaded (20)

Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2Next-generation AAM aircraft unveiled by Supernal, S-A2
Next-generation AAM aircraft unveiled by Supernal, S-A2
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 

VMworld 2016: Getting Started with PowerShell and PowerCLI for Your VMware Enviornment

  • 1. Getting Started with PowerShell and PowerCLI for Your VMware Environment Kyle Ruddy, VMware, Inc Chris Wahl, Rubrik INF8038 #INF8038
  • 2. • This presentation may contain product features that are currently under development. • This overview of new technology represents no commitment from VMware to deliver these features in any generally available product. • Features are subject to change, and must not be included in contracts, purchase orders, or sales agreements of any kind. • Technical feasibility and market demand will affect final delivery. • Pricing and packaging for any new technologies or features discussed or presented have not been determined. Disclaimer CONFIDENTIAL 2
  • 3. Who is Kyle Ruddy? Writer GitHub Podcast Twitter @ ThatCouldBeAProblem.com @ github.com/kmruddy @ vBrownBag.com @kmruddy Senior Technical Marketing Engineer, VMware
  • 4. Who is @ChrisWahl? Writer Host Instructor Evangelist Microsoft VMware @ WahlNetwork.com @ DatanautsPodcast.com @ Pluralsight.com @ Rubrik.com MVP (PowerShell) VCDX (DCV & NV)
  • 5. 5 Agenda • What are PowerShell and PowerCLI? • The Lingo Dictionary • Setup and Configuration • Starting to Code • Writing Logic Statements
  • 6. What are PowerShell and PowerCLI? 6
  • 7. 7 “Windows PowerShell is a task automation and configuration management framework from Microsoft, consisting of a command-line shell and associated scripting language built on the .NET Framework.” https://en.wikipedia.org/wiki/Windows_PowerShell
  • 8. 8 PowerShell • A simple and straight-forward path to automation – Already installed on all modern Windows Operating Systems – Integrated and rich help system • Alpha build available for Linux and MacOS – https://github.com/PowerShell/PowerShell
  • 9. 9 PowerShell • Modular and object-oriented – The best of a programming language melded with a scripting language – True portability of code via modules (and snap-ins)
  • 10. 10 VMware vSphere PowerCLI • VMware’s command-line and scripting tool built on Windows PowerShell • Features more than 500 cmdlets for managing and automating vSphere, vCloud, and Horizon environments • One of the most robust and complete PowerShell deployments in the world
  • 12. 12 What is a Module? • Set of related Windows PowerShell functionalities, grouped together as a convenient unit • Usually saved in a single directory • Example Locations: – DocumentsWindowsPowerShellModules – Program FilesWindowsPowerShellModules – Windowssystem32WindowsPowerShellv1.0Modules
  • 13. 13 What is a Module? • No installation required – Just plop it into a path recognized by $env:PSModulePath
  • 14. 14 What is a Module Manifest? • PSD1 extension • Describes how the module was constructed • Identifies functions / cmdlets / variables / aliases to export • DSC resources • PowerShell Gallery data
  • 15. 15
  • 17. 17 What is a snap-in? • For our intents and purposes … • Precursor to Modules – Must be written in .NET – Must be available as an Assembly – Installed (not copied) – Puts keys in the registry • Try to avoid them!
  • 18. 18 What is a Function? • List of Windows PowerShell statements that has a name that you assign • Can be called by name – Define a function named “Get-SquarePants” • Load it in a module or dot source it – Dot sourcing = . .Get-SquarePants.ps1 – Now you can type Get-SquarePants and it will execute
  • 19. 19 Function – Descriptive Details <# .SYNOPSIS <Overview of script> .DESCRIPTION <Brief description of script> .PARAMETER <Parameter_Name> <Brief description of parameter input required. Repeat this attribute if required> .INPUTS <Inputs if any, otherwise state None> .OUTPUTS <Outputs if any, otherwise state None - example: Log file stored in C:WindowsTemp<name>.log> .NOTES Version: 1.0 Author: <Name> Creation Date: <Date> Purpose/Change: Initial script development .EXAMPLE <Example goes here. Repeat this attribute for more than one example> #>
  • 20. 20 Function – The Meat and Potatoes Function <FunctionName>{ Param() Begin{ Do this stuff first } Process{ Do this stuff as much as desired } End{ Do this stuff last } }
  • 21. 21 What is a Script? • A much less fancy version of a function – Just the “Do this stuff as much as desired” part • Cannot be called by name like a function can • Handy for ad-hoc work • Suggestion! – Focus on writing functions, not scripts – Use scripts in the ISE for testing code snipets
  • 23. 23 Setting up PowerShell • Native to all modern Windows deployments • Latest version is 5.0 – Use $PSVersionTable to see what you’re running
  • 24. 24 Update using Windows Management Framework 5.0 • https://www.microsoft.com/en-us/download/details.aspx?id=50395
  • 25.  Console  The command line interface  Microsoft.PowerShell_profile.ps1  ISE  Integrated Scripting Environment  Microsoft.PowerShellISE_profile.ps1  Console + ISE  profile.ps1 Profiles make life easier and happier Set up your profile
  • 26.  Current User: %USERPROFILE%DocumentsWindowsPowerShell  All Users: %WINDIR%System32WindowsPowerShellv1.0 Profiles make life easier and happier Drop in your profile
  • 27. Set-ExecutionPolicy Bypass Set-Location C:DropboxCode if ($psISE) { Start-Steroids Clear-Host Write-Host 'BEAST MODE (╯°□°)╯︵ ┻━┻' } Write yourself fun messages Self motivation for the win!
  • 28. Set-ExecutionPolicy Bypass Set-Location C:DropboxCode if ($psISE) { Start-Steroids Clear-Host Write-Host 'BEAST MODE (╯°□°)╯︵ ┻━┻' } Write yourself fun messages Self motivation for the win!
  • 29. 29 Where do I get PowerCLI from? Start at: vmware.com/go/powercli
  • 30. 30 What version of PowerShell and PowerCLI do I want? • PowerShell – Version 5 recommended – Version 3 minimum • PowerCLI – Newest version is always recommended • Prerequisites – .NET Framework 4.5.x
  • 31. 31 How do I install PowerCLI? What about updates? • Download the newest version of VMware vSphere PowerCLI • Execute the downloaded PowerCLI installer file • If upgrading: – Acknowledge an earlier version of PowerCLI exists, click OK
  • 32. 32 How do I install PowerCLI? What about updates? • On the Welcome page, click Next. • Accept the license agreement terms, click Next. • On the Custom Setup page: – Select the PowerCLI components you want to install. – (Optional) To change the default install location for VMware vSphere PowerCLI, click Change and select a different Destination Folder. – Click Next.
  • 33. 33 How do I install PowerCLI? What about updates? • On the Ready to Install the Program page, click Install to proceed with the installation. • Click Finish to complete the installation process.
  • 34. 34 Initialization of PowerCLI • Shortcuts vs native PowerShell console • PCLI Initialization script
  • 37. 37 Identify safe cmdlets and begin pulling data from vSphere • Safe = Does not modify data
  • 38. 38 Safe vs Non-safe cmdlets • Suggest starting with cmdlets that pull or display data – These are “Safe” in that they are unable to modify data • This is helpful for learning the PowerShell syntax – Never ending journey 
  • 39. 39 WhatIf and Confirm • Extra safeguards for you to use! • Whatif – Shows you what WOULD happen without actually modifying data – Switch • Confirm – Asks you to confirm before any changes are made – Boolean ($true or $false)
  • 41. 41 Common Verbs • Cmdlets use properly formatted verbs – Use Get-Verb to see the available options • Most features follow a very simple pattern – Get = Gather data – Set = Change data – New = Create data – Remove = Delete data
  • 43. 43 Sample Use Case • Cluster configuration – What values are currently configured? – Let’s change a few of them to match our desired state • DRS Settings – HA is Enabled – DRS Automation Level is Fully Automated
  • 44. 44 Gather the Data # Variables $cluster = 'Demo' # Gather Cluster Data $clusterConfig = Get-Cluster -Name $cluster
  • 45. 45 Results are Stored as Objects
  • 46. 46 Decision Making Process • Add logic to test these values! if ($clusterConfig.DrsAutomationLevel -ne 'FullyAutomated') { Write-Warning -Message 'DRS Automation Level is wrong!' }
  • 47. 47 Decision Making Process • Add logic to test these values! if ($clusterConfig.DrsAutomationLevel -ne 'FullyAutomated') { Write-Warning -Message 'DRS Automation Level is wrong!' Set-Cluster -DrsAutomationLevel FullyAutomated }
  • 48. 48 Reference Links • The Complete Guide to PowerShell Punctuation – https://www.simple-talk.com/sysadmin/powershell/the-complete- guide-to-powershell-punctuation/ • PowerCLI 6.3 R1 Reference Poster – http://vmware.com/go/posters
  • 49. Thank you! Kyle Ruddy – Tech Marketing Ninja, VMware Chris Wahl – Technical Evangelist, Rubrik