Changes between Version 42 and Version 43 of Installation/Nodes


Ignore:
Timestamp:
Sep 25, 2013 8:18:40 PM (11 years ago)
Author:
jhickey
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Installation/Nodes

    v42 v43  
    133133}}}
    134134
    135 === Setting up MFS images to use the serial console ===
    136 
    137 By default, the MFS images are set to use the video card as the console device.  Before you start, please familiarize yourself with [http://www.freebsd.org/doc/en/books/handbook/serialconsole-setup.html the basics of FreeBSD serial consoles].
    138 
    139 ==== Figure out which serial port you will be using ====
    140 
    141 A serial console is typically used in conjunction with IPMI.  Sometimes IPMI gives access to the COM1 serial interface of a machine (for example HP DL160G6 servers use COM1).  Other systems dedicate the COM2 port to the IPMI embedded server.  You will have to figure out how your particular hardware is setup.  Some of these steps will be handled by the setup_mfs script in the future.
    142 
    143 ==== Set the proper baud rate in your systems BIOS ====
    144 
    145 By default, we use 115200 as the baud rate for all MFS images.  This is a compile time value, so it is best to use 115200.
    146 
    147 ==== Installing a PXE boot loader ====
    148 
    149 When the PXE boot ROM is loaded during machine boot.
    150 
    151 The default bootloader for testbed nodes is /tftpboot/pxeboot.emu.  There are four different versions of pxeboot.emu distributed with the tarball.
    152 
    153  * pxeboot-null.emu : Does not display pxeloader prompt
    154  * pxeboot-com1.emu  : Displays pxeloader prompt via COM1 serial port
    155  * pxeboot-com2.emu : Displays pxeloader prompt via COM2 serial port
    156  * pxeboot.emu  : Displays pxeloader prompt via video out
    157 
    158 Pick a loader that best suits your installation and copy it (backing up the VGA boot loader first):
    159 
    160 {{{
    161  cp /tftpboot/pxeboot.emu /tftpboot/pxeboot-vga.emu
    162  cp /tftpboot/pxeboot.emu-<null|sio|sio2|vga> /tftpboot/pxeboot.emu
    163 }}}
    164 
    165 You can also look at modifying '''/usr/local/etc/dhcpd.conf.template''' to use different boot loaders for different machines.  You will have to generate a new dhcpd.conf configuration using '''/usr/testbed/sbin/dhcpd_makeconf -i -r'''.
    166 
    167 
    168 ==== Setting up a MFS image to use the serial console =====
    169 
    170 Edit the file loader.conf.orig for each MFS image:
    171 
    172 {{{
    173 [jjh@boss /tftpboot]$ find /tftpboot/ -name loader.conf.orig
    174 /tftpboot/freebsd/boot/loader.conf.orig
    175 /tftpboot/freebsd.newnode/boot/loader.conf.orig
    176 /tftpboot/frisbee/boot/loader.conf.orig
    177 }}}
    178 
    179 At the top of the loader.conf.orig file you will be presented with three choices:
    180 
    181 {{{
    182 ##
    183 ## Pick a console:
    184 ##
    185 ## "comconsole"  If you are using a serial port as your console
    186 ## "vidconsole"  If you are using the VGA as your console on your nodes
    187 ## "nullconsole" If you don't have VGA or serial lines, and it appears that
    188 ##               nodes are not booting, try using this, which gives you a
    189 ##               non-interactive version of the boot loader.  Some sites
    190 ##               have had problems with "phantom" serial line input from a
    191 ##               non-existant serial line causing the comconsole version of
    192 ##               the boot loader to drop into interactive mode.
    193 ##
    194 console="comconsole"
    195 #console="vidconsole"
    196 #console="nullconsole"
    197 }}}
    198 
    199 ==== Setting up  a MFS image to use the second COM port ====
    200 
    201 FreeBSD picks the serial console based on a special flag for the UART you want to use.  UART 0 is COM1 and UART 1 is COM2. 
    202 
    203 {{{
    204 [jjh@boss /tftpboot]$ find . -name device.hints -exec grep flags {} \; | grep uart
    205 hint.uart.0.flags="0x10"
    206 hint.uart.0.flags="0x10"
    207 hint.uart.0.flags="0x10"
    208 }}}
    209 
    210 To use COM2, the second UART, change the '''hint.uart.0.flags''' to '''hint.uart.1.flags'''
    211 
    212 ==== Making the configuration changes for each image stick ====
    213 
    214 You will have to run the '''prepare''' script in each boot directory after changing loader.conf.orig or the device.hints file.
    215 
    216 {{{
    217 root@boss:/tftpboot/freebsd/boot # ./prepare
    218 loader.conf: loader.conf.gz updated...
    219 loader.rc:
    220 kernel:
    221 mfsroot:
    222 }}}
    223 
    224135= Testbed Nodes =
    225136
     
    232143The testbed nodes should be set to boot only off of the network.  Disable hard drive boot to prevent failed PXE requests from falling through to booting whatever is on the disk.
    233144
    234 
    235 
    236145== Node Types ==
     146
     147=== Select a console type ===
     148
     149This setting will determine which MFS the node will boot.  If you are using a serial port, please be aware that by default, we use 115200 as the baud rate for all MFS images.  This is a compile time value, so it is best to use 115200.
    237150
    238151=== Determining the disk type ===
     
    299212If you are creating a node type for a typical testbed pc, use the class 'pc.'  If you are creating a node type for special hardware, choose something else such as 'router' for routers or 'appliance' for appliance type nodes.
    300213
     214
     215=== Associating Operating System images with your new node type ===
     216
     217After creating a new node type, you will need to enable support for it with each operating system image.  This can be accomplished by editing the operating system image through the web interface and selecting the new type.  On new installs, you can also cheat with the SQL command below.  Be sure to substitute '''minipc''' with the node type you created.
     218
     219{{{
     220mysql> insert into osidtoimageid select default_osid as osid, 'minipc' as type, imageid from images;
     221Query OK, 5 rows affected (0.00 sec)
     222Records: 5  Duplicates: 0  Warnings: 0
     223
     224mysql> select * from osidtoimageid;
     225+-------+--------+---------+
     226| osid  | type   | imageid |
     227+-------+--------+---------+
     228| 10007 | minipc |   10007 |
     229| 10009 | minipc |   10009 |
     230| 10005 | minipc |   10005 |
     231| 10008 | minipc |   10008 |
     232| 10006 | minipc |   10006 |
     233+-------+--------+---------+
     2345 rows in set (0.00 sec)
     235}}}
     236
    301237== Manually adding non-standard nodes ==
    302238=== Create the node type ===