Booting up the CD

From BCCD 3.0

Jump to: navigation, search

Well, now that you've followed Burning the BCCD to CD and have your very own version of the BCCD, how do you boot the thing up? Below is a brief tutorial to help you get started.

Contents

Understanding the motivation of the BCCD

The zeroth step that you need to understand is one of pedagogy. The BCCD image was put together for supporting high-performance computing education. Therefore you may find some configuration steps not automated for educational sake. If you would like a quicker, more configuration-specific way to boot up the BCCD, check out the new BCCD Bootup Modes.

Splash screen

Below is the initial BCCD splash screen, which is the first thing you should see booting from the CD. Pressing F1 displays the current screen. Pressing F2 displays a brief message about copying. Pressing F3 gives you different advanced bootup modes. For the sake of simplicity we won't discuss any of them in this tutorial, but instead you can learn about them in BCCD Bootup Modes. Note that networking configuration is for now relegated to the startup process.

Insert image here.

You should notice that there are different framebuffer modes. Type the number of the framebuffer mode you would like the BCCD to boot up with (number 1-5), and then press enter. These correspond to different screen resolutions. The BCCD should then begin to boot.

Note: If you don't press anything at the boot up screen for a certain amount of time, the BCCD will automatically begin booting with a framebuffer of 4. Similarly, if you want to use the default of 4 (1024 x 768), just hit enter and that will load by default.

At this point, a lot should be scrolling past on the screen. The BCCD takes care of a lot of complex configurations without you needing to, so you don't need to worry about most of it. As long as you see the logo in the upper left hand corner, you should be good. If there's an error at some point, you'll know it from the output. Otherwise, just sit tight and wait for when it needs your input again.

When it gets to it, the system will wait for the user to set the password for the default user bccd. You will be prompted for the same password twice before the system continues. This password can be anything - even empty. Of course, if it's empty, don't expect to be able to SSH into it! (This actually makes a blank password more secure than any other password in some respects.)

Insert image here.

Log in

After setting up the network, you are ready to log into the system. At this point you may either log into the system as the user root with the password given on the login screen or the user bccd with the password you specified earlier. (If you used a blank password for BCCD, then just hit enter at the prompt.) Logging in as the user bccd is recommended in most cases. Only log in as root to reconfigure the configuration settings.

Insert image here.

Starting the public key broadcast

MPICH, LAM, and PVM all require certain abilities of the environment. One of these demands is the ability to execute certain commands on remote machines without requiring the user to input his or her password. These commands relate to the creation of processes, the administration of cluster-supporting daemons, etc. The BCCD extends the ability to execute commands on remote hosts via ssh keypairs. When the system boots up, ssh key pairs are generated for the host computer and for the default user, bccd. The pkbcast process broadcasts the public keys of the bccd user. If a remote user accepts these keys in an appropriate way, the local bccd user can leverage the corresponding private key (which is not disclosed) to execute commands and gain access to the remote machine. Using the pkbcast approach, hosts booted with the BCCD on the same network can be located and brought together into a single computational environment.

When you log on as the user bccd, the following screen will automatically appear asking if you would like to broadcast your public ssh keys over the network. This starts the pkbcast program in the background. Select Yes.

Insert image here.

Starting up the pkbcast program does not give you access to any remote machines. The purpose of the pkbcast program for remote users to selectively give you access to their resources.

Starting the pkbcast program is one part of a two-part process. The other part, already mentioned, is to place the public keys for trusted users (the users the you trust) where ssh looks for them. This is now automated by a script. First (optionally), make sure that all the public keys you've received are authentic. pkbcast stores the public ssh keys that it reads in from network broadcasts in the directory /tmp, under the directory name corresponding to the user (bccd), and in a directory name corresponding to the dns name of the host that broadcast it. To see the keys that have been collected, cd into the directory:

cd /tmp/bccd/<specific_hostname>/

Inside of this directory, you should see public keys with a .pub extension. Review each of these keys and verify their authenticity.

Next, to automatically accept all public keys, type:

bccd-allowall

Note: If for some reason you would like to deny all public keys, type:

bccd-denyall

Generating a hosts file

The approach described above for accepting hosts keys can also be used to generate a hosts file for MPICH, PVM and LAM multi-environments. When the hosts accepted by the bccd-allowall command (which are listed in /tmp/bccd/) correspond to hosts that you would want to use in your distributed environment, you can issue:

bccd-snarfhosts

This will generate a listing of all hosts on the network that are running the BCCD in a file called machines. To review this file, simply return to your home directory and view the new file named machines.

Starting the X11 environment

To start the X graphical windowing environment, issue startx at the prompt as shown below and then press enter.

File:Starting-X.png

When X starts up, you should see a graphical environment similar to the following:

File:X11.png

Congratulations! You've successfully booted up the BCCD. Where to go now? Check out some of the wiki pages below:

  • Compiling and Running: Compiling and running your MPI programs
  • Debugging Tools: Using the debugging tools on the BCCD, such as
    • upshot
    • mpilog, mpitrace, mpianim
    • xmpi
    • xpvm
    • gdb, electric fence, and ddd
Personal tools