This repository has been archived by the owner on Nov 8, 2023. It is now read-only.
forked from patrickperrone/Sitecore-PowerShell-Installer
-
Notifications
You must be signed in to change notification settings - Fork 0
/
install.ExampleCD.config
379 lines (337 loc) · 18.1 KB
/
install.ExampleCD.config
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
<?xml version="1.0" encoding="utf-8"?>
<InstallSettings>
<!-- PreReqs
https://docs.microsoft.com/en-us/sql/relational-databases/scripting/sql-server-powershell
https://www.microsoft.com/en-us/download/details.aspx?id=52676
Install-Module -Name ImportExcel
Install-Module -Name AzureRM.sql
-->
<!-- If blank, no log file will be generated. The log file location will be the
SitecoreInstallFolder.
-->
<LogFileName>InstallLog.txt</LogFileName>
<!-- Path of downloaded zip file from Sitecore -->
<SitecoreZipPath>C:\Users\sp_farmadmin\AppData\Roaming\Sitecore\Sitecore Instance Manager\Repository\Sitecore 8.2 rev. 161221.zip</SitecoreZipPath>
<!-- Path of downloaded Sitecore configuration spreadsheet.
This setting is required and used for installing Sitecore 8.2
Find the spreadsheet here: https://doc.sitecore.net/sitecore_experience_platform/setting_up_and_maintaining/xdb/configuring_servers/server_configuration_resources
-->
<SitecoreConfigSpreadsheetPath>C:\temp\Config Enable-Disable Sitecore_8.2 Update2.xlsx</SitecoreConfigSpreadsheetPath>
<!-- If true then user prompts will be bypassed. For example, if the script cannot determine that SQL
has FullControl over database files, then a dialog prompt will be displayed asking if the script
should continue if this property is set to false.
-->
<SuppressPrompts>true</SuppressPrompts>
<WebServer>
<LicenseFilePath>C:\ArkeSitecoreLicense\license.xml</LicenseFilePath>
<SitecoreInstallRoot>C:\inetpub\wwwroot</SitecoreInstallRoot>
<!-- Folder will be created at the SitecoreInstallRoot if it does not already exist. -->
<SitecoreInstallFolder>ExampleCD</SitecoreInstallFolder>
<!-- Select a name for the last folder under /App_Config/Include
This is the folder where all config files which must be patched last should be kept (e.g.
SwitchMasterToWeb.config file.) For Sitecore 8.1, if no name is supplied then the installer
will use the Z.SwitchMasterToWeb folder.
-->
<LastChildFolderOfIncludeDirectory>zzzMustBeLast</LastChildFolderOfIncludeDirectory>
<!-- Encrypt the contents of the ConnectionStrings.config file -->
<EncryptConnectionStrings>true</EncryptConnectionStrings>
<IISWebSiteName>ExampleCD</IISWebSiteName>
<DefaultRuntimeVersion>v4.0</DefaultRuntimeVersion>
<!-- Valid values are:
- NetworkService
- ApplicationPoolIdentity
- Any domain account in the form <domain>\<username>
If you supply a domain account, you must also provide a valid password for the account.
-->
<AppPoolIdentity>EVADEV\SCTest_AppPool</AppPoolIdentity>
<AppPoolIdentityPassword>P@ssword</AppPoolIdentityPassword>
<IISBindings>
<Binding IP="*" Port="80" HostHeader="examplecd" AddToHostsFile="true" />
<Binding IP="10.10.20.11" Port="80" HostHeader="excd" AddToHostsFile="false" />
<Binding IP="10.10.20.11" Port="80" HostHeader="ecd" />
</IISBindings>
<!-- Provide a unique name for this instance of Sitecore. This value should be set any time you have mulitple CD or CM servers. -->
<SitecoreInstanceName>ExampleCD1</SitecoreInstanceName>
<!-- This section controls settings for Sitecore's Analytics -->
<Analytics>
<ClusterName>mycluster1.company.com</ClusterName>
<HostName>www.company.com</HostName>
</Analytics>
<!-- This value will be written to the reporting.api connection string. Only applies to Sitecore 8.2 -->
<ReportingApiKey>12345678901234567890123456789012</ReportingApiKey>
<!-- Sitecore recommends changing the default password hash algorithm from SHA1 to SHA512
For user management, Sitecore uses the Microsoft ASP.NET membership provider by default.
*** IMPORTANT! ***
The Microsoft ASP.NET membership provider does not provide a facility for upgrading to a different hash algorithm after you have created
user accounts. IF YOU CHANGE THE HASH ALGORITHM, EXISTING USERS CAN NO LONGER LOG INTO THE SYSTEM AND MUST CREATE A NEW PASSWORD.
Valid values are:
- ""
- a supported hash algorithm from the System.Security.Cryptography.CryptoConfig class :
https://msdn.microsoft.com/en-us/library/system.security.cryptography.cryptoconfig(v=vs.110).aspx
-->
<PasswordHashAlgorithm>SHA512</PasswordHashAlgorithm>
<CMServerSettings enabled="false">
<!-- If this value is non-empty, then admin's password will be set to this value -->
<DefaultSitecoreAdminPassword></DefaultSitecoreAdminPassword>
<!-- Add an Encryption Key for the Telerik controls
http://docs.telerik.com/devtools/aspnet-ajax/controls/asyncupload/security
If using load-balanced CM servers, the value must match on both servers.
-->
<TelerikEncryptionKey></TelerikEncryptionKey>
<!-- Use these settings to dedicate Sitecore instance as the Publishing server. This is required
when you are using load-balanced CM servers.
-->
<Publishing enabled="false">
<!-- This setting is ALWAYS applied to a CM server even if publishing is disabled. Therefore,
for an isolated CM you may leave this value blank or make sure it matches the CM
InstanceName
-->
<PublishingInstance></PublishingInstance>
<!-- Use these settings to enable IIS Application Initialization on a dedicated publishing instance.
Setting enabled to true will:
- Enable the Application Initialization feature on the web server
- Add preloadEnabled="true" to the application configuration
- Add applicationInitialization node to the system.webserver
- Set doAppInitAfterRestart to true
- Set the AppPool startMode to "AlwaysRunning"
- Set the AppPool IdleTimeout to 0
- Set the AppPool Recycling regular time interval to 0
Valid values are "true" or "false"
-->
<ApplicationInitializationEnabled>false</ApplicationInitializationEnabled>
<!-- Timeout length in minutes for IIS App Pool
If enabled, Application Intialization will override this value with 0.
-->
<AppPoolIdleTimeout>600</AppPoolIdleTimeout>
<!-- If this setting is false, the keepalive task will not run and the publishing server will get cold. -->
<DisableScheduledTaskExecution>true</DisableScheduledTaskExecution>
<Parallel enabled="false">
<!-- If set, the autogrowth for data and log files of the web database and any copy of the
web database will be based on a fixed size of MB rather than a percentage. This follow
recommendations from Sitecore. Recommended values range from 30 to 50.
Valid values range from 10 to 100.
-->
<WebDatabaseAutoGrowthInMB>30</WebDatabaseAutoGrowthInMB>
<MaxDegreesOfParallelism>4</MaxDegreesOfParallelism>
</Parallel>
</Publishing>
<!-- Use these settings to dedicate Sitecore instance as a Processing server. -->
<Processing enabled="false">
<!-- Valid values are "true" or "false"
Invalid values or missing elements will be treated as "false"
-->
<ApplyIPWhitelist>true</ApplyIPWhitelist>
<!-- Enabling this will cause recommended connection strings to be commented out -->
<DeactivateConnectionStrings>true</DeactivateConnectionStrings>
<!-- Enabling this setting causes some files on the Processing server to have ".disabled" concatenated to
their filename. Other files necessary for configuring a Processing file will be enabled. The files changed are from the recommendations here:
https://doc.sitecore.net/sitecore_experience_platform/setting_up_and_maintaining/xdb/configuring_servers/configure_a_processing_server
-->
<ConfigureFilesForProcessing>true</ConfigureFilesForProcessing>
<!-- Denies anonymous users from accessing certain directories per Sitecore's recommendations -->
<PreventAnonymousAccess>true</PreventAnonymousAccess>
</Processing>
</CMServerSettings>
<CDServerSettings enabled="true">
<!-- Valid values are "true" or "false"
Invalid values or missing elements will be treated as "false"
-->
<ApplyIPWhitelist>true</ApplyIPWhitelist>
<!-- Enabling this will cause recommended connection strings to be commented out -->
<DeactivateConnectionStrings>true</DeactivateConnectionStrings>
<!-- Enabling this setting causes some files on the CD server to have ".disabled" concatenated to
their filename. Other files necessary for configuring a CD such as the
SwitchMasterToWeb.config file will be enabled. The files changed are from the recommendations here:
https://doc.sitecore.net/sitecore%20experience%20platform/xdb%20configuration/configure%20a%20content%20delivery%20server
-->
<ConfigureFilesForCD>true</ConfigureFilesForCD>
<!-- Denies anonymous users from accessing certain directories per Sitecore's recommendations -->
<PreventAnonymousAccess>true</PreventAnonymousAccess>
<!-- Prevent the execution of scripts or programs in the upload and temp folders -->
<DenyExecutePermission>true</DenyExecutePermission>
<!-- Enabling this setting prevents uploading files outside of the Sitecore client -->
<DisableUploadWatcher>true</DisableUploadWatcher>
<!-- If you have implemented custom code that uses ASP.NET Web API attribute routing, to avoid errors, disable the following -->
<DisableExperienceAnalyticsAssemblies>true</DisableExperienceAnalyticsAssemblies>
<!-- Remove PhantomJs from CD per Sitecore's recommendations -->
<RemovePhantomJs>true</RemovePhantomJs>
<!-- Disables Telerik UI Handlers on CD server. -->
<DisableTelerikControls>true</DisableTelerikControls>
</CDServerSettings>
<!-- Media Request Protection - Applied to CM and CD Servers -->
<MediaRequestProtection>
<!-- In a multi-instance setup, use the same value for Media.RequestProtection.SharedSecret on every instance.
SharedSecret is required. If no value is provided, Sitecore default value will be used. -->
<SharedSecret></SharedSecret>
<!-- Specifies whether the media request protection feature will output detailed information to the Sitecore log file.
If no value is provided, Sitecore default value (true) will be used. -->
<LoggingEnabled>true</LoggingEnabled>
</MediaRequestProtection>
<!-- Hardened directories in IIS will deny all clients except the following IPs -->
<IPWhiteList>
<IP>127.0.0.1</IP>
<IP>10.10.20.7</IP>
<IP>10.10.20.11</IP>
</IPWhiteList>
<SessionStateProvider>
<!-- Valid values for Private and Shared are:
- InProc
- MSSQL (except for Shared on a CM!)
- Mongo (currently not supported by the installer)
-->
<Private>mssql</Private>
<Shared>mssql</Shared>
</SessionStateProvider>
<Solr>
<!-- If provided, the installer will modify the
Sitecore.ContentSearch.Solr.DefaultIndexConfiguration.config.example file to use the given address
-->
<ServiceBaseAddress>http://solr5:8888/solr</ServiceBaseAddress>
</Solr>
<!-- This section determines how the connection strings for for MongoDB will be formed. Any values
left blank will not be used. The settings below adhere to MongoDB's connection string format
specification: https://docs.mongodb.org/manual/reference/connection-string/
If this section is not enabled, it will be ignored.
-->
<MongoDb enabled="true">
<!-- Optional, won't be used if blank -->
<Credentials>
<Username>someuser</Username>
<Password>somepassword</Password>
</Credentials>
<!-- At least one <Host> is required, each <Host> must specify a <HostName> and an optional <Port> -->
<Hosts>
<Host>
<HostName>node1.company.com</HostName>
<Port>27017</Port>
</Host>
<Host>
<HostName>node2.company.com</HostName>
<Port>9999</Port>
</Host>
</Hosts>
<!-- This setting's value will be appended to the connection string's URI. The format should be as a
query string.
-->
<Options>?authMechanism=PLAIN&authSource=$external&replicaSet=mymongoset</Options>
</MongoDb>
</WebServer>
<!-- If disabled the script will skip ALL database related operations.
- No SQL server connection tests
- Databases files will not be copied or attached
- User mappings, permissions will not be set
- Autogrowth will not be set on web database (relevant to parallel publishing)
Regardless the information in this section will still be used to form connection string values.
Thus, ensure that the database names are always accurate as well as the SQL server name and data
access account information.
Type: Azure, Local
Using Azure requires the installation of the Dacfx
https://www.microsoft.com/en-us/download/confirmation.aspx?id=55255
-->
<Database type="Local" enabled="true">
<Azure>
<SQLPackagePath>C:\Program Files\Microsoft SQL Server\140\DAC\bin\sqlpackage.exe</SQLPackagePath>
<SQLResourceGroup></SQLResourceGroup>
<SQLEdition></SQLEdition>
<SQLMaxSize></SQLMaxSize> <!-- in Bytes -->
<SQLServiceObjective></SQLServiceObjective>
</Azure>
<!-- Valid values are "true" or "false" Invalid values or missing element will be treated as "false"
Note that even if you do not install the database, database mappings and permissions will still
be written.
-->
<InstallDatabase>false</InstallDatabase>
<!-- Do not edit this list unless you know what you are doing! :) This list represents the all of
the default databases used by Sitecore.
-->
<DatabaseNames>
<name>Core</name>
<name>Master</name>
<name>Web</name>
<name>Sessions</name>
<name>Reporting</name>
</DatabaseNames>
<!-- Add <copy> elements for each duplicate web database to be created -->
<WebDatabaseCopies>
<!-- Setting the connectionStringName attribute will assign that value to the "name" attribute
of the connection string for this databse. For example, if the connectionStringName is "web"
then the web connection string will point to the preview database. This is useful for creating
a preview-type CD server that serves content out of a different database than the normal, web
database. If the attribute is missing or does not have a value, then the name of the copy
database will be used to create the name of the connection string.
NOTE: The "web" database is referred to in many places in Sitecore’s configuration:
- Database definitions
- Agents
- Index definitions
- Indexing strategies
- Site definitions
Thus, you will need to think about patching the Sitecore's .config files to address this behavior.
* On the preview CD server, by replacing the "web" connection string’s database with a preview
database, you can avoid much of this configuration work. If you are using Lucene, you
shouldn't need to do anything else. If you are using Solr, I STRONGLY recommend you create
dedicated 'preview' versions of web indexes and indexing strategies.
* On the CM server, you should consider doing the following:
- Configuring a <database> element similar to the web's
- If you want schedule periodic publishing, then create an <agent> for Sitecore.Tasks.PublishAgent
to publish to your preview database
- If you use WebDAV, consider adding your preview database to the
Sitecore.Tasks.CleanupFDAObsoleteMediaData <agent>
- Create 'preview' version of the onPublishEndAsync and onPublishEndAsyncSingleInstance index
update strategies
- Create Index definitions for the 'preview' versions of your 'web' indexes. This is especially
important if you use Solr!
-->
</WebDatabaseCopies>
<!-- The format is: {sqlservername[\instancename]}[,{port}]
Examples
- vmwebdev01
- vmwebdev01,1433
- vmwebdev01\myinstance
- vmwebdev01\myinstance,1433
Azure
- exampleDB.database.windows.net
-->
<SqlServerName>vmwebdev01,1433</SqlServerName>
<!-- This login is used to attach databases and assign roles in SQL. The login must have the sysadmin
server role.
-->
<SqlLoginForInstall>SC_InstallAccount</SqlLoginForInstall>
<SqlLoginForInstallPassword>P@ssword</SqlLoginForInstallPassword>
<!-- If specified, this login will be used in connection strings. Only SQL logins are valid. -->
<SqlLoginForDataAccess></SqlLoginForDataAccess>
<SqlLoginForDataAccessPassword></SqlLoginForDataAccessPassword>
<!-- If true, then the ApplicationPoolIdentity will be used for the SQL login rather than
SqlLoginForDataAccess. This setting requires a domain account is specified for the
ApplicationPoolIdentity.
-->
<UseWindowsAuthenticationForSqlDataAccess>true</UseWindowsAuthenticationForSqlDataAccess>
<DatabaseInstallPath>
<DataFiles>
<!-- Must be defined, and folder must exist. The SQL instance must have FullControl over the folder.
This value is used to attach the databases in SQL. If the Unc value is missing, this is also the
path used as the destination for SQL database file copying.
-->
<Local>C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\installdemo data files</Local>
<!-- If defined this path will be used to copy database files into the file system of the
SQL server.
-->
<Unc>\\VMWEBDEV01\installdemo data files</Unc>
</DataFiles>
<!-- This sectional is optional. If undefined, then log files will be installed in the same location
the same location as the data files defined above.
-->
<LogFiles>
<!-- Must be defined, and folder must exist. The SQL instance must have FullControl over the folder.
This value is used to attach the databases in SQL. If the Unc value is missing, this is also the
path used as the destination for SQL database file copying.
-->
<Local>C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\installdemo log files</Local>
<!-- If defined this path will be used to copy database files into the file system of the
SQL server.
-->
<Unc>\\VMWEBDEV01\installdemo log files</Unc>
</LogFiles>
</DatabaseInstallPath>
<DatabaseNamePrefix>InstallDemo_Sitecore_</DatabaseNamePrefix>
</Database>
</InstallSettings>