INSTRUCTIONS FOR SETTING UP PORTAL ON WINDOWS PLATFORM ************************************************************************ ************ Internet Information Services (IIS) Setup *************** ************************************************************************ 1) Download the latest stable release (Sky\) (the top level will be referred to as "SKy") 2) Put "Sky" in the web directory (typically "C:\Inetpub\wwwroot\") so now \Sky contains the portal source 4) Open Microsoft IIS from "Control Panel -> Administrative Tools -> Internet Information Services" 5) Expand the " (local computer)" tab where is the name of the local machine 6) Expand the "Default Web Site" tab 7) The "Sky" folder should now be visible in the list (if not, hit "F5" to refresh the listing) 8) Now set the "Sky" directory into a web application a) Right click on the folder icon and select "Properties" b) Select the "Directory" tab c) From the "Application Settings" group, click the "Create" button d) Under "Execute Permissions" select "Scripts Only" e) Click "Ok" to exit the properties menu (keep the default application name) f) The "Sky" icon should now reflect a web application g) Repeat steps a-f for the sub directories "SkyPortal" and "SkySite" 9) Now the web site for Open Sky Query should be accessible from the local machine (typically "http://localhost/sky/skysite/") 10) Submitting queries on the main page will not be functional because the portal is not configured to work with the local SQL Server 11) You may also need to install NUnit test framework required by SkyTest at (http://www.nunit.org/download.html) ************************************************************************ ********************* CONFIGURE MS-SQL SERVER ************************ ************************************************************************ 1) Make sure SQL Server is installed on the local machine and the user has administrative priviledges before proceeding 2) Open SQL Server Enterprise Manager 3) Expand the tabs and open the database server instance to use for the portal 4) Create a portal database a) Right click on "Databases" and select "New Database" b) Specify the name to the portal DB (referred to as "SkyDB" from now on) c) Click "OK" 5) Expand "SkyDB" 6) Right click on "Users" and select "New Database User" 7) Under the "Login Name" drop down menu, select "" 8) Create a new user in the "Name" field (referred to as "SkyUser" from now on) 9) In the "Authentication" section, click "SQL Server Authentication" 10) Enter a password for "SkyUser" (this tutorial uses "passwd") 11) In the "Defaults" section, select "SKyDB" from the drop down menu 12) Now select the tab labeled "Database Access" and check the box next to "SkyDB" 13) In the bottom part of the box in the section labeled "Database roles for 'SkyDB'" select "public" and "db_owner" 14) Click "OK" to exit 15) Close the box labeled "Database User Properties - New User" since you already created the user with appropriate permissions 16) Now Expand "Security" from the list 17) Select "Logins" 18) Right click on "SkyUser" and select properties 19) Select the "Server Roles" tab and check "System Administrators" 20) Now Select the "Database Access" tab and click on "SkyDB" and make sure public and db_owner are now checked 21) Select "master" database and make sure public is checked 22) Close Enterprise Manager ************************************************************************ ********************* CREATE REQUIRED TABLES ************************* ************************************************************************ 1) Open SQL Query Analyzer 2) Log into the database using the default windows authentication or as SkyUser and select "SkyDB" 3) In the query editor, browse for the SkyDBCreate.sql "SkyDB" setup script (bundled with this document). If you used a different name from "SkyDB", open the script and perform a find/replace on "SkyDB" 4) Select "Query->Parse" to ensure there are no errors 5) Select "Query->Execute" to create the tables required by the portal 6) The tables should now be visible by navigating to them via the database explorer on the left side of the editor 7) Expand "SkyDB" and then expand "User Tables". You should see the created tables: CacheLog, NodeJobs, NodeLogs, PortalJobs, and SessionJobs 8) Close Query Analyzer ************************************************************************ *********************** CONFIGURE THE PORTAL ************************** ************************************************************************ 1) Open the Web.config included with this document 2) Locate the "Portal.DBconnection" key and make the following changes a) "Initial Catalog" change to "SkyDB" b) "Data Source" change to "\" where \ represents the SQL Server instance where the "SkyDB" resides c) "User ID" change to "SkyUser" d) "Password" change to "passwd" 3) Locate the "Portal.DBName" key and change "value" to "SkyDB 4) Location the "CurrentDirectory" key and change the "value" to the "CacheTools" directory under "Sky" (typically "C:\Inetpub\wwwroot\Sky\CacheTools") 5) Navigate to the web directory where "Sky" is located and find subdirectories SkySite (typically "C:\Inetpub\wwwroot\Sky\SkySite") and CacheTools (typically "C:\Inetpub\wwwroot\Sky\CacheTools"). Overwrite Web.config in both directories with the newly modified Web.config document ************************************************************************ *************** SETUP CACHING AND LOGGING DIRECTORIES ***************** ************************************************************************ 1) All log files are located under "C:\tmp" and all cached databases are stored under "C:\SkyNodesDB". These values are currently hard coded, but we plan to make them mutable attributes from Web.config 2) Create local directories "C:\tmp" and "C:\SkyNodesDB" on C:\ 3) Set permissions for the two directories a) Right click on "C:\SkyNodesDB" and select the "Security" tab. b) Ensure IIS user is in the list of allowed users (ie. IUSR_). Give the user read/write permissions c) Repeat b for user ASPNET d) Repeat a-c on "C:\tmp" ************************************************************************ ************************** CONFIGURE NUNIT **************************** ************************************************************************ 1) Download and install latest NUnit release from http://www.nunit.org/download.html 2) Run NUnit-GUI and under 'File->Open', navigate to 'Sky\SkyTest\bin\Debug' (typically 'C:\Inetpub\wwwroot\Sky\SkyTest\bin\Debug') 3) Open one of the .dll testing units (ie. VOTable.dll) and click 'Open' 4) Verify that the set of tests are properly loaded in the left frame 5) Close NUnit-GUI ************************************************************************ *********** Congrats, you've configured your own portal! ************* ************************************************************************ ************************************************************************ ************************** ADDITIONAL NOTES *************************** ************************************************************************ BYPASS CACHE SPECIFIC DIRECTORIES AND FILES - C:\tmp\ CacheLog.txt - logs caching algorithm specific activity - C:\SkyNodesDB\ - stores cached database (ie. loading SDSS creates SDSS_Data.MDF and SDSS_Log.LDF) - Sky\CacheTools Web.config - stores cache specific keys CacheDBPercent - maximum percent of database to cache CacheDirectory - location of cached database CacheObj - column (COL) or table (TBL) caching CacheAlg - bypass caching algorithm CacheYieldPolicy - yield policy CacheMaxRun - simulation runs - Sky\CacheTools\DBMetaData tables - metadata on sdss tables columns - metadata on sdss columns yield - yield estimates for simulation query workload - Sky\CacheTools\DBScripts Drop_DB.sql - script to drop a database .sql - script to create schema for caching a particular - Sky\CacheTools\result dbstatus.htm - status of objects in cache status.htm - bypass caching algorithm activity with respect to cached objects result.htm - results from last query submitted BYPASS CACHE WEB FRONT-END - Sky\CacheTools\cachestat.aspx provides status of local cache. permits manual loading and eviction of cached objects - Sky\CacheTools\cachequery.aspx run simulation on cache with single query or sample query workload