Piranha FAQ


Author: Keith Barrett, Red Hat Inc.
Last Edit: May 21, 2001


What HA service should I use; fos or lvs?

The answer depends on how your requirements match the service features.

FOS

Increases fault-tolerance of Linux provided IP services.

LVS

Provides increased fault-tolerance, and load balancing, of a pool of Linux and non-Linux servers providing various IP services.


Do I have to let piranha start/stop the services? Can't I already have them running on the backup node?

Yes you can, and this does have advantages (faster failover, or using the backup system for other activities).

If you want, you can have the services already running on the backup system, and just define useless start and stop commands or fake scripts that do nothing for that service.

HOWEVER

There is a trade-off. Unless you do some special scripting of your own, you will have a cluster that is only reliable for one failover. A second failure might require manual intervention.

Normally, if a failover occurs the backup system becomes active. If the failed system comes back online and the backup system then has a failure, it will automatically failover again to the previously failed system. Piranha helps ensure the services are functional by restarting them.

In your senerio, the failover to the backup system works the same and is reliable, but if the original system is online and a failure then occurs on the backup system, it will attempt failover back to the original system. Unless you corrected the problem that system may still have non-functioning services that caused the original failover. You could end up with a non-functioning cluster at that point, or a ping-pong back and forth.

Some might call this a double failure and accept the risk, some cannot. Depends on your business situation.


Do you support shared-scsi?

Not at this time. Applications or IP services requiring access to a shared database need to have that data NFS mounted from an external system. That external system can be a fault-tolerant RAID server or SANs type device to eliminate vulnerabilities.


Do you support journal file systems?

Although they are not yet provided in the product, there is nothing in the HA Server product that would prevent the use of the various forms of Linux HA technology (including file systems) available in the community.

A future release of the HA Server product will provide support for the installation and use of the Ext3 journaling file system. The Red Hat HA Team has already announced a Beta test program for Ext3.


Do you support UDP communications?

Yes, in piranha releases 0.4.16-3 or later. The 1.0 High Availability Server product shipped with piranha 0.4.16-2, so you do need to update to use UDP. Check the software download area.

Also note that in order to test a UDP service, the service MUST support responding with a text message after a text message was sent to it. UDP services cannot be connected to, so a connect-only test is insufficient.


How do I incorporate Windows NT (or other OS) into the cluster?

The product documentation does not go into this in great detail. Because Red Hat does not sell Windows NT, Red Hat support cannot be used to help with questions or problems regarding its use.

Windows NT, and other OS's, can participate as a Real Server in an LVS setup, providing IP services such as ftp or http. In this setup, the server cam be included in the load-balancing provision of services, but because the server is not Linux, only round-robbin or number-of-connection based scheduling options will work. Scheduling based on computer load cannot be used because Windows NT does not support the rup, uptime, and ruptime shell commands.

Taking this example further, the Red Hat High Availability Server can be used to bring low-cost load-balancing or increased fault tolerance to a pool of Windows NT servers (all on a hidden, private network) providing web services to a public network and appearing as a single IP address to the clients

LVS can also be used to remap IP addresses so that client requests are redirected to a different server. One example of this would be a Windows NT system that is down, and you want to redirect all the client connection attempts to a different server without needing to change the IP address information in your network. Taken to an extreme, if your whole data center was on a hidden 192.x.x.x private network, with the public IP addresses being mapped by LVS to the 192 addresses, then you could mix and match those addresses at will without changing client or WinNT server settings. Also, with all your servers on 192 addresses, you have more public IP addresses available for clients.

If you run a Linux cluster with Windows NT servers and would like to help others, post your information on the lvs mailing list.


Why do I get a Read I/O timeout error even though I have no send or expect strings specified?

You are not using the most current release of the software. You need to upgrade to at least piranha version 0.4.16-3.

This was original behavior in the product for backwards compatibility with earlier releases of piranha and was documented. Basically, not specifying a send or expect string for an http service caused the nanny program to use internal defaults.

This behavior has been modified and you should no longer see this problem. Corrected RPMs have been posted to the software download area.


Why does only one of my virtual services start when start piranha?

There are several situations that can cause this:

  1. You are using outdated software. There was a memory leak bug that has since been fixed which use to manifest itself as a startup problem sometimes.
  2. You do not have "active = 1" in the service definition. Verify your your configuration file by running it through the GUI.
  3. The services are using duplicate VIP addresses.
  4. You are trying to define the same VIP address on multiple virtual interfaces.
  5. You are trying to define multiple VIP addresses on the same virtual interface.


Why doesn't the GUI automatically copy the changed configuration file?

This is planned for a future release. It simply did not make it into this release in time because the changes require extensive security review.


Why is the GUI web based?

The original piranha GUI used X window, but it soon became apparent that a web GUI had much more advantages:


Can I use a different web service on Linux than Apache?

Yes, however the piranha-gui must have apache on the system. Since the GUI runs as it's own daemon, on a private TCP/IP port, and with a private configuration file, it will not interfere with other httpd daemons running on the system providing other services. All that is needed for the piranha GUI to run is that a program or symbolic link called "/usr/sbin/piranha.gui" needs to exist -- that is the program the piranha gui expects to invoke apache. Bringing the piranha GUI up or down will not affect other web services, and vice versa.


How does the Red Hat High Availability Server product differ from Red Hat Linux using piranha?

TECHNOLOGY

The Red Hat High Availability Server product is basically Red Hat Linux, plus errata, plus piranha and ipvsadm. Performing a SERVER installation of the Red Hat Linux product, and applying the latest errata, piranha, and ipvsadm will produce a system that has 100% of the functionality of the Red Hat High Availability Server product. However because the HA installer was not involved in this installation process, there are a few resulting differences:

  1. The system will identify itself as only a Linux release in the login banner.
  2. Some packages not normally installed by the HA installer will have been installed. This is harmless, and they can be removed if desired by performing rpm uninstall commands for those packages.
  3. The HA installer places a "all:all" in /etc/hosts.deny.
  4. The HA installer places some helpful editing comments in hosts.allow, hosts.deny, and .rhosts.
  5. The /etc/motd file is set up to identify the system as "Red Hat High Availability Server".

These specific actions can be seen in the "installclass.py" script in the ha-installer archive in the download area.

NON-TECHNOLOGY

The High Availability Server product comes with:


Can I turn my Red Hat linux system into a Red Hat High Availability Server system?

Yes you can, however there are some restrictions:

  1. Obviously you will will not be able to register it or receive phone support other that what you are already entitled to as part of your Linux distribution.
  2. You must be using a compatible version of Red Hat Linux (see the HA Project web site for more information).
  3. Since the product installation software was not used to set up the system, some packages will have been installed that are normally not there because they are not required (this is not harmful), and some of the security changes will not have occurred. Again, this will not interfere will setting up a running system.
  4. You will not have the High Availability Server Installation Gude, however it is available online.

The process is basically to install the errata, and the updated RPMs for the kernel, piranha, and ipvsadm.


Which packages are not installed by default in the High Availability Server product installer?

A detailed list of what is and is not installed can be found by examining the comps-*-ha.in file in the "ha-installer" archive posted in the download area of the Red Hat High Availability Server web site. In that file, sections marked with a "0" are not installed by default, unless they are included in another section that IS being installed.

Omitted Installation Classes:

  1. Printer support (lpr)
  2. X-windows (and Gnome, KDE, Netscape, etc.)
  3. Mail, News, uucp
  4. NFS Server
  5. Network Server (talk-server, rusers-server, rwall-server, finger-server, tftp-server, ypserv)
  6. Samba
  7. Anonymous ftp Server
  8. Development, Kernel Development, languages, etc.

These packages can be individually selected for inclusion if you choose the "CUSTOM" installation option.


Copyright 2001 Red Hat Inc.