Windows Server 2012 Už ani klik... Powershell a kompletní nastavení Windows 8/Server 2012 Patrik Malina patrikmalina.eu O čem bude řeč Powershell: Co najdeme ve Windows Moduly: co tu ještě nebylo Sítě: klient i server Server a role Powershell odkudkoliv Na hranicích automatizace Vše je (textový) soubor Patrik Malina 2
Jaký Powershell ve Windows Windows 8/2012 Powershell 3 Nové rysy jazyka Opora v.net 4.0 Velký rozmach modulů Starší verze Windows Powershell 3 možno doinstalovat Nedostupnost řady modulů Ostatní novinky k dispozici Patrik Malina 3 Jaký Powershell ve Windows Windows 2012 GUI i Core plná výbava Powershellem Nikoliv jako fiasko W2008 Dynamicky nahrávané moduly Opatření proti dezorientaci Patrik Malina 4
Moduly jaké jste neviděli Windows 2012 Velký nárůst počtu modulů a cmdletů Nově pokryty dříve nedostupné oblasti správy Silné zaměření na síťové služby Řízení rolí a výbavy serveru Patrik Malina 5 Moduly jaké jste neviděli Síťové konfigurace a aplikace I. Ovládání adaptérů Parametry TCP/IP Pokročilé vlastnosti síťování Moduly NetAdapter NetTCPIP NetConnection NetSecurity Patrik Malina 6
Moduly jaké jste neviděli Síťové konfigurace a aplikace II. Aplikační vrstva Sdílení po síti Moduly SmbShare a SmbWitness Klient webu Invoke-WebRequest Patrik Malina 7 Moduly jaké jste neviděli Klíčové služby pro správu Remote Desktop Services Module RemoteDesktop Powershell Remote Access Vylepšené relace (sessions) Možné znovupřipojení Patrik Malina 8
Moduly jaké jste neviděli Klíčové služby pro správu Powershell Web Access Powershell na vzdáleném stroji ve vašem prohlížeči Webová aplikace včetně instalační procedury Možnosti řízení přístupu Patrik Malina 9 Moduly jaké jste neviděli Klíčové služby pro správu Ovládání služby Task Scheduler Get-ScheduledTask Get-ScheduledTaskInfo New-ScheduledTask New-ScheduledTaskAction New-ScheduledTaskTrigger Patrik Malina 10
Moduly jaké jste neviděli Klíčové služby pro správu Vlastní plánování úloh-jobů PSScheduledJob Konečně unifikace přístupu ke službě Integrace úloh (jobs) a Plánovače New-JobTrigger Register-ScheduledJob Get-ScheduledJob Patrik Malina 11 Moduly jaké jste neviděli Některé nově pokryté oblasti Správa tisku PrintManagement BitLocker & spol. TrustedPlatformModule Služby certifikačních autorit PKI Patrik Malina 12
Sítě z různých stran Konfigurace síťového klientu Protokol TCP/IP New-NetIPAddress -IPAddress 10.0.0.2 -InterfaceAlias "Ethernet" -DefaultGateway 10.0.0.1 -AddressFamily IPv4 -PrefixLength 24 Set-DnsClientServerAddress -InterfaceAlias "Ethernet" -ServerAddresses 127.0.0.1 Patrik Malina 13 Sítě z různých stran Konfigurace serverových služeb Jména a DNS Rename-Computer -NewName server1 -Restart Get-DnsServerZone Get-DnsServerSettings Patrik Malina 14
Sítě z různých stran Konfigurace serverových služeb TCP/IP a DHCP Install-WindowsFeature DHCP -IncludeManagementTools Add-DhcpServerv4Scope -name "Intra" -StartRange 10.0.0.20 -EndRange 10.0.0.254 -SubnetMask 255.255.255.0 State Active Get-DhcpServerv4Scope Set-DhcpServerv4Scope -InActive Patrik Malina 15 Sítě z různých stran Firewall Windows Paralela s dominujícím NetSh Get-NetFirewallProfile Set-NetFirewallProfile Domain,Public,Private -Enabled True Set-NetFirewallProfile Get-NetFirewallRule New-NetFirewallRule Patrik Malina 16
Sítě z různých stran Konfigurace serverových služeb Vzdálený přístup a VPN Modul RemoteAccess Install-WindowsFeature RemoteAccess -IncludeManagementTools Restart-Computer Set-RemoteAccess Patrik Malina 17 Sítě z různých stran Konfigurace serverových služeb Vzdálený přístup a VPN Modul RemoteAccess Set-VPNAuthType Set-VPNAuthProtocol Set-RemoteAccessAccounting Set-RemoteAccessRadius Patrik Malina 18
Sítě z různých stran Konfigurace serverových služeb Vzdálený přístup a VPN Klientská konfigurace Add- Get- Set- Remove-VPNConnection Set-VPNConnectionProxy Patrik Malina 19 Server a jeho role Virtualizace Modul Hyper-V Nové možnosti Windows 8! Kompletní ovládání Get-VM 2012* start-vm Get-VM 2012* Suspend-VM Patrik Malina 20
Server a jeho role Konfigurace serverových služeb Get-WindowsFeature Install-WindowsFeature Uninstall-WindowsFeature Patrik Malina 21 Server a jeho role Konfigurace serverových služeb migrací Install-WindowsFeature Migration ComputerName <computer_name> Export-SmigServerSetting Get-SmigServerFeature Import-SmigServerSetting Receive-SmigServerData Send-SmigServerData Patrik Malina 22
Server a jeho role Adresářové služby Vývoj Rozšíření modulu ActiveDirectory Replikace Pokročilá delegace Get-ADReplicationSite Sync-ADObject Patrik Malina 23 Server a jeho role Adresářové služby - Revoluce Dcpromo nahrazeno modulem ADDSDeployment Install-ADDSForest Install-ADDSDomain Install-ADDSDomainController Test-ADDSDomainControllerInstallation Patrik Malina 24
Server a jeho role Adresářové služby - Revoluce Dcpromo nahrazeno modulem ADDSDeployment Install-WindowsFeature AD-Domain-Services -IncludeManagementTools Install-ADDSForest -DomainName foundation.int Patrik Malina 25 Server a jeho role Adresářové služby - Návazné možnosti Add-Computer -DomainName foundation.int Restart-Computer Patrik Malina 26
Server a jeho role SMB Get-SmbShare Get-SmbSession Get-SmbOpenFile Get-SmbShare Get-SmbShareAccess Grant-SmbShareAccess New-SmbShare Remove-SmbShare Patrik Malina 27 Server a jeho role Storage Get-Disk Get-Volume Get-StoragePool Mount-DiskImage New-Partition New-VirtualDisk Resize-VirtualDisk Patrik Malina 28
Server a jeho role DISM Dismount- Save- Mount-WindowsImage Add- Get- Remove-WindowsDriver Set-WindowsProductKey Use-WindowsUnattend Patrik Malina 29 Server a jeho role BitLocker Get-BitLockerVolume Enable- Disable-BitLocker Suspend- Resume- Lock- Unlock-BitLocker Patrik Malina 30
Server a jeho role Data Access Components (WDAC) Set-ODBCDriver Get- Add- Remove- Set-ODBCDsn Enable- Disable- Get-ODBCPerfCounter Patrik Malina 31 Powershell odkudkoliv WMI a CIM Nová implementace WMI over HTTP Get-WMIObject Get-CimInstance Get-CimAssociatedInstance New- Remove- Get-CimSession Invoke-CimMethod Patrik Malina 32
Powershell odkudkoliv Powershell Remoting Konfigurace Nové možnosti Enable-PSRemoting Enter-PSSession 10.0.0.5 Enter-PSSession Server1 PS WSMan:\localhost\Client> Set-Item.\TrustedHosts "165.72.26.23,10.0.0.5" Enter-PSSession 10.0.0.5 -Credential foundation\administrator Patrik Malina 33 Powershell odkudkoliv Powershell Web Access Patrik Malina 34
Powershell odkudkoliv Powershell Web Access Patrik Malina 35 Powershell odkudkoliv Powershell Web Access Podstata Webová služba Předem připravená webová aplikace Patrik Malina 36
Powershell odkudkoliv Powershell Web Access Konfigurace Install-WindowsFeature -Name WindowsPowershellWebAccess -IncludeManagementTools Install-PswaWebApplication -UseTestCertificate Add-PswaAuthorizationRule -UserName * -ComputerName * -ConfigurationName * Patrik Malina 37 Na hranicích automatizace Vývoj existujících možností PSH remoting Odolné relace (sessions) Možnost cíleného odpojení a znovupřipojení Patrik Malina 38
Na hranicích automatizace Vývoj existujících možností PSH remoting $session = New-PSSession -name Relace -ComputerName DC1 -Credential administrator Enter-PSSession $session Disconnect-PSSession $session $session = Connect-PSSession -ComputerName DC1 -name Relace -Credential administrator Patrik Malina 39 Na hranicích automatizace Naprostá novinka workflow Rozhraní PSH pro Windows Workflow Foundation Automatizace přes hranice pádu skriptů, restartu operačního systému, výpadku síťového spojení... Překlenutí klíčových překážek běžné automatizace Patrik Malina 40
Na hranicích automatizace Naprostá novinka workflow Ve skriptu Definice podobné funkcím Explicitní vymezení nezávislých kroků, záchytných bodů a paralelního zpracování Propojení s joby Patrik Malina 41 Na hranicích automatizace Naprostá novinka workflow Při provádění Vazba na nový typ relace (session) Přímé řízení záchytných bodů, zastavení a obnovení úlohy workflow Zvýšení efektivity díky paralelizaci Patrik Malina 42
Na hranicích automatizace Naprostá novinka workflow workflow Invoke-MyFirstWorkflow { ## Run step 1 InlineScript { Start-Sleep -Seconds 5; "Done step 1" } Checkpoint-Workflow } ## Run step 2 InlineScript { Start-Sleep -Seconds 5; "Done step 2" } $j = Invoke-MyFirstWorkflow -AsJob Suspend-Job $j -Wait Receive-Job $j Resume-Job $j -Wait Receive-Job $j -Wait Patrik Malina 43 Na hranicích automatizace Naprostá novinka workflow workflow New-ComputerSetup {... $cn = Get-CimInstance -ClassName Win32_ComputerSystem if ($cn.systemtype -like "64*") { $NewCnName = $PSComputerName + "64" Rename-Computer -ComputerName $PSComputerName -NewName $NewCnName } Restart-Computer -Wait -PSConnectionRetryCount 4 -PSConnectionRetryInterval 5 $disks = Get-Disk... } Patrik Malina 44
Na hranicích automatizace Naprostá novinka workflow $AtStartup = New-JobTrigger -AtStartup Register-ScheduledJob -Name ResumeWorkflow -Trigger $AtStartup -ScriptBlock {Import-Module PSWorkflow; Get-Job ComputerSetup -State Suspended Resume-Job} # Run the workflow. It is suspended when the computer restarts. New-ComputerSetup -JobName ComputerSetup # Verify that the workflow was resumed and completed successfully Import-Module PSWorkflow Get-Job ComputerSetup # Delete the scheduled job Unregister-ScheduledJob -Name ComputerSetup Patrik Malina 45 Vše je (textový) soubor Trojice TXT + CSV + XML Get-Content -Tail -Encoding -ReadCount -Wait -Raw -Stream -Delimiter Export-Csv Import-Csv -Encoding -Append -Delimiter Import- Export-Clixml -Depth -Encoding Patrik Malina 46
Vše je (textový) soubor Hledání a dotazy Select-String -Pattern -CaseSensitive -List -Encoding -Context Select-Xml Select-Xml -Xml -XPath Patrik Malina 47 Zdroje informací Internet MS PowerShell blog http://blogs.msdn.com/b/powershell/ Script Center http://technet.microsoft.com/en-us/scriptcenter/bb410849.aspx Windows PowerShell Support for Windows Server 2012 http://technet.microsoft.com/en-us/library/hh801904.aspx Patrik Malina 48
Dotazy a diskuse Patrik Malina 49 Další informace Autor www.patrikmalina.eu Kontat it@patrikmalina.eu Patrik Malina 50