Before you install StreamBase, use this checklist to ensure that each target node matches the prerequisites:
-
The target node's resources (CPU, RAM, disk capacity) must meet or exceed the minimum values described on the Supported Configurations page.
-
If you plan to install the StreamBase kit into a directory that requires root access, such as
/optor/usr/local, you must have access to the root account on the target node. (You can install StreamBase into another area, such as a home directory, and will not need root access.) -
The target node must be running a supported Linux release with the latest updates, as listed in the Supported Configurations topic.
-
To run StreamBase applications, you must have a Sun JDK installed. See Supported Configurations for the supported JDK versions.
-
If you are running a stripped-down version of RHEL 4, the package
compat-libstdc++-33-3*must be installed for StreamBase to run properly. -
If your StreamBase applications will access external database tables via the StreamBase Adapter for JDBC, you must have installed, or have network access to, a database product as listed in Supported Configurations.
Important
StreamBase Systems does not support the use of multiple StreamBase
releases on the same machine. The rpm
-Uvh command shown in these instructions automatically
performs an upgrade from any previous version of StreamBase to the
current release. That is, any previous release in your installation
directory (by default, /opt/streambase) is
replaced by the new
installation. However, if you elect to install StreamBase from the
streambase-*.tar.gz file, you must first
uninstall the existing StreamBase version, as described in Uninstalling StreamBase on Linux.
If you used previous releases of StreamBase on the target machine, create
backup copies of your existing StreamBase workspace and configuration
directories, before using StreamBase
Studio in the current release. Your StreamBase workspace
and configuration directories include your projects, which in turn contain
your Eventflow application diagrams and associated files for each project.
When you create the backup file, have its filename indicate the StreamBase
release number (such as 3.5.7) those projects used; for example,
mySBWorkspace_3.5.7.zip.
The directories are in these default locations:
your-home-directory/streambase-workspace/
your-home-directory/.streambase/sbstudio-configuration/
The StreamBase kit for Linux is packaged in two ways:
-
As a set of Red Hat Package Manager (RPM) files., which can be installed with a command such as:
rpm -Uvh streambase-*.rpm
-
Or as a single tarball, which can be installed with a command such as:
tar -xzf streambase-*.tar.gz
Note
The following steps include a number of important caveats. To ensure a successful installation, please read all the steps:
-
Log into the root account if you plan to install StreamBase into a privileged area such as
/optor/usr/local. -
Insert the StreamBase product CD or download the kit. For CD installations, if automount is not enabled, mount the CD. For example:
mount /mnt/cdromOn the product CD and in the FTP download site's directories, the kit's *.rpm files are in the
./rpmsdirectory. The kit's single*.tar.gzfile is in the./tarfilesdirectory.Download Kit Options. Instead of the product CD, you may have downloaded the StreamBase kit from an FTP URL given to you by a StreamBase representative. Or you may have downloaded the StreamBase Developer Edition kit from the Developer Zone. Note that on the DevZone, the download file for Linux users is a self-extracting
.binfile that contains the StreamBase installation tarfile. Please remember the location of the downloaded files. -
The StreamBase installer checks for the existence of a supported version of the Sun® Java Development Kit (JDK) on your
PATH. Please refer to the Supported Configurations topic for the supported JDK versions. A JDK is required; a JRE is not sufficient.For your convenience, a supported JDK kit is provided on the StreamBase CD for Linux, and on the FTP download site for Enterprise Editions. However, if you are using the downloaded StreamBase Developer Edition kit from the Developer Zone, the JDK is not provided.
If you already have a supported JDK installed, you do not need to replace it with the JDK from the StreamBase CD.
CD examples:
-
On the CD for StreamBase for 32-bit Linux on Intel x86 platforms:
cd /tmp sh /mnt/cdrom/rpms/third-party/jdk-1_5_0_12-linux-i586-rpm.bin rpm -Uvh jdk-1_5_0_12-linux-i586.rpm
-
On the CD for StreamBase for 64-bit Linux on x86_64 platforms:
cd /tmp sh /mnt/cdrom/rpms/third-party/jdk-1_5_0_12-linux-amd64-rpm.bin rpm -Uvh jdk-1_5_0_12-linux-amd64.rpm
-
-
StreamBase also has a dependency on the
compat-gcc33RPM, which is distributed on the StreamBase CD and on the FTP download site for Enterprise Edition kits. CD examples:cd /mnt/cdrom/rpms/third-party rpm -Uvh compat-gcc33-*.rpm
This command may show the package is already installed:
package compat-gcc33-3.3.4-1 is already installed
In this case, you can either add the
--replacepkgsswitch to the rpm command above to reinstall it, or skip this step and use your existingcompat-gcc33package.Note
For Enterprise Edition kits, the sources for some third-party software packages are shipped on the CD, and on the FTP download site, in the
sourcesdirectory, to comply with GPL and LGPL obligations.
Note
If you are running a stripped-down version of RHEL 4, the package
compat-libstdc++-33* must be installed for
StreamBase to run properly.
StreamBase is packaged in multiple RPMs. In the following list,
RRR refers to the release
number, DDD refers to a date
string that reflects the date and time when the installation CD was
built, and PPPP refers to the
processor type (such as i586 or
x86_64).
-
streambase-client-
RRR-DDD.PPPP.rpm -
Installs the StreamBase clients (sbc, sbfeedsim, others)
-
streambase-studio-
RRR-DDD.PPPP.rpm -
Installs StreamBase Studio
-
streambase-server-
RRR-DDD.PPPP.rpm -
Installs the StreamBase servers (sbd, others)
-
streambase-devel-
RRR-DDD.PPPP.rpm -
Installs tools that let you write clients and custom functions
-
streambase-docs-
RRR-DDD.PPPP.rpm -
Installs the StreamBase documentation. (The installation CD contains a copy of the documentation in the
docdirectory, so that you can read the StreamBase Release Notes, the Supported Configurations topic, and Installation Guide before starting the installation.)
The streambase-server and streambase-devel packages require the streambase-client to be installed. Other than these
requirements, you can install any combination of RPMs.
To install the StreamBase RPMs, use the rpm -Uvh filename.rpm command. For example:
cd /mnt/cdrom/rpms/streambase rpm -Uvh streambase-*.rpm
By default, the RPMs install the StreamBase software into the
/opt/streambase/ directories. To change the
install directory, use the relocate option.
For example:
rpm -Uvh --relocate /opt/streambase=/usr/local/streambase streambase-*.rpm
Note
If you use the relocate option, make sure that the new installed directory's bin subdirectory is in your PATH.
As with most RPMs, certain applications and libraries are also installed
into /usr/bin, /usr/lib, and /usr/share/man.
Note
If you downloaded the StreamBase for Linux kit from the Developer Zone, the following step assumes that you have already run the StreamBase*.bin file to extract the installation tar file.
To install StreamBase from the single tar file, enter commands like the
following. This example assumes that a downloaded StreamBase kit
temporarily resides in a /home/sbuser/kits
directory. If you are using the product CD, instead specify the mounted
CD's path plus the streambase-*.tar.gz
filename.
cd /opt tar -xzf /home/sbuser/kits/streambase-*.tar.gz
Or if you want to install the files in a non-privileged area, such as one
of your /home directories, enter commands
like the following. In this example, we are installing from the kit on
the mounted product CD:
mkdir /home/sbuser/streambase cd /home/sbuser/streambase tar -xzf /mnt/cdrom/tarfiles/streambase-*.tar.gz
Important
After installing StreamBase from the tar file, run the following command, to set up the environment:
eval `streambase-install-dir/bin/sb-config --env`
This command sets the STREAMBASE_HOME
environment variable and modifies the PATH,
LD_LIBRARY_PATH, and MANPATH environment variables, for the current shell. Note
the use of the backquote character ( ` ) in the preceding example; it is
not a single quote character.
To install only the StreamBase Server RPM and its dependencies, use commands like the following to install the minimum set of RPMs.
cd /mnt/cdrom/rpms/streambase rpm -Uvh streambase-server-*.rpm streambase-client-*.rpm
The StreamBase Server minimum installation for staging and production
environments does not depend on compat-gcc33.
To develop StreamBase clients or custom functions on the production
machine, install the streambase-devel and
streambase-docs RPMs (only excluding the
streambase-studio RPM). For example:
cd /mnt/cdrom/rpms/streambase rpm -Uvh streambase-server-*.rpm streambase-client-*.rpm streambase-devel-*.rpm streambase-docs-*.rpm
If you install these four RPMs, note that streambase-devel requires compat-gcc33. See the previous section in this topic for
information about installing compat-gcc33, if
you do not already have it on the production machine.
Configure the StreamBase license as described in the Configuring a StreamBase License topic.
To support StreamBase Studio users on Windows or Linux client machines
connecting to the remote Linux machine where StreamBase Server is
installed, your Linux host must have an SSH daemon running with TCP port
forwarding enabled, and password authentication enabled. To enable TCP port
forwarding, ensure that your /etc/ssh/sshd_config file does not contain the following lines:
AllowTcpForwarding No PasswordAuthentication No
If you update the sshd_config, remember to
restart your SSH daemon before the StreamBase Studio users start their
sessions.
Note
Remote users who connect from StreamBase Studio to your host must also have valid UNIX accounts on the machine where you install StreamBase Server. Remote users connecting StreamBase Studio from their Windows or Linux machine must provide valid username and password credentials to connect to your server.
The following scripts and files were installed as part of the
streambase-server RPM:
-
Initialization scripts in the
/etc/init.ddirectory:streambase sbclusterd sbnoded
-
Configuration files in
streambase_install_dir/etc:sbd.sbconf sbclusterd.sbconf sbnoded.sbconf
The
sbclusterdandsbnodedscripts and configuration files are only relevant in a StreamBase cluster. See Installation on Multiple Machines.
The StreamBase scripts in /etc/init.d point
to the configuration files, as follows:
| This start script... | Points to this configuration file... |
|---|---|
/etc/init.d/streambase
|
streambase_install_dir/etc/sbd.sbconf
|
/etc/init.d/sbclusterd
|
streambase_install_dir/etc/sbclusterd.sbconf
|
/etc/init.d/sbnoded
|
streambase_install_dir/etc/sbnoded.sbconf
|
streambase_install_dir is the
StreamBase installation directory (/opt/streambase by default).
|
|
Enter the following command if you want the StreamBase Server to run when the Linux system boots:
chkconfig --add streambase
You can also run the streambase script at any time to start StreamBase, without having to reboot.
By default, StreamBase uses skeleton configuration files. To customize
the configuration files for use with one of your applications, use the
-s flag as shown in the next set of example,
and pipe the output to a file. For example:
sbd -s > ~/myapps/sbd.sbconf sbclusterd -s > ~/myapps/sbclusterd.sbconf sbnoded -s > ~/myapps/sbnoded_one.sbconf
For details about the StreamBase configuration files, see the following topics:
Later in the development cycle, when you are ready to deploy the application to a staging
server, the recommended location for the .sbapp application file is:
streambase_install_dir/var/applications
For example, /opt/streambase/var/applications
On Linux, the StreamBase Studio Welcome page and Help require that either Mozilla or Firefox is installed and can be located. If you removed Mozilla or installed it in a non-standard location, the Welcome page or Help may not appear. A workaround is available: set the environment variable MOZILLA_FIVE_HOME to the path of your Mozilla installation. Here are two examples (your path may be different):
MOZILLA_FIVE_HOME=/usr/lib/mozilla-1.7.3 MOZILLA_FIVE_HOME=/usr/lib/firefox-2.0.0.7
You can distribute the processing of a StreamBase application across multiple machine in a cluster. To support this feature, you must install StreamBase on each machine, repeating the installation steps described above in the section Initial Configuration on a Single Machine.
After the installations (and typically later in your development cycle), you can configure the cluster so that one node hosts the StreamBase Cluster Manager, sbclusterd. The other nodes will each run a StreamBase Node Manager, sbnoded. In StreamBase Studio, you can indicate (optionally) that a component will run in its own thread, and you can enable an additional data parallelism feature. (See StreamBase Execution Order, Concurrency Options, and Data Parallelism; this option is not appropriate for all components.) On SMP machines, the distribution of threads across processors happens automatically. There is a further option to customize a StreamBase Cluster Manager sbclusterd.sbconf configuration file, in which you can specify the machine on which each component will be processed.
We suggest you consider the optional distribution steps later in your development cycle. Those steps are described in the Administration module, on the Creating a Clustered Application page. First take some time to learn about the StreamBase operators, StreamBase Studio, and other tools.
You can distribute the processing of a StreamBase application across multiple nodes in a cluster. To support this feature, you must install StreamBase on each node. On every node in the cluster, repeat the installation steps described above in Installation on a Single Machine.
Note
After the StreamBase installation on each node, remember to put a copy of
the streambase-license.xml file in the
directory of each machine. For details, see Post-Installation: Licensing in this
topic.
streambase_install_dir/etc
After installing on the target machines, you can configure the cluster so
that one node hosts the StreamBase Cluster Daemon, sbclusterd. The other nodes will each run a
StreamBase Node Daemon, sbnoded. In StreamBase Studio, you have the
option of indicating that selected components can run in their own thread.
You can also indicate in a customized sbclusterd.sbconf file whether a component can run on a
particular machine in a cluster environment.
The configuration and setup of a StreamBase cluster is an advanced topic that requires some experience with running StreamBase applications. If this is your first time installing and running StreamBase, postpone the setup of your StreamBase cluster until later in your development cycle. See Creating a Clustered Application.
Before uninstalling, keep a version-specific backup copy of your StreamBase Studio workspace. When you move from one StreamBase release to the next release, StreamBase Studio may automatically upgrade the XML representation of your applications. However, if you develop applications and then decide to downgrade to a previously used release, the older StreamBase Studio may not recognize some of the settings. If you must use the prior StreamBase release, you may need to delete the existing Studio workspace and configuration directories, and either start over with new projects in StreamBase Studio, or restore your matching version-specific backup copies.
To uninstall StreamBase on Linux, follow these steps:
-
Log into the
rootaccount, if you installed the product in an area that requiresrootaccess, such as/opt/streambase. -
Confirm that the StreamBase Daemon (sbd) is not running on this machine:
ps -A | grep sb
If the StreamBase Server is running, confirm that the server can be shut down without disrupting StreamBase users or applications. At the appropriate time, enter the sbadmin shutdown command.
-
Enter these commands to remove the StreamBase packages:
rpm -e streambase-client streambase-studio streambase-server streambase-devel streambase-docs -
Delete any StreamBase startup configuration, if you previously added it:
chkconfig --del streambase
