Deployment Solution

 View Only

Chapter 1: Preparing your Server for a DS6.8SP2 Installation 

Feb 11, 2008 11:05 AM

This is the first article of a series taken from my training notes on how to install and configure Deployment Solution. This article will focus on how to gauge your hardware requirements for your server, and the pre-requisite software and services which you should have present.

The motivation for these notes was to aid other IT staff to progress to the point where they could become Altiris Administrators.

Preparing your Server

Services Infrastructure

Before we install Deployment Solution, we should first prepare the server by installing some prerequisite services. These are,
  1. A Microsoft SQL Server

    Altiris only support the Microsoft SQL engines for the database backend. At the time of writing the full-blown SQL Server 2005 is the prime choice. For those on a budget, SQL Server 2005 Express is perfect. You should use this rather than download MSDE 2000 from Altiris as SQL 2005 Express does not have a workload governor and has a GUI interface for management.

  2. Microsoft's Internet Information Services

    If we wish to access the Deployment Solution console through a web browser (rather than logging into the Altiris Server for console access) then the web console is your man. The advantage of the web console is that allows multiple simultaneous connections -handy if you have a number of desktop administrators who keep bumping each other off when using remote desktop to access the server ;-)

    So, if you want to use the web console, ensure IIS is installed.

Best Practice also advocates that you have in place the following network infrastructure components to simplify your management of clients,

  1. A DHCP server

    A DHCP (Dynamic Host Configuration Protocol) Server allows your clients to receive a centrally managed IP address in both the production and automation environments. This is absolutely pivotal for DS to manage your workstations as it is a corner stone of automation delivery by PXE. A DHCP Server is also must for large environments as it simplifies and centralizes IP management.

    Warning: If you have to set up a DHCP server on your network, confirm first that there isn't already one in place, and as an extra precaution you might want to consider delivering IPs to known MAC addresses only. Rogue DHCP servers are a Network Admin's nightmare.

  2. A WINS Server

    A WINS (Windows Internet Name Service) server acts as a central repository for all your computer NETBIOS names and their associated IP addresses. WINS is essential on LANs where hosts are likely to be firewalled as NBT broadcasts from clients requiring name-to-IP mappings will be blocked on fully firewalled clients.

    A WINS server is not essential for Deployment Solution to work, but it certainly helps for the smooth running of your network - WINS provides a robust mechanism for your clients to resolve machine names to IP addresses.

CPU, Memory and Disk Resource Requirements

The hardware requirements for Deployment Solution are quite modest considering it has a SQL server at the backend. This is simply because the Deployment Solution database is small. Altiris state that a full DS install will have a resource footprint of about 400MB in disk space and just under 1GB of RAM. Altiris don't quote a CPU requirement as DS is quite modest on CPU. So, how does all this compare to a real world installation?

To answer this, lets go through the stats of a production Deployment Solution system running on an IBM x345 Server. The server detailed here can be considered a medium-scale setup, managing over 600 clients.

CPU Utilization

The CPU overhead of DS is very low, as it generally has very little to do. Until we ask it to image a PC or deliver software, all it has to do is process the few KB of inventory each client sends daily when it checks in with the server. And, frankly, even when imaging the CPU strain is minimal -the bottleneck here is the network.

As a result, our IBM x345 Server which is a twin Xenon 2.66GHz hardly gets warm even when imaging a dozen computers simultaneously. The average CPU utilization sits at around 1-2%.

RAM Utilization

The Deployment Solution processes themselves are quite modest in their memory consumption. This means the 1GB recommended RAM requirement stated by Altiris is reasonable to get a system up and running. To illustrate, below we show a breakdown of the memory utilization in the real-world Deployment Server (this excludes SQL Server, for reasons which will become clear shortly).

Sample Memory breakdown of a Windows 2003 Server running Deployment Solution (excludes SQL Server memory allocation)

Click to view.

Here we see that basic Windows 2003 Server OS with anti virus, monitoring and backup software just sneaks in with an active memory of under 400MB. Including now the contribution from Deployment Solution brings us to around 650MB.

All seems well, but we have missed out a pre-requisite application; Microsoft's SQL Server. This is because its complicated -the amount of memory Microsoft's SQL Server requires is clouded by the fact that it will try to use as much of your server's memory possible for cache. This means that no matter how much memory you install in your server, SQL Server will try to use it all. On the surface this looks awful, but in reality this is actually fairly sensible. SQL Server is just trying to make itself as fast as possible by keeping previously executed queries in memory, just in case they need to be run again.

However, this behavior does tend to confuse memory monitoring programs which will assume your OS is on the verge of memory death when it sees SQL Server slowly expand to fill the entire memory space. This is not as bad as it looks though -SQL has a lazy memory manager which will not release memory allocated in its workspaces until the OS signals that it's under pressure for memory. When this happens, SQL Server will release old workspace memory back to the OS.

To avoid memory monitors going into a panic, you can set a maximum limit on the memory which SQL Server will consume -the general recommendation is to set it at about 50% of your system RAM.

So, in the real world how does this pan out? Well, our humble IBM x345 serving 600 clients with 1.5GB of RAM has the memory pie chart shown below:

Full memory breakdown of a Windows 2003 Server running Deployment Solution.with 1.5GB RAM. SQL Server limited to 750MB.

Click to view.

As you can see we have restricted SQL Server to 750MB -is this enough? Well ideally, the amount of physical RAM available to SQL Server should exceed the size of the largest database . The deployment database is only 110MB, so we are superbly overspec'd here. This means that the server has in reality something in the region of 500MB available (as 100MB is free and perhaps over 400MB of SQL Server's allocation will be cache). This server should therefore cope fairly well. But, as with all Windows Servers, if ever in doubt, performance monitor is your friend.

Disk Utilization

The 400MB of disk required by Deployment Solution is quite frankly insignificant to the disk space you'll consume with applications and disk images. You'll soon find with a Deployment Server that you'll be bound not by CPU or memory, but by your limited hard disk capacity.

The problem is imaging is addictive. The 200GB you're probably planning to have in your server now looks like plenty, but look around your desktop real estate. Have a think about which machines it would be really useful to have images of. What about those fiddly print servers, or special software PCs, or even your user's laptops? You should consider these now on top of the standard desktop images you'll likely already be thinking about for public access terminals and staff PCs.

Hardware Independent Images(HII) are incredibly attractive and can help, but this comes at a price -your desktop deployment speed. It is much faster to deliver your images with applications included, rather than delivering a HII base image and then having jobs to install your applications at the end. In mass deployments, also note that whereas images can be delivered by multicast, application delivery is limited to unicast -this can seriously chew your bandwidth.

To put this into perspective, our medium-scale Deployment Server holds 40GB in its application deployment folders and over 300GB in images. You can of course with Deployment Solution opt to hold your images on a remote file server, but this may not be possible in your environment. In short, plan ahead and when buying disks, buy big.

Installing IIS

As we mentioned earlier, Deployment Solution possesses a web console which allows you to administer your machines through a web browser. If IIS is installed on your server, the DS installation package will automagically register this and install the Web Console for you.

Installing IIS is straightforward using the Control Panel, 'Control Panel' > 'Add/Remove Programs' > 'Add/Remove Windows Components'

In the Windows Components Wizard, select 'Application Server', and check the 'IIS' and 'ASP.NET' component check boxes ('Enable network COM+ access' will automatically add itself).

Click to view.

When you click 'Next' be sure to have your Server install CD to hand. When the Wizard completes, click 'Finish' and that's it -we're done.

Installing SQL Server 2005 Express Edition

In order for Deployment Solution to install, we need to configure a Microsoft SQL database for it to connect to. For the purposes of these notes, we will use Microsoft SQL Express 2005.

SQL Express replaces Microsoft Server Desktop Edition (MSDE) as Microsoft's free database offering to the small business and developer market. Whereas MSDE suffered from deliberately imposed performance and capacity limitations in its SQL Server 2000 engine implementation, SQL Express boasts a full and undoctored SQL 2005 Server engine.

Other improvements include the release of SQL Server Management Studio Express, a free set of graphical tools to manage SQL Express. This is a big step forward from MSDE which only supported command-line management.

Oddly though, whereas MSDE supported two processors and could store up to 2GB of data RAM, SQL Express only supports a single processor and can only utilize 1GB of RAM. So, not all is rosy ;-)

The prerequisites for installing SQL Express are,

  • Windows 2000(SP4), XP(SP1), Vista or 2003 Server(SP1)
  • Windows Installer 3.0
  • .NET version 2

Install Microsoft .NET Framework 2.0

The .NET framework is proving to be a popular software development platform since its first 1.0 release way back in 2002. It's not hard to see why -its extensive libraries (precoded solutions to common programming tasks) cover GUI elements, web services, database access and network communications. The .NET framework comprises of these libraries and the runtime environment (a virtual machine) in which the .NET applications are run.

The powerful GUI components and database libraries made the .NET platform a prime choice for delivering the SQL configuration and management tools. This is why .NET is required for SQL Express -it's not the database engine that requires it, it's the tools.

To install then,

  1. Download and install version 2 of the .NET Framework from downloads.microsoft.com
  2. Verify the install by checking for its entry in 'Add/Remove Programs'.

Install SQL Server 2005 Express Edition

When any MSSQL product installs, it typically has an option of installing itself as a named or default instance. By default, MSSQL products have installed themselves in the past as a default instance, so most applications which use MSSQL as a backend database assume a default instance installation.

This changed with SQL 2005 Express. It will install a named instance by default, which provides a headache for all those applications which assume a default instance installation, like the 'Simple' setup option in DS. In what follows, we'll use the advanced configuration options in the SQL Express Installer to force a default instance installation.

Why the default instance is no longer the default is anyones guess. -it certainly doesn't assist clarity... ;-)

So, to the install,

  1. Download and execute the SQL Express installer (SQLEXPR32.EXE) from downloads.microsoft.com
  2. On 'Microsoft SQL Server 2005 Setup' screen, check licensing check box and click 'Next'
  3. On the prerequisites window that follows, click 'Next'. This will install the native client and support files. When completed, the Install Wizard will start. Click 'Next'
  4. The 'System Configuration Check' should give you the all clear. Click 'Next'
  5. In 'Registration Information', enter your details and uncheck 'Hide Advanced Configuration Options'.
  6. In 'Feature Selection' add to the install the client components
  7. In 'Instance Name' select the 'Default Instance' radio button.
  8. In 'Service Account', accept defaults
  9. In 'Authentication Mode' keep as Windows authentication.
  10. In 'Collation Settings', accept defaults
  11. In 'Configuration Options' disable User Instances, and ensure install user does not get added to SQL Administrator roll.
  12. In 'Error and Usage Report Settings', leave as default.
  13. Click Next on the 'Ready to Install' page to begin installation
  14. Click Finish on the 'Completing MSSQL Server 2005 Setup' page.

Enable TCP Connections in SQL Express

In the two years since the release of SQL Server 2005 i'm not aware of a single security advisory being listed against the product. This is largely due to Microsoft's drive to get the security model right first time, rather than rely on a slew of patches to correct sloppy coding.

The drive for increased security becomes apparent the moment you try to connect to a SQL Express database -connections over TCP/IP or pipes are not permitted by default. This is because this database is intended for development use -connections are only permitted initially using the local-only method of shared memory. This is excellent for security, as even if a vulnerability did emerge, the default configuration renders the SQL Server immune to remote attack.

However, Deployment Solution however must be able to make a connection to the SQL database over TCP/IP, so we need to amend the default configuration and allow TCP/IP traffic. To do this, we need the Microsoft Management Console (MMC) snap-in for the SQL Express Surface Area Configuration Manager.

To allow TCP connections, we need to open the Microsoft Management Console (MMC) for the SQL Express Surface Area Configuration,

'Start Menu' > 'Programs' > 'Microsoft SQL Server 2005' > 'Configuration Tools' > 'SQL Server Surface Area Configuration'

Now select the 'Surface Area Configuration for Services and Connections'. In the left-hand pane, expand the MSSQLSERVER instance and navigate to 'Remote Connections'.

In the right-hand pane, configure the instance to allow both local and remote connections over TCP/IP. In the services control panel, restart the Microsoft SQL Server service to push the new security configuration to SQL Server.

Click to view.

So thats it. Do a system reboot, and then we can proceed to installing DS6.8SP2.

Installing Deployment Solution - Index of Articles

Chapter 2: Installing Deployment Solution 6.8SP2
 

Statistics
0 Favorited
0 Views
0 Files
0 Shares
0 Downloads

Tags and Keywords

Comments

Jun 18, 2008 03:17 PM

I recommend SQL Server 2005 Express with Advanced Services, it has a built-in management interface which makes it a lot easier to work with.

Feb 13, 2008 11:58 AM

You will become famous in my training class I give.
"The next slide comes from a guy from the UK that I stole this slide from" will now become part of my training lecture :)

Feb 13, 2008 03:32 AM

Sure, no worries. Just hide my name somewhere in your slide credits. ;-)
Kind Regards,
Ian Atkin,
ICT Team,
Oxford University, UK.

Feb 12, 2008 04:49 PM

Can I steal it? Great slide

Related Entries and Links

No Related Resource entered.