Speech:Spring 2015 Systems Group

From Openitware
Jump to: navigation, search


Groups

Group Member Logs

Tasks Time Line

Team Schedule

RedHat Installation

Steps for installing RedHat.

Getting to the installation screen

  1. Obtain an installation DVD with RedHat 6.6 x86 (32-bit) on it. RedHat x64 and other 64-bit operating systems are not compatible with some of the server hardware.
  2. Identify the disc drive above the hard drive of the server RedHat is being installed on. Make sure that the disc drive says “DVD” on it and not “CD-ROM.” The RedHat installation DVD will not work in a CD-ROM drive.
  3. Put the installation DVD in the disc drive.
  4. Turn on or restart the server.
    1. Ideally, the server should boot to an installation screen. If the server boots to the existing OS installation, reboot the system and as it starts up hit the F12 key to open the configuration menu.
    2. Use the arrow keys to navigate to “Boot Order” and hit enter to change the configurations. Use the arrow and + and - keys to change the order of the boot devices so that the boot order of the DVD is set to “1.”

Pre-Installation

  1. Select "Install or Upgrade an Existing System" as the installation type.
  2. Select “English” as the system language.
  3. Select “U.S. English” as the keyboard language.
  4. Select “Eastern Time - New York” as the Time Zone.
  5. Select “Basic Storage Device” as the storage type.
  6. Select “Fresh Install” as the installation type.
  7. Enter the server name and root password.
  8. Select “Create Customer Layout” for the disk usage type.
    1. Verify that the / (root) partition has close to 3TB of space. If it does not, make the necessary changes to give / the majority of disk space.
    2. If the / partition has enough disk space, click cancel and choose "Use All Space" as the disk usage type.
  9. Select “Write changes to disk” as the installation type.
    1. Select "Desktop" as the interface type.
    2. Select the "customize now" radio button on the same interface screen.
  10. Do not uncheck anything. On the customize installation screen. Select "base system" on the Customize Installation screen, and then check the following options:
    1. "compatibility libraries", "Legacy UNIX compatibility", and "Network Tools". Optional. if this server will host NFS, perform the following. Next, In the left drown down menu, select "server". Check "NFS file Server. Click next.
    2. "Legacy UNIX compatibility"
    3. "Network Tools"
    4. Optionally, select "Server" from the left drop down menu if the server will do NFS hosting, as is the case with the main server Caesar.

Installation

  • The RedHat installation should begin after completing the previous step. This should take at most 40 minutes.

Post-Installation

  1. When the installation is complete, agree to the end user license agreement.
  2. Select “No, I would like to register at a later time” when asked to register.
  3. Leave all fields blank when asked to create a new user. Click "Yes" after hitting the Next button when asked if you are sure you would like to continue without creating a default user.
  4. Enter the current Date and Time
  5. Select “No” when prompted to enable Kdump.

Red Hat Network Configuration

Each server has two network interface cards. Caesar (the main server) uses one to connect to the Internet and once for its local network. The drones are currently only using a network interface card to connect to the local network.

Host File Configuration

Configuring the host file will allow hosts on the local network to refer to each other by name.

To configure the host file, add the following to the file /etc/hosts:

192.168.10.1    caesar caesar
192.168.10.2    asterix asterix
192.168.10.3    obelix obelix
192.168.10.4    miraculix miraculix
192.168.10.5    traubadix traubadix
192.168.10.6    majestix majestix
192.168.10.7    idefix idefix
192.168.10.8    automatix automatix
192.168.10.9    methusalix methusalix
192.168.10.10   verleihnix verleihnix
192.168.10.11   lutetia lutetia 
192.168.10.12   brutus brutus

For more information on configuring hosts, check out this link

Network Interface Card Setup

1. To view information about all the network cards on the system, enter the following command:
ifconfig -a

2. Copy the MAC address of the network interface card you wish to use. e.g. 00:21:70:XX:XX:XX. You will need this to configure the ethernet adapter.

3. Navigate to /etc/sysconfig/network-scripts/. In here you should find a file named ifconfig-ethX where X represent the Ethernet number relative to the OS.

Note If you installed RedHat on a one server (the one with DVD drive) and moved the hard drive to a different server, the X value will increase to 3 and 4 (e.g. eth3 and eth4) the OS will not create a new config flle. Solution Rename the file to the appropriate Ethernet X value. e.g ifconfig-eth3


4. Configure the network card. Example is for setting up Ethernet adapter 4 for obelix.


DEVICE=eth4
IPADDR=192.168.10.3
NETMASK=255.255.255.0
NETWORK=192.168.10.1
BROADCAST=192.168.10.255
HWADDR=00:0F:1F:03:E6:84
TYPE=Ethernet
UUID=50e385fd-3457-4668-9eb5-6befce9b54ee
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=static

It is important that you set NM_CONTROLLED=no. This lets the network manager know that it will not configure the ethernet adapter.

For the static IPs, please refer to the host file above.

For more information about configuring NICs, check out this link

5. Configure the kernel IP routing table. You can view a list of IP routes by entering the following command as root. Please note that this will not work as a normal user:

ip route show

Example results of a correctly configured IP routing table on Verleihnix:

192.168.10.0/24 dev eth0  proto kernel  scope link  src 192.168.10.10

The above configurations can be added to the routing table with the following command:

ip route add 192.168.10.0/24 via 192.168.10.10 dev eth0

Configure DNS Server on Drone

To configure Caesar as a drone's DNS server, add the following to /etc/resolv.conf:

 search=caesar
 
 nameserver 132.177.189.40
 nameserver 132.177.189.41
 nameserver 132.177.205.44

When completed, restart the network service:

service network restart

Master Server

Red Hat Configuration - Drone Servers

Server Partition

Volume Group

use the vgs command to view volume groups and free space available within each volume group

use the lvs command to view the logical volumes within the volume group

lvcreate -L 3.52T -n lv_main vg_brutus (creates a 3.52 TB logical volume named lv_main in volume group brutus)

Mount Point

Edit fstab - add mount point /mnt/main (fstab is config file that allows you to create mount points)

cd /etc/fstab

/dev/mapper/vg_brutus-lv_main /mnt/main ext4 defaults 1 2 (this is the line added to fstab so /mnt/main boots up with server and is configured)

  • Mounts the logical volume lv_main within volume group vg_brutus at /mnt/main

File System

mkfs.ext4 /dev/mapper/vg_brutus-lv_main (creates file system, ext4 is commonly used)

mount -a (mounts /mnt/main)

Enable Sphinx

  • As root, move /usr/local to /usr/local-OFF and link /mnt/main/local to /usr/local
    • i.e.
      • cd /usr
      • mv -i local local-OFF
      • ln -s /mnt/main/local local
    • this ties caesar's /usr/local/bin and /usr/local/lib to the new machine so we have all executables to run when we type them on the command line (or use in scripts)
  • As root, add string "/usr/local/lib" to file /etc/ld.so.conf
    • after which type command:
      • /sbin/ldconfig
    • then log out as root and once you log back in it works
    • this adds a path to /usr/local/lib libraries that Sphinx uses to run properly

Configuring Static IP Address

For assigning a static IP address for the server, firstly configure the NIC card as described in the Network Configuration section. After that add the router as the default gateway. This should only be done on the main server (Caesar) while it is plugged in via ethernet to the UNH network.

route add -net 0.0.0.0 netmask 255.255.252.0  gw 192.168.10.1 dev eth0

This will add 192.168.10.1 (the router's IP) to the kernel IP table and set it as the default gateway via the eth0 interface.

Note: If you get the "network unreachable" error or any other errors, this is probably because the server doesn't recognize the router's IP address. To solve this problem use the system-config-network utility to enable and disable dhcp.

On a terminal

system-config-network

Click on the eth0 card (Assuming eth0 is your static card) Enable dhcp save the settings and quit

ping google.com

Go back to the system-config-network Disable the dhcp Set back the static IP address and the default gateway Save and exit

By enabling and disabling dhcp the server will be, somehow, able to recognize the router's IP address.

Server Migration

Copying File Systems

Copying a file system with cp or scp will not preserve symlinks and permissions. The best way to make sure that everything is copied over exactly is to use SSH and tar. The entirety of the /mnt filesystem can be copied over using the following command:

ssh root@caesar "(cd /mnt ; tar cf - . )" | (cd /mnt ; tar xvf -)

This command will SSH into caesar (root@caesar can be replaced with root@anyservername) and zip /mnt and all of its files into a tar file, then on the machine that this command is being run on the files will be unzipped into the /mnt directory.

Trains

  • 5 hour train 0260-001 in Caesar
  • 5 hour train 0260-002 in Asterix to Caesar
  • 5 hour train 0260-003 Brutus
  • 5 hour train 0260-004 Verleihnix to Brutus

Migration Schedule

Thursday, February 26th

  • Need to have a copying tool decided on like cp, scp to copy /mnt/main

Monday, March 2nd

  • 5:30 - 6:30 - CAESAR IS DOWN
    • copy /mnt/main from Caesar to Brutus

Tuesday, March 3rd

  • 2pm
    • Verification ENDS that everything is copied, nothing missing, all access rights and links are the same, verify disk usage. Need to log what directories are being verified
  • 7pm - 8pm
    • Run experiments, Brutus on Brutus, Verleihnix on Brutus

Wednesday, March 4th

Thursday, March 5th

  • 5-7pm - CAESAR IS DOWN
    • Recopy 0260 - 0267
    • Recopy Spring 15
    • Plug Caesar's red cord into Brutus
    • Brutus's IP becomes 132.177.189.63
    • Brutus's host name becomes Caesar
    • Run 5th experiment, new caesar to new caesar
    • All drones (except obelix) should not have a usr/local, should point to mnt/local

Monday, March 9th - RESCHEDULED FROM THURSDAY / FRIDAY

  • 5-8pm - CAESAR IS DOWN
    • Unfortunately we ran into some issues and had to delay the switch over to Friday, but then found out the school closed at 5PM on Friday, so we had to reschedule.

Migration: Verification of Files

Adam


Chris

  • Directory: /mnt/main/Exp
    • Files: 0001 - 0021 - verified to have same permissions on Brutus as Caesar.
  • Directory: /mnt/main/home
    • All files verified to have same permissions on Brutus as Caesar.
  • Directory: /mnt/main/scripts
    • Sub directories verified to have same permissions on Brutus as Caesar.


Kyle

  • Directory: /mnt/main/Exp
    • Sub Directories: 0188 - 0208 - All files have been verified to have the same permissions on Brutus and Caesar.


Melissa

  • Directory: /mnt/main/Exp
    • Sub directories: 0060 - 0080 - All files have been verified to have the same permissions on Brutus and Caesar.

Planned Changes - Summer 2015

Stop SSH timeouts on Caesar

Problem:

Right now SSH sessions timeout very quickly on Caesar. This can be very disruptive and was not a problem on old Caesar.

Proposed Solution:

This problem can be fixed by logging in to route and adding the following line to root on Caesar and adding the following line to /etc/ssh/sshd_config:

ClientAliveInterval 60

gcc Installation

Problem: The GNU Compiler Collection (GCC) is not installed by default on RedHat.

Proposed Solution: On any additional systems that need GCC, first make sure that RedHat is registered. If it is not, register it with the command

rhnreg_ks --activationkey=38573487yhfjdfsejhf347

When RedHat is registered, run the following command to install GCC:

sudo yum install gcc

Enable Access Control Matrices on File System

Problem:

Right now any new folders made in the Exp directory have the following permissions:

rwxr-xr-x
  • rwxr------ means that root has read, write, and execute privileges.
  • -----xr--- means that the group has execute and read privileges and no write privileges.
  • -------r-x means that all other users have execute and read privileges and no write privileges.

Presently, every time a new directory is made with the above permissions, users are forced to log in as route and manually change the permissions with the following command:

chmod -r g+w directoryname

Proposed Solution:

Access Control Lists (ACLs) are by default disabled on the /mnt/main file system. If they were not, then this problem could be fixed with the following:

cd /mnt/main
chmod g+rwxs Exp
setfacl -d -m g::rwx Exp

One way to change the file /etc/fstab to include "defaults, acl 1 2" on the /mnt/main filesystem line.