old-www/HOWTO/Tango-HOWTO-4.html

284 lines
10 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
<TITLE>Tango 2000 HOWTO: Tango Installation and Configuration</TITLE>
<LINK HREF="Tango-HOWTO-5.html" REL=next>
<LINK HREF="Tango-HOWTO-3.html" REL=previous>
<LINK HREF="Tango-HOWTO.html#toc4" REL=contents>
</HEAD>
<BODY>
<A HREF="Tango-HOWTO-5.html">Next</A>
<A HREF="Tango-HOWTO-3.html">Previous</A>
<A HREF="Tango-HOWTO.html#toc4">Contents</A>
<HR>
<H2><A NAME="s4">4. Tango Installation and Configuration</A></H2>
<P>
<H2><A NAME="ss4.1">4.1 Installation - Tango 3.x</A>
</H2>
<P>
<H3>Solaris</H3>
<P>
<H3>Installing the Files</H3>
<P>
<P>The current version of Tango 3.x for Solaris is Tango 3.62. There is not
expected to be any further updates to the 3.x codebase. The installation path
is designed for incremental upgrades, so is a bit tricky.
<P>First, you'll need the
<A HREF="http://www.pervasive.com/support/updates/tango36.html">Tango 3.6</A> version.
This is a compressed tarball, and will untar itself into /var/opt/EDI/. You'll
need to be superuser to install this.
<HR>
<PRE>
$su -
Password: ********
# uncompress tango36sol.tar.Z
# tar -xvf tango36sol.tar
</PRE>
<HR>
<P>Next, you'll need to grab the
<A HREF="http://www.pervasive.com/support/updates/tango362.html">Tango 3.62 patch</A> file.
This too is a compressed tarball. This one will uncompress to whatever directory
it's in, so make a temp directory somewhere and use that.
<HR>
<PRE>
$su -
Password: ********
# mkdir Tango362
# cp ./tangoSol362.tar.Z ./Tango362/
# cd Tango362
# uncompress tangoSol362.tar.Z
# tar -xvf tangoSol362.tar
</PRE>
<HR>
<P>What you'll wind up with are three binary files, a Readme.txt, and an 'odbc'
directory. Move the TangoNS_ep3.so to /var/opt/EDI/lib and the t3.cgi and tangod
files to /var/opt/EDI/bin. Finally, remove your /var/opt/EDI/odbc directory
and replace it with this one.
<HR>
<PRE>
# mv./TangoNS_ep3.so /var/opt/EDI/lib/TangoNS_ep3.so
#mv ./t3.cgi /var/opt/EDI/bin/t3.cgi
#mv ./tangod /var/opt/EDI/bin/tangod
# rm -rf /var/opt/EDI/odbc
#mv ./odbc /var/opt/EDI/
</PRE>
<HR>
<H3>Setting up the Tango user account</H3>
<P>
<P>Next, you'll need to use your favourite method to create a user account
to run Tango. You can use the graphical 'admintool' program, or command line
programs such as 'adduser' or 'useradd' depending on your installation.
<P>Generally, you'll want to call the account 'tango' and also perhaps make
a group called 'pvsw'. The user should be given ownership of everything in
the /var/opt/EDI directory tree. If deploying in a production environment,
especially on something outside of a firewall or the like, set the account
to have no password, no login capabilities.
<H3>Linux</H3>
<P>
<P>There is no version of Tango 3.x for Linux. Had you going, though.
<H2><A NAME="ss4.2">4.2 Tango 2000</A>
</H2>
<P>
<H3>Solaris</H3>
<P>
<P>Tango 2000 is shipped in the form of a Solaris Package Archive. You'll
need to login as root, and using either the 'admintool' graphical utility,
or run the pkgadd command. If you have a CD-ROM copy,mount the CD. The automounter
will generally mount it in /cdrom. Copy the /cdrom/tango_as-2000/tango2000/T2000Install.tar
file to a temporary directory. If you downloaded Tango 2000, it will be a compressed
tar file, and you'll need to uncompress it first. If it's already uncompressed,
skip the first step below.
<HR>
<PRE>
# uncompress T2000Install.tar.Z
# tar -xvf T2000Install.tar
# cd T2000Install
# pkgadd -d. PVSWtango
</PRE>
<HR>
<P>and follow the prompts.
<BLOCKQUOTE>
Warning: the shipping Tango 2000 installer sometimes rejects valid CD-keys
as being invalid. If this occurs, leave the CD-Key blank, and manually add
your key later (see section x.x).
</BLOCKQUOTE>
<H3>Linux</H3>
<P>
<P>Tango 2000 for Linux is distributed as an RPM. On a distribution CD, you'll
find the file in the tango2000 directory. Copy the appropriate file to a temp
directory; Tango2000-server-4-Linux_i386.rpm if you're using Red Hat 6, Caldera
2.2 or S.U.S.E 6.2 or later. Tango2000-server-4-RedHat52_i386.rpm if you're
using Red Hat 5.2. Either way, you'll need to be root.
<BLOCKQUOTE>
Note that to use Red Hat 5.2, you'll need to manually upgrade your kernel
to version 2.2 or higher.
</BLOCKQUOTE>
<HR>
<PRE>
#rpm -Uvh Tango2000-server-4-Linux_i386.rpm
</PRE>
<HR>
<H2><A NAME="ss4.3">4.3 Tango 2000 Service Pack 1</A>
</H2>
<P>
<H3>Solaris</H3>
<P>
<P>Tango 2000 SP1 for Solaris is a Solaris Package Archive, designed to replace/update
the existing installation. It is, however, a full install, so if you don't
have Tango installed already, you'll get a working install. Otherwise, the
procedure to install is the same as Tango 2000, only the archive is T2000InstallSP1.tar.Z
<P>You'll probably want to back up your t4client.ini and t4server.ini files,
as well as your web server configuration files.
<H3>Linux</H3>
<P>
<P>Tango 2000 SP1 for Linux is an RPM designed to replace/update the existing
installation. It is, however, a full install, so if you don't have Tango installed
already, you'll get a working install. Otherwise, the procedure to install
is the same as Tango 2000, only the RPM is Tango2000-server-4.05.i386.rpm,
or Tango2000-server-4.05.RedHat52.i386.rpm if you're using Red Hat 5.2.
<H2><A NAME="ss4.4">4.4 tXserver.ini - TAS Settings</A>
</H2>
<P>
<P>Tango uses a file called 't3server.ini' or 't4server.ini' to control many
of it's behaviors and functions. For Tango 3.x, this file is /var/opt/EDI/t3server.ini
and for Tango 2000, it's $TANGO_HOME/configuration/t4server.ini. You
can find a complete description of all entries in your Metatags and Configuration
Variables book, but the most important/commonly used ones are listed here.
<H3>Cache</H3>
<P>
<P>Possible entries: TRUE, FALSE
<P>This controls weather or not Tango caches TAF files. Caching will reduce
disk access, speeding up TAF execution.
<H3>CacheIncludeFiles</H3>
<P>
<P>Possible entries: TRUE, FALSE
<P>This controls weather or not Tango caches included files. Caching will
prevent repeated disk access, speeding up TAF execution.
<H3>CacheSize</H3>
<P>
<P>Possible entries: Numeric, measured in bytes
<P>This measures the size of the cache for TAFs and included files. If cache
grows to near this size, older documents will be flushed.
<H3>ConfigPasswd</H3>
<P>
<P>Possible entries: text
<P>This is the password of the config.taf online configuration application.
<H3>DataSourceLife</H3>
<P>
<P>Possible entries: numeric, measured in minutes.
<P>This controls how long an unused datasource connection will live. A setting
of 0 will cause a datasource connection to be closed as soon as it's query
is finished.
<H3>DebugMode</H3>
<P>
<P>Possible entries: ForceOn, ForceOff, appFileSetting
<P>This controls how the TAS handles placing debug information on the bottom
of each page created; always, never, or per file settings.
<H3>DSConfigFile</H3>
<P>
<P>Possible entries: path to file
<P>This points to the Data Source configuration file, which gives you some
finer control over how Tango uses data sources. See the Data Sources section
for more details.
<H3>ItemBufferSize</H3>
<P>
<P>Possible entires: numeric, measured in bytes
<P>This is the maximum size of any given field that can be returned in a database
action. It's main function is to prevent Tango from becoming bogged down while
downloading an unusually large piece of data from a database.
<H3>License</H3>
<P>
<P>Possible entries: alphanumeric CD-Key
<P>This is the Tango license. The CD-Key contains the licensing information
which tells Tango how to configure itself in terms of licenses and behavior.
<H3>ListenerPort</H3>
<P>
<P>Possible entries: TCP/IP Port number
<P>This tells Tango what port to monitor for incoming connections from the
Tango CGI or Plugins. Ports cannot be shared between server software, so multiple
servers running on one machine will need their own ports.
<H3>LoggingLevel</H3>
<P>
<P>Possible entries: NoLogging, LogLevel1, LogLevel2, LogLevel3, LogLevel4
<P>This controls how much logging Tango does. The log, "Tango.log", is written
to the location specified in the LOGDIR config variable. LogLevel 3 is the
best to use if you're trying to debug a Tango problem, but will slow Tango
down, and will eat disk space.
<H3>MaxActions</H3>
<P>
<P>Possible entires: numeric, 0 for no limit
<P>This controls how many actions Tango will allow in a TAF file. This guards
against things like infinite loops and overly large programs; most often used
in development environments.
<H3>MaxHeapSize</H3>
<P>
<P>Possible entries: numeric, measured in bytes
<P>This controls how much memory the Tango Daemon process will allow itself
to consume. Memory is consumed by variables, datasource connections, and cache.
If Tango exceeds this number, it will shut itself down with a 'process size
exceeded' message and attempt to restart itself normally. This number should
be changed to provide 20% more than what you record Tango as generally
using during peak use.
<H3>QueryTimeOut</H3>
<P>
<P>Possible entries: numeric, measured in seconds
<P>This controls how long Tango will wait for a response from a database call
before timing out. Note that not all databases and drivers support this functionality.
<H3>RequestQueueLimit</H3>
<P>
<P>Possible entries: numeric
<P>This controls how many requests from a CGI Tango will allow to 'queue'.
A very busy site can sometimes have so many CGIs stacked, waiting for Tango
to service them, that some will get lost and orphaned. This helps prevent that
situation.
<H3>ThreadPoolSize</H3>
<P>
<P>Possible entries: numeric
<P>This controls how many simultaneous threads Tango will run with. On Solaris,
it is generally better to have several Tango servers running a few threads
apiece than to have one Tango server running the same number of threads.
<H3>ValidHosts</H3>
<P>
<P>Possible entries: TCP/IP addresses, colon delimited.
<P>This is a list of what IP addresses Tango will allow incoming requests
from. On a machine where the web server and Tango server are both running,
this should be set to 127.0.0.1, the localhost.
<HR>
<A HREF="Tango-HOWTO-5.html">Next</A>
<A HREF="Tango-HOWTO-3.html">Previous</A>
<A HREF="Tango-HOWTO.html#toc4">Contents</A>
</BODY>
</HTML>