Commit ebe00b74 authored by Mac Newbold's avatar Mac Newbold
Browse files

First shot at documenting the process of adding new nodes into the testbed....

First shot at documenting the process of adding new nodes into the testbed. May not be complete, or completely correct, so please add, remove and edit at will.
parent d11b620e
This file documents the process of adding a new node to the testbed.
A. Information about the node
-----------------------------
1. MAC address. For each port in the new node you need to find out the
MAC address, and which port (eth0/fxp0) it is in software.
2. Wiring. We need to know which physical port on the back of the
machine maps to eth0, eth1, etc., and where each port is connected
to the cisco (get module/port, ie 3/21).
3. Power. Plug it into a power controller, and make note of which one
it is (name or IP) and which port you plug it into (1-8).
4. Serial line(s). When you plug in the serial lines, make sure which
ports on the serial expander they are plugged into.
B. If the node is of a new type
-------------------------------
1. You'll need specs on the nodes for the node type table. You'll
need a name for the type, processor class (ie PIII), speed (MHz),
RAM size (in MB), Hard disk size (in GB), max # of physical cards
it holds (including the motherboard as a card if it has blt-in
ethernet), and the maximum number of ports it has on a card (ie 1,
2 for dual card, 4 for quad card). You'll also need to give it a
default OS id (the default OS to boot), which port is the control
net (ie 4), how long you should make people wait before power cycling
again, the default image id, delay capacity, control iface (ie
eth4), and the OS id to boot when it is acting as a delay node.
2. There are several scripts that limit searches to certain
types. You'll need to include this new type as appropriate.
Some of the scripts that might need to be updated are:
/db/avail
/db/nfree.in
/tbsetup/ir/assign_wrapper.in
/tbsetup/ir/handle_ip.in
/tbsetup/ir/handle_os.in
/tbsetup/ns2ir/postparse.in
/tbsetup/batchexp.in
/tbsetup/reload_daemon.in
/tbsetup/exports_setup.in
/tbsetup/snmpit_lib.pm
/www/nodecontrol_list.php3
/www/reserved.php3
/www/showexp_list.php3
/www/tutorial/nscommands.html
/www/updown.php3
/sql/database-create.sql
C. What to do on boss:
----------------------
1. Insert entries into interfaces table using info from A(1). Try:
insert into interfaces (node_id,card,MAC,IP,iface) values
("pcN",0,"00b0d0f01020",NULL,"eth0")
2. Insert entries into wires table using info from A(2). Try:
insert into wires (node_id1,card1,port1,node_id2,card2,port2) values
("pcN",0,1,"ciscoX",5,1)
3. Insert entry into outlets table, using info from A(3). Try:
insert into outlets (node_id, power_id, outlet) values
("pcN","powerX",Y)
4. Add entries to the nodes table for each node. Try:
insert into nodes (node_id, type, def_boot_osid, priority) values
("pcN","pc1u","FBSD40-STD",N)
5. Until you are ready to put it in service, reserve it to an expt,
either with nalloc or by adding an entry to the reserved table directly.
6. Add the node to the system files:
- DNS: on boss, cd /etc/namedb
co -l emulab.db.head
add these lines with all the others:
pcN IN A 155.101.132.N
IN MX 10 ops
IN MX 20 fast.cs.utah.edu.
cd reverse/
in 155.101.132.db, make these changes:
update serial number on line 10
add entry for node, like this:
N IN PTR pcN.emulab.net.
run /usr/testbed/sbin/named_setup to update.
- DHCP: on boss, cd /usr/local/etc/ (old /usr/site/bin/dhcp/)
edit dhcpd.conf
add these lines:
# pcN
host 155.101.132.N {
hardware ethernet 00:01:23:45:67:AF; # control
option host-name "pcN";
fixed-address 155.101.132.N;
}
sudo /usr/local/etc/rc.d/dhcpd.sh restart
(old /usr/site/bin/dhcp/restart)
- ProxyDHCP: on boss, edit /usr/testbed/etc/proxydhcp.conf
add a line like this:
155.101.132.N 155.101.128.70 /tftpboot/pxeboot
run /usr/testbed/sbin/proxydhcp.restart
D. How to get the first image on it:
------------------------------------
1. If everything is set up right, you can use the magic PXE Flash Floppy
to put the right thing on the PXE card. Edit the BIOS to put the
boot order to Floppy, PXE, Hard Drive, then reboot it.
2. If everything goes right, you should see it PXE boot and find its
DHCP info, then contact the ProxyDHCP server to get its bootinfo
data, then it should decide according to that what to boot.
3. If process 3 went okay to that point, do an os_load to try to
install the standard testbed images for the node.
4. If it doesn't seem to be working just like the others, talk to
Leigh and Mike.
E. What next
------------
1. Test it out and see if it works well enough to put into service. If
its ready, release it into the wild with nfree or by deleting its
entry in the reserved table.
2. Do some more tests to find any obvious problems. Fix them, if any.
3. Sit back and relax for a few minutes until the bug reports start
flowing in.
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment