Difference between revisions of "Sysadmin Todo List"

From Nuclear Physics Group Documentation Pages
Jump to navigationJump to search
 
(240 intermediate revisions by 7 users not shown)
Line 1: Line 1:
This is an unordered set of tasks. Detailed information on any of the tasks typically goes in related topics' pages, although usually not until the task has been filed under [[Sysadmin Todo List#Completed|Completed]].
+
This is the new Sysadmin Todo List as of 05/27/2010. The previous list was moved to [[Old Sysadmin Todo List]]. This list list is incomplete, and needs updating.
== Daily Check off list ==
 
Each day when you come in check the following:
 
# Einstein ([[Script Prototypes|script]]):
 
## Up and running?
 
## Disks are at less than 90% full?
 
## Mail system OK? (spamassasin, amavisd, ...)
 
# Temperature OK? No water blown into room?
 
# Systems up: Taro, Pepper, Pumpkin/Corn ?
 
# Backups:
 
## Did backup succeed?
 
## Does Lentil need a new disk?
 
  
== Important ==
+
== Projects ==
 +
*Convert physical and VMs to CentOS 6 for compute servers ([[taro]],[[endeavour]]) and all others to either 6 or 7. 
 +
**VMs: Einstein
 +
**Physical: [[endeavour]], [[taro]], and [[gourd]]
 +
*Mailman: Clean up mailman and make sure all the groups and users are in order.
 +
*CUPS: Look into getting CUPS authenticating users through LDAP instead of using Samba.
 +
*Printer: Get printtracker.py working and see if you can get a driver to properly recognize page number count instead of just giving the value as a number of 1 which corresponds to a job submission not the number of pages.
 +
*Check /etc/apcupsd/shutdown2 script on Gourd to make sure all the keys are correctly implemented so the machines go down properly during a power outage.
 +
*Do a check on Lentil to see if there is any unneccessary data being backed up.
  
=== Towards a stable setup  ===
+
==Daily Tasks==
  
Here are some thoughts, especially to Steve, about getting an über-stable setup for the servers.  <br>
+
These are things that should be done every day when you come into work.
Some observations:
 
# When we get to DeMeritt at the end of next summer, we need a setup that easily ports to the new environment. We will also be limited to a total of 10 kWatts heat load (36000 BTUs, or 3 tons of cooling), due to the cooling of the room. That sounds like a lot, but Silas and Jiang-Ming will also put servers in this space. Our footprint should be no more than 3 to 4 kWatts of heat load.
 
# Virtual systems seems like the way to go. However, our experience with Xen is that it does not lead to highly portable VMs.
 
# VMware Server is now a free product. They make money consulting and selling fancy add-ons. I have good experience with VMware Workstation on Mac's and Linux. But it is possible (like RedHat which was once free) that they will start charging when they reach 90% or more market share.
 
  
Here are some options: <br>
+
#Do a physical walk-through/visual inspection of the server room
* We get rid of Tomato, Jalapeno, Gourd and Okra and perhaps also Roentgen. If we want we can scavenge the parts from Tomato & Jalapeno (plus old einstein) for a toy system, or we park these systems in the corner. I don't want to waste time on them. '''The only bumps that I can think of here would be that Xemed/Aaron use Gourd. And that moving/reconfiguring roentgen's web services could be a big pain since neither Matt or I know much about the setup. But I guess we have to think about it anyhow, since its ancient OS will probably stop being supported at some point. Otherwise I think we're all in favor of cutting down on the number of physical machines that we've got running. Oh, and what about the paulis?'''
+
#Verify that all systems are running and all necessary services are functioning properly
* Test VMware server. Specifically, I would like to know:
+
#*For a quick look at which systems are up you can use /usr/local/bin/[[serversup.py]]
## How easy is it to move a VM from one hardware to another? (Can you simply move the disks?)
+
#*[[Gourd]]: Make sure that home folders are accessible, all virtual machines are running
## Specifically, if you need to service some hardware, can you move the host to other hardware with little down time? (Clearly not for large disk arrays, like pumpkin, but that is storage, not hosts).
+
#*[[Einstein]]: Make sure that [[LDAP]] and all [[e-mail]] services (dovecot, spamassassain, postfix, mailman) are running
## Do we need a RedHat license for each VM or do we only need a license for the host, as with Xen?
+
#*[[Roentgen]]: Make sure website/MySQL are available
## VMware allows for "virtual appliances", but how good are these really? Are these fast enough?
+
#*[[Jalapeno]]: Named and Cups
* Evaluate the hardware needs. Pumpkin, the new Einstein, Pepper, Taro and Lentil seem to be all sufficient quality and up to date. Do we need another HW? If so, what?
+
#*[[Lentil]]: Verify that backups ran successfully overnight. Check space on backup drives, and add new drives as needed.
** What I'd really like to see is a division of einstein's current labor. It seems like a good idea to have mail and LDAP on seperate machines so that every service isn't crippled when one machine has a problem. Or maybe at least have some kind of backup LDAP server that can be swapped in in a pinch. Whether this would require another machine or just adding the service to an existing machine, I don't know.
+
#Check [[Splunk]]: [https://pumpkin.farm.physics.unh.edu:8000 click here if you're in the server room], or open localhost:8000 (use https) from [[Pumpkin]]
 +
#*Check logs for errors, keep an eye out for other irregularities.
 +
#Check [[Cacti]]: [http://roentgen.unh.edu/cacti http://roentgen.unh.edu/cacti]
 +
#*Verify that temperatures are acceptable.
 +
#*Monitor other graphs/indicators for any unusual activity.
  
I would like to have some answers to these questions by '''February 28th'''. Answers do not need to be complete (as in, fully testing the VMware server capabilities). It would be commendable if by then we can form a clear plan.
+
==Weekly Tasks==
  
=== Pumpkin/Corn ===
+
These are things that should be done once every 7 days or so.
  
Pumpkin is now stable. Read more on the configuration at [[Pumpkin]] and [[Xen]].
+
#Check physical interface connections
 +
#*Verify that all devices are connected appropriately, that cables are labeled properly, and that all devices (including RAID and IPMI cards) are accessible on the network.
 +
#Check Areca RAID interfaces
 +
#*The RAID interfaces on each machine are configured to send e-mail to the administrators if an error occurs. It may still be a good idea to login and check them manually on occasion as well, just for the sake of caution.
 +
#Clean up the server room, sweep the floors.
  
=== Einstein Upgrade ===
+
==Monthly Tasks==
  
Einstein upgrade project and status page: [[Einstein Status]]
+
#Perform [[Enviromental_Control_Info#Scheduled_Maintenance|scheduled maintenance]] on the server room air conditioning units.
'''Note:''' Einstein (current one) has a problem with / getting full occasionally. See [[Einstein#Special_Considerations_for_Einstein]]
+
#Check S.M.A.R.T. information on all server hard drives
 +
#*Make a record of any drives which are reporting errors or nearing failure.
  
It seems this is not moving forward sufficiently. I think we need a new strategy to get this accomplished. My new thought is to abandon the Tomato hardware, which may have been a source of the difficulties, and use what we learned for the setup of "Einstein on RHEL5" to create a virtual machine Tomato, where we test the upgrade to RHEL5.
+
==Annual Tasks==
  
=== Environmental Monitor ===
+
These are tasks that are necessary but not critical, or that might require some amount of downtime. These should be done during semester breaks (probably mostly in the summer) when we're likely to have more time, and when downtime won't have as detrimental of an impact on users.
  
We have an environmental monitor running at http://10.0.0.98 This is capable of sending email and turning the fan on and off (needs to be set up more intelligently). It responds to SNMP so we can integrate it with Cacti (needs to be done). '''Cacti doesn't support traps, as it's a polling tool. A possible workaround is to have another daemon run that captures traps and writes them somewhere cacti can pick them up, such as syslog. Or, maybe we can just use splunk instead.'''
+
#Server software upgrades
 +
#*Kernel updates, or updates for any software related to critical services, should only be performed during breaks to minimize the inconvenience caused by reboots, or unexpected problems and downtime.
 +
#Run fsck on data volumes
 +
#Clean/Dust out systems
 +
#Rotate old disks out of RAID arrays
 +
#Take an inventory of our server room / computing equipment
  
=== Miscellaneous ===
+
<!--{| cellpadding="5" cellspacing="0" border="1"
* Lepton has problems printing. May just be a print que reset is needed. Matt, can you check this?
+
! Time of Year !! Things to Do !! Misc.
* Roentgen was plugged into one of the non-battery-backup slots of its UPS, so I shut it down and moved the plug. After starting back up, root got a couple of mysterious e-mails about /dev/md0 and /dev/md2: <code>Array /dev/md2 has experienced event "DeviceDisappeared"</code>. However, <code>mount</code> seems to indicate that everything important is around:
+
|-
<pre>
+
| Summer Break || ||
/dev/vg_roentgen/rhel3 on / type ext3 (rw,acl)
+
|-
none on /proc type proc (rw)
+
|  || Major Kernel Upgrades ||
none on /dev/pts type devpts (rw,gid=5,mode=620)
+
|-
usbdevfs on /proc/bus/usb type usbdevfs (rw)
+
|  || Run FDisk ||
/dev/md1 on /boot type ext3 (rw)
+
|-
none on /dev/shm type tmpfs (rw)
+
| || Clean (Dust-off/Filters) while Systems are Shut down ||
/dev/vg_roentgen/rhel3_var on /var type ext3 (rw)
+
|-
/dev/vg_roentgen/wheel on /wheel type ext3 (rw,acl)
+
| Thanksgiving Break || ||
/dev/vg_roentgen/srv on /srv type ext3 (rw,acl)
+
|-
/dev/vg_roentgen/dropbox on /var/www/dropbox type ext3 (rw)
+
| Winter Break || ||
/usr/share/ssl on /etc/ssl type none (rw,bind)
+
|-
/proc on /var/lib/bind/proc type none (rw,bind)
+
|  || Upgrade RAID disks || Upgrade only disks connected to a RAID card
automount(pid1503) on /net type autofs (rw,fd=5,pgrp=1503,minproto=2,maxproto=4)
+
|--
</pre>and all of the sites listed on [[Web Servers]] work. Were those just old arrays that aren't around anymore but are still listed in some config file?
+
| Spring Break || ||  
* Clean out some users who have left a while ago. (Maurik should do this.)
+
|-
* '''Monitoring''': I would like to see the new temp-monitor integrated with Cacti, and fix some of the cacti capabilities, i.e. tie it in with the sensors output from pepper and taro (and tomato/einstein). Setup sensors on the corn/pumpkin. Have an intelligent way in which we are warned when conditions are too hot, a drive has failed, a system is down. 
+
|} -->
* Check into smartd monitoring (and processing its output) on Pepper, Taro, Corn/Pumpkin, Einstein, Tomato.
 
* Decommission Okra. - This system is way too outdated to bother with it. Move Cacti to another system. Perhaps a VM, once we get that figured out?
 
* Decide whether we want to decommission Jalapeno. It is currently not a stable system, and perhaps not worth the effort trying to make it stable. It's only service is Splunk, which can be moved to another system (which?). We could "rebuild" the HW if there is need.
 
* Gourd's been giving smartd errors, namely<code>
 
Offline uncorrectable sectors detected:
 
        /dev/sda [3ware_disk_00] - 48 Time(s)
 
        1 offline uncorrectable sectors detected
 
</code>Okra also has an offline uncorrectable sector!
 
* Continue purgin NIS from ancient workstations, and replacing with files. The following remain:
 
** pauli nodes -- Low priority!
 
* Learn how to use [[cacti]] on okra. Seems like a nice tool, mostly set up for us already. '''Find out why lentil isn't being read by cacti.''' Install the net-snmp package, copy the ''/etc/snmpd/snmpd.conf'' from a working machine to the new one, start the snmpd service. Still not working though. Lentil won't start iptables-netgroups <br/>("Net::SSLeay object version 1.30 does not match bootstrap parameter 1.25 at /usr/lib/perl5/5.8.8/i386-linux-thread-multi/DynaLoader.pm line 253, <DATA> line 225. <br/>Compilation failed in require at /usr/lib/perl5/vendor_perl/5.8.8/IO/Socket/SSL.pm line 17, <DATA> line 225. <br/>BEGIN failed--compilation aborted at /usr/lib/perl5/vendor_perl/5.8.8/IO/Socket/SSL.pm line 17, <DATA> line 225. <br/>Compilation failed in require at /usr/lib/perl5/vendor_perl/5.8.8/Net/LDAP.pm line 156, <DATA> line 225."),<br/> maybe that's why. Lentil and pumpkin have the same Perl packages installed, yet pumpkin doesn't fail at starting the script.
 
 
 
== Ongoing ==
 
=== Documentation ===
 
* '''<font color="red" size="+1">Maintain the Documentation of all systems!</font>'''
 
** Main function
 
** Hardware
 
** OS
 
** Network
 
* Continue homogenizing the configurations of the machines.
 
* Improve documentation of [[Software Issues#Mail Chain Dependencies|mail software]], specifically SpamAssassin, Cyrus, etc.
 
=== Maintenance ===
 
* Check e-mails to root every morning
 
* Resize/clean up partitions as necessary. Seems to be a running trend that a computer gets 0 free space and problems crop up. Symanzik, bohr seem imminent. '''Yup, bohr died. Expanded his root by 2.5 gigs. Still serious monitor problems though, temporarily bypassed with vesa...''' Bohr's problem seems tied to the nvidia drivers, let's wait until the next release and see how those work out.
 
* Check up on security [http://www.redhat.com/docs/manuals/enterprise/RHEL-5-manual/Deployment_Guide-en-US/ch-sec-network.html#ch-wstation]
 
* Clean up Room 202.
 
** Ask UNH if they have are willing/able to recycle/reuse the three CRTs that we have sitting around.
 
 
 
=== On-the-Side ===
 
* See if we can get the busted printer in 322 to work down here.
 
* Learn how to use ssh-agent for task automation.
 
* Backup stuff: We need exclude filters on the backups. We need to plan and execute extensive tests before modifying the production backup program. Also, see if we can implement some sort of NFS user access. '''I've set up both filters and read-only snapshot access to backups at home. Uses what essentially amounts to a bash script version of the fancy perl thing we use now, only far less sophisticated. However, the filtering and user access uses a standard rsync exclude file (syntax in man page) and the user access is fairly obvious NFS read-only hosting.''' <font color="green"> I am wondering if this is needed. The current scheme (ie the perl script) uses excludes by having a .rsync-filter is each of the directories where you want excluded contents. This has worked well. See ~maurik/tmp/.rsync-filter . The current script takes care of some important issues, like incomplete backups.</font> Ah. So we need to get users to somehow keep that .rsync-filter file fairly updated. And to get them to use data to hold things, not home. Also, I wasn't suggesting we get rid of the perl script, I was saying that I've become familiar with a number of the things it does. [http://www.redhat.com/docs/manuals/enterprise/RHEL-5-manual/Deployment_Guide-en-US/ch-acls.html#s2-acls-mounting-nfs] '''Put this on the backburner for now, since the current rate of backup disk consumption will give about 10 months before the next empty disk is needed.'''
 
 
 
== Waiting ==
 
* '''jalapeno hangups:''' Look at sensors on jalapeno, so that cacti can monitor the temp. The crashing probably isn't the splunk beta (no longer beta!), since it runs entirely in userspace. '''lm_sensors fails to detect anything readable. Is there a way around this?''' Jalapeno's been on for two weeks with no problems, let's keep our fingers crossed&hellip;
 
* That guy's computer has a BIOS checksum error. Flashing the BIOS to the newest version succeeds, but doesn't fix the problem. No obvious mobo damage either. What happen? '''Who was that guy, anyhow?''' (Silviu Covrig, probably) The machine is gluon, according to him. '''Waiting on ASUS tech support for warranty info'''  Aaron said it might be power-supply-related. '''Nope. Definitely not. Used a known good PSU and still got error, reflashed bios with it and still got error. '''Got RMA, sending out on wed.''' Waiting on ASUS to send us a working one!''' Called ASUS on 8/6, they said it's getting repaired right now. '''Wohoo! Got a notification that it shipped!''' ...they didn't fix it... Still has the EXACT same error it had when we shipped it to them. '''What should we do about this?''' I'm going to call them up and have a talk, considering looking at the details on their shipment reveals that they sent us a different motherboard, different serial number and everything but with the same problem.
 
* Printer queue for Copier: Konica Minolta Bizhub 750. IP=pita.unh.edu  '''Seems like we need info from the Konica guy to get it set up on Red Hat.  The installation documentation for the driver doesn't mention things like the passcode, because those are machine-specific.  Katie says that if he doesn't come on Monday, she'll make an inquiry.''' <font color="green">Mac OS X now working,  IT guy should be here week of June 26th</font> '''Did he ever come?''' No, he didn't, and did not respond to a voice message left. Will call again.
 
* Pauli crashes nearly every day, not when backups come around. We need to set up detailed system logging to find out why. Pauli2 and 4 don't give out their data via /net to the other paulis. This doesn't seem to be an autofs setting, since I see nothing about it in the working nodes' configs. Similarly, 2,4, and 6 won't access the other paulis via /net. 2,4 were nodes we rebuilt this summer, so it makes sense they don't have the right settings, but 6 is a mystery. Pauli2's hard drive may be dying. Some files in /data are inaccessible, and smartctl shows a large number of errors (98 if I'm reading this right...). Time to get Heisenberg a new hard drive? '''Or maybe just wean him off of NPG&hellip;''' It may be done for; can't connect to pauli2 and rebooting didn't seem to work. Need to set up the monitor/keyboard for it & check things out. '''The pauli nodes are all off for now. They've been deemed to produce more heat than they're worth. We'll leave them off until Heisenberg complains.''' Heisenberg's complaining now. Fixed his pauli machine by walking in the room (still don't know what he was talking about) and dirac had LDAP shut off. He wants the paulis up whenever possible, which I explained could be awhile because of the heat issues.
 
* Sent an email to UNH Property Control asking what the procedure is to get rid of untagged equipment, namely, the two old monitors in the corner. Apparently they want us to fill out lots of information on the scrapping form like if it was paid for with government money, etc, as well as give them serial numbers, model numbers, and everything we can get ahold of. Then, we get to hang onto them until the hazardous equipment people come in and take it out, at their leisure. Waiting to figure out what we want to do with them.
 
 
 
== Completed ==
 
 
 
=== Pumpkin Setup and Xen ===
 
Pumpkin is now stable and the virtual hosts are up and running: Corn, Compton and Fermi. Another vm is "parked", Landau, but can take over another machine if needed (it is fully working.)
 
 
 
<font color="red">'''New problem: Now solved, was config error.'''</font> I set up virtual hosts corn (32-bit RHEL5) and Fermi (64-bit RHEL4), both went fine. I tried installing compton with 32-bit RHEL4, but the installer keeps crashing someway into the install. Most annoying. Instead, I then installed compton "directly" from a backup. This worked (hurray!) EXCEPT, the system seems to occasionally, well is stops responding to the ssh session. No clue what is going on here.
 
 
 
<font color="red">'''Note on RHEL4:'''</font> The RHEL4 system in 32 bit needs to run fully virtual (qemu). It runs plenty fast that way if you use a real disk and not a file. Also note, you can use a partition for a disk instead of a disk in a VM, but it is NOT recommended.
 
 
 
<font color="#CC00CC">'''The Non-answer: It cannot be done!'''</font>This article tells about how to turn a fully virtualized host into a para-virtualized guest, RHEL4, running under an RHEL5 dom0. But in the notes it states that "don't mix and match x86_64 with i686 hosts and visa versa". [http://developer.redhatmagazine.com/2007/01/15/rhel4-testing/ Red Hat Magazine: Xen Guest for Red Hat Enterprise Linux 4]. So we will run Corn fully virtual, which DOES work.
 
 
 
=== The einstein event ===
 
* Einstein is now on new hardware and running stable.
 
* Not yet sure exactly what happened, but on the 7th, starting around 2 AM, root@einstein started receiving cron job errors from the machines, saying "no route to host," "domain not bound," etc. 6:54 AM, mdadm sent a message warning about a degraded array on /dev/md1. At 7:41 AM, both /dev/md0 and /dev/md1 were marked as degraded. At 2:09 PM, einstein sent itself the daily logwatch email, which mentioned a number of lost connections from postfix, and no mdadm messages. From then until 4 AM on the 8th, all machines sent cron errors. At 4 AM, we see gourd list pages of logwatch errors indicating that LDAP was down, while roentgen had a large number of named retry limit errors. At 8 AM, einstein sent mdadm warnings about /dev/md0 and md1 being degraded still. Einstein's logwatch email at 9:30 AM shows LDAP errors in almost every category, as well as ACPI kernel errors. Amavis seems to have been working at that time. At 10:12 AM, clamav on einstein sent email about DNS errors.
 
* Presently, einstein appears to be working fully. It would seem that the degraded array messed up the system more and more as time went on, until everything failed to work properly. This leads me to believe that einstein's hardware, with the exception of the hard drives, is good. I'll set up a number of stress tests to run on old einstein and tomato to try to determine the faulty hardware. '''Good idea to test tomato; it's similar hardware and I'm still suspicious of it after that RAID problem.'''
 
 
 
 
 
=== Weather ===
 
 
 
The fan was turned off and the new airconditioner turned on. Room temperatures have been in the 20-22 C range, which is acceptable. I would like another airco (a working one) in the hole where the fan is now. That setup would be a lot safer, especially when it snows. The airco to put in that hole could come from Lorenzo's office.
 
 
 
== Previous Months Completed ==
 
[[Completed in June 2007|June 2007]]
 
 
 
[[Completed in July 2007|July 2007]]
 
 
 
[[Completed in August 2007|August 2007]]
 
 
 
[[Completed in September 2007|September 2007]]
 
 
 
[[Completed in October 2007|October 2007]]
 
 
 
[[Completed in November/December 2007|NovDec 2007]]
 
 
 
[[Completed in January 2008|January 2008]]
 

Latest revision as of 16:42, 15 February 2015

This is the new Sysadmin Todo List as of 05/27/2010. The previous list was moved to Old Sysadmin Todo List. This list list is incomplete, and needs updating.

Projects

  • Convert physical and VMs to CentOS 6 for compute servers (taro,endeavour) and all others to either 6 or 7.
  • Mailman: Clean up mailman and make sure all the groups and users are in order.
  • CUPS: Look into getting CUPS authenticating users through LDAP instead of using Samba.
  • Printer: Get printtracker.py working and see if you can get a driver to properly recognize page number count instead of just giving the value as a number of 1 which corresponds to a job submission not the number of pages.
  • Check /etc/apcupsd/shutdown2 script on Gourd to make sure all the keys are correctly implemented so the machines go down properly during a power outage.
  • Do a check on Lentil to see if there is any unneccessary data being backed up.

Daily Tasks

These are things that should be done every day when you come into work.

  1. Do a physical walk-through/visual inspection of the server room
  2. Verify that all systems are running and all necessary services are functioning properly
    • For a quick look at which systems are up you can use /usr/local/bin/serversup.py
    • Gourd: Make sure that home folders are accessible, all virtual machines are running
    • Einstein: Make sure that LDAP and all e-mail services (dovecot, spamassassain, postfix, mailman) are running
    • Roentgen: Make sure website/MySQL are available
    • Jalapeno: Named and Cups
    • Lentil: Verify that backups ran successfully overnight. Check space on backup drives, and add new drives as needed.
  3. Check Splunk: click here if you're in the server room, or open localhost:8000 (use https) from Pumpkin
    • Check logs for errors, keep an eye out for other irregularities.
  4. Check Cacti: http://roentgen.unh.edu/cacti
    • Verify that temperatures are acceptable.
    • Monitor other graphs/indicators for any unusual activity.

Weekly Tasks

These are things that should be done once every 7 days or so.

  1. Check physical interface connections
    • Verify that all devices are connected appropriately, that cables are labeled properly, and that all devices (including RAID and IPMI cards) are accessible on the network.
  2. Check Areca RAID interfaces
    • The RAID interfaces on each machine are configured to send e-mail to the administrators if an error occurs. It may still be a good idea to login and check them manually on occasion as well, just for the sake of caution.
  3. Clean up the server room, sweep the floors.

Monthly Tasks

  1. Perform scheduled maintenance on the server room air conditioning units.
  2. Check S.M.A.R.T. information on all server hard drives
    • Make a record of any drives which are reporting errors or nearing failure.

Annual Tasks

These are tasks that are necessary but not critical, or that might require some amount of downtime. These should be done during semester breaks (probably mostly in the summer) when we're likely to have more time, and when downtime won't have as detrimental of an impact on users.

  1. Server software upgrades
    • Kernel updates, or updates for any software related to critical services, should only be performed during breaks to minimize the inconvenience caused by reboots, or unexpected problems and downtime.
  2. Run fsck on data volumes
  3. Clean/Dust out systems
  4. Rotate old disks out of RAID arrays
  5. Take an inventory of our server room / computing equipment