Presentation is loading. Please wait.

Presentation is loading. Please wait.

Fabrice Romelard [MVP] Intranet – Extranet CTO SGS.

Similar presentations


Presentation on theme: "Fabrice Romelard [MVP] Intranet – Extranet CTO SGS."— Presentation transcript:

1 Fabrice Romelard [MVP] Intranet – Extranet CTO SGS

2 MVP since 2003 ASP.NET 2003-2006 SQL Server 2006-2008 SharePoint since 2008 French communities member ASP-PHP Codes Sources GUSS SharePoint Expert, SQL Server DBA and.NET developer Coworkers SGS at Geneva (Suisse)

3 Who know PowerShell ? Who know SharePoint ?

4 What’s SGS ? What’s PowerShell ? What’s New in PowerShell V2 PowerShell and SharePoint

5 Founded in Rouen in 1878, under the name of Goldstück, Hainzé & Co. First registration as Société Générale de Surveillance in Geneva in 1919 Growth by agglomerations of various companies which until 2002 had great degree of autonomy Listed publicly in 1985 Single share structure introduced in 2001 Four significant shareholder groups Famille A. Von Finck IFIL investment Allianz SE FMR Corp

6 Inspection Verification Testing Certification

7 More than 50'000 employees Europe, Middle East & Africa: 23’000 employees Americas: 11’300 employees Asia/Pacific: 15’700 employees A network of over 1’000 offices & laboratories

8 AGRICULTURAL SERVICES MINERALS SERVICES OIL, GAS & CHEMICALS SERVICES AUTOMOTIVE SERVICES LIFE SCIENCE SERVICES INDUSTRIAL SERVICES SYSTEMS & SERVICES CERTIFICATION GOVERNMENTS AND INSTITUTIONS SERVICES

9

10 What’s SGS ? What’s PowerShell ? What’s New in PowerShell V2 PowerShell and SharePoint

11 As interactive and composable as BASH/KSH As programmatic as Perl/Python/Ruby As production oriented as AS400 CL/VMS DCL Allows access to data stores as easy to access as filesystem

12 Automation Frameworks Cmdlets In-Proc, Local, Remote In-Proc, Local, Remote Runtime Engines Automation Platform (API) ScriptingLanguage Type Normalizers ProvidersEvents, Jobs, Transactions Shells, ISEs, GUI s, Applications Universal Interactive or programmatic Wide range of OSes Local or Remote Single or Multi Machine Synch or Asynch Wide range of authentication mechanisms.NET, native code, COM, WMI, ADSI, XML, ADO, WebServices, WSMAN, etc Simple scripting to systems programming Powered by a strong community

13 Have better solution than standard « cmd.exe » (Evolution of MS-DOS) Replace Perl, KixStart or VBScript scripts, for execute simple tasks PowerShell : Object Oriented Can use.Net objects Give many command

14 In classical environment, command execution results in text In PowerShell each result is object. We can use also the attributes and methods

15 .Net powered Can call WSH, COM, and WMI objects with.Net objects Many Commandlets Standard in commands and parameters

16 Version 1.0 Pre-requisites : Framework.Net 2.0 Available for: Windows Server 2008 A feature Not available in « Server Core » x86 x64 IA64 Windows Server 2003 SP1 An update between SP1 and SP2 (KB926139, 140, 141) To download x86 x64 IA64 Windows Vista Update (KB928439) To download x86 x64 Windows XP SP2 Need an update (KB926139, 140, 141) To download x86 x64 http://www.microsoft.com/windowsserver2003/technologies/management/powershell/download.mspx

17 PowerShell commands named « cmdlets » (ie: command-applets). One verb and a name with a dash (-), Generic verb list (Get, Set, Add, Remove, etc.) with diferent name like Path, Variable, Item, Object etc. Lot of name possible for commands

18 Diferent solutions for use parameters get-command -Name [string] -Type [CommandTypes] -Verb [string] -Noun [string] Use “” if parameter have a space or special char

19 First of all: « Get-Command ». For help: Get-Help with command. More help on command: « Get-Help Get-Command –detailed » with some examples « Get-Help Get-Command –full » with all technical informations

20 Command « Short Name» Alias «my_cmd» for the command « very-long- command-to-write». Help shell Unix or cmd.exe users with their uses … ls, more, pwd, etc. ls is the command alias for Get-ChildItem which shows the file or folder list.

21 A PowerShell variable is define by the prefix $ with the name and can receive value We can create the named variable $current- process and store the active process list $current_process = Get-Process

22 Action between commands PowerShell built for transition data between commands without change (more text transform) Get-Process | where { $_.handlecount -gt 400 } | Format-List

23 Condition in PowerShell, we can use operators If, ElseIf and Else $current_process = Get-Process If ($current_process.count -lt 50) { Write-Host « Low server load"; } Elseif (($current_process.count -ge 50) -and ($current_process.count -lt 80)) { Write-Host « Middle server load"; } Else { Write-Host « High server load"; }

24 We can create loop in PowerShell as While, Do While, For or Foreach. $var = 1 // One variable set to 1 while ($var -le 50) {$var; $var += 1} // while the value is not equal to 50, we add 1 for ($var = 1; $var -le 50; $i++) // {$var} // each steps we show the variable value

25 WMI objects Include in PowerShell in standard, no creation need Get-WmiObject –list.NET and COM objects Create a new object for a variable PS C:\> $xls = New-Object -ComObject Excel.Application We can use the methods and properties

26 Basic Scripts for Services and file management

27 What’s SGS ? What’s PowerShell ? What’s New in PowerShell V2 ? PowerShell and SharePoint

28 Reduce the cost and effort to: Use PowerShell Get, learn, share scripts Layer applications on PowerShell GUI, web, workflow, etc. Manage anything/everything Servers, clients, distributed systems, applications, web services, cloud services, raw HW, other OSes, everything Using any and all mechanisms (WMI,.Net, native code, web services, WSMAN)

29 Microsoft.NET Framework 2.0 Windows PowerShell remoting et background jobs needs WinRM 2.0 CTP3 : Only for Vista SP1 and W2008 Windows PowerShell Integrated Scripting Environment (ISE) and Out-GridView cmdlet needs Microsoft.NET Framework 3.5 SP1

30 Windows PowerShell Remoting 1:1 et 1:plusieurs Background Jobs Advanced Functions Modules Transactions

31 Script Debugging Nouvelles Cmdlets Windows PowerShell Integrated Scripting Environment (ISE) Nouveaux opérateurs Splatting (@) Split Join

32 V1V2 DeveloperCmdlets and/or providers Help PowerShell cmdlets Transaction support PowerShell CLI & API Rich language w/access to com, wmi,.Net, adsi, xml & ado Utilities to manipulate, format, import/export 129 Cmdlets Web service & workflow activities Richer language w/access to web services, unmanaged code, wsman Richer utilities including eventing, job control, remote execution 241 Cmdlets Graphical ISE to create/debug scripts UsersSimple ad hoc scripts Sophisticated production scripting Systems programming Across multiple machines Community Write and share scripts Write and Share Modules V1 Scripts and Cmdlets run on PowerShell V2

33

34 Management initiative driven by DMTF Platform independent, interoperable & industry standard management solution CIM based standards for Server and Desktop management WS-Management (WSMAN) IT Console Managed Platforms WSMAN

35 Power control and boot control HW/ SW inventory Alerts and lifecycle events Config/manage BIOS Software and Firmware update Health monitoring

36 Power Off Command Invoke-WSManAction -CN $svr -cred $cred -port 16992 ` -Auth digest CIM_ComputerSystem ` –Action RequestStateChange ` –SelectorSet @{Name="ManagedSystem"} ` -valueSet @{RequestedState="3"} Chassis Class Get-WSManInstance -CN $svr -cred $cred -port 16992 -Auth digest - enum CIM_Chassis Chip Class Get-WSManInstance –CN $srv -cred $cred -port 16992 -Auth digest - enum CIM_Chip Power On Command Invoke-WSManAction -CN $svr -cred $cred -port 16992 ` -Auth digest CIM_ComputerSystem ` –Action RequestStateChange ` –SelectorSet @{Name="ManagedSystem"} ` -valueSet @{RequestedState=“2"}

37 Remote WMI Remote Command/Script Execution Remote Background Jobs Remote Interactive Session

38 -ComputerName # txt format list -Throttle # fix parallel session number -AsJob # execut in background PS> gwmi -CN (cat servers.txt) Win32_Bios -Throttle 64 | Select __Server, Name, Manufacturer, Version | ConvertTo-Html > BiosInventory.htm PS> $job = gwmi -CN (cat servers.txt) Win32_Bios -Throttle 64 –AsJob PS> Wait-job $j # or go do something else PS> Receive-Job $j | Select __Server, Name, Manufacturer, Version | ConvertTo-Html > BiosInventory.htm

39 xxxxx

40 What’s SGS ? What’s PowerShell ? What’s New in PowerShell V2 ? PowerShell and SharePoint

41 Load the SharePoint DLL [System.Reflection.Assembly]::LoadWithPartialName("Microsoft.S harePoint") > $null Set the variable $site = new-object Microsoft.SharePoint.SPSite(“http://myWebApp”) Use the MSDN site as the.NET SharePoint Development

42 Scripts for SharePoint management

43

44 Technical Blog http://blogs.developpeur.org/fabrice69/ Online Articles http://www.asp-php.net SharePoint Management PowerShell scripts http://sharepointpsscripts.codeplex.com PowerShell Blogs http://blogs.technet.com/powershell/ http://blogs.msdn.com/powershell/ http://scriptingof.blogspot.com/

45

46 14 – 15 avril 2010, CICG

47 Classic Sponsoring Partners Premium Sponsoring Partners

48


Download ppt "Fabrice Romelard [MVP] Intranet – Extranet CTO SGS."

Similar presentations


Ads by Google