> Managing inPilot Installation
> This chapter describes how to install, upgrade, and uninstall the inPilot application.
> The following topics are explained in this chapter:

> • | Installing inPilot

> • | Upgrading inPilot

> • | Uninstalling inPilot

> Important: The procedures for installation, upgrade, and uninstallation of inPilot and RDP remain the same.
> Installing inPilot
> This section provides instructions on how to install the inPilot application.
> Important: Make sure that your system meets the minimum requirements as indicated in the System Requirements section in the inPilot Overview chapter of this guide.
> The following inPilot components are installed by inPilot installer.

> • | Apache v2.2.11 with mod_python v3.3.1

> • | Python v2.6.4

> • | Postgres v 8.2.0

> • | Django v1.0.2

> • | JRE v1.6.0_12

> • | Quartz Scheduler v1.6.4

> inPilot uses the following python/django packages:

> • | django_pagination-1.0.5

> • | django_sorting-0.1

> • | django_timezones-0.1

> • | psycopg2-2.0.8

> • | pytz-2009f

> Setting the Database Environment Strings
> Prior to installing the inPilot components onto the server hardware, there are numerous system environment configuration settings that should be configured. While PostgreSQL will be installed during the installation procedure, these settings must be configured manually.
> Warning: Failure to configure these settings may cause data loss and will minimally cause errors in the operation.
> Add the following values to system file in the /etc/system directory if they are not present and restart the system before continuing with the installation of the inPilot components.
> set msgsys:msginfo_msgmnb=65536
> set msgsys:msginfo_msgtql=1024
> set shmsys:shminfo_shmmax=1300000000
> set shmsys:shminfo_shmmin=1
> set shmsys:shminfo_shmmni=256
> set shmsys:shminfo_shmseg=256
> set semsys:seminfo_semmap=256
> set semsys:seminfo_semmni=512
> set semsys:seminfo_semmns=512
> set semsys:seminfo_semmsl=270
> Pre-installation Checks
> Ensure the following checks are made before installing the inPilot application.

> Step 1 | The recommended filesystem for installation is ZFS. If installation is performed on any other filesystem, a warning message appears indicating the recommended filesystem.

> Step 2 | inPilot must be installed as a root user on the system. Installation with other user privileges is not recommended.

> Step 3 | Make sure no other Apache web server is running on the port being used for installation (default port is 8080). If it is, stop it before proceeding with the installation or provide a different port for Apache server. Check if an application is running on a given port by entering the following command:

> netstat -an | grep <port number>

> Step 4 | Make sure no other Postgres server is running on the port being used for installation (default port is 5432). If it is, stop it before proceeding with the installation or provide a different port for Postgres server. Check if an application is running on a given port by entering the following command:

> netstat -an | grep <port number>

> Step 5 | Make sure no other server is running on the port being used for installation for XML-RPC (default port is 9999). If it is, stop it before proceeding with the installation or provide a different port for XML-RPC server. Check if an application is running on a given port by entering the following command:

> netstat -an | grep <port number>

> Step 6 | inPilot installation will ask for the Administrator login and Administrator Primary Group. Administrator login is the OS level administrator of inPilot who will own the inPilot installation. Administrator Primary Group is the user group of inPilot to allow the interaction with external entities like L-ESS.

> Step 7 | L-ESS must be stopped before starting inPilot installation / upgrade.

> Step 8 | If the L-ESS is installed as a root user, the ownership of L-ESS installation should be changed from root to non-root user. This new user must be added to inPilot Group. For example, if L-ESS is initially running as root and new user created is essadmin, then perform the following sequence of operations.

> Step a | Stop L-ESS.

> Step b | Add the user essadmin to inPilot group by entering the following command as root user - usermod -G <inPilot Group> essadmin

> Step c | Verify whether the user is added correctly to inPilot group using the command groups essadmin

> Step d | Change the ownership of L-ESS installation to this new user using the following command - chown -R essadmin <LESS installation directory>

> Step e | Login as essadmin with the command su essadmin

> Step f | Start L-ESS again.

> Step 9 | If the L-ESS is installed as a non-root user say essadmin, this user should be added to inPilot Group.

> Step a | Stop L-ESS

> Step b | Add the user essadmin to inPilot group by running the following command as root- usermod -G <inPilot Group> essadmin

> Step c | Log off and relogin again as essadmin for the group addition to come into effect.

> Step d | Start the L-ESS application to continue pulling the EDR files from chassis and forwarding it to inPilot.

> Step 10 | Similarly for the Bulkstats (BS), before pushing BS files from chassis to inPilot, the corresponding user should be added to inPilot group.

> Step 11 | The recommended user/group settings for inPilot are:

> • | NIS-USER<->NIS-GROUP

> • | NON-NIS-USER<->NON-NIS-GROUP

> The NIS users should always be associated with NIS Groups. The non NIS users should be associated with Non NIS groups. Also, it is recommended to have separate non NIS users for inPilot installation.
> inPilot Installation
> The inPilot installation files are distributed as a single compressed file with a .tar.gz extension.
> Important: The inPilot application supports both Solaris-Sparc and Solaris-x86 platforms. The installable tar file names help in identifying the platform. For example, starbi_x.x.x_sparc.tar.gz indicates that this file is for Solaris-Sparc platform. Similarly, starbi_x.x.x_x86.tar.gz indicates that this file is for Solaris-x86 platform.
> For information on downloading the appropriate inPilot package for your requirements, contact your sales representative.
> The inPilot application and its components can be installed using one of the following two methods.

> • | Installing inPilot Using Scriptbased Installer

> • | Installing inPilot Using GUIConsole based Installer

> Installing inPilot Using Script-based Installer
> Important: To perform the installation procedure explained in this section, you must be logged into the server as a root user.
> After copying the installation file to the server, use the following procedure to install the inPilot application.

> Step 1 | Change to the directory in which the file is stored.

> Step 2 | Unzip the file by entering the following command:

> gunzip starbi_x.x.x_x.tar.gz
> x.x.x is the version of the inPilot installation file.
> Important: After un-zipping the installation file, set the permission of .tar file to 700 using the following command and then continue with the installation process. - chmod 700 starbi_<release no>_<platform>.tar

> Step 3 | Untar the file by entering the following command:

> tar -xvf starbi_x.x.x_x.tar
> Decompressing the installation file results in the following files:

> • | README: A text file containing information pertaining to the release.

> • | install_starbi: A script to install the inPilot application.

> • | starbi.tar: A compressed file containing all the application files required for inPilot installation.

> • | inst: A GUI/Console based installer to install the inPilot application.

> • | In_Pilot_Installer.bin: The executable used by inst to install inPilot application.

> Step 4 | Execute the script by entering the following command:

> ./install_starbi
> Important: The installation script checks the disk space in the system. If the available disk space is lesser, then the script will give an error and abort the installation process.

> Step 5 | Respond to the on-screen prompts with the help of inputs given in the following table and configure various parameters as required.

> Parameter | Description | Default Value
> System Environment Variable Prompt
> | This dialog or script asks user to add variable values in /etc/system file and restart the system. For more information, refer to the Setting the Database Environment Strings section. | N/A
> inPilot Installation
> Want to proceed | Type (y)es to proceed with the installation of inPilot application. | yes
> inPilot Installation Directory | Type the directory on the server in which the inPilot application is to be installed. | <current_directory>
> The following warning appears if the user performs installation on non-ZFS (UFS) partition path. ZFS is the recommended filesystem for installation. Warning! Path provided lies in ufs filesystem. Recommended filesystem for inpilot is zfs. Do you still want to continue? [no] ? Type (y)es or (n)o to proceed with the inPilot installation. | no
> Do you want to install inPilot or RDP | Type i or press Enter to install the inPilot application. To install RDP type r. Refer to the following table for the parameters associated with the RDP installation. | inPilot
> Administrator login | Type an administrator name for the Operating System (OS) level administrator of inPilot. Important: The Administrator user created should be manually activated with a password once the inPilot installation is complete. This can be done by entering the following command as root user: passwd <adminusername> Upon executing this command, the user will be asked to enter a suitable administrator password. | muradmin
> Administrator uid | Type the Administrator User ID for the inPilot Administrator login. Important: This input will be asked only if the Administrator login name provided does not exist. | 100014
> Administrator Primary Group | Type the Primary Group name for the Administrator. Important: If the Administrator login name provided already exists, the Primary Group of this login will be considered as the inPilot User Group. Otherwise, the user will be asked to enter the Primary Group information. | inPilot
> Postgres Login | This is a read-only parameter. The Postgres login name will be the same as the Administrator login name provided earlier. | N/A
> Postgres Password | Type the password for accessing the PostgreSQL database. | N/A
> Postgres Port | Type the port number over which PostgreSQL communication will occur with inPilot. Important: Be sure no other Postgres server is running on configured port. | 5432
> Apache Port | Type the port number over which Apache web server communication will occur with inPilot. Important: Be sure no other Apache web server is running on port which you are using while installation. If the port is being used, abort the installation. | 8080
> RPC Port | Type the port number over which XML-RPC server communication will occur with inPilot. Important: Be sure no other XML-RPC server is running on configured port. | 9999
> Bulkstat File Transfer Interval [seconds] | Enter the file transfer interval for bulk statistics in seconds. | 900
> Bulkstat Sample Interval [seconds] | Enter the sample interval for bulk statistics in seconds. | 300
> Archive Directory | Type the directory path for archiving parsed files. | <inpilot_install_dir>/archive
> The following warning appears if the user performs installation on non-ZFS (UFS) partition path. ZFS is the recommended filesystem for installation. Warning! Path provided lies in ufs filesystem. Recommended filesystem for inpilot is zfs. Do you still want to continue? [no] ? Type (y)es or (n)o to proceed with the inPilot installation. | no
> inPilot Configuration Confirmation
> Proceed with installation | Type (y)es to proceed with inPilot installation. | yes
> Do you want to start the inPilot components | Type (y)es to start the inPilot components immediately after installation. | yes

> ‌

> Parameter | Description | Default Value
> Administrator login | Type an administrator name for the Operating System (OS) level administrator of RDP. Important: The Administrator user created should be manually activated with a password once the inPilot installation is complete. This can be done by entering the following command as root user: passwd <adminusername> Upon executing this command, the user will be asked to enter a suitable administrator password. | muradmin
> Administrator uid | Type the Administrator User ID for the inPilot Administrator login. Important: This input will be asked only if the Administrator login name provided does not exist. | 100014
> Administrator Primary Group | Type the Primary Group name for the Administrator. Important: If the Administrator login name provided already exists, the Primary Group of this login will be considered as the inPilot User Group. Otherwise, the user will be asked to enter the Primary Group information. | inPilot
> Postgres Login | This is a read-only parameter. The Postgres login name will be the same as the Administrator login name provided earlier. | N/A
> Postgres Password | Type the password for the Postgres database administration. | N/A
> Postgres Port | Type the port number over which PostgreSQL communication will occur with RDP. Important: Be sure no other Postgres server is running on configured port. | 5432
> Apache Port | Type the port number over which Apache web server communication will occur with RDP. Important: Be sure no other Apache web server is running on port which you are using while installation. If the port is being used, abort the installation. | 8080
> RPC Port | Type the port number over which XML-RPC server communication will occur with RDP. Important: Be sure no other XML-RPC server is running on configured port. | 9999
> Bulkstat File Transfer Interval [seconds] | Enter the file transfer interval for bulk statistics in seconds. | 900
> Bulkstat Sample Interval [seconds] | Enter the sample interval for bulk statistics in seconds. | 300
> Archive Directory | Type the directory path for archiving parsed files. | <rdp_install_dir>/archive
> The following warning appears if the user performs installation on non-ZFS (UFS) partition path. ZFS is the recommended filesystem for installation. Warning! Path provided lies in ufs filesystem. Recommended filesystem for inpilot is zfs. Do you still want to continue? [no] ? Type (y)es or (n)o to proceed with the RDP installation. | no
> RDP Configuration Confirmation
> Proceed with installation | Type (y)es to proceed with RDP installation. | yes
> Do you want to start the RDP components | Type (y)es to start the RDP components immediately after installation. | yes

> ‌
> After you have provided the inputs, the installation script starts the inPilot components and you receive a message indicating that inPilot installation is completed.
> Installing inPilot Using GUI/Console based Installer
> Important: To perform the installation procedure explained in this section, you must be logged into the server as a root user.
> Follow the instructions below to install inPilot using the GUI/Console based installation wizard.

> Step 1 | Change to the directory in which the file is stored.

> Step 2 | Unzip the file by entering the following command:

> gunzip starbi_x.x.x_x.tar.gz
> x.x.x is the version of the inPilot installation file.

> Step 3 | Un-tar the file by entering the following command:

> tar -xvf starbi_x.x.x_x.tar
> Decompressing the installation file results in the following files:

> • | README: A text file containing information pertaining to the release.

> • | install_starbi: A script to install the inPilot application.

> • | starbi.tar: A compressed file containing all the application files required for inPilot installation.

> • | inst: A GUI/Console based installer to install the inPilot application.

> • | In_Pilot_Installer.bin: The executable used by inst to install inPilot application.

> Step 4 | Execute the script by entering the following command:

> ./inst [MODE]
> where [MODE] is optional.
> Two installation modes are supported namely:

> • | gui

> • | console

> The command ‘inst/uninst -help' provides usage of the scripts. This script installs the Apache, Postgres and Scheduling servers functionality. The display must be set for running in GUI mode, else the installation will run in Console mode.
> The following inPilot Installer dialog appears displaying the inPilot version getting installed.

> Step 5 | Click Next to proceed.

> Step 6 | Respond to the on-screen prompts with the help of inputs given in the following table and configure various parameters as required.

> Parameter | Description | Default Value
> PostgreSQL System Settings screen
> | This dialog asks the user to check the variable values in /etc/system file. If one or more entries are missing, click Cancel to update /etc/system and restart the system to re-run installer. For more information, refer to the Setting the Database Environment Strings section. | N/A
> inPilot Installation Directory screen
> Enter inPilot Directory Path | Enter the base directory path where inPilot is to be installed. Click Browse to change the installation path. | <current_directory>
> A Component Type screen appears showing the components for installation. This screen allows you to select either inPilot or RDP for installation. Select any of the components that you want to install.
> inPilot Administrator and Group Configuration screen
> Administrator Login | Enter an administrator name for the Operating System (OS) level administrator of inPilot. Important: The Administrator user created should be manually activated with a password once the inPilot installation is complete. This can be done by entering the following command as root user: passwd <adminusername> Upon executing this command, the user will be asked to enter a suitable administrator password. | muradmin
> Administrator User ID | Type the Administrator User ID for the inPilot Administrator login. Important: This input will be asked only if the Administrator login name provided does not exist. | 100014
> Administrator Primary Group | Type the Primary Group name for the Administrator. Important: If the Administrator login name provided already exists, the Primary Group of this login will be considered as the inPilot User Group. Otherwise, the user will be asked to enter the Primary Group information. | inPilot
> PostgreSQL Server Configuration screen
> Postgres Login | This is a read-only parameter. The Postgres login name will be the same as the Administrator login name provided earlier. | N/A
> Postgres password | Enter the password for the Postgres database administration. | N/A
> Postgres Port | Enter the port number on which PostgreSQL communication will be running. Important: Ensure that no other Postgres server is running on configured port. | 5432
> Enter data directory path | Enter the data directory path of postgres being used. Click Browse to change the installation path. | <inpilot_install_dir>/starbi/postgres/data
> inPilot Port Configuration screen
> Apache Port | Type the port number over which Apache web server communication will occur with inPilot. Important: Ensure that no other Apache web server is running on the port being used for installation. If the port is being used, abort the installation. | 8080
> RPC Port | Type the port number over which XML-RPC server communication will occur with inPilot. Important: Ensure that no other XML-RPC server is running on the configured port. | 9999
> inPilot Archive Directory Configuration screen
> Enter archive directory path | Enter the directory path for archiving parsed files. Click Browse to change the installation path. | <inpilot_install_dir>/archive
> inPilot Bulkstats Configuration screen
> Bulkstat File Transfer Interval [secs] | Enter the file transfer interval for bulk statistics in seconds. | 900
> Bulkstat Sample Interval [secs] | Enter the sample interval for bulk statistics in seconds. | 300
> Pre-installation Summary screen
> The pre-installation screen displays the product name, install location, other product configurations, and disk space information before installing the product. Click Cancel to stop installation or Install to continue installation.
> Installing inPilot screen
> The screen shows all the contents being loaded on the machine during installation. Click Cancel to stop installation.
> inPilot Server Startup screen
> Start All Servers After Installation | Select the option to start all servers after installation. Click Next to proceed. | N/A
> Install Complete screen
> | The screen shows whether installation is successful or failed. Click Done to quit the installer. | N/A

> ‌
> Confirming Successful Installation
> Verify that the inPilot application is running and accessible by entering the following URL in your Web browser:
> http://<inpilot_installation server name or IP address>:<apache port>
> For information on using the inPilot GUI, see the inPilot Online Help documentation.
> Upgrading inPilot
> This section provides instructions on how to upgrade the installed inPilot application.
> Important: To perform the upgrade procedure explained in this section, you must be logged into the server as a root user.
> The upgrade procedure ensures that the database content is retained in the new installation. It also ensures that if there are any pending files to be processed in the old installation, then those file are also made available in the new installation.
> Important: Before performing the upgrade process, ensure that the browser cache is cleared.
> Caution: Please contact your local support representative to ensure compatibility prior to upgrading.
> Important: If the previous installation is inPilot then the installation script will cause upgrading the software to inPilot and if the previously installed component is RDP then the script will cause upgrading to RDP.
> The inPilot upgrade process is carried out in two steps:

> 1. | Online Upgrade

> 2. | Offline Upgrade

> The online upgrade is the conventional upgrade process. It will upgrade only last 7 days of available data i.e. it will get the latest date for which data is available and upgrade the last 7 days data only from that date.
> Once the online upgrade is complete, offline upgrade starts in the background and it will upgrade all the remaining data older than last 7 days.
> During the offline upgrade, there is a possibility of data outage. So, the reports older than last 7 days might be inaccessible from GUI during this period. Once the offline upgrade is over, these reports will be visible again.
> The following steps describe how to upgrade the inPilot application:

> Step 1 | Stop the EDR file generation through L-ESS or HDD push. Run the following commands:

> ls -lrt <install path>/starbi/data/temp_data_files/<chassis name>/edr/normalized_data/data
> ls -lrt <install path>/starbi/data/temp_data_files/<chassis name>/edr/normalized_http_data/data
> Check if the above commands return any pending input EDR files for the available gateways. If yes, wait for some time (5-10 minutes) to let the inPilot process finish these pending EDR files. Check again, and repeat the procedure until there are no pending EDR files for the available gateways. This is to make sure that you do not not stop any inPilot process while processing.

> Step 2 | Stop the inPilot application using the following command from the <inpilot_install_dir>/starbi/bin directory:

> ./serv stop
> Important: For all inPilot software versions 9.0.16 and later, use the serv stop command.
> or
> ./shutdown.sh
> Important: For all inPilot software versions 9.0.15 and lower, use the shutdown command.
> Then, check the status of processes using the following command:
> ./serv status
> Important: For all inPilot software versions 9.0.16 and later, use the serv status command.
> or
> ./status.sh
> Important: For all inPilot software versions 9.0.15 and lower, use the status command.
> Important: Make sure that none of the processes is running.

> Step 3 | Obtain the list of dynamic tables for taking their backup using the following command:

> ./psql -U <postgres username> -p <portnumber> -c "select tablename from pg_tables where tablename like '%2009'" starbidb
> The following is a sample output:
> tablename
> -----------------------------------
> sbi_edr_gw_proto_summary_06292009
> sbi_edr_sub_06292009
> sbi_edr_sub_topn_06292009
> sbi_edr_gw_proto_summary_06302009
> sbi_edr_sub_06302009
> sbi_edr_sub_topn_06302009

> Step 4 | Take backup of each of these tables using the following command:

> ./pg_dump -p <postgres port> -U <postgres user> -F p -v -f "<file name with absolute path>" -t "\"public\".\"<table_name>\"" starbidb
> Important: Be sure that there are different file names for different tables. It is recommended to have the file name same as the table name to avoid any confusion, and keep this file in the /export/home/ directory.
> For example, assuming that you are in the postgres/bin directory:
> ./pg_dump -p 5432 -U sbgres -F p -v -f "/export/home/sbi_edr_gw_proto_summary_06292009.sql" -t "\"public\".\"sbi_edr_gw_proto_summary_06292009\"" starbidb

> Step 5 | Take backup of schedules and gateway tables for triggering parsing of files.

> ./psql -U <postgres user> -p <postgres port> -c "copy sbi_gateway to '<old_inpilot_install_dir>/starbi/postgres/data/sbi_gateway" starbidb

> Step 6 | Stop the postgres server by entering the following command from the <inpilot_install_dir>/postgres/bin directory:

> ./pg_stop

> Step 7 | Install the new release of inPilot.

> inPilot is upgradable from:

> • | Earlier script installer based version to newer script installer based version

> • | Earlier script installer based version to GUI/Console installer based version

> • | Earlier GUI/Console installer based version to subsequent GUI/Console installer based version

> For instructions on different inPilot installers, refer to the inPilot Installation section.
> In case of the first two upgrade options mentioned above, make sure that you enter the old installation path (<install_dir>) for upgrade when prompted for the 'inPilot Installation directory'. In case of the third upgrade option, it automatically detects the old installation path through registry information. The installation automatically detects earlier setup and reads required configuration for Apache, Postgres and RPC port, etc. You will be prompted with a confirmation message before proceeding with the upgrade process.
> After upgrade, the log files are generated at /starbi/logs/ directory.
> Important: The installation script will check if the Administrator user and Primary Group information is already present in database. If it does not exist, it will ask the user to enter this information and then continue with the upgrade.

> Step 8 | After the installation is done, start all the inPilot related processes.

> Step 9 | Restore the backed up data from postgres server by entering the following command from the <inpilot_install_dir>/starbi/postgres/bin directory:

> ./psql -U <postgres user> -p <postgres port> starbidb < <backedup table file name>
> For example:
> ./psql -U sbgres -p 5432 starbidb < /export/home/sbi_edr_gw_proto_summary_06292009.sql
> This creates required table and loads the data. Then, restore the gateway tables and schedules.

> Step 10 | Modify the L-ESS configuration or HDD configuration to reflect the changes in the inPilot installation path.

> Step 11 | Restart the EDR file generation or HDD file push as needed.

> Important: The RDP should be upgraded manually. If the version of the RDP is not compatible with the inPilot, then inPilot may ignore the data sent by RDP. Thus, RDP should always be upgraded if it is not in sync with the inPilot. For change in mode from RDP to inPilot or vice-versa, re-installation is required.
> Uninstalling inPilot
> This section provides instructions on how to uninstall the inPilot application.
> Important: It is recommended that you manually perform a backup of all critical and historical data files before proceeding with this procedure. Failure to do this causes removal of all the directories, files and database.
> The inPilot application and its components can be uninstalled using one of the following two methods:

> • | Uninstallation Using Script-based Uninstaller

> • | Uninstallation Using GUIConsole-based Uninstaller

> Important: The Administrator user and Primary Group configured during installation / upgrade will not be deleted during uninstallation. These have to be deleted manually by entering the following commands as root user: userdel <ADMINUSER> and groupdel <ADMINGROUP>
> Uninstallation Using Script-based Uninstaller
> Important: To perform the uninstallation procedure explained in this section, you must be logged into the server as a root user.
> This method must be used if installation has been done using install_starbi script.
> Execute the script by entering the following command:
> ./uninstall_starbi
> Uninstallation Using GUI/Console-based Uninstaller
> Important: To perform the uninstallation procedure explained in this section, you must be logged into the server as a root user.
> This method must be used if installation has been done using GUI/Console based installer (using inst).
> Change to the directory where inPilot is installed and execute the script by entering the following command:
> ./uninst [MODE]
> where [MODE] is optional.
> Two modes are supported namely:

> • | gui

> • | console

> This uninstall script stops all the servers if it is running and all the data is wiped off.
> Important: The uninstall script does not cleanup the archive directory.

Cisco Systems Inc.
Tel: 408-526-4000
Fax: 408-527-0883