|
|
5/31/2009 This post is part of a series about Configuring a Sitecore Workstation. Previous post: Configure Applications. Image the system so that in the future you could easily restore it to its current state. - To minimize imaging time, clean up the hard drive to the extent possible.
- Connect an external USB hard drive.
- Install Norton Ghost, but do not install the LiveUpdate component.
- Remember to eject the disk.
- Reboot.
- Image the machine.
- Uninstall Ghost.
When restoring an image: - Remember to apply Microsoft updates afterwards.
- Uninstall Ghost.
- Eject the disk.
After imaging or restoring an image, rename the machine to identify the organization and include the vendor’s hardware identifier. On to the next post in the series: Configure a User Account. This post is part of a series about Configuring a Sitecore Workstation. Previous post: Configure Core Components. Install and configure applications: - Install Microsoft Office, but exclude Access, InfoPath, and Publisher:
 - Remember to eject the CD.
- Install Office service pack 2.
- Check windows updates again.
- Install laptop utilities.
- Install the optical disk writer and any updates. Remember to eject the CD.
- Install the optical disk player and any updates. Remember to eject the CD.
- Install the SysInternals suite. I usually put these in a directory named SysInternals under the (32-bit) Program Files directory, and create icons for AutoRuns and ProcessExplorer on the All Programs menu.
- At this point, it’s probably a time to disable some software. Check for any Windows services you can configure to not start at boot, disable any IE add-ons you do not use constantly, use SysInternals AutoRuns to disable, and autoruns to disable anything you can, and then reboot.
- Install 7Zip.
- Install Notepad++. Select the option to make Notepad++ the default HTML viewer:
- Install TortoiseSVN. I clear a few unimportant options:
- Install SQL Server 2008 Express. See my post Install SQL Server Express Edition for Use with Sitecore. Most importantly, ensure mixed mode authentication, and install Management Studio Express.
- At this point it’s useful to configure the browser as described in another post in this series, Configure a User Account.
- Install gotomeeting, but do not enter credentials.
- Install Skype, but disable features you don’t need, such as Internet Explorer integration. Note that updates to software such as skype may re-enable such features or add similar features with slightly different names in order to defeat your preference (disable using Internet Explorer Add-Ins).
- Configure Windows Update to download but not install.
- Check Windows Update.
- If necessary, on Vista, to change the Windows product key, Control Panel > System and Maintenance > System > Change product key.
- ***additional software to install***
- Disable any optional software that you can live without as described towards the end of this post.
Finally you can install Sitecore: - Create the C:\inetpub\sitecore directory. Grant the ASPNET and/or NETWORK SERVICE account(s) full control of this directory and grant the IUSR account read, execute, and list folder contents. Copy the Sitecore license to this folder.
- Use the Sitecore installer(s) to install to C:\inetpub\sitecore\sitename (see http://sdn.sitecore.net/Products/Sitecore%20V5/Sitecore%20CMS%206/Installation.aspx).
- In each web.config:
- Set LicenseFile to C:\inetpub\sitecore\license.xml.
- Set interval to 00:10:00 and update the URL in the Sitecore.Tasks.UrlAgent agent.
- Set the timeout attribute of the <sessionState> element to 60.
- Ensure that the enabled attribute of <trace> element is false.
- Delete /data/license.xml.
Add each site to the trusted sites zone, and test each site by at least viewing the home page and logging in to the CMS. Before making copies of each of the subdirectories within c:\inetpub\sitecore to create a template to restore the site to its current state, start a command prompt (as administrator): - net stop w3svc
- net stop “sql server (sqlexpress)”
For a developer workstation, install the relevant components described in a previous post in this series, First Boot and Preparation. For Visual Studio 2008, disable: - C++
- Visual Basic
- Dotfuscator
- Tools for redistributing
- Unit testing
- Crystal
- ***screen shot***
Remember to eject the disk. Install Visual Studio 2008 Service Pack 1. Then launch Visaul Studio: - Choose C# developer settings when prompted.
- See the section on optimizing Visual Studio in the Sitecore Presentation Component Cookbook. Specifically, in Visual Studio, click the Tools menu, then click Options:
- Select Environment, and then clear the Animate environment tools checkbox.
- Expand Environment, then click Startup, and then clear the value in the Start Page news channel field. Clear the Download content every checkbox. For At Startup drop-down, select Show empty environment.
 - Expand Projects and Solutions, and then clear the Track Active Item in Solution Explorer checkbox. Do not clear the three folders as shown in this image.
- Select Text Edior, and then clear the Track Changes checkbox.
 - Click HTML Designer, and then for Start pages in, select the Source View option.
 - Click Windows Forms Designer, and under Toolbox, set AutoToolboxPopulate to False.
- If you use JetBrains ReSharper, then expand Text Editor, then select C#, and then clear the Navigation bar checkbox.
- Right-click the shortcut you use to start Visual Studio. In the Target property, add the /nosplash command line option. For example:
"C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\devenv.exe" /nosplash. - Before closing Visual Studio, close Visual Studio user interface components that you won’t need open the next time Visual Studio starts.
For myself: - Install Visio 2007.
- Remember to eject the optical disk.
- Install Visio 2007 service pack 2.
- Check for Microsoft updates.
- Create one or more .cmd files to open Windows file system Explorer windows on directories that I access frequently using. I typically create something like C:\bin\open.cmd (where C:\bin is in the path) with contents such as the following, and then use the search or run feature on the Windows menu to launch:
@echo off explorer /root,g:\current\deliverables explorer /root,c:\inetpub\sitecore\site\data\logs exit I try not to install any of the following, and especially don’t let them run at startup: - Fingerprint reader drivers.
- Any branding of Microsoft IM software. Disable Microsoft IE add-ins.
- Anything from blackberry.
- Gotomeeting. Especially disable Outlook integration.
- Microsoft Groove and OneNote. Disable Microsoft IE add-ins.
- Google updater.
- I don’t install Itunes, QuickTime, Safari, or any other software from Apple, especially anything that updates itself.
- Roxio update manager.
- Vista Sidebar.
- I have to use Skype for work, but I don’t recommend it. Disable Skype IE add-ins.
Now that everything is installed, clean up the system by emptying the recycle bin and removing anything unnecessary including all but the latest restore points, C:\dell, c:\temp\*, and c:\install.log. ***TODO: how to delete restore points?*** On to the next post in the series: Image the System. This post is part of a series about Configuring a Sitecore Workstation. Previous post: First Boot and Preparation. To install Windows: - If installing more than one version of Windows, install editions in order of release (Windows XP Pro, Windows 2003, Windows Vista Enterprise or Ultimate, Windows 2008 Standard, Windows 7). As of May 2009, 64-bit software presents various challenges. Do not install 64-bit Windows without sufficient reason.
- Insert the Windows installation disk, reboot the machine, and press F12 or the equivalent keystroke to activate the boot menu.
- Select the optical drive containing the installation disk and be prepared to press any key within a few seconds.
- Delete any hard drive partitions. To remove stubborn partitions, reboot into the existing operating system installation and see the information about diskpart in an earlier post in this series, Fist Boot and Preparation.
- Create an NTFS partition of at least 40GB for each Windows edition. For a single Windows edition, create one partition consuming the entire hard drive. Quick format when new partitions when prompted.
- When creating an image to ghost onto other machines, name the machine after the model number and order number. Otherwise, name the machine after the company and vendor hardware identifier (Dell service tag).
- When prompted, enter the administrative username and password.
- Set the password for the account named Administrator, but disable the account.
- Use the Windows license key that came with the system when possible.
- Copy the i386 folder from the Windows XP CD to C:\ so that later you don’t need the XP disk to install IIS and other components.
- Eject the CD.
To configure core components: - Install chipset driver(s).
- Install security software. For Microsoft Forefront, note that AMD64 applies to any 64-bit edition of Windows (excluding Itanium). First run MP_AMBITS.MSI. It doesn’t provide a UI, so when it appears to have finished whatever it does, run FCSSSA.MSI, which doesn’t provide a UI either. Reboot. Don’t use the notification area icon to apply updates – get them later through Windows update.
- Install the video driver.
- Install the wired LAN driver and test the network.
- Activate Windows without registering.
- Install the wireless LAN driver, but make Windows manage Wireless networks. I think you install the Dell driver, and then disable the service or startup programs. My experience is that the Intel PROSet wireless driver installers don’t let you exclude components, so you have to remove the components afterwards using the Change option in the Add and Remove Programs control panel:
- Connect to a wireless network and disconnect the physical LAN cable to test the wireless network. Then restore the physical LAN cable.
- If Windows doesn’t appear to be downloading updates, activate Windows Update manually. Check for new updates until nothing remains (except optional language packs on Windows Vista Ultimate).
- When installing or configuring IE8, see another post in this series, Configure a User Account.
To install IIS on Windows XP (or do something similar on Windows 2003, and be sure to enable ASP.NET in IIS Web Service Extensions), in Add/Remove Windows Components wizard in the Add or Remove Programs control panel, install World Wide Web Service. While you’re there, you might as well remove MSN Explorer, Outlook Express, and Windows Messenger. To install IIS on Windows 2008 (or something similar on Windows 2008 or Windows 7): - IIS 6 WMI Compatibility.
- IIS Metabase and IIS 6 configuration compatibility.
- IIS Management Console.
- ASP.NET.
- Default Document.
- HTTP Errors.
- HTTP Redirection.
- Static Content.
- HTTP Logging.
- HTTP Compression Dynamic.
- Static Content Compression.
Now that IIS is is installed, check for Windows updates, and make sure .NET 3.5 service pack 1 is installed. On to the next post in the series: Configure Applications. This post is part of a series of blog posts about Configuring a Sitecore Workstation. Previous post: Machine Specification and Ordering. Before reinstalling Windows, ensure the machine is not connected to a network. Power on the machine to achieve the following: - Note the BIOS version, and check if the vendor provides a newer version.
- Don’t bother downloading any updates.
- Despite what it says on any packing list, check the installed components in order to download the appropriate drivers. Specifically, check at least the audio, video, and wireless components.
- If Dell MediaDirect won’t go away, disconnect the power and battery, hold the power button for one minute to clear the flea power cell, then connect the battery and power and try again. If you get desperate, FN-power for diagnostics.
- Delete all partitions possible. If you are unable to remove a (hidden) partition, run the diskpart command line tool:
- list disk
- select disk <N>
- list partition
- select partition <N>
- delete partition override
- exit
Obtain all of the following materials and any relevant product keys. Try to get 64-bit software when available for 64-bit operating systems. I know you can mount ISO images as drives instead of burning CDs, but I haven’t looked into it, so I usually download and burn CDs. Important: Just download these for now. The Configure Applications post in this series of blog posts about Configuring a Sitecore Workstation describes some installation considerations. For a developer workstation, also obtain: For myself personally: On to the next post in the series: Configure Core Components. This blog post is the first in a series of blog posts about Configuring a Sitecore Workstation. The previous post describes Things to Consider throughout the Build. Try to get some information about the user before ordering the machine: - What screen size do they prefer?
- What battery size do they prefer?
- What color case do they prefer?
- Do they prefer a touchstick, or a touchpad?
- Do they need a port replicator or docking station?
- Do they need a laptop case? If so, what kind? Backpacks may be best for utility, but may not show well for sales. Shoulder bags are hard on the body. You can get through airport security without taking your laptop out of some bags.
- Do they need a keyboard and mouse?
- Do they need a monitor? If so, what size?
- Do you have any Outlook archive files to move to this machine?
- Which versions of which sites would you like installed?
- Any special software or other configuration requirements?
- Gotomeeting credentials?
For new staff: - Get the user’s full name.
- Get the user’s preferred initials and alternates.
- Request the domain account configured like another user.
- Request the CRM account configured like another user.
- Request updates to domain email addresses like another user.
- Update local email aliases like another user.
For all staff, obtain the domain username and password. When selecting and ordering the machine, consider the following: - It’s best to use a single vendor, use the same line of machines, and select common components for all machines. Right now we order Dell Precision machines with the Intel Wifi option (both the Intel and the Dell software are annoying, but the Intel software has historically been more stable).
- Request no operating system or other software. You may be able to get free software, licensed software through partnership programs, and other software at no cost. Some vendors may require that you purchase a Home edition of Microsoft Windows even if you plan to use an alternate license or even operating system. At the very least, use this factor when negotiating price.
- Get quotes with and without RAM. RAM from the vendor is often significantly more expensive than aftermarket RAM, and I’ve never had any problem with any RAM (YMMV). Again, use this factor when negotiating price.
- If you plan to purchase a port replicator or docking station, including it in the original machine order can sometimes reduce the price of all components.
- Get the smallest power supply available.
- Get the Bluetooth option even if the user doesn’t request it.
- If you plan to actually work on airplanes, get a screen 13 inches diagonally or smaller. Otherwise, get a screen 15 inches diagonally or larger. No matter what, use an external monitor and keyboard whenever possible. If you travel, do not get a screen larger than 15 inches diagonally. And a quick travel tip for those constantly on the road: consider a Zune, some portable powered speakers, a 1/8 inch male-to-male audio cable for the auxiliary port in rental car stereos, 2 Zune travel chargers (USB/Zune cables with both car and wall plugs – one for the Zune and one for the speakers in cars with no auxiliary port), a small power splitter, and a small wireless router. And always rip your MP3s at the highest quality.
- Get the smallest battery option, unless the battery functions as a wrist-rest and you like that feature. If you get a second battery, get the largest option.
- Get your purchasing department to haggle over the price. I have purchased machines at less than 3% vendor margin.
Once you have the machine, note the order number, the model number, the vendor identifiers (Dell service tag and express service code), and the owner’s username. On to the next post in this series of blog posts about Configuring a Sitecore Workstation: First Boot and Preparation. This blog post is the first in a series of blog posts about Configuring a Sitecore Workstation. Consider the following whenever specifying, ordering, or building a Sitecore workstation: - Never use your personal credentials or VPN certificate with an account other than your own, including administrator accounts.
- Don’t use the default login account for a specific user, even for yourself.
- Never create a blank or silly password or allow login without a password, even temporarily.
- Never use the operating system image that comes with the machine or the system restoration disks. Always reinstall Windows from scratch. Don’t even use the driver disks that come with the machine – always download the latest drivers.
- For the VPN connection to work, Sitecore workstations must have Internet Explorer as the default browser. Configuring an alternate browser as the default – even temporarily – could cause the machine to lose the ability to connect to the VPN.
- Except on secure networks, do not connect to a wired or wireless network before installing antivirus software. Then, immediately apply Microsoft and other updates.
- The less software you install, the more stable the system will be. For example, don’t install browsers other than IE on sales machines, just in case the sales person accidentally selects that browser as their default. The less services, applications, Outlook, Internet Explorer, and other plug-ins that run when you launch Windows or an application, the more stable the system will be. Don’t install anything you don’t absolutely need. Avoid options to even include optional components such as browser toolbars both when downloading and when installing. For a list of common software that I don’t trust, see the Configure Applications post in this series.
- When things like command line tools and 7-Zip don’t work, try running them as Administrator.
- I always agree to participate in vendor’s experience improvement programs, but opt out of such programs when configuring a machine for another user.
- In general, if I don’t specify something, leave fields blank and accept the defaults.
- Remember to eject the CD.
When prompted: - Reboot.
- Allow applications to remember the user and passwords.
- Allow Windows to download and install updates. Later, change this to download and notify, but not install. For Windows Vista Ultimate, do not install the optional language packs.
- Select your local time zone. You can change this to the owner’s time zone later.
- When installing, choose to make applications available to all users.
- Avoid creating desktop and Quick Launch toolbar icons, but create Start menu icons.
- Select the option that indicates a public network.
- Select the option to use Microsoft Update.
On to the next post in this series of blog posts about Configuring a Sitecore Workstation: Machine Specification and Ordering. Even though I’ve installed so many editions of Windows and the applications that make it useful so many times that I probably deserve some kind of award, I still can’t remember all of the steps involved. I’ve tried to write a few documents about how to configure Windows (including my first post on this blog), but they all somehow end up being both too specific and too general. Windows 2008 finally lost my profile, meaning it’s time to rebuild this machine again, and this time I will try to describe the process in a series of blog posts about the various topics. These will be works in progress eternally; I’ll try to keep them updated as I learn more Windows trivia by installing more editions and applications on more hardware platforms. Such a resource can never be complete. For example, always check for additional components available from vendors – in one case a storage driver resolved an audio issue, and Dell sometimes provides a download containing recommended Vista power settings. I hope to use these notes when building machines in the future, but there could be some useful information in here for anyone. For security I’ll have to keep some implementation specifics to myself. Of course, all of this has little to do with Sitecore, except that installation issues often result from underlying configuration issues. Here are the major subjects of this topic as I see them (I will add links as I complete the posts): - Things to Consider throughout the Build.
- Machine Specification and Ordering.
- First Boot and Preparation.
- Configure Core Components.
- Configure Applications.
- Image the System.
- Configure a User Account.
- Turn the System Over.
- Issues I Still Have with Windows.
Start with the first post in the series: Things to Consider throughout the Build. 5/28/2009 For some time, Sitecore users including myself have experienced an issue where one suddenly can't type into simple Single-Line and Multi-Line Text fields. Refreshing the browser window would resolve the issue, but then one has to restore one’s context (location in content tree, desktop applications, etc.). Everyone had assumed that it was an Internet Explorer bug, but a recent Sitecore Developer Network forum thread indicates that it might be an issue with Skype add-on for Internet Explorer. Skype has caused problems in the past, for instance inserting JavaScript links around phone numbers (some “security” software products can also manipulate data transmitted over HTTP). This issue has been frustrating enough for me that I thought it might be worth posting here, even though I’m not sure this is truly the problem or even provides the correct instructions (especially for IE7). So please comment on this post according to your experience, and Sitecore will update the Internet Explorer Configuration reference accordingly. One procedure to disable the Skype add-on for Internet Explorer 8 is to: - Open Internet Explorer.
- Click the Tools menu or press CTRL-T, and then click Manage Add-ons. The Manage Add-ons dialog appears.
- In the Manage Add-ons dialog, in the Name column, right-click Skype, then click Disable, and then click Close.
I firmly believe that Windows is more stable with less software. I recommend disabling as many add-ons as you can (including gotomeeting and other Outlook add-ons), disabling services you don’t need, and using a tool such as SysInternals AutoRuns to disable startup programs you don’t use constantly (especially anything that tries to update itself). Thanks to Ariel for posting this solution to this very annoying problem! 5/20/2009 I captured some screen shots while configuring Microsoft SQL Server 2008 Express edition for use with Sitecore, both running on a single 32-bit Microsoft Windows Vista host. This configuration may not be appropriate for production. First I had to download the Microsoft Windows Installer 4.5 Redistributable. You may have to install Microsoft Visual Studio 2008 Service Pack 1. If you don’t have Visual Studio 2008, you may need to install .NET 3.5 Service Pack 1. I haven’t hear from anyone still using Visual Studio 2005 or upgrading from SQL 2005. Then I ran SQL Server 2008 Express with Tools (SQLEXPRWT_x86_ENU.exe). The process was relatively straightforward:  I must have clicked Installation: I clicked New SQL Server stand-alone installation or add features to an existing installation:  I clicked OK:  I clicked Next:  I selected the checkbox, and then clicked Next:  I clicked Install: I investigated the Windows Firewall warning, which was irrelevant because only localhost will access the databases, and then clicked Next: I selected Database Engine Services and Management Tools – Basic, and then clicked Next:  I clicked Next:  I clicked Next:  I selected the NETWORK SERVICE user for the SQL Server Database Engine service, and then clicked Next: I selected Mixed Mode, entered a password for the default sa user, clicked Add Current User, and then clicked Next:  As a developer, I would select both checkboxes, but for most users I would leave them blank, and then click Next:  I clicked Next: I clicked Install: I clicked Next: I clicked Close. I rebooted. I visited http://www.windowsupdate.com to get patches, and then rebooted again. I thought the SQL Server 2008 Express installation process was relatively simple and painless, but I am familiar with Sitecore and SQL 2005 (and even 2000). I hope I didn’t miss any important steps, but if I did it was most likely an option to enable or disable advanced configuration options in the installation user interface.
|