I keep seeing parallels and overlapping functionality between various programs. systemd overlaps with cron (envisioned, not yet implemented, I think), and the session manager. I think package management would integrate usefully with systemd. I've been reading up on cfengine. It also overlaps with cron and the package manager.
I want to bring together many of the good ideas I've found on the interwebs into one well integrated system. I'd thought to start from the kernel level and build up, but now it occurs to me that I can start with something akin to OpenQRM and work down through the package manager and init system to the kernel.
Wednesday, July 07, 2010
Tuesday, July 06, 2010
I have found managing a small handful of servers with a slightly larger handful of services that they need to provide. From time to time I need to add a service without adding a server. While at the outset the idea seemed simple, the realization turns out to be somewhat problematic. The problem is that it can be difficult to recall exactly what each server is doing, and to imagine all the problems that might crop up if you change something. Virtualization offers an appealing approach to managing this. Unfortunately, only the very newest of the servers I'm managing supports virtualization, and it has already been put to use.
There are a number of other issues that come up. It's a little silly having the same user account across all the servers, and is somewhat inflexible; a kerberos system would be nice here, but stresses the allocation of resources further. Additionally, making good use of hard drives and drive bays between these servers is non trivial. A storage virtualization system would be nice. Perhaps a cluster filesystem that spans all the drives in the network, using and providing storage as needed with extreme flexibility.
cfengine offers an interesting approach to dealing with services with forgotten requirements that you're afraid to touch. cfengine allows you to specify 'promises' that your systems are supposed to keep. It sounds as though this is a perfect solution for this problem. I still need to investigate further - I'm working off my interpretation of a small quantity of documentation.
OpenQRM offers exactly what I've always wanted for managing my few servers - dhcpd + tftpd + nfs/iscsi/aoe + lvm, all in one convenient bundle. Unfortunately it doesn't deliver. Besides having an unfortunately complicated interface (to be fair, it could be much, much worse), I can't for the life of me get the stupid thing to do anything useful.
I'm still sorting out some ideas, and I think attempting an implementation will be the best way to figure this out, but it seems to me that there is significant similarity between the functionality of cfengine and OpenQRM. I just want managing my servers to be easy. Why can't it be easy?
There are a number of other issues that come up. It's a little silly having the same user account across all the servers, and is somewhat inflexible; a kerberos system would be nice here, but stresses the allocation of resources further. Additionally, making good use of hard drives and drive bays between these servers is non trivial. A storage virtualization system would be nice. Perhaps a cluster filesystem that spans all the drives in the network, using and providing storage as needed with extreme flexibility.
cfengine offers an interesting approach to dealing with services with forgotten requirements that you're afraid to touch. cfengine allows you to specify 'promises' that your systems are supposed to keep. It sounds as though this is a perfect solution for this problem. I still need to investigate further - I'm working off my interpretation of a small quantity of documentation.
OpenQRM offers exactly what I've always wanted for managing my few servers - dhcpd + tftpd + nfs/iscsi/aoe + lvm, all in one convenient bundle. Unfortunately it doesn't deliver. Besides having an unfortunately complicated interface (to be fair, it could be much, much worse), I can't for the life of me get the stupid thing to do anything useful.
I'm still sorting out some ideas, and I think attempting an implementation will be the best way to figure this out, but it seems to me that there is significant similarity between the functionality of cfengine and OpenQRM. I just want managing my servers to be easy. Why can't it be easy?
Subscribe to:
Posts (Atom)