<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN"> <HTML> <HEAD> <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9"> <TITLE>LVS-HOWTO: Collect Hardware</TITLE> <LINK HREF="LVS-HOWTO-5.html" REL=next> <LINK HREF="LVS-HOWTO-3.html" REL=previous> <LINK HREF="LVS-HOWTO.html#toc4" REL=contents> </HEAD> <BODY> <A HREF="LVS-HOWTO-5.html">Next</A> <A HREF="LVS-HOWTO-3.html">Previous</A> <A HREF="LVS-HOWTO.html#toc4">Contents</A> <HR> <H2><A NAME="s4">4. Collect Hardware</A></H2> <P> <P> <H2><A NAME="ss4.1">4.1 minimum setup</A> </H2> <P> <P>You will need a minimum of 3 machines (you can do it with 2, but this doesn't demonstrate how to scale up an LVS farm, read <A HREF="LVS-HOWTO-14.html#localnode">localnode</A> to see how this is done). <P>You need <P> <UL> <LI> Director: running Linux patched kernel 2.2.x or 2.4.x (VS-NAT is still in development for 2.4.x, in Feb 2001, check on the mailing list for latest info). </LI> <LI> Client: any machine, any OS, with a client for the service (eg netscape, fetch/xterm/...) </LI> <LI> Real-server(s) <UL> <LI>VS-NAT - any machine, any OS, running some service of interest (eg httpd, ftpd, telnetd, smtp, nntp, dns, daytime ...)</LI> <LI>VS-Tun - real-server needs to run an OS that can tunnel (only Linux so far).</LI> <LI>VS-DR - OS known to work are listed in <A HREF="LVS-HOWTO-12.html#VS-DR">VS-DR</A></LI> </UL> </LI> </UL> <P> <P> <H2><A NAME="gotcha"></A> <A NAME="ss4.2">4.2 Gotchas</A> </H2> <P> <P>You need an outside client. <P>The LVS functions as one machine. You must access the LVS from a client that is NOT a member of the LVS. You cannot access an LVS controlled service (eg http, telnet) from any of the machines in the LVS; access from the director will hang, access from a real-server will connect to the service locally, bypassing the LVS. <P>Minimum 3 machines: client, director, real-server(s) <P> <H2><A NAME="ss4.3">4.3 Test with telnet (or netcat)</A> </H2> <P> <P>All testing of your LVS should be done with telnet. Telnet has <UL> <LI>a simple client (available on all OSs) </LI> <LI>a simple protocol (one port) </LI> <LI>exchanges are all ascii (can be watched with tcpdump)</LI> <LI>non-persistent connection (you can test round robin scheduling)</LI> <LI>telnetd usually listens to all IP's on the server (<EM>i.e.</EM> to 0.0.0.0) at least under inetd</LI> <LI>most importantly, when you get a connection, you'll see an entry in the ActConn column of the output of ipvsadm.</LI> </UL> <P>For security reasons, you'll be turning off telnet later, but whenever you're testing your LVS or your new service, always look to see if telnet works if you're having trouble. If telnet is not being LVS'ed then you should go back and fix that first. <P>Another useful client is netcat. See <A HREF="LVS-HOWTO-10.html#netcat">examples using netcat as a client with ftp</A>. <P> <HR> <A HREF="LVS-HOWTO-5.html">Next</A> <A HREF="LVS-HOWTO-3.html">Previous</A> <A HREF="LVS-HOWTO.html#toc4">Contents</A> </BODY> </HTML>