Recent PhotosCalendarQuicksearch |
Friday, July 28. 2006The SPI election results are in
The results are in. Bruce was removed from the board, and Josh Berkus, Neil McGovern, and Michael Schultheiss were added. (Neither Mako nor I sought another term.)
Congratulations to the winners -- I'm sure you will go far. I'm glad to see enthusiastic people around SPI and I'm sure you'll do a great job. Wednesday, July 26. 2006
Posted by John Goerzen
in Software at
18:44
Comments (27) Trackbacks (0) Defined tags for this entry: cfengine, configuration management
Thoughs on cfengine, bcfg2, and puppet
Yesterday I posted about my first steps with cfengine. By the end of the day today, I had things far along that I can:
Very nice. I've had a few annoyances with the cfengine packages support, which doesn't quite seem to work as documented al the time. I also took a look at bcfg2 thanks to a comment yesterday. It looks very interesting, but I have a few gripes about it. I find cfengine files easier to read. I can look at a file, having never used cfengine before, and have a reasonable idea of what is trying to be done and how it will be accomplished. I can't say the same for bcfg2, plus bcfg2 uses XML config files (ick) and a bunch of small otherfiles. While the architecture as the authors have described it certainly sounds appealing, I'm not sure that bcfg2 is a simple as cfengine. I am a strong believer in the KISS (Keep It Simple, Stupid) principle. But THANKS to the person that left the comment, and I hope that bcfg2 continues to evolve and provide an alternative to cfengine. I also looked at Puppet. This thing looks very slick. Seems to be cfengine with a nicer syntax. On the other hand, it's not really clear that anybody is using it. That makes me nervous -- this is the kind of thing that can seriously harm machines if it does something unexpected. Tuesday, July 25. 2006
Posted by John Goerzen
in Software at
18:36
Comments (6) Trackback (1) Defined tags for this entry: cfengine
First steps with cfengine
This afternoon I started looking at cfengine. In very little time, I've already set up rules that can bring a system from pretty much cdebootstrap state up to a minimal production system in our environment. I've still got a little ways to go, but it's already hacking on /etc/hosts, hosts.deny, sources.list, installing appropriate Debian packages for our systems, etc.
It's come a long way since I last looked at it six years ago. One thing I can't figure out... I have a /etc/bacula/bacula-fd.conf file that contains, among other things, this:
I can't figure out how to make cfengine delete just that second section. I tried this:
But it seems that the pointer is never actually being decremented, even when examined under verbose mode. That is, it leaves the leading "Director {" line in the file. Friday, July 21. 2006An additional RedHat Gripe
Debian base install: about 150MB
RHEL base install: about 1GB df showing 1% of disk used: priceless Friday, July 21. 2006RedHat Gripes
Lately we are looking at groupware options, and have been looking at Scalix and Zimbra. We may need the features in the proprietary versions of these products, unfortunately.
So I downloaded an evaluation copy of Scalix. They say they support RedHat and SuSE. Fine, I think, I'll just alien the RPMs to debs and be happy. Not so fast. They have a whole proprietary install system. They check for /etc/redhat_release or /etc/SuSE_release (or something like that) and do different things depending on what is there. Ugh. Why can't these proprietary vendors just target LSB? The differences seem mostly related to init anyway. So I touch /etc/SuSE_release into existence, run the installer again. It complains that DISPLAY is not set. UGH. I log in with ssh forwarding, to root (sigh), and run it again. Now it complains that the SuSE_release file doesn't contain a valid release. I google a bit, but the file format doesn't seem to be documented anywhere. I extract it from an RPM somewhere, but no luck. So, I figure at this point, let's try an actual RPM distro. I'm running this in a Xen domain anyway, so it should be no big deal, right? I think CentOS will be a good choice. It's RHEL with the non-free stuff stripped out. And they support RHEL and don't need any non-free stuff. I google, and find instructions for installing via rpmstrap for Xen uses. Let me say, rpmstrap is not nearly the nice tool that cdebootstrap is. rpmstrap totally hosed the networking on the Xen host machine, requiring me to reboot to get it back to proper state. The resulting install wouldn't boot, either -- I later found out that, even though I listed explicit devices in /etc/fstab like usual, it requires labels on all my partitions to boot. Ugh. There are a host of other problems with the rpmstrap-installed chroot, and it's broken beyond my ability to repair due to problems with the rpm database. So then I downloaded the "Server" CD for CentOS, which is supposed to have just the stuff a person would need for a server, and leave off all the graphical tools, multimedia, etc. I fired up VMware and did an install. Then I booted Debian From Scratch in VMware and used tar and netcat to copy the installed image over to Xen. I got it booting fairly easily. But now I start to remember why I had this instinctive gag reflex last time I used RHEL. First off, the network configuration, by default, is tied to the MAC address of your ethernet card. So if you replace your Ethernet card, your network is broken by default. Then, there's the way the network is brought up. It uses arping as part of its procedure to bring up a NIC. If it sees a reply anywhere on the network with the IP you're trying to assign, it leaves the NIC half-up -- it's been ifconfig'd up, but without an IP. So that's right, if somebody happens to have a rogue device plugged in at the moment your server boots, your server will come up without a network configured. This is *Enterprise* Linux and it's pulling this sort of thing. Terrible design. Next, there's the way the network is *configured*. There are commands such as system-config-network-tui, -gui, -cmd, -druid, etc. I go for -tui. to start with. It's a dialog-like interface, and asks the basics like IP address, etc. It doesn't have any way to configure more than one Ethernet card that I can tell. And some of the settings -- like nameserver -- apparently require you to press F12 to visit. But the program doesn't recognize F12 as sent by an xterm, so it doesn't work. All the other options require X. So, I reluctantly ssh -X into it as root and run system-config-network-gui. It doesn't work -- complains it can't find DISPLAY. Strange, I think; DISPLAY is set properly to localhost:whatever. It turns out that /etc/hosts is empty by default, so the thing can't resolve localhost! Argh. I add a line to /etc/hosts and it fires up. This tool works decently. I save, uncheck the tie to a MAC address box, and exit. I then think it might be good to fire it up again and see what it did. I try running it again, and get the same error about DISPLAY. The stupid tool blew away /etc/hosts and replaced it with an empty file! This is NOT what I would expect from an Enterprise Linux. You don't blow away a config file the administrator touched without asking, EVER. Next, I figure, let's try installing the XFS tools so I can switch the root filesystem to xfs. I start with "yum update", which doesn't quite do what I expect. (It is more like apt-get update && apt-get -u dist-upgrade) So I hit Ctrl-C, but -- surprise -- IT DOESN'T WORK. I press it a few more times, and it seems to just make the downloader cycle through mirrors because of a "download error". So I hit Ctrl-Z and kill %1. I have my prompt, but it's STILL DOWNLOADING STUFF and spewing all over my console. Ugh. I finally use ps and kill -9 and eventually get it killed off. Stupid thing. I don't understand why anybody would want to use RedHat Enterprise Linux in an enterprise. It seems more suited to a hobbyist system at home. From reading some forums, it seems there are quite a few people out there using Debian for enterprise systems for similar reasons. So now, maybe I'll have the chance to actually try Scalix. (BTW, our intern got Zimbra installed on Debian just fine, so that's a plus for it.) Tuesday, July 18. 2006Multipath is working
Yesterday, we got multipath working with our HP MSA1500cs SAN. We have a fully redundant setup with redundant controllers, fibre channel switches, and two FC controllers per host.
We had been having a lot of trouble getting things to work right with active/passive controllers. We could get failover to work in some cases, but getting everything to communicate correctly in the event of a failure was difficult, since every machine would have to flip over to the passive controller simultaneously. With a firmware upgrade, the MSA 1500cs can support active/active controllers. With the dual-active setup, both controllers are active simultaneously and both are valid paths. Despite HP support's indications to the contrary, HP does have information on using built-in multipathd in Linux instead of their proprietary multipath solution. It's document c00635587, part AA-RW8RA-TE. We've configured multipathd.conf like this:
Just put that in your default block and it should work. Wednesday, July 12. 2006Announcing hpodder
Today I'm finally announcing hpodder.
I've been trying different podcatchers in Linux, and have been generally unhappy. ipodder looked nice at first, but turned out to be horribly buggy. bashpodder/podracer looked like a nice idea. However, it didn't have enough flexibility for me, its XML parser has some well-known failures (it's not a real XML parser, after all), etc. So I wrote hpodder. hpodder is a command-line podcast downloader for Linux. It features:
You can download a source tarball, or apt-get install hpodder if you run Debian sid. hpodder is written in Haskell, and calls the curl and id3v2 binaries. It uses the Sqlite3 library and my HDBC database interface for Haskell. But you'd never need to know or care about that unless you're a programmer. In future hpodder versions, I intend to improve the download status display, add last-seen date tracking, and add multithreaded downloading. Saturday, July 8. 2006
Posted by John Goerzen
in Software at
08:47
Comments (9) Trackbacks (0) Defined tags for this entry: security
Why Is Expensive Software So Crappy?
Today I was listening to Gary McGraw on Frontline Security talking about software security. One of his points was that a large part of security trouble is poor design.
That reminds me how I've been meaning to rant a bit about the really terrible security I've seen in proprietary software lately. Some of this is very expensive software that people pay lots of money for.
Sigh. Although I've seen some poor code out there in the Free Software community, I've never seen anything that even approaches this level of insanity. Why is the most expensive software the least secure? And what can we do about it when the vendor doesn't care? |
The ChangelogMost Popular Tags bicycling, CentOS, christmas, darcs, Debian, debian, emacs, farm, git, haskell, health, home, jacob, kansas, mercurial, moving, music, oscon oscon07 oscon2007, renovation, serendipity, tech support, trac, trains, Tuttle, typewriter, vcs, version control, vim, weather, web hostingSyndicate This BlogBlog Administration |

Comments
Thu, 09.10.2008 15:39
Well said John! I read your bl og from Planet Haskell, but as a young voter I agree with yo u 100%. Thanks for the e [...]
Sun, 05.10.2008 20:40
There is no denying that there have been plenty of people th at have killed in the name of Christianity. That does [...]
Sun, 05.10.2008 18:34
I think the formula you wanted is git format-patch $(git rev-list HEAD | tail -1)
Sun, 05.10.2008 14:23
I know it sounds nice to you, but, Christianity means an opp ressive, theocratic, brutal, b loody regime to many of [...]
Sat, 04.10.2008 23:47
I agree that there must be sen sible limits on government exp enditure, for sure. Healthc are is one of those wher [...]
Sat, 04.10.2008 23:43
Not at all, and I completely a gree with you. But I wanted to stress that part, because not everyone does.
Sat, 04.10.2008 23:41
Hi Cliff, I agree with you that the "they take jobs Ameri cans won't" argument doesn't m ake sense. I also agree [...]
Sat, 04.10.2008 17:26
I always worry when people cla im their ethics are founded on religious tenets, since most religions have a lot of [...]