Samuel Zürcher, Sen.
Consultant
Experts Inside GmbH
SHAREPOINT 2013,
WEBAPPS,
WORKFLOWS AND
APPS
SPEAKER
Samuel Zürcher
Senior Consultant / Evangelist
SharePoint und SQL Server
MCTS, MCITP, MCT, MVP
Kontakt und Webauftr...
ARCHITECTURE AND
TOPPOLOGY
Preparation for
SharePoint 2013
TOPOLOGY DIFFERENCES WITH 2013
Streamlined
› New Topology Model
› Maximise performance for
Users
› Distributed Cache
› Fro...
CLASSICAL TOPOLOGY
STREAMLINED TOPOLOGY
GOALS OF STREAMLINED
TIERS
Role Goal
Distributed Cache Consistent latency:
• Latency — very low (<5 millisecond)
• Through...
SERVICES LEVELS
Tier Components and services
Distributed Cache • Distributed Cache
• Request Management
• Web Application
...
FROM CLASSICAL TO
STREAMLINED
MICROSOFTS FARMBUILD
SCALING SINGLE AND SMALL
< 100 Users
< 1'000 Users
SCALING MIDDLE
< 10'000 Users
SCALING BIG
> 10'000 Users
SQL SERVER
SQL Server is the Engine
of SharePoint
FIRST THINGS FIRST
› SQL Server is the Heart of SharePoint,
don’t forget!
› 8 Cores and 16GB RAM min.
› Be aware of Disk I...
NEW HIGH AVAILLABILITY
MODEL
› AlwaysOn as new High Availability
Model for SharePoint 2013
› Based on availability groups
...
EXAMPLE FOR SHAREPOINT
2013
CREATE ACCOUNTS WE WILL
NEED
Account Description
Sp-Setup Account to Set Up SharePoint (Needs Local Admin on SharePoint se...
SQL SERVER INSTALLATION
SUPPORT FILES INSTALLATION
LICENSE INPUT
LICENSE TERMS
LOOKING FOR UPDATES
FIREWALL PORTS
Port tcp 1433,
1434. To Install
«Domain Off»
SETUP ROLE
FEATURE SELECTION
Für Access
For Access
Services 2013
Standard
Path
INSTALLATION RULES
NAMED INSTANCE
DISKSPACE
SERVICE ACCOUNT
Domain
Account
Attention!
Collation
COLLATION SELECTION
CUSTOMIZE COLLATION
LATIN1_GENERAL_CI_AS_KS_
WS
Is the closest to an NTFS
Filesystem
AUTHENTICATION MODE
Domain
Group
Be aware
of Tabs!
For Access
Services only
DATA DIRECTORIES
Separate Data,
Log and
TempDB
ERROR REPORTING
INSTALLATION RULES
SUMMARY
WAIT, WAIT, WAIT
THIS IS WHAT YOU WANT TO
SEE 
POST CONFIGURATION
› Min / Max Memory (be aware of other
Instances and give 3GB to OS)
› Fill Factor 70%
› Backup Compress...
FILL FACTOR / BACKUP
COMPRESSION
MIN / MAX MEMORY
FOR ACCESS SERVICES
› Enable Contained Databases = True
› Allow Triggers to Fire Others = True
(std.)
› Default Language =...
MIXED MODE
CONTAINED DATABASES
NAMED PIPES
FIREWALL SETTINGS INBOUND
RULES
SHAREPOINT 2013
The basic Installation of
SharePoint 2013 with
Powershell
FIRST THINGS FIRST
› The Frontends are more RAM intense than
in SharePoint 2010
› 4-8 CPU Cores and min. 12 GB RAM
› For S...
FIRST THINGS FIRST
› Still the following Versions
› SharePoint Foundation
› SharePoint Server Standard
› SharePoint Server...
STEP 1 – PREREQUISITES
NEXT
ACCEPT LICENSE AGREEMENT
WAIT FOR PROGRESS
REBOOT IF NEEDED
WAIT FOR INSTALLS
STEP 1 - PREREQUISITES
DONE
STEP 2 – SHAREPOINT BITS
KEY
ACCEPT LICENSE TERMS
ALWAYSE «COMPLETE»
DON’T TOUCH FILE
LOCATION
WAIT FOR INSTALLATION TO
FINISH
INSTALL UPDATES
› Public Updates:
› Required to install
› Always to be installed
› Cumulative Updates:
› Free to choose
› ...
STEP 2 – SHAREPOINT BITS
DONE
Deselect!!
STEP 3 – FARM INITIAL
Start Powershell
ISE
ISE HAS MANY ADVANTAGES
Write
Scripts
Input
directly
List of
Commands
Preparation - Variables
# Application Pool for Services and Access
$SaAppPoolName = "SharePoint Web Services Default"
$App...
Preparation - System
# Check if Registry Key Paths for SQL-Alias already exist, create them if not
if ((test-path -path $x...
CHECK IF ALIAS WAS
CREATED
Alias is a must, you will get in
trouble, if you want to change SQL
Server and have no Alias
Simulate Config Wizzard
# Make SharePoint PowerShell Availlable
Add-PSSnapin Microsoft.SharePoint.PowerShell
# Creating Sh...
Managed Account and App Pool
# Add managed accounts
Write-Host "Creating managed accounts ... "
Write-Host "Bitte Services...
STEP 3 – FARM INITIAL DONE
Step 4.1 – Usage and Health
# Usage and Health Data Collection
# Parameters
$UsageSAName = "Usage and Health Data Collecti...
Step 4.2 – State Service
# State Service
# Parameters
$StateSAName = "State Service"
$dbStateService = "TBD_DEMO_State"
# ...
Step 4.3 – a: Managed Metadata
# Managed Metadata Service Application
# Parameters
$ManagedMetadataSAName = "Managed Metad...
B: OPTIONS FOR MMS PROXY
c: MMS Proxy Settings
# Get Metadata service application proxy
$MMSProxy = Get-SPServiceApplicationProxy | Where-Object {$...
Step 4.4 – a: Search Parameters
# Search Service Application and Topology
# Parameters
$SearchMachine = "WFE1"
$SearchSANa...
b: Create Search SA
# Create Service Application
Write-Host "Creating Search Service Application…"
Write-Host "Starting Se...
Step 4.5 – Word Automation SA
# Word Conversion Service Application
$WordSAName = "Word Automation Service"
$dbWordAutomat...
Step 4.6 – Business Connectivity
# Business Conectivity Services Service Application
$BcsSAName = "Business Connectivity S...
Step 4.7 – Secure Store
# Secure store Service Application
$SecureStoreSAName = "Secure Store Service"
$dbSecureStore = "T...
Step 4.8 – Performance Point
# Performance Point Service Application
$PerformancePointSAName = "Performance Point Services...
Step 4.9 – Visio Services
# Visio Service Application
$VisioSAName = "Visio Services"
# Create Service Application
Write-H...
Step 4.10 – User Profile SA
# User Profile Service Application
$UserProfileSAName = "User Profile Service"
$dbUserProfile ...
Step 4.11 – App Management
# App management Service Application
$AppManagementSAName = "App Management Service"
$dbAppMana...
Step 4.12 – Translation Service
# Machine Translation Service Application
$TranslationSAName = "Machine Translation Servic...
Step 4.13 – Work Management
# Work Management Service Application
$WorkMgmtSAName = "Work Management Service"
# Create Ser...
4.13.1 – GIVE RIGHTS IN DB
› Grant the account that the Work Management service
is running as "Full Control" to the User P...
4.13.2 – GIVE RIGHTS TO
APPPOOL
Give the Services App Pool Account
full Rights to User Profile Service
Application
Step 4.14 – Excel Services
# Excel Services
$ExcelSAName = "Excel Services"
# Create Service Application
Write-Host "Creat...
Step 4.15 – Subscription Settings
Subscription Settings Service is for Multi Tenancy Scenarios
Also needed for Access Serv...
Step 4.16 – a: Access Services
Will only work after App Configuration (follows next)
Concider using an Extra App Pool (spe...
B: SQL FEATURE PACK
› Microsoft SQL Server 2012 Local DB
(SQLLocalDB.msi)
› Microsoft SQL Server 2012 Data-Tier Applicatio...
C: APP POOL CONFIG
› 1. Advanced Settings
› 2. Load User Profile
› 3. Restart Server
D: SECURE STORE
Go to Secure
Store Service
and generate a
new Key
Enter any
secure
String
E: TARGET DB SERVER
Navigate to Access
Services Service App,
expand «New
Application Database»
In Our Case we use
std. SQL...
F: SETTING SQL RIGHTS FOR
APP POOL
› Give demosp-access following
Rights:
› Configuration Database: DBO
› Content Database...
G: OFFICE DEPLOYMENTS
› If you have Office deployed in
different Languages, you must deploy
all these Languages as SharePo...
STEP 4.17 – OTHER SERVICES
› Claims to windows Token:
If you have Scenarios with external Data Access
› Document Conversio...
STEP 4.18 – CREATE WEBAPPS
› Create an Intranet Portal with the
Team Site Template
› Create a My Site Portal with the My
S...
STEP 4.19 – CONFIGURE MY
SITE
› Go to User Profile Service Application
› Click to «Steup My Sites»
› Add http://my.demo.lo...
STEP 4.20 – IMPORT USERS
FROM AD
› There are two Methods to do this:
› Forefront Identity Manager (like in 2010)
› AD Dire...
Step 4.21 – Cache Users
$wa = Get-SPWebApplication -Identity
"http://intranet.demo.local"
$wa.Properties["portalsuperusera...
STEP 5 – SHAREPOINT APPS
› Apps is the new Model for Development
in SharePoint 2013
› Access Services is used like Apps
› ...
PREPARING FOR APPS
› We need to configure a new Domain
Name
› Nothign to do with Active Directory!!
› We call it Appdomain...
ADD NEW ZONE
NEXT
NEXT
NEXT
ENTER DOMAIN NAME
NEXT
FINISH
ADD NEW HOST TO
APPDOMAIN
Right click
and select
«New Host»
POINT * TO FRONTEND OR
NLB This will point
all Apps to
SharePoint
CREATE SERVER
WEBAPPLICATION
› Needed for Host Header Web Apps and Host
named Site Collections
› No Host Header
› Inf not ...
«STANDARD WEBSITE» OFF
Make sure,
Default Web Site
is stopped
CONFIGURE APP URLS
CREATE APP CATALOG
› App Catalog is managed per Web
Application
› Create a App Catalog under each Web
Application you have...
NEW APP CATALOG DIALOG
THE WEBAPPS
Installation and
Integration of Office
WebApps in SharePoint
2013
FIRST THINGS FIRST
› Web Apps are no longer a Service
Application
› Web Apps are a standallone Server and
cannot be instal...
Step 1 – Preparation
# Add needed Roles to Server
Import-Module ServerManager
Add-WindowsFeature Web-Server,Web-Mgmt-Tools...
STEP 2 – INSTALLATION
INSTALL NOW
WAIT FOR INSTALL TO FINISH
CLOSE
APPLY UPDATE KB2810007
Update Link: http://www.microsoft.com/en-us/download/details.aspx?id=38378
WAIT FOR UPDATE TO FINISH
UPDATE DONE
Create Web Apps Farm
# Create Office Web Apps Farm (Single Farm)
New-OfficeWebAppsFarm –InternalURL "http://WebApps.demo.l...
Bind Web Apps to SharePoint
Run on SharePoint Server!
# Create new WOPI Binding for SharePoint to Web Apps Server
New-SPWO...
WORKFLOWS 2013
Integration of Workflow
Manager in SharePoint
2013
FIRST THINGS FIRST
› Workflows changed in SharePoint
2013
› Needs it’s own Installation (Workflow
Manager)
› Can run on Sh...
LAUNCH WORKFLOW
MANAGER
INSTALL
ACCEPT TERMS
USE MS UPDATES
WAIT FOR INSTALL
CONTINUE
CONFIGURATION WIZZARD
ADD DB SERVER, USER,
PASSPHRASE
WAIT FOR CONFIG TO FINISH
CONFIG READY TO INSTALL
WAIT FOR INSTALL
WORKFLOW FARM CREATED
FINISH
EXIT
Add WF Manager to SharePoint
# Register Workflow Service
Register-SPWorkflowService –SPSite "http://intranet.demo.local"
–...
PORTS FOR WORKFLOWS
› 12290 – Management Port
› 9355 – Secure Deployment
› 12291 – Unsecured Management Port
› 9354 – TCP ...
NOW YOU CAN USE 2013 WF
PERFORMANCE TESTING
Using Visual Studio and
SQLIO to do
Performance Testing
SQLIO
Parameter Description
Sqlio Program Call
-kR / -kW Measure Read oder Write Performance
-t32 No. of Threads
-s60 Dura...
SQLIO Test Batch
sqlio -kW -t16 -s60 -dF -o4 -frandom -b64 -BH -LS Testfile.dat
sqlio -kW -t16 -s60 -dF -o8 -frandom -b64 ...
VISUAL STUDIO ULTIMATE
QUESTIONS & ANSWERS
….Questions?!
Kontakt:
szu@expertsinside.com
Mehr zum Thema:
http://sharepointszu.com/category/die-ser...
Upcoming SlideShare
Loading in...5
×

How to best setup SharePoint 2013, Web Apps, Workflow Manager with Powershell

11,666

Published on

Learn how to best practice set up SharePoint 2013 with Powershell, and don't Forget the surrounding Systems like Microsoft Web Apps 2013 and Workflow Manager 1.0. Additionally you get some Advice to set up SQL Server 2012 for SharePoint. All is done by Powershell, you get all the Code for the Setup within the Presentation.

Published in: Technology
0 Comments
9 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
11,666
On Slideshare
0
From Embeds
0
Number of Embeds
15
Actions
Shares
0
Downloads
336
Comments
0
Likes
9
Embeds 0
No embeds

No notes for slide

How to best setup SharePoint 2013, Web Apps, Workflow Manager with Powershell

  1. 1. Samuel Zürcher, Sen. Consultant Experts Inside GmbH SHAREPOINT 2013, WEBAPPS, WORKFLOWS AND APPS
  2. 2. SPEAKER Samuel Zürcher Senior Consultant / Evangelist SharePoint und SQL Server MCTS, MCITP, MCT, MVP Kontakt und Webauftritte szu@expertsinside.com Samuel.Zuercher@sharepointcommunity.ch Blog: http://sharepointszu.com Community: http://www.sharepointcommunity.ch Konferenz: http://www.collaborationdays.ch XING: https://www.xing.com/profile/Samuel_Zuercher3 Facebook: http://www.facebook.com/sharepointszu Twitter: @sharepointszu Samuel Zürcher [MVP] hat Langjährige Erfahrung mit SharePoint seit der Version 2.0, breites Technologie Know-how und ist seit 15 Jahren in der IT tätig. Er ist im Projektmanagement in verschiedenen Projektgrössen und Komplexitätsstufen daheim, kennt sich aber auch mit dem innersten Kern von SharePoint aus. Verschiedene Zertifizierungen für SharePoint und der Microsoft Certified Trainer runden sein Profil ab (MCT, MCTS, MCIPT). Er ist der Initiant und zusammen mit Stefan Heinz Begründer der www.sharepointcommunity.ch und Co-Organisator
  3. 3. ARCHITECTURE AND TOPPOLOGY Preparation for SharePoint 2013
  4. 4. TOPOLOGY DIFFERENCES WITH 2013 Streamlined › New Topology Model › Maximise performance for Users › Distributed Cache › Frontend Servers › Batch Processing Servers › Specialized workloads › Database Servers Classic › Traditional three-tier Model › Frontend Servers › Application Servers › Database Servers Reference: http://technet.microsoft.com/en-us/library/jj219591.aspx
  5. 5. CLASSICAL TOPOLOGY
  6. 6. STREAMLINED TOPOLOGY
  7. 7. GOALS OF STREAMLINED TIERS Role Goal Distributed Cache Consistent latency: • Latency — very low (<5 millisecond) • Throughput — very high • Resource utilization — medium Frontend Fast response to user requests with consistent latency: • Latency — low (<500 millisecond) • Throughput — medium • Resource utilization — low-medium Batch-processing Maximize resources with high throughput: • Latency — high (>1 minute) • Throughput — high • Resource utilization — high to very high Specialized Fairly consistent latency: • Latency — low (<500 milliseconds) • Throughput — medium • Resource utilization — low-high Databases Fast response and consistent latency: • Latency — very low (<5 milliseconds) • Throughput — very high • Resource utilization — low-medium
  8. 8. SERVICES LEVELS Tier Components and services Distributed Cache • Distributed Cache • Request Management • Web Application Frontend • Access Services • Data Connectivity • Central Administration • Managed Metadata • Web Application • Secure Store Service • State • Subscription Settings • User Code • User Profile • Visio Graphics Batch-processing • Crawl Target • Machine Translation • Web Application • PowerPoint Conversion • User Profile Sync • Word Automation • Work Management • Workflow timer service Specialized • Excel Calculation • PerformancePoint • Project • Web Application • Search
  9. 9. FROM CLASSICAL TO STREAMLINED
  10. 10. MICROSOFTS FARMBUILD
  11. 11. SCALING SINGLE AND SMALL < 100 Users < 1'000 Users
  12. 12. SCALING MIDDLE < 10'000 Users
  13. 13. SCALING BIG > 10'000 Users
  14. 14. SQL SERVER SQL Server is the Engine of SharePoint
  15. 15. FIRST THINGS FIRST › SQL Server is the Heart of SharePoint, don’t forget! › 8 Cores and 16GB RAM min. › Be aware of Disk I/O, you mostly find there the Bottleneck › Access Services generally go into a 2nd Instance, we will not follow this guideline in the following Demo because of time
  16. 16. NEW HIGH AVAILLABILITY MODEL › AlwaysOn as new High Availability Model for SharePoint 2013 › Based on availability groups › Main benefit: › Be able to have one big muscled SQL Server to failover to n availability groups with lower cost Hardware › Delegate heavy read databases to be used from secondary replicaReference: http://technet.microsoft.com/en-us/library/jj715261.aspx
  17. 17. EXAMPLE FOR SHAREPOINT 2013
  18. 18. CREATE ACCOUNTS WE WILL NEED Account Description Sp-Setup Account to Set Up SharePoint (Needs Local Admin on SharePoint server and Sysadmin in SQL Server) Sp-CacheAdmin For Publishing sites, to admin the Cache Sp-CacheReader For Publishing sites, to read from Cache Sp-Farm To run SharePoint Farm Sp-My To run My Site Portal Sp-Portal To run Intranet Portal Sp-Services To run Service Applications Sp-Sql To run SQL Server Sp-upi To do User Profile Import (Replicate Directory Changes) Sp-Access To run Access Services Sp-Workflow To run Workflow Manager
  19. 19. SQL SERVER INSTALLATION
  20. 20. SUPPORT FILES INSTALLATION
  21. 21. LICENSE INPUT
  22. 22. LICENSE TERMS
  23. 23. LOOKING FOR UPDATES
  24. 24. FIREWALL PORTS Port tcp 1433, 1434. To Install «Domain Off»
  25. 25. SETUP ROLE
  26. 26. FEATURE SELECTION Für Access For Access Services 2013 Standard Path
  27. 27. INSTALLATION RULES
  28. 28. NAMED INSTANCE
  29. 29. DISKSPACE
  30. 30. SERVICE ACCOUNT Domain Account Attention! Collation
  31. 31. COLLATION SELECTION
  32. 32. CUSTOMIZE COLLATION
  33. 33. LATIN1_GENERAL_CI_AS_KS_ WS Is the closest to an NTFS Filesystem
  34. 34. AUTHENTICATION MODE Domain Group Be aware of Tabs! For Access Services only
  35. 35. DATA DIRECTORIES Separate Data, Log and TempDB
  36. 36. ERROR REPORTING
  37. 37. INSTALLATION RULES
  38. 38. SUMMARY
  39. 39. WAIT, WAIT, WAIT
  40. 40. THIS IS WHAT YOU WANT TO SEE 
  41. 41. POST CONFIGURATION › Min / Max Memory (be aware of other Instances and give 3GB to OS) › Fill Factor 70% › Backup Compression › Max Degree of Parallelism to 1 (std.) › Local Sec. Pol «Perform Volume Maintenance Tasks» and «Lock Pages in Memory»
  42. 42. FILL FACTOR / BACKUP COMPRESSION
  43. 43. MIN / MAX MEMORY
  44. 44. FOR ACCESS SERVICES › Enable Contained Databases = True › Allow Triggers to Fire Others = True (std.) › Default Language = English (std.) › TCP/IP Protocol = Enabled (std.) › Named Pipes Protocol= Enabled › Windows Firewall Inbound Ports TCP 1433, TCP 1434, and UDP 1434
  45. 45. MIXED MODE
  46. 46. CONTAINED DATABASES
  47. 47. NAMED PIPES
  48. 48. FIREWALL SETTINGS INBOUND RULES
  49. 49. SHAREPOINT 2013 The basic Installation of SharePoint 2013 with Powershell
  50. 50. FIRST THINGS FIRST › The Frontends are more RAM intense than in SharePoint 2010 › 4-8 CPU Cores and min. 12 GB RAM › For Standalone SharePoint 24 GB RAM › Streched Farms are supportet again, but only rarely make sense › Be aware of SharePoint roles (Toppology) especially with Search and Distributed Cache
  51. 51. FIRST THINGS FIRST › Still the following Versions › SharePoint Foundation › SharePoint Server Standard › SharePoint Server Enterprise › No more Fast for SharePoint, no more SharePoint for Internet, it’s in the Product › Allways install in English and then use Language Packs!!!
  52. 52. STEP 1 – PREREQUISITES
  53. 53. NEXT
  54. 54. ACCEPT LICENSE AGREEMENT
  55. 55. WAIT FOR PROGRESS
  56. 56. REBOOT IF NEEDED
  57. 57. WAIT FOR INSTALLS
  58. 58. STEP 1 - PREREQUISITES DONE
  59. 59. STEP 2 – SHAREPOINT BITS
  60. 60. KEY
  61. 61. ACCEPT LICENSE TERMS
  62. 62. ALWAYSE «COMPLETE»
  63. 63. DON’T TOUCH FILE LOCATION
  64. 64. WAIT FOR INSTALLATION TO FINISH
  65. 65. INSTALL UPDATES › Public Updates: › Required to install › Always to be installed › Cumulative Updates: › Free to choose › Only install if needed
  66. 66. STEP 2 – SHAREPOINT BITS DONE Deselect!!
  67. 67. STEP 3 – FARM INITIAL Start Powershell ISE
  68. 68. ISE HAS MANY ADVANTAGES Write Scripts Input directly List of Commands
  69. 69. Preparation - Variables # Application Pool for Services and Access $SaAppPoolName = "SharePoint Web Services Default" $AppPoolUser = "demosp-services" $AccessAppPoolName = "Access Services App Pool" $AccessAppPoolUser = "demosp-access" # SQL Alias $SQLAliasName = "SharePointDB_Prod" $SQLServerName = "SQL1SHAREPOINT" #Include Instance Name $x86 = "HKLM:SoftwareMicrosoftMSSQLServerClientConnectTo" $x64 = "HKLM:SoftwareWow6432NodeMicrosoftMSSQLServerClientConnectTo" $ConfigPassphrase = "MySharePointIs2013" # Giving the Names for Databases $dbConfig = "TBD_DEMO_SharePoint_Config" $dbCentralAdmin = "TBD_DEMO_SharePoint_CentralAdmin" # Central Admin Port and Authentication Method $CaPort = 11111 $CaAuthProvider = "NTLM« # Register Sharepoint 2013 Powershell Commandlets pushd 'C:Program FilesCommon FilesMicrosoft SharedWeb Server Extensions15CONFIGPOWERSHELLRegistration' .SharePoint.ps1 popd
  70. 70. Preparation - System # Check if Registry Key Paths for SQL-Alias already exist, create them if not if ((test-path -path $x86) -ne $True) { write-host "$x86 doesn't exist" New-Item $x86 } if ((test-path -path $x64) -ne $True) { write-host "$x64 doesn't exist" New-Item $x64 } # Creating String to add TCP/IP Alias $TCPAlias = ("DBMSSOCN," + $SQLServerName) #Creating our TCP/IP Aliases New-ItemProperty -Path $x86 -Name $SQLAliasName -PropertyType String -Value $TCPAlias New-ItemProperty -Path $x64 -Name $SQLAliasName -PropertyType String -Value $TCPAlias # Open cliconfig to verify the aliases Start-Process C:WindowsSystem32cliconfg.exe Start-Process C:WindowsSysWOW64cliconfg.exe # Farm Passphrase $s_configPassphrase = (ConvertTo-SecureString -String $ConfigPassphrase -AsPlainText -force)
  71. 71. CHECK IF ALIAS WAS CREATED Alias is a must, you will get in trouble, if you want to change SQL Server and have no Alias
  72. 72. Simulate Config Wizzard # Make SharePoint PowerShell Availlable Add-PSSnapin Microsoft.SharePoint.PowerShell # Creating SharePoint Configuration Database Write-Output "Creating the configuration database $dbConfig" Write-Host "Bitte Farm Credentials eingeben" -ForegroundColor Green $farmAccount = Get-Credential New-SPConfigurationDatabase -DatabaseName $dbConfig -DatabaseServer $SQLAliasName -AdministrationContentDatabaseName $dbCentralAdmin -Passphrase $s_configPassphrase - FarmCredentials $farmAccount # Check to make sure the farm exists and is running. if not, end the script $Farm = Get-SPFarm if (!$Farm -or $Farm.Status -ne "Online") { Write-Output "Farm was not created or is not running" exit } Write-Output "Create the Central Administration site on port $CaPort" New-SPCentralAdministration -Port $CaPort -WindowsAuthProvider $CaAuthProvider # Perform the config wizard tasks Write-Output "Install Help Collections" Install-SPHelpCollection -All Write-Output "Initialize security" Initialize-SPResourceSecurity Write-Output "Install services" Install-SPService Write-Output "Register features" Install-SPFeature -AllExistingFeatures Write-Output "Install Application Content" Install-SPApplicationContent Write-Host "Farm build complete." -ForegroundColor Green
  73. 73. Managed Account and App Pool # Add managed accounts Write-Host "Creating managed accounts ... " Write-Host "Bitte Services Account Credentials eingeben" -ForegroundColor Green $servicesAccount = Get-Credential New-SPManagedAccount -credential $servicesAccount Write-Host "Bitte Access Services Account Credentials eingeben" -ForegroundColor Green $AccessservicesAccount = Get-Credential New-SPManagedAccount -credential $AccessservicesAccount Write-Host "Bitte Portal Account Credentials eingeben" -ForegroundColor Green $portalAccount = Get-Credential New-SPManagedAccount -credential $portalAccount Write-Host "Bitte MySite Account Credentials eingeben" -ForegroundColor Green $MySiteAccount = Get-Credential New-SPManagedAccount -credential $MySiteAccount # Creating App Pool for Service Applications New-SPServiceApplicationPool -Name $SaAppPoolName -Account (Get-SPManagedAccount –Identity $AppPoolUser) New-SPServiceApplicationPool -Name $AccessAppPoolName -Account (Get-SPManagedAccount –Identity $AccessAppPoolUser)
  74. 74. STEP 3 – FARM INITIAL DONE
  75. 75. Step 4.1 – Usage and Health # Usage and Health Data Collection # Parameters $UsageSAName = "Usage and Health Data Collection" $dbUsageService = "TBD_DEMO_Usage_and_Health_Data" $UsageLogLocation = "C:Program FilesCommon Filesmicrosoft sharedWeb Server Extensions15LOGS" $MaxUsageLogSpace = 5 #in GB # Create Service Application Write-Host "Creating Usage and Health Data Collection..." Set-SPUsageService -LoggingEnabled 1 -UsageLogLocation $UsageLogLocation -UsageLogMaxSpaceGB $MaxUsageLogSpace $UsageService = Get-SPUsageService New-SPUsageApplication -Name $UsageSAName -DatabaseServer $SQLAliasName -DatabaseName $dbUsageService - UsageService $UsageService # As Proxy ist stopped after this, provision in $UsageSAProxy = Get-SPServiceApplicationProxy | where-object {$_.TypeName -eq “Usage and Health Data Collection Proxy”} $UsageSAProxy.Provision()
  76. 76. Step 4.2 – State Service # State Service # Parameters $StateSAName = "State Service" $dbStateService = "TBD_DEMO_State" # Create Service Write-Host "Creating State Service..." New-SPStateServiceDatabase -Name $dbStateService $StateSAPipe = New-SPStateServiceApplication -Name $StateSAName -Database $dbStateService New-SPStateServiceApplicationProxy -Name "$StateSAName Proxy" - ServiceApplication $StateSAPipe -DefaultProxyGroup
  77. 77. Step 4.3 – a: Managed Metadata # Managed Metadata Service Application # Parameters $ManagedMetadataSAName = "Managed Metadata Service" $dbManagedMetadata = "TBD_DEMO_Managed_Metadata" # Create Service Application Write-Host "Creating Managed Metadata Service..." New-SPMetadataServiceApplication -Name $ManagedMetadataSAName – ApplicationPool $SaAppPoolName -DatabaseServer $SQLAliasName -DatabaseName $dbManagedMetadata New-SPMetadataServiceApplicationProxy -Name "$ManagedMetadataSAName Proxy" -ServiceApplication $ManagedMetadataSAName -DefaultProxyGroup Get-SPServiceInstance | where-object {$_.TypeName -eq "Managed Metadata Web Service"} | Start-SPServiceInstance
  78. 78. B: OPTIONS FOR MMS PROXY
  79. 79. c: MMS Proxy Settings # Get Metadata service application proxy $MMSProxy = Get-SPServiceApplicationProxy | Where-Object {$_.TypeName -eq "Managed Metadata Service Connection"} # This service application is the default storage location for Keywords. $MMSProxy.Properties["IsDefaultKeywordTaxonomy"] = $true # This service application is the default storage location for column specific term sets. $MMSProxy.Properties["IsDefaultSiteCollectionTaxonomy"] = $true # Consumes content types from the Content Type Gallery $MMSProxy.Properties["IsNPContentTypeSyndicationEnabled"] = $false # Push-down Content Type Publishing updates from the Content Type Gallery to sub-sites and lists using the content type. $MMSProxy.Properties["IsContentTypePushdownEnabled"] = $true $MMSProxy.Update()
  80. 80. Step 4.4 – a: Search Parameters # Search Service Application and Topology # Parameters $SearchMachine = "WFE1" $SearchSAName = "Search Service" $dbSearchDatabase = "TBD_DEMO_Search" $IndexLocation = "C:SPIndex" if (!(Test-Path -path $Indexlocation)) {New-Item $Indexlocation -Type Directory}
  81. 81. b: Create Search SA # Create Service Application Write-Host "Creating Search Service Application…" Write-Host "Starting Service…" Start-SPEnterpriseSearchQueryAndSiteSettingsServiceInstance $SearchMachine Start-SPEnterpriseSearchServiceInstance $SearchMachine Write-Host "Creating Search Service Application…" $SearchSA = New-SPEnterpriseSearchServiceApplication -Name $SearchSAName -ApplicationPool $SaAppPoolName -DatabaseServer $SQLAliasName -DatabaseName $dbSearchDatabase $SearchInstance = Get-SPEnterpriseSearchServiceInstance -Local Write-Host "Defining the Search Topology…" $InitialSearchTopology = $SearchSA | Get-SPEnterpriseSearchTopology -Active $NewSearchTopology = $SearchSA | New-SPEnterpriseSearchTopology Write-Host "Creating Admin Component…" New-SPEnterpriseSearchAdminComponent -SearchTopology $NewSearchTopology -SearchServiceInstance $SearchInstance Write-Host "Creating Analytics Component…" New-SPEnterpriseSearchAnalyticsProcessingComponent -SearchTopology $NewSearchTopology -SearchServiceInstance $SearchInstance Write-Host "Creating Content Processing Component…" New-SPEnterpriseSearchContentProcessingComponent -SearchTopology $NewSearchTopology -SearchServiceInstance $SearchInstance Write-Host "Creating Query Processing Component…" New-SPEnterpriseSearchQueryProcessingComponent -SearchTopology $NewSearchTopology -SearchServiceInstance $SearchInstance Write-Host "Creating Crawl Component…" New-SPEnterpriseSearchCrawlComponent -SearchTopology $NewSearchTopology -SearchServiceInstance $SearchInstance Write-Host "Creating Index Component…" New-SPEnterpriseSearchIndexComponent -SearchTopology $NewSearchTopology -SearchServiceInstance $SearchInstance -RootDirectory $IndexLocation Write-Host "Activating the new topology…" $NewSearchTopology.Activate() Write-Host "Creating Search Application Proxy…" New-SPEnterpriseSearchServiceApplicationProxy -Name "$SearchSAName Proxy" -SearchApplication $SearchSA
  82. 82. Step 4.5 – Word Automation SA # Word Conversion Service Application $WordSAName = "Word Automation Service" $dbWordAutomation = "TBD_DEMO_WordAutomation" # Create Service Application Write-Host "Creating Word Automation Service..." New-SPWordConversionServiceApplication -Name $WordSAName - ApplicationPool $SaAppPoolName -DatabaseName $dbWordAutomation -DatabaseServer $SQLAliasName –Default Get-SPServiceInstance | where-object {$_.TypeName -eq "Word Automation Services"} | Start-SPServiceInstance
  83. 83. Step 4.6 – Business Connectivity # Business Conectivity Services Service Application $BcsSAName = "Business Connectivity Service" $dbBcs = "TBD_DEMO_BusinessConnectivity" # Create Service Application Write-Host "Creating Business Connectivity Service..." New-SPBusinessDataCatalogServiceApplication –ApplicationPool $SaAppPoolName –DatabaseName $dbBcs –DatabaseServer $SQLAliasName –Name $BcsSAName Get-SPServiceInstance | where-object {$_.TypeName -eq "Business Data Connectivity Service"} | Start-SPServiceInstance
  84. 84. Step 4.7 – Secure Store # Secure store Service Application $SecureStoreSAName = "Secure Store Service" $dbSecureStore = "TBD_DEMO_Secure_Store" # Create Service Application Write-Host "Creating Secure Store Service..." $SecureStoreSAPipe = New-SPSecureStoreServiceApplication – ApplicationPool $SaAppPoolName –AuditingEnabled:$false – DatabaseServer $SQLAliasName –DatabaseName $dbSecureStore –Name $SecureStoreSAName New-SPSecureStoreServiceApplicationProxy –Name "$SecureStoreSAName Proxy" –ServiceApplication $SecureStoreSAPipe -DefaultProxyGroup Get-SPServiceInstance | where-object {$_.TypeName -eq "Secure Store Service"} | Start-SPServiceInstance
  85. 85. Step 4.8 – Performance Point # Performance Point Service Application $PerformancePointSAName = "Performance Point Services" $dbPerformancePoint = "TBD_DEMO_PerformancePoint" # Create Service Application Write-Host "Creating PerformancePoint Service..." $PerformancePointSAPipe = New-SPPerformancePointServiceApplication -Name $PerformancePointSAName -ApplicationPool $SaAppPoolName - DatabaseName $dbPerformancePoint New-SPPerformancePointServiceApplicationProxy -Name "$PerformancePointSAName Proxy" -ServiceApplication $PerformancePointSAPipe –Default Get-SPServiceInstance | where-object {$_.TypeName -eq "PerformancePoint Service"} | Start-SPServiceInstance
  86. 86. Step 4.9 – Visio Services # Visio Service Application $VisioSAName = "Visio Services" # Create Service Application Write-Host "Creating Visio Service..." New-SPVisioServiceApplication -Name $VisioSAName - ApplicationPool $SaAppPoolName New-SPVisioServiceApplicationProxy -Name "$VisioSAName Proxy" - ServiceApplication $VisioSAName Get-SPServiceInstance | where-object {$_.TypeName -eq "Visio Graphics Service"} | Start-SPServiceInstance
  87. 87. Step 4.10 – User Profile SA # User Profile Service Application $UserProfileSAName = "User Profile Service" $dbUserProfile = "TBD_DEMO_UserProfile_Profiles" $dbUserSocial ="TBD_DEMO_UserProfile_Social" $dbUserSync ="TBD_DEMO_UserProfile_Sync" # Create Service Application Write-Host "Creating User Profile Service..." $UserProfileSAPipe = New-SPProfileServiceApplication -Name $UserProfileSAName -ApplicationPool $SaAppPoolName -ProfileDBServer $SQLAliasName -ProfileDBName $dbUserProfile -SocialDBServer $SQLAliasName - SocialDBName $dbUserSocial -ProfileSyncDBServer $SQLAliasName - ProfileSyncDBName $dbUserSync New-SPProfileServiceApplicationProxy -Name "$UserProfileSAName Proxy" - ServiceApplication $UserProfileSAPipe -DefaultProxyGroup Get-SPServiceInstance | where-object {$_.TypeName -eq "User Profile Service"} | Start-SPServiceInstance
  88. 88. Step 4.11 – App Management # App management Service Application $AppManagementSAName = "App Management Service" $dbAppManagement = "TBD_DEMO_App_Management" # Create Service Application Write-Host "Creating App Management Service…" $AppManagementSAPipe = New-SPAppManagementServiceApplication -Name $AppManagementSAName -DatabaseServer $SQLAliasName -DatabaseName $dbAppManagement –ApplicationPool $SaAppPoolName New-SPAppManagementServiceApplicationProxy -Name "$AppManagementSAName Proxy" -ServiceApplication $AppManagementSAPipe Get-SPServiceInstance | where-object {$_.TypeName -eq "App Management Service"} | Start-SPServiceInstance
  89. 89. Step 4.12 – Translation Service # Machine Translation Service Application $TranslationSAName = "Machine Translation Service" $dbTranslation = "TBD_DEMO_Machine_Translation" # Create Service Application Write-Host "Creating Machine Translation Service..." New-SPTranslationServiceApplication -Name $TranslationSAName - ApplicationPool $SaAppPoolName -DatabaseName $dbTranslation - Default Get-SPServiceInstance | where-object {$_.TypeName –eq "Machine Translation Service"} | Start-SPServiceInstance
  90. 90. Step 4.13 – Work Management # Work Management Service Application $WorkMgmtSAName = "Work Management Service" # Create Service Application Write-Host "Creating Work Management Service..." $WorkManagementSAPipe = New-SPWorkManagementServiceApplication – Name $WorkMgmtSAName –ApplicationPool $SaAppPoolName New-SPWorkManagementServiceApplicationProxy -name "$WorkMgmtSAName Proxy" -ServiceApplication $WorkManagementSAPipe -DefaultProxyGroup Get-SPServiceInstance | where-object {$_.TypeName –eq "Work Management Service"} | Start-SPServiceInstance
  91. 91. 4.13.1 – GIVE RIGHTS IN DB › Grant the account that the Work Management service is running as "Full Control" to the User Profiles Using "administrators" and "permissions" button on the ribbon › $webApp = Get-SpWebApplication [URL of the MYSite web application] $webapp.GrantAccessToProcessIdentity("[Work Management account]") › This should add the WMS Account to: User Policy of the WebApp, to Config DB with WSS_Content_Applicaiton_Pools, to My Site DB with SPDataAccess Role
  92. 92. 4.13.2 – GIVE RIGHTS TO APPPOOL Give the Services App Pool Account full Rights to User Profile Service Application
  93. 93. Step 4.14 – Excel Services # Excel Services $ExcelSAName = "Excel Services" # Create Service Application Write-Host "Creating Excel Service..." New-SPExcelServiceApplication -Name $ExcelSAName - ApplicationPool $SaAppPoolName -Default Get-SPServiceInstance | where-object {$_.TypeName –eq "Excel Calculation Services"} | Start-SPServiceInstance
  94. 94. Step 4.15 – Subscription Settings Subscription Settings Service is for Multi Tenancy Scenarios Also needed for Access Services 2013 # Subscription Settings Service Application $SubscriptionSAName = "Subscription Settings Service" $dbSubscription = "TBD_DEMO_Subscription_Settings" # Create Service Application Write-Host "Creating Subscription Settings Service…" $SubscriptionSAPipe = New-SPSubscriptionSettingsServiceApplication –ApplicationPool $SaAppPoolName –Name $SubscriptionSAName –DatabaseName $dbSubscription New-SPSubscriptionSettingsServiceApplicationProxy –ServiceApplication $SubscriptionSAPipe Get-SPServiceInstance | where-object {$_.TypeName -eq "Microsoft SharePoint Foundation Subscription Settings Service"} | Start-SPServiceInstance
  95. 95. Step 4.16 – a: Access Services Will only work after App Configuration (follows next) Concider using an Extra App Pool (special configuration) # Access Services $AccessSAName = "Access Services" # Create Service Application Write-Host "Creating Access Service…" New-SPAccessServicesApplication -Name $AccessSAName - ApplicationPool $AccessAppPoolName -Default Get-SPServiceInstance | where-object {$_.TypeName -eq "Access Services"} | Start-SPServiceInstance White Paper: http://www.microsoft.com/en-us/download/details.aspx?id=30445
  96. 96. B: SQL FEATURE PACK › Microsoft SQL Server 2012 Local DB (SQLLocalDB.msi) › Microsoft SQL Server 2012 Data-Tier Application Framework (DACFramework.msi) › Microsoft SQL Server 2012 Native Client (sqlncli.msi) › Microsoft SQL Server 2012 Transact-SQL ScriptDom (sqldom.msi) › Microsoft System CLR Types for Microsoft SQL Server 2012 (SQLSysClrTypes.msi) Feature Pack: http://www.microsoft.com/en-us/download/details.aspx?id=29065
  97. 97. C: APP POOL CONFIG › 1. Advanced Settings › 2. Load User Profile › 3. Restart Server
  98. 98. D: SECURE STORE Go to Secure Store Service and generate a new Key Enter any secure String
  99. 99. E: TARGET DB SERVER Navigate to Access Services Service App, expand «New Application Database» In Our Case we use std. SQL Server, normally use dedicated
  100. 100. F: SETTING SQL RIGHTS FOR APP POOL › Give demosp-access following Rights: › Configuration Database: DBO › Content Databases: DBO › App Management Database: SPDataAccess
  101. 101. G: OFFICE DEPLOYMENTS › If you have Office deployed in different Languages, you must deploy all these Languages as SharePoint Language Pack › User will get an error if not
  102. 102. STEP 4.17 – OTHER SERVICES › Claims to windows Token: If you have Scenarios with external Data Access › Document Conversion: If you want to convert Documents to HTML › Lotus Notes Connector: Self explaining › Sandboxed Code: To run Sandboxed Solutions (recomended) › PowerPoint Conversion: If you want to implement ppt > pptx Conversion › Request Management: If you want to load balance SharePoint 2013 › User Profile Synchronization: If you are using FIM to synchronise User Profiles
  103. 103. STEP 4.18 – CREATE WEBAPPS › Create an Intranet Portal with the Team Site Template › Create a My Site Portal with the My Site Host Template
  104. 104. STEP 4.19 – CONFIGURE MY SITE › Go to User Profile Service Application › Click to «Steup My Sites» › Add http://my.demo.local to My Site Host › Hit OK › Go to Webapplications, on My Site Web App configure Self Service to yes › Add Managed Path «Personal»
  105. 105. STEP 4.20 – IMPORT USERS FROM AD › There are two Methods to do this: › Forefront Identity Manager (like in 2010) › AD Direct Import › Depends on your Scenario › Done in User Profile Service Application › Import Account needs «Replicate Directory Changes» Right on AD
  106. 106. Step 4.21 – Cache Users $wa = Get-SPWebApplication -Identity "http://intranet.demo.local" $wa.Properties["portalsuperuseraccount"] = "i:0#.w|demosp- cacheadmin" $wa.Properties["portalsuperreaderaccount"] = "i:0#.w|demosp- cachereader" $wa.Update()
  107. 107. STEP 5 – SHAREPOINT APPS › Apps is the new Model for Development in SharePoint 2013 › Access Services is used like Apps › An App can be › SharePoint hosted › Auto hosted › Provider hosted › We need to configure it specially
  108. 108. PREPARING FOR APPS › We need to configure a new Domain Name › Nothign to do with Active Directory!! › We call it Appdomain › In our case demoapps.local › Done in DNS Manager › Used to forward to SharePoint
  109. 109. ADD NEW ZONE
  110. 110. NEXT
  111. 111. NEXT
  112. 112. NEXT
  113. 113. ENTER DOMAIN NAME
  114. 114. NEXT
  115. 115. FINISH
  116. 116. ADD NEW HOST TO APPDOMAIN Right click and select «New Host»
  117. 117. POINT * TO FRONTEND OR NLB This will point all Apps to SharePoint
  118. 118. CREATE SERVER WEBAPPLICATION › Needed for Host Header Web Apps and Host named Site Collections › No Host Header › Inf not created, redirect to App will not take place › Be aware of DB Name and App Pool Account
  119. 119. «STANDARD WEBSITE» OFF Make sure, Default Web Site is stopped
  120. 120. CONFIGURE APP URLS
  121. 121. CREATE APP CATALOG › App Catalog is managed per Web Application › Create a App Catalog under each Web Application you have in your Company › It’s a normal Site Collection
  122. 122. NEW APP CATALOG DIALOG
  123. 123. THE WEBAPPS Installation and Integration of Office WebApps in SharePoint 2013
  124. 124. FIRST THINGS FIRST › Web Apps are no longer a Service Application › Web Apps are a standallone Server and cannot be installed on SharePoint WFE › Web Apps can be used from Fileshares, Outlook Web Access and so on › Licensing is still a user based License (Office Package)
  125. 125. Step 1 – Preparation # Add needed Roles to Server Import-Module ServerManager Add-WindowsFeature Web-Server,Web-Mgmt-Tools,Web-Mgmt- Console,Web-WebServer,Web-Common-Http,Web-Default-Doc,Web- Static-Content,Web-Performance,Web-Stat-Compression,Web-Dyn- Compression,Web-Security,Web-Filtering,Web-Windows-Auth,Web-App- Dev,Web-Net-Ext45,Web-Asp-Net45,Web-ISAPI-Ext,Web-ISAPI- Filter,Web-Includes,InkandHandwritingServices Server need Restart after this
  126. 126. STEP 2 – INSTALLATION
  127. 127. INSTALL NOW
  128. 128. WAIT FOR INSTALL TO FINISH
  129. 129. CLOSE
  130. 130. APPLY UPDATE KB2810007 Update Link: http://www.microsoft.com/en-us/download/details.aspx?id=38378
  131. 131. WAIT FOR UPDATE TO FINISH
  132. 132. UPDATE DONE
  133. 133. Create Web Apps Farm # Create Office Web Apps Farm (Single Farm) New-OfficeWebAppsFarm –InternalURL "http://WebApps.demo.local" – AllowHttp -EditingEnabled Check if Discovery Service answers (with an XML) http://webapps.demo.local/hosting/discovery
  134. 134. Bind Web Apps to SharePoint Run on SharePoint Server! # Create new WOPI Binding for SharePoint to Web Apps Server New-SPWOPIBinding -ServerName webapps -AllowHTTP Get-SPWOPIZone Set-SPWOPIZone –zone "internal-http" Get-SPWOPIZone (Get-SPSecurityTokenServiceConfig).AllowOAuthOverHttp $config = (Get-SPSecurityTokenServiceConfig) $config.AllowOAuthOverHttp = $true $config.Update() (Get-SPSecurityTokenServiceConfig).AllowOAuthOverHttp
  135. 135. WORKFLOWS 2013 Integration of Workflow Manager in SharePoint 2013
  136. 136. FIRST THINGS FIRST › Workflows changed in SharePoint 2013 › Needs it’s own Installation (Workflow Manager) › Can run on SharePoint Frontend or Standalone Server
  137. 137. LAUNCH WORKFLOW MANAGER
  138. 138. INSTALL
  139. 139. ACCEPT TERMS
  140. 140. USE MS UPDATES
  141. 141. WAIT FOR INSTALL
  142. 142. CONTINUE
  143. 143. CONFIGURATION WIZZARD
  144. 144. ADD DB SERVER, USER, PASSPHRASE
  145. 145. WAIT FOR CONFIG TO FINISH
  146. 146. CONFIG READY TO INSTALL
  147. 147. WAIT FOR INSTALL
  148. 148. WORKFLOW FARM CREATED
  149. 149. FINISH
  150. 150. EXIT
  151. 151. Add WF Manager to SharePoint # Register Workflow Service Register-SPWorkflowService –SPSite "http://intranet.demo.local" –WorkflowHostUri "http://wfe1.demo.local:12291" –AllowOAuthHttp
  152. 152. PORTS FOR WORKFLOWS › 12290 – Management Port › 9355 – Secure Deployment › 12291 – Unsecured Management Port › 9354 – TCP Deployment › 9356 – Message Broker › 9000-9003 – Internal Communication
  153. 153. NOW YOU CAN USE 2013 WF
  154. 154. PERFORMANCE TESTING Using Visual Studio and SQLIO to do Performance Testing
  155. 155. SQLIO Parameter Description Sqlio Program Call -kR / -kW Measure Read oder Write Performance -t32 No. of Threads -s60 Duration in Seconds -dF What drive is tested (Driveletter) -o64 No. of outstanding Requests -frandom Random Operations (Sequential is mostly not used) -b64 Blocksize in bytes Download: http://www.microsoft.com/en-us/download/details.aspx?id=20163
  156. 156. SQLIO Test Batch sqlio -kW -t16 -s60 -dF -o4 -frandom -b64 -BH -LS Testfile.dat sqlio -kW -t16 -s60 -dF -o8 -frandom -b64 -BH -LS Testfile.dat sqlio -kW -t16 -s60 -dF -o16 -frandom -b64 -BH -LS Testfile.dat sqlio -kW -t16 -s60 -dF -o32 -frandom -b64 -BH -LS Testfile.dat sqlio -kW -t16 -s60 -dF -o64 -frandom -b64 -BH -LS Testfile.dat sqlio -kR -t16 -s60 -dF -o4 -frandom -b64 -BH -LS Testfile.dat sqlio -kR -t16 -s60 -dF -o8 -frandom -b64 -BH -LS Testfile.dat sqlio -kR -t16 -s60 -dF -o16 -frandom -b64 -BH -LS Testfile.dat sqlio -kR -t16 -s60 -dF -o32 -frandom -b64 -BH -LS Testfile.dat sqlio -kR -t16 -s60 -dF -o64 -frandom -b64 -BH -LS Testfile.dat sqlio -kW -t32 -s60 -dF -o4 -frandom -b64 -BH -LS Testfile.dat sqlio -kW -t32 -s60 -dF -o8 -frandom -b64 -BH -LS Testfile.dat sqlio -kW -t32 -s60 -dF -o16 -frandom -b64 -BH -LS Testfile.dat sqlio -kW -t32 -s60 -dF -o32 -frandom -b64 -BH -LS Testfile.dat sqlio -kW -t32 -s60 -dF -o64 -frandom -b64 -BH -LS Testfile.dat sqlio -kR -t32 -s60 -dF -o4 -frandom -b64 -BH -LS Testfile.dat sqlio -kR -t32 -s60 -dF -o8 -frandom -b64 -BH -LS Testfile.dat sqlio -kR -t32 -s60 -dF -o16 -frandom -b64 -BH -LS Testfile.dat sqlio -kR -t32 -s60 -dF -o32 -frandom -b64 -BH -LS Testfile.dat sqlio -kR -t32 -s60 -dF -o64 -frandom -b64 -BH -LS Testfile.dat sqlio -kW -t64 -s60 -dF -o4 -frandom -b64 -BH -LS Testfile.dat sqlio -kW -t64 -s60 -dF -o8 -frandom -b64 -BH -LS Testfile.dat sqlio -kW -t64 -s60 -dF -o16 -frandom -b64 -BH -LS Testfile.dat sqlio -kW -t64 -s60 -dF -o32 -frandom -b64 -BH -LS Testfile.dat sqlio -kW -t64 -s60 -dF -o64 -frandom -b64 -BH -LS Testfile.dat sqlio -kR -t64 -s60 -dF -o4 -frandom -b64 -BH -LS Testfile.dat sqlio -kR -t64 -s60 -dF -o8 -frandom -b64 -BH -LS Testfile.dat sqlio -kR -t64 -s60 -dF -o16 -frandom -b64 -BH -LS Testfile.dat sqlio -kR -t64 -s60 -dF -o32 -frandom -b64 -BH -LS Testfile.dat sqlio -kR -t64 -s60 -dF -o64 -frandom -b64 -BH -LS Testfile.dat
  157. 157. VISUAL STUDIO ULTIMATE
  158. 158. QUESTIONS & ANSWERS ….Questions?! Kontakt: szu@expertsinside.com Mehr zum Thema: http://sharepointszu.com/category/die-serie-best-practice/
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×