Data-Maxx v7
Silverlight Application
Installation Guide
Data-Maxx v7
Silverlight Application
Installation Guide
This document describes how to perform a clean installation of the Data-Maxx v7 Silverlight Application.
- Overview
- Before you begin
- Install database
- Install web services
- Install web site with Silverlight application
- Post-installation steps
Overview
The Data-Maxx v7 Silverlight Application can be deployed in many configurations within the enterprise. The application consists of x major components.
- Database
- Web Services
- Web Site with Silverlight Application
The arrangement of these components can vary based upon your particular requirements in the enterprise. In the simplest of form, all three components could be installed on the same server. In a more complex deployment, the installation can be spread across many servers.
For complex architectures, the use of virtualization servers for the web services and web sites can be leveraged. It is not recommended virtualization be used for hosting of any Microsoft database servers. Below is an example of a complex architecture within a typical large enterprise.
DataMaxx v7's product suite works with the following 32-bit or 64-bit Microsoft SQL servers:
- SQL Server 2005 Express (up to 2 GB)
- SQL Server 2005 Workgroup Edition
- SQL Server 2005 Standard Edition
- SQL Server 2005 Enterprise Edition
- SQL Server 2008 Express (up to 10 GB)
- SQL Server 2008 Web Edition
- SQL Server 2008 Workgroup Edition
- SQL Server 2008 Standard Edition
- SQL Server 2008 Enterprise Edition
- SQL Server 2008R2 Express (up to 10 GB)
- SQL Server 2008R2 Standard Edition
- SQL Server 2008R2 Enterprise Edition
- SQL Server 2008R2 Datacenter Edition
The following editions have not been tested but may still work:
- SQL Server 2008R2 Parallel Data Warehouse Edition
The web site and web services require Microsoft IIS 7.0 or 7.5 versions. The 6.5 version has not been tested. The servers must include the .NET 2.0/3.5/4.0 Frameworks and the Silverlight 4.0 client. All clients use the Silverlight 4.0 version.
Before you begin
Before conducting the deployment into your enterprise, a little planning will go a long way. Depending on your architectural deployment requirements you may need to acquire Internet DNS names, IP addresses, holes through firewalls, etc. Below is a quick checklist to help you out.
Pre-deployment Checklist
TASK / STATUSObtain the latest version of the DataMaxx v7 Silverlight Application from Data-Maxx Technologies.
Obtain Internet DNS for the web site. This is the URL the external users will use to reach the application. The DNS is usually maintained by an external 3rd party provider. Example:
Obtain Internet DNS for the web service. This is the URL the web site will use to access the web services. The URL can be the same as the web site URL or it can be different depending on your architectural requirements. The DNS is usually maintained by an external 3rd party provider. Example:
Obtain Intranet/Internal DNS for the web site. This is the URL the external users will use to reach the application. The DNS is usually maintained by an internal DNS server. Example:
Obtain Intranet/Internal DNS for the web service. This is the URL the web site will use to access the web services. The URL can be the same as the web site URL or it can be different depending on your architectural requirements. The DNS is usually maintained by an internal DNS server. Example:
Obtain IP Address & port number for the web site. These are usually already assigned to a IIS Server.
Obtain IP Address & port number for the web service. These are usually already assigned to a IIS Server.
Create a firewall rule to permit the web site to pass communication in/out of the Internet facing firewall.
Create a firewall rule to permit the web site to pass communication in/out of the Intranet facing firewall to/from the data server and/or internal users.
Create a firewall rule to permit the web services to pass communication in/out of the Internet facing firewall.
Create a firewall rule to permit the web services to pass communication in/out of the Intranet facing firewall to/from the data server and/or internal users.
Create a firewall rules to permit the citrix to communicate with the web site.
Create a firewall rules to permit the citrix to communicate with the web server.
Coordinate with a Database Administrator to deploy the database. They will be restoring a backup of an existing database, then running a clearing script to blank out any test data.
Install IIS Web Deployment Tool. This tool is required to deploy the web site and web services to the IIS server. A link with installation instructions and download can be found here
Obtain transport encryption key, if needed for the web site. These can be obtained via a 3rd party provider or an internal PKI server depending on your security requirements.
Obtain transport encryption key, if needed for the web server. These can be obtained via a 3rd party provider or an internal PKI server depending on your security requirements.
Install database
This section assumes you have a firm grasp on the fundamentals of how to restore a database, create users, and run scripts. Please consult your Database Administrator if needed.
- Unzip the deployment package you received from Data-Maxx Technologies. It should include:
- This document in Microsoft Word format
- This document in OpenOffice format
- Encryptor.zip file - An encryption/decryption program
- DataMaxx.DM7Remote.Silverlight.Web.zip file
- DataMaxx.DM7.Services.zip file
- DataMaxx.DM7.Database.zip file
- clientaccesspolicy.xml file
- Unzip the DataMaxx.DM7.Database.zip file to your database's restore directory.
- Restore the database to the SQL server. The name of the database is up to your requirements.
- Create a database service account and give dbo ownership permission to the database for that account. The service account can be either an Active Directory account or an SQL account.
- Test the credentials. Log out of the SQL Management Studio and log back in using the service account credentials you just created.
- While still logged in with the service account, run the script called DatabaseCleanUp.sql to remove any extra test data. This will also test if the permissions are proper for the needs of the application.
- Make note of the following and give to the administrator conducting the rest of the installation.
Server IP Address
Server Port Number
Database Name
Service Account Name
Service Account Password
Install web services
This sections assumes you have a firm grasp of how to create, deploy and config web sites to an IIS server. If needed consult with your IIS Server Administrator.
- Unzip the deployment package you received from Data-Maxx Technologies. It should include:
- This document
- Encryptor.zip file - An encryption/decryption program
- DataMaxx.DM7Remote.Silverlight.Web.zip file
- DataMaxx.DM7.Services.zip file
- DataMaxx.DM7.Database.zip file
- clientaccesspolicy.xml file
- Copy the DataMaxx.DM7.Services.zip file to your IIS server. Don't unzip it as the zip file is required by the import process.
- Ensure the Web Deployment Tool is on your IIS server.
- Create a new web site for the web service. Note: both the web site and web services can share the same IIS web site as they are separate applications. The web services runs in a sub-folder called “services” and the web site in a sub-folder called “DM7”. Of course, this is not required and your enterprise architectural requirements will dictate this.
- If using transport encryption (HTTPS), you will need configure the certificate now.
- Place the clientaccesspolicy.xml file in to the root folder of this newly created website.
- Import an application into the web site. When prompted, navigate to the DataMaxx.DM7.Services.zip file and continue. Take all the defaults until finished.
- Using NotePad, edit the Web.config file located under the web site's “Services” folder. Note: make sure you are not editing the Web.config file located at the root of the web site. Make note of the following section inside the file:
<appSettings>
<add key="Server" value="ENCRYPTED TEXT" />
<add key="Database" value="ENCRYPTED TEXT" />
<add key="UserName" value="ENCRYPTED TEXT" />
<add key="Password" value="ENCRYPTED TEXT" />
</appSettings>
- Now de-zip the Encryptor.zip to your desktop or other administrative location. This tool is used to encrypt and decrypt the sensitive database connection information.
- Once it is de-zipped, run the program called DataMaxx.ConfigManager.exe
- Place the database server URL or IP address with port number into the decrypted field, then click the encrypt button. Copy the contents from the encrypted textbox and paste into the web.config file.
- Do the same again for the database name, username, and password values.
- At this point, it is recommended that you copy your appSettings section somewhere for upgrades. This way you will not have to go through this encryption process again.
- Save the web.config file
Test the web services by selecting the “Content View” tab in IIS, then navigate to the “CostCodes” folder, click the CostCode.svc file, then click the browse link on the right side. You should see something that looks like this:- Make note of the URL as this is needed in the next step.
Install web site with Silverlight application
This sections assumes you have a firm grasp of how to create, deploy and config web sites to an IIS server. If needed consult with your IIS Server Administrator.
- Unzip the deployment package you received from Data-Maxx Technologies. It should include:
- This document
- Encryptor.zip file - An encryption/decryption program
- DataMaxx.DM7Remote.Silverlight.Web.zip file
- DataMaxx.DM7.Services.zip file
- DataMaxx.DM7.Database.zip file
- clientaccesspolicy.xml file
- Copy the DataMaxx.DM7Remote.Silverlight.Web.zip file to your IIS server. Don't unzip it as the zip file is required by the import process.
- Ensure the Web Deployment Tool is on your IIS server.
- Create a new web site for the web service. Note: both the web site and web services can share the same IIS web site as they are separate applications. The web services runs in a sub-folder called “services” and the web site in a sub-folder called “DM7”. Of course, this is not required and your enterprise architectural requirements will dictate this.
- Place the clientaccesspolicy.xml file in to the root folder of this newly created website.
- Import an application into the web site. When prompted, navigate to the DataMaxx.DM7Remote.Silverlight.Web.zip file and continue. Take all the defaults until finished.
- Using NotePad, edit the Web.config file located under the web site's “DM7” folder. Note: make sure you are not editing the Web.config file located at the root of the web site. Make note of the following section inside the file:
<appSettings>
<add key="BaseService" value="
<!-- <add key="BaseService" value=" →
…
</appSettings> - Now change the BaseService address in the web.config file so the web site can locate the web services. Place the URL to the web services inside the value between the quotes. Don't include any of the URL after the “Service/” folder. Note if you are using HTTPS, you will need to put that there instead. If you are using non-standard ports, you will need to include as well.
- At this point, it is recommended that you copy your appSettings section somewhere for upgrades. This way you will not have to go through this encryption process again.
- Save the web.config file
Test the web site by selecting the “Content View” tab in IIS, then navigate to the “DM7” folder, click the Default.aspx file, then click the browse link on the right side. You should see something that looks like this:- If you receive an error message pop-up box, then most likely one of the configuration files are not configured correctly or a URL is not accessible.
Next log in with the admin credentials to verify the application is working. User Name is “Admin” and the password is “1234”. The browser should look like this:- Congratulations! The installation is complete.
Post-installation steps
Exception reporting
The application has the ability to capture its own errors inside the database. The database table containing these errors is called Data_Exceptions_T. If a user or the system encounters an error in the system known as an “unhandled exception” the data is stored in this table. If the user received a notification from the system, they will be given an ID number of the error. This ID number corresponds to the ID column in the database table.
To prevent flooding of error messages from multiple sources for the same error, a limit is set to check for duplicate errors. Any duplicate error occurring within a 5 minute period is not recorded in the database. When communicating with DataMaxx Technical Support regarding a system-based error, please provide a copy of this table to us and the ID of the error.
Establish backups
Now that your system is live, please work with your backup administrator to ensure the database is backup-ed per your enterprise's data retention policy.
Application configuration
Prior to use of the application by end-users, several configuration sets must be perform to customize the application for your organization. This is considered out of scope for this document.
Copyright 2010 Data-Maxx Technologies, Inc.