Wednesday 4 August 2010

Installing EdgeSight Server 5.3 with SQL Server Express 2008 Express on Windows Server 2008 R2

EdgeSight is an essential part of a modern XenApp implementation, though only Platinum customers get the full blown version.  In Citrix’s usual way these are named “Advanced” and “Basic” – there’s never a “normal” one anymore, is there?!

Anyway, if you need the Advanced features you can install a test system for a couple of weeks and join a freshly installed XenApp server to it – you get a 14 day grace period followed by a 7 day allowed “violation” period before it stops working.  Bear in mind you can have multiple EdgeSight servers, though an individual XenApp server can only see one at a time.  Whether to have the EdgeSight Agent installed on every server is an interesting question – it does create an overhead – but without that overhead you might not realise your server is overloaded.

Below are basic instructions on installing an EdgeSight 5.3 server to monitor a XenApp 6 farm, though to be honest they are mostly the same as the instructions for EdgeSight 5.2 for XenApp 5 on Server 2008 R1.

I’m using SQL Server 2008 Express.  Express does work with EdgeSight, with the exception of Scheduled Reports, which rely on the SQL Agent, a feature of full blown SQL Server.  Bear in mind that the use of SQL Express is not supported, and depending on how much data you keep its 2gb limit on databases could be a serious issue.  For a temporary system to run in Advanced mode for a fortnight though, its going to be fine.

In this example I installed EdgeSight and SQL on a single server – this might not be a good idea.

I did this install with UAC turned off.

 

Preparing SQL - Install SQL Express 2008 with Advanced Features

You need the Advanced Features if using Express as you need Reporting Services.  If you’re installing full SQL Server, install the Reporting Services components.

Download from:

http://www.microsoft.com/downloads/details.aspx?FamilyID=B5D1B8C3-FDA5-4508-B0D0-1311D670E336&displaylang=en

Run the installer (as Administrator). Click Installation on the left and then select “Next sql server stand-alone installation…”

clip_image002

Ignore the warnings about SP1 if you’re on Server 2008 R2 – you can install this afterwards

Accept the license terms and continue through install accepting the defaults.

Run install and select Reporting Services, Database Engine, Client Tools.

clip_image003

Accept defaults on the Instance Configuration screen, choosing a named instance of SQLExpress. Click Next, Next.

Click “Use the same account for all SQL Server services” and enter a domain user created for the purpose.  This domain user should be an administrator on the server. 

image

Click Next. Set to Mixed Authentication and set the SA to something you will remember.  Setup the administrators to something sensible. 

Click the Data Directories tab. Set all Data directories to c:\MSSQL except backup - set to c:\MSSQL\Backup.  Okay, so you don’t need to do this, I just like to keep the data somewhere easy to get to, not buried in Program Files.

clip_image005

Accept the rest of the defaults until you get to the main Install, which should take a few minutes. Close the installer when finished.

Download and install the “Microsoft SQL Server 2005 Backward Compatibility Components” for the version of SQL 2008 you have installed (its part of the feature pack). The x86 version (should you need it – if this is Server 2008 R2 you should be using x64 software though) is at:

http://go.microsoft.com/fwlink/?LinkId=123702&clcid=0x409

The x64 version is at:

http://go.microsoft.com/fwlink/?LinkId=123703&clcid=0x409

This is because the SQL-DMO Objects are required but not installed in SQL Server 2008.

Finally, update your SQL installation to the latest service pack.  At the moment this is SP1 (x64 edition) – this will take a while.

 

Installing Edgesight

Turn off IE ESC – Enhanced Security Configuration.  This is because the last stages of setup use the local browser, though you could use a browser on another system if you really wanted to.  It is turned off in Server Manager or group policy – click here for detailed instructions.

Download EdgeSight 5.3 or extract the XenApp 6 media and run Autorun

If getting it from the XenApp 6 media, click Manually Install Components, Server Components, Application Performance Monitoring, EdgeSight Server

clip_image006

By default a server will not have the necessary pre-requisites and will probably come up with these messages:

clip_image007

clip_image008

image

Go to Server Manager, select Role Manager. Click Add Roles, select Web Server and go on to choose its components. Select Application Development (with default sub-components), Windows Authentication, IIS 6 Management Capability. Click Next and Install.

In Server Manager again, add a Feature – Message Queuing, with default options.

Reboot and try again.

Select Website and Database assuming this is a new system

clip_image010

Accept the EULA

Enter your SQL details and click Test Connect. If you have used the full version of SQL you probably just need to put the server name, otherwise SQL Express or another named instance will need the instance name. Use the sa password to connect and test the connection.

image

Assuming this is a new installation, create a new database. If not, you should be able to join an existing one.

clip_image012

Enter a domain username and password to connect to the database.  Personally I make this an administrator on the server and a sysadmin of the SQL Server instance.  I’m not sure if these steps are needed I’m afraid. 

image

Choose defaults for the recovery model and paths, and click Install.

At the end, click Finish to load the website. Make sure again that IE ESC is off!

clip_image014

Click Next to start creating your Company (which is the way that EdgeSight will organise a group of servers).

clip_image016

Enter the name of your super administrator – this can be a group or a person but should be something you will remember. EdgeSight can be tied to active directory but you will need to be able to get in this account too.

Enter the SMTP details for the server to send out mail as well.

Enter your licensing details and the level of EdgeSight Agent to support.

image

The license server needs to be v4.5 or higher. If you have platinum XenApp you can use the Basic And Advanced Agents. If you have Advanced or Enterprise you can only use the Basic clients unless you have specifically bought Advanced EdgeSight Agent licenses.

Note you do not actually need to get these details right to click next, so if your license server is not ready (or will never be ready and you are just building a temporary server) you can continue in the grace period for 14 days. You will get a message on every screen in EdgeSight saying there is a problem with the license server until valid details are entered. 

Click Next when done and you will see the main login screen. Enter the Super User credentials to log in.

clip_image020

Open another IE window on your server and go to http://localhost/Reports_SQLEXPRESS/Pages/Folder.aspx?SelectedTabId=PropertiesTab

Fill in as below:

clip_image021

Go back to your new EdgeSight website and enter the username and password you just gave admin rights to the database. Enter the URL as:

http://sqlservername/ReportServer_SQLEXPRESS/

Obviously, put in the name of the server instead of “sqlservername”. 

You should then see a popup window which will run through setting up EdgeSight in Reporting Services. It will error at the end if using SQL Express with “Error publishing default schedules…” – this is because SQL Express does not support this functionality.

clip_image024

Configuring a XenApp Server to use the EdgeSight Server.

Install the client on the server and reboot (yes, you need to reboot).

Go to control panel and switch the view from Category to Small Icons or Large Icons.

Click Citrix System Monitoring Agent

clip_image025

Click Mode to change between Advanced and Basic, depending on your license.

clip_image026

Click the EdgeSight server tab and enter your server name – should still be port 80 unless you changed it. Obviously, it needs to be able to contact that server on that address.

Click OK and within about 5 minutes you should see an email about the new instance that has been discovered, assuming you set up the emailing details properly.

In the EdgeSight website, look in Configure > Devices to try to find your device. If you can’t see it, look in Configure > Unmanaged Devices

clip_image027

This should be enough for a basic implementation of EdgeSight.  There is a lot of work to do if this is going to be a fully fledged systems monitoring a lot of systems, and the size limitations of SQL Server Express will mean that in long term use you might need to adjust the Data Grooming settings.  By default they keep data up to 30 days – I’ve had to set this down to 7 days before.  If its full SQL, kiss goodbye to a lot of disk space instead.

You can also link it into Active Directory and administer it with your normal account, but hang onto the Super Administrator username and password in case it has trouble connecting to AD in the future.