Gerenciamento de Servidores com PowerShell 3.0
Daniel Donda
Simples & Fácil
Cobertura completa
Robusto e escalável
Plataforma rica
Baseadas em padrões
PS 3.0 -gt PS 2.0
Daniel Donda
MVP Windows Expert-IT Pro
Twitter
@danieldonda
www.mcsesolution.com
Facebook
/mcsesolution
Gerenciamento de Servidores com
POWERSHELL 3.0
Gerenciamento do Windows Server
• No passado, o Windows Server foi um
excelente sistema operacional:
– Para um único servidor
– E seus dispositivos
• O Windows Server 2012 é um excelente
sistema operacional:
– Para muitos servidores e os dispositivos
conectados a eles. Sejam físicos ou virtuais.
Dentro e fora da organização.
Windows PowerShell 3.0
Windows PowerShell 3.0
fornece uma maneira abrangente,
flexível, e simples para automatizar a
administração de servidores
em sua rede
Otimizado para a nuvem
Robusto
Remoto
Ágil
PowerShell
Elástico
Padrões
Automatização
PowerShell 3.0
Simples & Fácil
Cobertura completa
Robusto e escalável
Plataforma rica
Baseadas em padrões
PS 3.0 -gt PS 2.0
PowerShell 3.0
Simples & Fácil
Cobertura completa
Robusto e escalável
Plataforma rica
Baseadas em padrões
PS 3.0 -gt PS 2.0
Simples e Fácil
•
•
•
Windows PowerShell ISE
– IntelliSense e TAB completion
Cmdlets
– Importação automática de Módulos
– Show-command
Help
– Help atualizável
– F1 contextual
– Get-Help –ShowWindow
• Sintaxe e linguagem
– Where e ForEach simplificado
Administração Delegada
• Session Configuration Files
– Criação simples
– Usa .psd1 (PowerShell Data Files)
• RunAs
– RunAsUser & RunAsPassword
– Sessões remotas com diferentes cred.
PowerShell 3.0
Simples & Facil
Cobertura completa
Robusto e escalável
Plataforma rica
Baseadas em padrões
PS 3.0 -gt PS 2.0
Cobertura Completa
• Windows Server 2008 R2
– 456 cmdlets
– 10 módulos
• Windows Server 2012
– ~2,430 cmdlets
– 85 módulos
Milhares de novos cmdlets
Jobs
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
–
ISE
–
–
–
Add-JobTrigger
Disable-JobTrigger
Enable-JobTrigger
Get-JobTrigger
New-JobTrigger
Remove-JobTrigger
Set-JobTrigger
Disable-ScheduledJob
Enable-ScheduledJob
Get-ScheduledJob
Register-ScheduledJob
Set-ScheduledJob
Unregister-ScheduledJob
Get-ScheduledJobOption
New-ScheduledJobOption
Set-ScheduledJobOption
Get-IseSnippet
Import-IseSnippet
New-IseSnippet
CIM
–
–
–
–
–
–
–
–
–
–
–
–
Workflow
Get-CimAssociatedInstance
Get-CimClass
Get-CimInstance
Get-CimSession
Invoke-CimMethod
New-CimInstance
New-CimSession
New-CimSessionOption
Register-CimIndicationEvent
Remove-CimInstance
Remove-CimSession
Set-CimInstance
Remoting
–
–
–
–
–
–
Connect-PSSession
Disconnect-PSSession
Receive-PSSession
New-PSSessionConfigurationFile
Test-PSSessionConfigurationFile
New-PSTransportOption
–
–
–
–
–
Web
–
–
–
–
Other
–
–
–
–
–
–
–
–
–
–
New-PSWorkflowExecutionOption
New-PSWorkflowSession
Invoke-AsWorkflow
Resume-Job
Suspend-Job
ConvertFrom-Json
ConvertTo-Json
Invoke-RestMethod
Invoke-WebRequest
New-WinEvent
Unblock-File
Show-Command
Rename-Computer
Save-Help
Update-Help
Get-TypeData
Remove-TypeData
Get-ControlPanelItem
Show-ControlPanelItem
Disponível em qualquer lugar
• Windows 8, Windows RT, & Windows Server 2012
Full Server
• Server Core
– Com ou sem Graphical Shell ou Graphical Management
Tools
• Windows Preinstallation Environment (WinPE) 4.0
• Windows Management Framework 3.0
– Windows Server 2008 / Windows 7 / Windows Server
2008 R2 (+Server Core)
PowerShell 3.0
Simples & Fácil
Cobertura completa
Robusto e escalável
Plataforma rica
Baseadas em padrões
PS 3.0 -gt PS 2.0
Windows PowerShell Workflow
• Multi-machine orchestration engine criado com Windows
Workflow Foundation e .NET 4.0
• É um mecanismo confiável que permite a execução de
tarefas de longa duração em múltiplas maquinas.
– Robusto: Permite Suspender e retomar fluxos de trabalho,
sobrevive máquina reiniciada
– Desempenho: O pool de conexões, otimização do fluxo de
trabalho, e de hospedagem compartilhada
– Escalável: Pode executar várias tarefas em paralelo,
parâmetros comuns para múltiplas maquinas.
– Confiável: Conexão automática e ação repetir com intervalos
configuráveis
– Familiar: O Workflow funciona como scripts do PowerShell
ou usando XAML, gerenciável através * Job-cmdlets
Cenário para Workflow
Nós gerenciáveis
• Rodam workflow
Servidor de gerenciamento
• Armazena e gerencia Workflow do PowerShell
• Executa o PowerShell Workflow nas maquinas remotas
Cliente
• IT pro conectado e trabalhando
• Conecta ao servidor de Workflow
Scheduled Jobs
• Job Scheduling permite agendar a execução de um
trabalho (job) PowerShell em Background
• Suporte diversos gatilhos (triggers)
– Executa comandos de acordo com o agendamento ou
em resposta a um evento.
• Modulo PSScheduledJob
– *-JobTrigger para criar triggers agendados
– *-ScheduledJob para registrar, cancelar e alterar
definições de trabalho agendados
– * ScheduledJobOption para configurar definições
avançadas
– * Job para recuperar resultados
Sessões Persistentes
• Sessões remotas permanecem em um estado
“conectada" durante falhas de rede ou falhas de até 4
minutos
• Após 4 minutos, sessões remotas alternam
automaticamente para um novo estado
"Disconnectada"
• Comandos persistentes e Jobs podem continuar a
funcionar mesmo se a sessão estiver desconectada
• O cliente pode se reconectar a uma sessão
desconectada após a conectividade de rede com o
servidor ser restaurada
PowerShell 3.0
Simples & Fácil
Cobertura completa
Robusto e escalável
Plataforma rica
Baseadas em padrões
PS 3.0 -gt PS 2.0
Windows PowerShell Web Access
• Fornece acesso ao PowerShell a partir de qualquer
lugar
• Aumenta o valor do seu investimento em PowerShell
• Construído para celulares, tablets e outros
dispositivos móveis, bem como PCs
• Suporte multi-plataforma
–
–
–
–
–
IE
Firefox
Safari
Chrome
Opera
Windows PowerShell ISE
• IntelliSense
– AST + completa comando.
Painel Show-Command
– Get-Command
• Regiões
– AST
• F1 – Janela do help
– Get-Help
• Rich copy
– AST
• AST = Abstract Syntax Tree
Hyper-V Resource Manager
•
Enable-VMResourceMetering –VMName nomedavm
–
–
–
–
–
–
–
Average CPU
Average physical memory
Minimum memory usage
Maximum memory usage
Maximum amount of disk space
Total incoming network traffic
Total outgoing network traffic
http://www.poshserver.net
http://poshstats.net .
Comunidade PowerShell
•
•
•
•
•
•
•
•
•
•
TechNet Script Center
Script Repository
Script Explorer
ISE Add-ons Website
PowerShell Modules
PoshCode.org
PowerShellCommunity.org
PowerShell.com
PowerShellGroup.org
Windows PowerShell ISVs
PowerShell 3.0
Simples & Fácil
Cobertura completa
Robusto e escalável
Plataforma rica
Baseadas em padrões
PS 3.0 -gt PS 2.0
Padrões de gerenciamento
Fornece interoperabilidade de gerenciamento com interface
e protocolo padrão
• Padrões DMTF
– CIM (Common Information Model) => interface semântica
• WMI v2: Acessa CIM sobre WS-Man
• PowerShell cmdlets gerados automaticamente a partir de
provedores WMI v2 pela autoria XML (*. Cdxml)
• WS-Man (Web Services for Management) => protocolo
– WinRM: Microsoft implementação do protocolo WSMan
– Extensões da Microsoft para WSMan habilitar o PowerShell
remoto
Padrões de gerenciamento
• OData (Open Data Protocol)
• Management OData IIS Extension
– Fornece uma capacidade de gerenciar servidores
Windows a partir de vários tipos de dispositivos:
Windows, ou não Windows.
– Permite plugin de gerenciamento do Windows
Server via PowerShell em uma experiência
simplificada de gerenciamento de aplicações:
– Processa solicitações de OData e os converte em
invocações PowerShell.
– Hospedado no IIS; esquema de recursos e
módulo de autorização fornecido pelo cliente
PowerShell 3.0
Simples & Fácil
Cobertura completa
Robusto e escalável
Plataforma rica
Baseadas em padrões
PS 3.0 -gt PS 2.0
O PowerShell
•
PowerShell 1.0
•
PowerShell 2.0
– Introduziu uma grande linguagem de script para a gestão de máquina
local
– APIs para desenvolvedores escrever cmdlets e provedores
– Microsoft Exchange fez uma grande aposta no PowerShell
– Fornecido com o Windows Server 2008
Vem com o Windows 7 e Windows Server 2008 R2
Remoting introduzidas: 1:1, Fan-out, Fan-in Remoting, Implicit remoting
ISE introduzidas: Coloração de sintaxe, depuração gráfica,
Profissionais de TI podem criar cmdlets PowerShell usando script
PowerShell
– Conjunto de recursos muito grande:
–
–
–
–
•
Jobs em background, sessões restritas, Transações, Out-GridView, Eventing
Use o PowerShell
Windows PowerShell 3.0 fornece uma maneira
abrangente, flexível e simples para automatizar
o gerenciamento de servidores na sua rede.
• Windows Server 2012, Windows 8
http://bit.ly/160hFto
• Windows Management Framework 3.0“
http://bit.ly/10ldOHT
Aprenda e Divirta-se
E-Book Gratuito em português
http://bit.ly/PowerShellRocks
Daniel Donda
MVP Windows Expert-IT Pro
Twitter: @danieldonda
Facebook.com/mcsesolution
www.mcsesolution.com
Download

PowerShell