SlideShare a Scribd company logo
Managing the Infrastructure
Stack with PowerShell
Josh Atwell
Developer Advocate
SolidFire, now part of NetApp
@josh_atwell
#PSHSUMMIT
Celebrating 10 Years of PowerShell
2006 - 2016
• Jeffrey Snover
• Kenneth Hansen
• Lee Holmes
• Narayanan Lakshmanan
• Hemant Mahawar
• Bruce Payette
• Hitesh Raigandhi
• Dan Travison
• Jim Truher
• Krishna Vutukuri
Congratulations to
the team members
who’ve been there
since the beginning…
...and thanks for all
the great work!
github.com/joshatwell
Josh.Atwell@NetApp.com
@josh_atwell
Why PowerShell the Stack?
Why wouldn’t you? PowerShell ALL the things!
Twitter Poll
I polled twitter to see how many layers
people are managing with PowerShell
We Now Have
• More Layers
• More complexity
• Consumption models
have shifted
Seeking
• Management at Scale
• DevOps / Lean Ops
• More IT as a Service
Physical Hardware
Operating System
App
Virtualization
NSX
ACI
vCenter Server
vRealize Suite
Orchestrator
Operating System
App App
VIO
Hyper-V
System Center
Orchestrator
Let’s Start with the Tools
When you’re a hammer every problem is a nail.
More APIs = More PowerShell
Growth of infrastructure extensibility means more opportunities for PowerShell and its users
Infrastructure Tools
• PowerShell
• VMware PowerCLI
• OpenStack PoshShell
• Cisco UCS Powertool
• HP Scripting Tools for
PowerShell
• SolidFire PowerShell Tools
• NetApp PowerShell Toolkit
• Community
• PowerNSX
• EMC {Code}
Physical Hardware
Operating System
App
Virtualization
NSX
ACI
vCenter Server
vRealize Suite
Orchestrator
Operating System
App App
VIO
Hyper-V
System Center
Orchestrator
Use Cases
What to do with this toolbox
PowerShelling Stack
Duh
• Reporting
• Implementation
• DevOps
• Configuration
• Extending Tools
Physical
Operating System
App
Virtualization
Virtual Switch
Uplink
VLAN
MTU
Ethernet Port
Switch Port
Storage
Adapter
Physical
Operating System
App
Virtualization
VMDK / VHD
Datastore
Storage
Volume/Lun
Disk / Mount
Hard Drives
Which VMDK?
Which Datastore?
Which Lun?
Process{
$scsiID = ((Get-ScsiLun -Datastore $datastore).CanonicalName).Split(".")[1]
$result = Get-SFVolume | Where{$_.ScsiNAAdeviceID -eq $scsiID}
Return $result
}
DMZDSC in the DMZ
Operating System
App DSC
vCenter Server
ESXi
DSC
DSC
VMware Tools
https://github.com/DevOpsForVMwareAdministrators/powershell-dsc
?
# Copy the script to the designated directory on
target VM
Copy-VMGuestFile -Source $script -Destination
$mofpath -LocalToGuest -VM $vm -
HostCredential $cred -Server $vcenter -
GuestCredential $guestcred
# Invoke the copied script on the target VM
Invoke-VMScript -ScriptText $moffile -VM $vm -
HostCredential $cred -Server
$global:DefaultVIServer -GuestCredential
$guestcred
No Open Ports
PowerActions
• Embeds PowerCLI with
vSphere Web Client
• Extend web client
capabilities
Let’s learn some cmdlets
Just Kidding. Let’s talk challenges
Core Challenges
• Managing Multiple
Modules/Tools
• Relationship Mapping
• Scale
Multiple Providers
• PSSnapin vs Modules
• Each Vendor has an installer
• $env:PSModulePath
Defaults
• $homeDocumentsWindowsPow
erShellModules;
$pshomeModules.
Physical
Operating System
App
Virtualization
VMDK / VHD
Datastore
Storage
Volume/Lun
Disk / Mount
Hard Drives
Which VMDK?
Which Datastore?
Which Lun?
Query for that information can be cumbersome
Collect All | Filter | Grab Piece you really wanted
Physical
Operating System
App
Virtualization
Virtual Switch
Uplink
VLAN
MTU
Ethernet Port
Switch Port
Adapter
Application DNA
Applying Relationship Maps
Physical
Operating
System
Virtualization
Virtual Switch
Uplink
Ethernet Port
Switch Port
Storage
Adapter
VMDK / VHD
Datastore
Volume/Lun
Disk / Mount
Hard Drives
JSON
XML
CSV
SQL DB
vRAM
Sys Memory
pRAM
Server
ESXi Host
Example
$scsiID = ((Get-ScsiLun -Datastore $datastore).CanonicalName).Split(".")[1]
$result = Get-SFVolume | Where{$_.ScsiNAAdeviceID -eq $scsiID}
$result | ConvertTo-JSON | Set-Content Datastore-Volume.JSON
$global:DSVol = (Get-Content Datastore-Volume.JSON) –join “`n” | ConvertFrom-JSON
$scsiID = ($global:DSVol | Where{$_.DatastoreName –eq ‘DatastoreName’}).scsiID
$result = Get-SFVolume | Where{$_.ScsiNAAdeviceID -eq $scsiID}
Why App DNA?
• Quicker Reporting
• Shorter Time to Resolution
• Faster Implementation
• Improve Value Stream
• Dynamic Parameter Sets
• Faster PowerActions or
vRO calls.
Growth Areas
• More DSC Resources
• Cisco UCS PowerTool DSC
• Moving away from PSSnapins
Questions?

More Related Content

What's hot

Microservices from operations aspect
Microservices from operations aspectMicroservices from operations aspect
Microservices from operations aspect
David Papp
 
How the Cloud Changes Business Solution Design and Delivery
How the Cloud Changes Business Solution Design and DeliveryHow the Cloud Changes Business Solution Design and Delivery
How the Cloud Changes Business Solution Design and Delivery
SPC Adriatics
 
Microservices environment in production
Microservices environment in productionMicroservices environment in production
Microservices environment in production
David Papp
 
Microsoft Flow and PowerShell combined to automate everything
Microsoft Flow and PowerShell combined to automate everythingMicrosoft Flow and PowerShell combined to automate everything
Microsoft Flow and PowerShell combined to automate everything
Jaap Brasser
 
WinOps Conf 2016 - Michael Greene - Release Pipelines
WinOps Conf 2016 - Michael Greene - Release PipelinesWinOps Conf 2016 - Michael Greene - Release Pipelines
WinOps Conf 2016 - Michael Greene - Release Pipelines
WinOps Conf
 
Discover Microsoft's Cloud Automation Suite
Discover Microsoft's Cloud Automation SuiteDiscover Microsoft's Cloud Automation Suite
Discover Microsoft's Cloud Automation Suite
Jaap Brasser
 
How Applications Manager helps with application performance monitoring
How Applications Manager helps with application performance monitoringHow Applications Manager helps with application performance monitoring
How Applications Manager helps with application performance monitoring
ManageEngine, Zoho Corporation
 
Using Chat Automation - ChatOps
Using Chat Automation - ChatOpsUsing Chat Automation - ChatOps
Using Chat Automation - ChatOps
Jaap Brasser
 
Fluent validation
Fluent validationFluent validation
Fluent validation
Saravanan Subburayal
 
From PowerShell Function to Serverless code with Azure Functions
From PowerShell Function to Serverless code with Azure FunctionsFrom PowerShell Function to Serverless code with Azure Functions
From PowerShell Function to Serverless code with Azure Functions
Jaap Brasser
 
Using Microsoft Flow for IT Professionals
Using Microsoft Flow for IT ProfessionalsUsing Microsoft Flow for IT Professionals
Using Microsoft Flow for IT Professionals
Jaap Brasser
 
Automate it with Azure Functions
Automate it with Azure FunctionsAutomate it with Azure Functions
Automate it with Azure Functions
Jaap Brasser
 
Automate Anything with Microsoft Flow
Automate Anything with Microsoft FlowAutomate Anything with Microsoft Flow
Automate Anything with Microsoft Flow
Jaap Brasser
 
Infrastructure as Code
Infrastructure as CodeInfrastructure as Code
Infrastructure as Code
Robert Greiner
 
Workshop automating with microsoft flow
Workshop   automating with microsoft flowWorkshop   automating with microsoft flow
Workshop automating with microsoft flow
Jaap Brasser
 
Durable Azure Functions
Durable Azure FunctionsDurable Azure Functions
Durable Azure Functions
Pushkar Saraf
 
Serverless with Azure Functions
Serverless with Azure FunctionsServerless with Azure Functions
Serverless with Azure Functions
Andreas Willich
 
Serverless: The future of application delivery
Serverless: The future of application deliveryServerless: The future of application delivery
Serverless: The future of application delivery
Doug Vanderweide
 
Microservices in Azure
Microservices in AzureMicroservices in Azure
Microservices in Azure
Doug Vanderweide
 
Create awesome Azure Functions with PowerShell
Create awesome Azure Functions with PowerShellCreate awesome Azure Functions with PowerShell
Create awesome Azure Functions with PowerShell
Jaap Brasser
 

What's hot (20)

Microservices from operations aspect
Microservices from operations aspectMicroservices from operations aspect
Microservices from operations aspect
 
How the Cloud Changes Business Solution Design and Delivery
How the Cloud Changes Business Solution Design and DeliveryHow the Cloud Changes Business Solution Design and Delivery
How the Cloud Changes Business Solution Design and Delivery
 
Microservices environment in production
Microservices environment in productionMicroservices environment in production
Microservices environment in production
 
Microsoft Flow and PowerShell combined to automate everything
Microsoft Flow and PowerShell combined to automate everythingMicrosoft Flow and PowerShell combined to automate everything
Microsoft Flow and PowerShell combined to automate everything
 
WinOps Conf 2016 - Michael Greene - Release Pipelines
WinOps Conf 2016 - Michael Greene - Release PipelinesWinOps Conf 2016 - Michael Greene - Release Pipelines
WinOps Conf 2016 - Michael Greene - Release Pipelines
 
Discover Microsoft's Cloud Automation Suite
Discover Microsoft's Cloud Automation SuiteDiscover Microsoft's Cloud Automation Suite
Discover Microsoft's Cloud Automation Suite
 
How Applications Manager helps with application performance monitoring
How Applications Manager helps with application performance monitoringHow Applications Manager helps with application performance monitoring
How Applications Manager helps with application performance monitoring
 
Using Chat Automation - ChatOps
Using Chat Automation - ChatOpsUsing Chat Automation - ChatOps
Using Chat Automation - ChatOps
 
Fluent validation
Fluent validationFluent validation
Fluent validation
 
From PowerShell Function to Serverless code with Azure Functions
From PowerShell Function to Serverless code with Azure FunctionsFrom PowerShell Function to Serverless code with Azure Functions
From PowerShell Function to Serverless code with Azure Functions
 
Using Microsoft Flow for IT Professionals
Using Microsoft Flow for IT ProfessionalsUsing Microsoft Flow for IT Professionals
Using Microsoft Flow for IT Professionals
 
Automate it with Azure Functions
Automate it with Azure FunctionsAutomate it with Azure Functions
Automate it with Azure Functions
 
Automate Anything with Microsoft Flow
Automate Anything with Microsoft FlowAutomate Anything with Microsoft Flow
Automate Anything with Microsoft Flow
 
Infrastructure as Code
Infrastructure as CodeInfrastructure as Code
Infrastructure as Code
 
Workshop automating with microsoft flow
Workshop   automating with microsoft flowWorkshop   automating with microsoft flow
Workshop automating with microsoft flow
 
Durable Azure Functions
Durable Azure FunctionsDurable Azure Functions
Durable Azure Functions
 
Serverless with Azure Functions
Serverless with Azure FunctionsServerless with Azure Functions
Serverless with Azure Functions
 
Serverless: The future of application delivery
Serverless: The future of application deliveryServerless: The future of application delivery
Serverless: The future of application delivery
 
Microservices in Azure
Microservices in AzureMicroservices in Azure
Microservices in Azure
 
Create awesome Azure Functions with PowerShell
Create awesome Azure Functions with PowerShellCreate awesome Azure Functions with PowerShell
Create awesome Azure Functions with PowerShell
 

Viewers also liked

DevOps and Groupthink An Oxymoron?
DevOps and Groupthink An Oxymoron?DevOps and Groupthink An Oxymoron?
DevOps and Groupthink An Oxymoron?
Qualitest
 
Using Infrastructure as an Accelerator of DevOps Maturity
Using Infrastructure as an Accelerator of DevOps MaturityUsing Infrastructure as an Accelerator of DevOps Maturity
Using Infrastructure as an Accelerator of DevOps Maturity
Josh Atwell
 
Work + Family +Self + Fast Paced Industry = ¯\_(ツ)_/¯
Work + Family +Self + Fast Paced Industry = ¯\_(ツ)_/¯Work + Family +Self + Fast Paced Industry = ¯\_(ツ)_/¯
Work + Family +Self + Fast Paced Industry = ¯\_(ツ)_/¯
Josh Atwell
 
Josh Atwell - Infrastructure Extensibility at Home and in DevOps
Josh Atwell - Infrastructure Extensibility at Home and in DevOpsJosh Atwell - Infrastructure Extensibility at Home and in DevOps
Josh Atwell - Infrastructure Extensibility at Home and in DevOps
Kevin Cross
 
Philipp Krenn - NoSQL Means No Security?
Philipp Krenn - NoSQL Means No Security?Philipp Krenn - NoSQL Means No Security?
Philipp Krenn - NoSQL Means No Security?
Kevin Cross
 
The API Side of Monitoring
The API Side of MonitoringThe API Side of Monitoring
The API Side of Monitoring
Nordic APIs
 
VMUG Melbourne - DevOps - Not Just for Open Source and Unicorns
VMUG Melbourne - DevOps - Not Just for Open Source and UnicornsVMUG Melbourne - DevOps - Not Just for Open Source and Unicorns
VMUG Melbourne - DevOps - Not Just for Open Source and Unicorns
Josh Atwell
 
Using Machine Learning to Optimize DevOps Practices
Using Machine Learning to Optimize DevOps PracticesUsing Machine Learning to Optimize DevOps Practices
Using Machine Learning to Optimize DevOps Practices
Peter Varhol
 
Devopsdays Edinburgh 2017 - Ignite talk - Swarming
Devopsdays Edinburgh 2017 - Ignite talk - SwarmingDevopsdays Edinburgh 2017 - Ignite talk - Swarming
Devopsdays Edinburgh 2017 - Ignite talk - Swarming
Jon Stevens-Hall
 

Viewers also liked (9)

DevOps and Groupthink An Oxymoron?
DevOps and Groupthink An Oxymoron?DevOps and Groupthink An Oxymoron?
DevOps and Groupthink An Oxymoron?
 
Using Infrastructure as an Accelerator of DevOps Maturity
Using Infrastructure as an Accelerator of DevOps MaturityUsing Infrastructure as an Accelerator of DevOps Maturity
Using Infrastructure as an Accelerator of DevOps Maturity
 
Work + Family +Self + Fast Paced Industry = ¯\_(ツ)_/¯
Work + Family +Self + Fast Paced Industry = ¯\_(ツ)_/¯Work + Family +Self + Fast Paced Industry = ¯\_(ツ)_/¯
Work + Family +Self + Fast Paced Industry = ¯\_(ツ)_/¯
 
Josh Atwell - Infrastructure Extensibility at Home and in DevOps
Josh Atwell - Infrastructure Extensibility at Home and in DevOpsJosh Atwell - Infrastructure Extensibility at Home and in DevOps
Josh Atwell - Infrastructure Extensibility at Home and in DevOps
 
Philipp Krenn - NoSQL Means No Security?
Philipp Krenn - NoSQL Means No Security?Philipp Krenn - NoSQL Means No Security?
Philipp Krenn - NoSQL Means No Security?
 
The API Side of Monitoring
The API Side of MonitoringThe API Side of Monitoring
The API Side of Monitoring
 
VMUG Melbourne - DevOps - Not Just for Open Source and Unicorns
VMUG Melbourne - DevOps - Not Just for Open Source and UnicornsVMUG Melbourne - DevOps - Not Just for Open Source and Unicorns
VMUG Melbourne - DevOps - Not Just for Open Source and Unicorns
 
Using Machine Learning to Optimize DevOps Practices
Using Machine Learning to Optimize DevOps PracticesUsing Machine Learning to Optimize DevOps Practices
Using Machine Learning to Optimize DevOps Practices
 
Devopsdays Edinburgh 2017 - Ignite talk - Swarming
Devopsdays Edinburgh 2017 - Ignite talk - SwarmingDevopsdays Edinburgh 2017 - Ignite talk - Swarming
Devopsdays Edinburgh 2017 - Ignite talk - Swarming
 

Similar to Managing the Infrastructure Stack with PowerShell

Sql Server & PowerShell
Sql Server & PowerShellSql Server & PowerShell
Sql Server & PowerShell
Aaron Shilo
 
Chef andwindows reactor
Chef andwindows reactorChef andwindows reactor
Chef andwindows reactor
Chef
 
PowerShell Data as File System
PowerShell Data as File SystemPowerShell Data as File System
PowerShell Data as File System
Ravikanth Chaganti
 
Power shell for sp admins
Power shell for sp adminsPower shell for sp admins
Power shell for sp admins
Rick Taylor
 
Wsv315 Windows Power Shell For Beginners
Wsv315 Windows Power Shell For BeginnersWsv315 Windows Power Shell For Beginners
Wsv315 Windows Power Shell For Beginners
jsnover1
 
DevOps on Windows: How to Deploy Complex Windows Workloads | AWS Public Secto...
DevOps on Windows: How to Deploy Complex Windows Workloads | AWS Public Secto...DevOps on Windows: How to Deploy Complex Windows Workloads | AWS Public Secto...
DevOps on Windows: How to Deploy Complex Windows Workloads | AWS Public Secto...
Amazon Web Services
 
Continuous feature-development
Continuous feature-developmentContinuous feature-development
Continuous feature-development
nhm taveer hossain khan
 
Introducing AWS OpsWorks, a DevOps application management platform
Introducing AWS OpsWorks, a DevOps application management platformIntroducing AWS OpsWorks, a DevOps application management platform
Introducing AWS OpsWorks, a DevOps application management platform
Amazon Web Services
 
Chef Automate - Azure Sydney User Group
Chef Automate - Azure Sydney User GroupChef Automate - Azure Sydney User Group
Chef Automate - Azure Sydney User Group
Matt Ray
 
Desired state-configuration-ravikanth-august-2013-vtc india
Desired state-configuration-ravikanth-august-2013-vtc indiaDesired state-configuration-ravikanth-august-2013-vtc india
Desired state-configuration-ravikanth-august-2013-vtc india
Ravikanth Chaganti
 
Introduction to Infrastructure as Code & Automation / Introduction to Chef
Introduction to Infrastructure as Code & Automation / Introduction to ChefIntroduction to Infrastructure as Code & Automation / Introduction to Chef
Introduction to Infrastructure as Code & Automation / Introduction to Chef
Nathen Harvey
 
Containerisation Hack of a Legacy Software Solution - Alex Carter - CodeMill ...
Containerisation Hack of a Legacy Software Solution - Alex Carter - CodeMill ...Containerisation Hack of a Legacy Software Solution - Alex Carter - CodeMill ...
Containerisation Hack of a Legacy Software Solution - Alex Carter - CodeMill ...
CodeMill digital skills
 
Experiences using CouchDB inside Microsoft's Azure team
Experiences using CouchDB inside Microsoft's Azure teamExperiences using CouchDB inside Microsoft's Azure team
Experiences using CouchDB inside Microsoft's Azure team
Brian Benz
 
WinOps Conf 2016 - Jeffrey Snover - The DevOpsification of Windows Server
WinOps Conf 2016 - Jeffrey Snover - The DevOpsification of Windows ServerWinOps Conf 2016 - Jeffrey Snover - The DevOpsification of Windows Server
WinOps Conf 2016 - Jeffrey Snover - The DevOpsification of Windows Server
WinOps Conf
 
Vagrant for Effective DevOps Culture
Vagrant for Effective DevOps CultureVagrant for Effective DevOps Culture
Vagrant for Effective DevOps Culture
Vaidik Kapoor
 
NC Wisconsin SuperVMUG 2019 Tools and Tips
NC Wisconsin SuperVMUG 2019 Tools and TipsNC Wisconsin SuperVMUG 2019 Tools and Tips
NC Wisconsin SuperVMUG 2019 Tools and Tips
Anthony Hook
 
Say Bye to VMware PowerCLI ! Time to "GOVC"
Say Bye to VMware PowerCLI ! Time to "GOVC"Say Bye to VMware PowerCLI ! Time to "GOVC"
Say Bye to VMware PowerCLI ! Time to "GOVC"
Ajeet Singh Raina
 
Managingvspherewiththevesi 091210144626-phpapp02
Managingvspherewiththevesi 091210144626-phpapp02Managingvspherewiththevesi 091210144626-phpapp02
Managingvspherewiththevesi 091210144626-phpapp02
Suresh Kumar
 
PowerShellForDBDevelopers
PowerShellForDBDevelopersPowerShellForDBDevelopers
PowerShellForDBDevelopers
Bryan Cafferky
 
DevOps and Microservice
DevOps and MicroserviceDevOps and Microservice
DevOps and Microservice
Inho Kang
 

Similar to Managing the Infrastructure Stack with PowerShell (20)

Sql Server & PowerShell
Sql Server & PowerShellSql Server & PowerShell
Sql Server & PowerShell
 
Chef andwindows reactor
Chef andwindows reactorChef andwindows reactor
Chef andwindows reactor
 
PowerShell Data as File System
PowerShell Data as File SystemPowerShell Data as File System
PowerShell Data as File System
 
Power shell for sp admins
Power shell for sp adminsPower shell for sp admins
Power shell for sp admins
 
Wsv315 Windows Power Shell For Beginners
Wsv315 Windows Power Shell For BeginnersWsv315 Windows Power Shell For Beginners
Wsv315 Windows Power Shell For Beginners
 
DevOps on Windows: How to Deploy Complex Windows Workloads | AWS Public Secto...
DevOps on Windows: How to Deploy Complex Windows Workloads | AWS Public Secto...DevOps on Windows: How to Deploy Complex Windows Workloads | AWS Public Secto...
DevOps on Windows: How to Deploy Complex Windows Workloads | AWS Public Secto...
 
Continuous feature-development
Continuous feature-developmentContinuous feature-development
Continuous feature-development
 
Introducing AWS OpsWorks, a DevOps application management platform
Introducing AWS OpsWorks, a DevOps application management platformIntroducing AWS OpsWorks, a DevOps application management platform
Introducing AWS OpsWorks, a DevOps application management platform
 
Chef Automate - Azure Sydney User Group
Chef Automate - Azure Sydney User GroupChef Automate - Azure Sydney User Group
Chef Automate - Azure Sydney User Group
 
Desired state-configuration-ravikanth-august-2013-vtc india
Desired state-configuration-ravikanth-august-2013-vtc indiaDesired state-configuration-ravikanth-august-2013-vtc india
Desired state-configuration-ravikanth-august-2013-vtc india
 
Introduction to Infrastructure as Code & Automation / Introduction to Chef
Introduction to Infrastructure as Code & Automation / Introduction to ChefIntroduction to Infrastructure as Code & Automation / Introduction to Chef
Introduction to Infrastructure as Code & Automation / Introduction to Chef
 
Containerisation Hack of a Legacy Software Solution - Alex Carter - CodeMill ...
Containerisation Hack of a Legacy Software Solution - Alex Carter - CodeMill ...Containerisation Hack of a Legacy Software Solution - Alex Carter - CodeMill ...
Containerisation Hack of a Legacy Software Solution - Alex Carter - CodeMill ...
 
Experiences using CouchDB inside Microsoft's Azure team
Experiences using CouchDB inside Microsoft's Azure teamExperiences using CouchDB inside Microsoft's Azure team
Experiences using CouchDB inside Microsoft's Azure team
 
WinOps Conf 2016 - Jeffrey Snover - The DevOpsification of Windows Server
WinOps Conf 2016 - Jeffrey Snover - The DevOpsification of Windows ServerWinOps Conf 2016 - Jeffrey Snover - The DevOpsification of Windows Server
WinOps Conf 2016 - Jeffrey Snover - The DevOpsification of Windows Server
 
Vagrant for Effective DevOps Culture
Vagrant for Effective DevOps CultureVagrant for Effective DevOps Culture
Vagrant for Effective DevOps Culture
 
NC Wisconsin SuperVMUG 2019 Tools and Tips
NC Wisconsin SuperVMUG 2019 Tools and TipsNC Wisconsin SuperVMUG 2019 Tools and Tips
NC Wisconsin SuperVMUG 2019 Tools and Tips
 
Say Bye to VMware PowerCLI ! Time to "GOVC"
Say Bye to VMware PowerCLI ! Time to "GOVC"Say Bye to VMware PowerCLI ! Time to "GOVC"
Say Bye to VMware PowerCLI ! Time to "GOVC"
 
Managingvspherewiththevesi 091210144626-phpapp02
Managingvspherewiththevesi 091210144626-phpapp02Managingvspherewiththevesi 091210144626-phpapp02
Managingvspherewiththevesi 091210144626-phpapp02
 
PowerShellForDBDevelopers
PowerShellForDBDevelopersPowerShellForDBDevelopers
PowerShellForDBDevelopers
 
DevOps and Microservice
DevOps and MicroserviceDevOps and Microservice
DevOps and Microservice
 

More from Josh Atwell

How to Be a Failure - DevOpsDays Raleigh
How to Be a Failure - DevOpsDays RaleighHow to Be a Failure - DevOpsDays Raleigh
How to Be a Failure - DevOpsDays Raleigh
Josh Atwell
 
Are you Being the Right Person for DevOps
Are you Being the Right Person for DevOps Are you Being the Right Person for DevOps
Are you Being the Right Person for DevOps
Josh Atwell
 
Adopting a Continual Improvement Mindset for IT
Adopting a Continual Improvement Mindset for ITAdopting a Continual Improvement Mindset for IT
Adopting a Continual Improvement Mindset for IT
Josh Atwell
 
vBrownBag US - What's New in vSphere 6 Automation
vBrownBag US - What's New in vSphere 6 AutomationvBrownBag US - What's New in vSphere 6 Automation
vBrownBag US - What's New in vSphere 6 Automation
Josh Atwell
 
Architecting the Agile Career
Architecting the Agile CareerArchitecting the Agile Career
Architecting the Agile Career
Josh Atwell
 
Automating the VMware Virtual Datacenter
Automating the VMware Virtual DatacenterAutomating the VMware Virtual Datacenter
Automating the VMware Virtual Datacenter
Josh Atwell
 
PowerCLI for the PowerShell Inclined
PowerCLI for the PowerShell InclinedPowerCLI for the PowerShell Inclined
PowerCLI for the PowerShell Inclined
Josh Atwell
 

More from Josh Atwell (7)

How to Be a Failure - DevOpsDays Raleigh
How to Be a Failure - DevOpsDays RaleighHow to Be a Failure - DevOpsDays Raleigh
How to Be a Failure - DevOpsDays Raleigh
 
Are you Being the Right Person for DevOps
Are you Being the Right Person for DevOps Are you Being the Right Person for DevOps
Are you Being the Right Person for DevOps
 
Adopting a Continual Improvement Mindset for IT
Adopting a Continual Improvement Mindset for ITAdopting a Continual Improvement Mindset for IT
Adopting a Continual Improvement Mindset for IT
 
vBrownBag US - What's New in vSphere 6 Automation
vBrownBag US - What's New in vSphere 6 AutomationvBrownBag US - What's New in vSphere 6 Automation
vBrownBag US - What's New in vSphere 6 Automation
 
Architecting the Agile Career
Architecting the Agile CareerArchitecting the Agile Career
Architecting the Agile Career
 
Automating the VMware Virtual Datacenter
Automating the VMware Virtual DatacenterAutomating the VMware Virtual Datacenter
Automating the VMware Virtual Datacenter
 
PowerCLI for the PowerShell Inclined
PowerCLI for the PowerShell InclinedPowerCLI for the PowerShell Inclined
PowerCLI for the PowerShell Inclined
 

Recently uploaded

Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Aggregage
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
SOFTTECHHUB
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
Zilliz
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Speck&Tech
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
Neo4j
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
Alpen-Adria-Universität
 
Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
Rohit Gautam
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
shyamraj55
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
Neo4j
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
Neo4j
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Vladimir Iglovikov, Ph.D.
 

Recently uploaded (20)

Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
 
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
 
Video Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the FutureVideo Streaming: Then, Now, and in the Future
Video Streaming: Then, Now, and in the Future
 
Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
 
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AIEnchancing adoption of Open Source Libraries. A case study on Albumentations.AI
Enchancing adoption of Open Source Libraries. A case study on Albumentations.AI
 

Managing the Infrastructure Stack with PowerShell

  • 1. Managing the Infrastructure Stack with PowerShell Josh Atwell Developer Advocate SolidFire, now part of NetApp @josh_atwell #PSHSUMMIT
  • 2. Celebrating 10 Years of PowerShell 2006 - 2016 • Jeffrey Snover • Kenneth Hansen • Lee Holmes • Narayanan Lakshmanan • Hemant Mahawar • Bruce Payette • Hitesh Raigandhi • Dan Travison • Jim Truher • Krishna Vutukuri Congratulations to the team members who’ve been there since the beginning… ...and thanks for all the great work!
  • 4. Why PowerShell the Stack? Why wouldn’t you? PowerShell ALL the things!
  • 5. Twitter Poll I polled twitter to see how many layers people are managing with PowerShell
  • 6. We Now Have • More Layers • More complexity • Consumption models have shifted Seeking • Management at Scale • DevOps / Lean Ops • More IT as a Service Physical Hardware Operating System App Virtualization NSX ACI vCenter Server vRealize Suite Orchestrator Operating System App App VIO Hyper-V System Center Orchestrator
  • 7. Let’s Start with the Tools When you’re a hammer every problem is a nail.
  • 8. More APIs = More PowerShell Growth of infrastructure extensibility means more opportunities for PowerShell and its users
  • 9. Infrastructure Tools • PowerShell • VMware PowerCLI • OpenStack PoshShell • Cisco UCS Powertool • HP Scripting Tools for PowerShell • SolidFire PowerShell Tools • NetApp PowerShell Toolkit • Community • PowerNSX • EMC {Code}
  • 10. Physical Hardware Operating System App Virtualization NSX ACI vCenter Server vRealize Suite Orchestrator Operating System App App VIO Hyper-V System Center Orchestrator
  • 11. Use Cases What to do with this toolbox
  • 12. PowerShelling Stack Duh • Reporting • Implementation • DevOps • Configuration • Extending Tools
  • 14. Physical Operating System App Virtualization VMDK / VHD Datastore Storage Volume/Lun Disk / Mount Hard Drives Which VMDK? Which Datastore? Which Lun? Process{ $scsiID = ((Get-ScsiLun -Datastore $datastore).CanonicalName).Split(".")[1] $result = Get-SFVolume | Where{$_.ScsiNAAdeviceID -eq $scsiID} Return $result }
  • 15. DMZDSC in the DMZ Operating System App DSC vCenter Server ESXi DSC DSC VMware Tools https://github.com/DevOpsForVMwareAdministrators/powershell-dsc ? # Copy the script to the designated directory on target VM Copy-VMGuestFile -Source $script -Destination $mofpath -LocalToGuest -VM $vm - HostCredential $cred -Server $vcenter - GuestCredential $guestcred # Invoke the copied script on the target VM Invoke-VMScript -ScriptText $moffile -VM $vm - HostCredential $cred -Server $global:DefaultVIServer -GuestCredential $guestcred No Open Ports
  • 16. PowerActions • Embeds PowerCLI with vSphere Web Client • Extend web client capabilities
  • 17. Let’s learn some cmdlets Just Kidding. Let’s talk challenges
  • 18. Core Challenges • Managing Multiple Modules/Tools • Relationship Mapping • Scale
  • 19. Multiple Providers • PSSnapin vs Modules • Each Vendor has an installer • $env:PSModulePath Defaults • $homeDocumentsWindowsPow erShellModules; $pshomeModules.
  • 20. Physical Operating System App Virtualization VMDK / VHD Datastore Storage Volume/Lun Disk / Mount Hard Drives Which VMDK? Which Datastore? Which Lun? Query for that information can be cumbersome Collect All | Filter | Grab Piece you really wanted
  • 22. Application DNA Applying Relationship Maps Physical Operating System Virtualization Virtual Switch Uplink Ethernet Port Switch Port Storage Adapter VMDK / VHD Datastore Volume/Lun Disk / Mount Hard Drives JSON XML CSV SQL DB vRAM Sys Memory pRAM Server ESXi Host
  • 23. Example $scsiID = ((Get-ScsiLun -Datastore $datastore).CanonicalName).Split(".")[1] $result = Get-SFVolume | Where{$_.ScsiNAAdeviceID -eq $scsiID} $result | ConvertTo-JSON | Set-Content Datastore-Volume.JSON $global:DSVol = (Get-Content Datastore-Volume.JSON) –join “`n” | ConvertFrom-JSON $scsiID = ($global:DSVol | Where{$_.DatastoreName –eq ‘DatastoreName’}).scsiID $result = Get-SFVolume | Where{$_.ScsiNAAdeviceID -eq $scsiID}
  • 24. Why App DNA? • Quicker Reporting • Shorter Time to Resolution • Faster Implementation • Improve Value Stream • Dynamic Parameter Sets • Faster PowerActions or vRO calls.
  • 25. Growth Areas • More DSC Resources • Cisco UCS PowerTool DSC • Moving away from PSSnapins