Almost 1234567890

OMFG, if it hadn’t been for my friend Maitri I would have completely missed the UNIX timestamp becoming 1234567890. It isn’t too late, though, to script a recursive: perl -e ‘print time(),”n”‘ and witness computing history. 🙂 That’s a lot of seconds since midnight on January 1, 1970.

Quality Machine Names

I don’t know about you, but shortly after I hear a cool term I think, “that would be a good machine name.” The most recent instance of this is “cloaca,” Latin for “sewer.” Quality subversive machine names are so hard to find.

Quit Solving Problems That Don't Exist

It seems to me like a lot of time, effort, and money is spent on what-if scenarios. I am always amazed at how much drama and complexity people create for themselves. Some examples from my life, with the answers I usually give: Q: What if a customer wants to do something that we don’t want them to do? A: Simple: don’t let them. You could also write them a note about why you don’t want them to do that (risks, not much financial sense, etc.) and let them do whatever they want. You can’t babysit everybody, and as long as their bad decision isn’t going to take you out with them you’re fine. Q: What if we decide later to …

Read More

How To Grow Linux Virtual Disks in VMware

There is plenty of documentation for how to grow a VMware virtual disk file (VMDK), but there doesn’t seem to be a lot of documentation for Linux users who A) are using LVM and B) have aligned their partitions for performance reasons. I was asked how to do this and I thought I’d post it here for everybody. I basically have two suggestions. One is straightforward but you end up with two partitions in your volume group. The other is a little scarier but you’ll have only one partition in the end. This last method is what I was asked about, and what I’ll go into detail explaining. Obligatory, seemingly obvious statement: have a backup of your system. This is …

Read More

A Glitch in the Matrix

That leap second in action, as seen in by a Linux box observing Central Standard Time (-0600): According to my friend Jon the BBC had advertised that it would have six pips at the top of the hour, instead of the standard five, but instead chose to play Big Ben (which had been properly calibrated earlier). It’s interesting that some things so abstract, like the precise speed of the rotation of the Earth and relativity, now directly affect our daily lives… even if only a few people actually notice. Wired ran an article last year about amateur time hackers who pick up surplus atomic clocks (“frequency references”) and use them to run NTP servers and prove relativity (by taking them …

Read More

Leap Second

Dave Jones’ post reminded me that tonight we have a leap second. 23:59:59 will be followed by 23:59:60. Wikipedia saves me the trouble of explaining why: Leap seconds are necessary because time is measured using stable atomic clocks (TAI or International Atomic Time), whereas the rotation of Earth slows down continually, though at a slightly variable rate. Originally, the second was defined as 1/86400 of a mean solar day (see solar time) as determined by the rotation of the Earth around its axis. By the middle of the 20th century it was apparent that the rotation of the Earth did not provide a sufficiently uniform time standard and in 1956 the second was redefined in terms of the annual orbital …

Read More

If It Ain't Broke Then Today Is Not The Day To Fix It

“What are you up to today?” a friend asks. It’s the Friday of the week before Christmas, and everybody is taking most of the next week off. “Not much, just doing some paperwork and writing stuff. I can’t really start anything — everything on my to-do list runs the risk of breaking something.” “Everything? There’s got to be some small stuff you can do.” “Yeah, but the small stuff is on large, complex systems. You ever have a fish tank?” “Nope, just cats.” “Fish tanks have this thing called the nitrogen cycle. You feed the fish, they crap, bacteria eats the crap, eventually turns it into nitrates, and plants in the tank fertilize themselves with it. Fish eat the plants, …

Read More

Load Average On Linux

By themselves, load averages on Linux are not an indication of CPU utilization. Classically, UNIX systems have calculated the load average by counting the number of processes that are either running on the CPU or runnable (ready & waiting for a CPU to run them). Linux does this, but it also counts the number of processes in uninterruptable sleep. Uninterruptable sleep usually means a process is blocking on I/O (waiting for disk, etc.). As such, you can’t really use a Linux host’s load average to determine the CPU utilization of the host. If the load is high you might have an I/O problem instead of a CPU bottleneck. Then you need tools like vmstat, top, iostat, etc. to tell you …

Read More

Problems

I was called last night by my NOC staff to resolve a problem. I don’t remember what time it was, just that my phone rang and I answered it. It was like a dream, with VPNs and shell prompts. On my way back to sleep I was thinking about problem resolution, and that there really are two phases to it. First, you get the immediate problem fixed. Then you make sure it won’t happen again. The trouble with this is that very few organizations get around to the “making sure it won’t happen again” part. It’s hard and time-consuming to track down the root cause of a problem. It’s hard to make changes to help prevent it. Heck, maybe you …

Read More

Abstraction is Your Friend

It continues to amaze me how many system administrators don’t use the layers of abstraction available to them, via tools like DNS, or even just naming a service. Example #1: a web site with a blog, where the blog is at /wordpress instead of /blog. What happens in five years when you have 50,000 readers and want to switch to another software package? Do you really want to maintain clumsy redirects from /wordpress/feed/ for the rest of your natural life? Don’t name your service after the software brand name or manufacturer, name it after what the service is. It’s a blog, not WordPress. It’s the payroll system, not Kronos. Example #2: naming a server “payroll.company.com” because it runs the payroll …

Read More