How to Install a Desktop on Cluster 2

From DISI
Jump to navigation Jump to search

Installation

Install centos Check and see if there is an eth listed

ls /etc/sysconfig/network-scripts/

If none exists:

ifconfig >> /etc/sysconfig/network-scripts/ifcfg-eth0
vim /etc/sysconfig/network-scripts/ifcfg-eth0

Delete everything except the mac address Have the following lines:

HWADDR=”XXX”
BOOTPROTO=”dhcp”
ONBOOT=”yes”
NM_CONTROLLED=”yes”
DEVICE=”eth0”
TYPE=”ethernet”
wget http://yum.ucsf.bkslab.org/SETUP/desktop.sh
sh desktop.sh

Once it’s done, DON’T HIT ENTER Enter the information into foreman (new machine, etc) Then click on Infrastructure -> Smart Proxies Then click on certificates -> autosign entries -> new Enter in the host (ie mia.desktop.ucsf.bkslab.org) Then on the desktop hit enter You should see the cert get signed If you add a repo or something to the machine in foreman it will update automatically (eventually) but if you need it done right away, on the desktop type puppet agent -t


Important Note: The desktop.sh script has a deprecated path regarding the repodata. The script causes the scl.repo to have a PYCURL error because of its path. To fix it, go to /etc/yum.repos.d/scl.repo with vim and change the baseurl line to:

baseurl=http://yum/centos/6/sclo/$basearch/sclo/

Most GPU machines will require cuda and nvidia packages provided by foreman. Sometimes, those puppet scripts will not provide the correct packages/drivers (possible error with puppet script?). If so, then you must install them manually (see GPU Issues in 'Troubleshooting installation issues' below).

Troubleshooting installation issues

Exception Error During Installation

When installing CentOS from a thumb drive, the installation can fail due to an unexpected exception error. The usual cause is due to LUKS encryption on the hard drive. In this case, the hard drive must be wiped prior to installation.

You can tell if your computer has LUKS encryption by doing the command lsblk:

sh-4.1$ lsblk
NAME                          MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINT
sr0                            11:0    1  1024M  0 rom   
sda                             8:0    0 149.1G  0 disk  
├─sda1                          8:1    0   500M  0 part  /boot
└─sda2                          8:2    0 148.6G  0 part  
 └─luks-1b6a5d85-ebb8-4e0f-bb90-911fbdf73956 (dm-0)
                             253:0    0 148.6G  0 crypt 
   ├─vg_lmfao-lv_root (dm-1) 253:1    0  59.8G  0 lvm   /
   ├─vg_lmfao-lv_swap (dm-2) 253:2    0   3.9G  0 lvm   [SWAP]     
   └─vg_lmfao-lv_home (dm-3) 253:3    0    85G  0 lvm   /home

To completely wipe a drive, attach a thumb drive with CentOS 6.8 LiveCD installed on it. This will allow you to execute commands on the hard drive that has a pre-existing OS on it. Once you have access to the terminal, become root and run this command on the harddrive you want to wipe:

[root@livecd centoslive]# dd if=/dev/zero of=/dev/<id_of_harddrive>

This will zero out all the data on the harddrive, completely wiping it. Use command lsblk to discover the name of the HDD you want to wipe. In the above lsblk command, I wiped out my 160GB SSD named sda so I executed the command:

[root@livecd centoslive]# dd if=/dev/zero of=/dev/sda

Authentication Failures when Logging in

Make sure you have several yum packages. Ensure that sssd is installed and that nss-pam-ldapd is installed. These are two packages that are getting excluded from the puppet runs for reasons I don't know yet. I'll look into it. For now, check with:

yum list sssd nss-pam-ldapd

If they are not installed, install them and run puppet again with:

puppet agent --test

Once done, the final step is to start/restart ldap. Do:

authconfig-tui

All the configurations should be in there already because puppet wrote the config files for ldap. Select next then okay to start/restart sssd with the ldap configurations.

NFS is Not Mounting Properly

Check that yum has installed the nfs-utils package with:

yum list nfs-utils

This package is necessary for nfs mounts. Install it if it is not there. This is another bizarre puppet hole. Will look into it.

GPU Issues

Certain desktops have different GPUs and the drivers that are on puppet can often not work on a certain GPU. For example, the GeForce 9800 GT is incompatible with the drivers that Puppet provides so we must install the drivers manually by visiting http://www.nvidia.com/object/unix.html and downloading the specific drivers. If you do need to install manually, remove packages::nvidia from the host config on foreman. Usually, if you have incompatible drivers, you can check dmesg | grep NVRM to see if there are any messages concerning the drivers compatibility. It will tell you what drivers are installed and what drivers the GPU actually needs. The nvidia.com webpage will provide you a .run file which you can scp to the necessary host. Once it is on the host, chmod it to be executable then run it.

A sample message in dmesg concerning incompatible graphics card and drivers (the GPU wants 340.xx legacy drivers but the 367.48 driver is installed):

[root@beatles ~]# dmesg | grep NVRM
NVRM: The NVIDIA GeForce 9800 GT GPU installed in this system is
NVRM:  supported through the NVIDIA 340.xx Legacy drivers. Please
NVRM:  visit http://www.nvidia.com/object/unix.html for more
NVRM:  information.  The 367.48 NVIDIA driver will ignore
NVRM:  this GPU.  Continuing probe...