* [gentoo-server] Best practices in managing large server groups @ 2007-05-20 18:29 Charles Duffy 2007-05-20 20:20 ` Nicolas MASSE ` (3 more replies) 0 siblings, 4 replies; 35+ messages in thread From: Charles Duffy @ 2007-05-20 18:29 UTC (permalink / raw To: gentoo-server [Apologies if this is a duplicate post; I tried posting this through GMANE yesterday without subscribing first, and it appears not to have gone through; likewise when I posted several hours ago today from a different address than the one I subscribed]. All, I'm looking at replacing SuSE SLES9 with Gentoo for an enterprise application (for reasons of flexibility and licensing) (no, we don't have an enterprise application budget -- just the reliability requirements; yaaay, startups!). We're looking to be able to deploy and manage hundreds of geographically distributed servers. We have a QA department available to vet each configuration before it is deployed to the field. We have infrastructure for tracking the progress of code in svn from creation though QA to deployment; I'm anticipating tracking a local overlay (containing all packages we use), make.conf, /etc/portage/*, etc. through this system, autobuilding system images (either to run virtualized or on real hardware) from the contents of svn, building binary packages and deploying them to real hardware. I'm interested in best practices, suggested tools, and/or 3rd party experiences in this regard. Some particular questions which come to mind: - Should I be using a custom profile or a standard profile with overrides through make.conf, /etc/portage/* and the like? - What's the Right Way to create new system images ready to be loaded onto a hard drive or run through a virtual machine? gentoo-buildhoster looks interesting. I've seen Catalyst mentioned as a way to create stage3 images, but what documentation I've been able to find doesn't seem very much targeted for my use cases. - Any experiences with puppet? With out ratio of servers to staff, automating configuration and administration is a priority. (We already have an internal tool written with automating the server configuration process in mind; it has some functionality puppet doesn't, and puppet has functionality it doesn't; in theory, I'd like to extend puppet until our internal tool becomes unnecessary, though I'll need to understand puppet much better before I can think too hard about that). - Have any of 'yall been in the 100s-of-servers situation with comparable requirements and come up with a different approach to managing it? How did things work out? Thank you! -- gentoo-server@gentoo.org mailing list ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [gentoo-server] Best practices in managing large server groups 2007-05-20 18:29 [gentoo-server] Best practices in managing large server groups Charles Duffy @ 2007-05-20 20:20 ` Nicolas MASSE 2007-05-20 20:34 ` Charles Duffy 2007-05-20 21:25 ` Ramon van Alteren ` (2 subsequent siblings) 3 siblings, 1 reply; 35+ messages in thread From: Nicolas MASSE @ 2007-05-20 20:20 UTC (permalink / raw To: gentoo-server, Charles Duffy Quoting Charles Duffy <cduffy@spamcop.net>: > [Apologies if this is a duplicate post; I tried posting this through > GMANE yesterday without subscribing first, and it appears not to have > gone through; likewise when I posted several hours ago today from a > different address than the one I subscribed]. > > All, > > I'm looking at replacing SuSE SLES9 with Gentoo for an enterprise > application (for reasons of flexibility and licensing) (no, we don't > have an enterprise application budget -- just the reliability > requirements; yaaay, startups!). We're looking to be able to deploy and > manage hundreds of geographically distributed servers. > > We have a QA department available to vet each configuration before it is > deployed to the field. We have infrastructure for tracking the progress > of code in svn from creation though QA to deployment; I'm anticipating > tracking a local overlay (containing all packages we use), make.conf, > /etc/portage/*, etc. through this system, autobuilding system images > (either to run virtualized or on real hardware) from the contents of > svn, building binary packages and deploying them to real hardware. > > I'm interested in best practices, suggested tools, and/or 3rd party > experiences in this regard. I have absolutely no experience with this, but during one of my training courses, I found the following document : - http://www.fernhilltec.com.au/~adrian/kara/kara.html Maybe, it could give some ideas... Nicolas. ---------------------------------------------------------------- This message was sent using IMP, the Internet Messaging Program. -- gentoo-server@gentoo.org mailing list ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [gentoo-server] Best practices in managing large server groups 2007-05-20 20:20 ` Nicolas MASSE @ 2007-05-20 20:34 ` Charles Duffy 0 siblings, 0 replies; 35+ messages in thread From: Charles Duffy @ 2007-05-20 20:34 UTC (permalink / raw To: Nicolas MASSE; +Cc: gentoo-server Nicolas MASSE wrote: > I have absolutely no experience with this, but during one of my > training courses, I found the following document : > - http://www.fernhilltec.com.au/~adrian/kara/kara.html Thank you for the pointer; the document was worth a readthrough. That said, puppet provides a superset of kara's capabilities, is very actively maintained, and supports Gentoo as a target platform. Obviously, I'm looking for feedback here -- so if someone has tried working with puppet and found it inadequate it some respect or in need of further extensions, I'd love to hear about it -- but I think I'm fairly comfortable with my selection on that particular piece of the toolage. Initial system setup (as opposed to post-install maintenance) is somewhat more of an open question, particularly in the context of desiring complete reproducibility. -- gentoo-server@gentoo.org mailing list ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [gentoo-server] Best practices in managing large server groups 2007-05-20 18:29 [gentoo-server] Best practices in managing large server groups Charles Duffy 2007-05-20 20:20 ` Nicolas MASSE @ 2007-05-20 21:25 ` Ramon van Alteren 2007-05-21 9:04 ` Ronan Mullally 2007-05-21 23:11 ` Ramon van Alteren 2007-05-22 12:58 ` Tomasz Szymczak 3 siblings, 1 reply; 35+ messages in thread From: Ramon van Alteren @ 2007-05-20 21:25 UTC (permalink / raw To: gentoo-server Charles Duffy wrote: > I'm looking at replacing SuSE SLES9 with Gentoo for an enterprise > application (for reasons of flexibility and licensing) (no, we don't > have an enterprise application budget -- just the reliability > requirements; yaaay, startups!). We're looking to be able to deploy and > manage hundreds of geographically distributed servers. We're using gentoo and managed to scale from 1 server to 600servers. > > Some particular questions which come to mind: > - Should I be using a custom profile or a standard profile with > overrides through make.conf, /etc/portage/* and the like? We currently use a standard profile and override if necessary. > - What's the Right Way to create new system images ready to be loaded > onto a hard drive or run through a virtual machine? gentoo-buildhoster > looks interesting. I've seen Catalyst mentioned as a way to create > stage3 images, but what documentation I've been able to find doesn't > seem very much targeted for my use cases. We''re using a combination of catalyst, pxe and the cli-installer from agaffney which we extended to support our configuration database. catalyst stage4 works fine for us and enables us to repeat build our system images. Additionally we use the packages generated by catalyst as input for our binary package server. We're currently looking into the tinderbox target to use catalyst to validate new packages on existing system images. After installing we use a grub config file which allows us to reinstall over pxe very easily. > - Any experiences with puppet? With out ratio of servers to staff, > automating configuration and administration is a priority. (We already > have an internal tool written with automating the server configuration > process in mind; it has some functionality puppet doesn't, and puppet > has functionality it doesn't; in theory, I'd like to extend puppet until > our internal tool becomes unnecessary, though I'll need to understand > puppet much better before I can think too hard about that). Puppet works fine for us, we used to run our own scripts for configuration stuff but that grew too complex and hard to extend. We're currently converting to puppet and actually just finished converting our web farm to puppet-controlled hosts. Stability is sometimes an issue and we are actively looking for scalability issues with our current setup but overall we're extremely happy with the tool. Ramon -- gentoo-server@gentoo.org mailing list ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [gentoo-server] Best practices in managing large server groups 2007-05-20 21:25 ` Ramon van Alteren @ 2007-05-21 9:04 ` Ronan Mullally 2007-05-21 13:44 ` Thilo Bangert 2007-05-21 15:10 ` Karl Holz 0 siblings, 2 replies; 35+ messages in thread From: Ronan Mullally @ 2007-05-21 9:04 UTC (permalink / raw To: gentoo-server On Sun, 20 May 2007, Ramon van Alteren wrote: > We''re using a combination of catalyst, pxe and the cli-installer from > agaffney which we extended to support our configuration database. > catalyst stage4 works fine for us and enables us to repeat build our > system images. Additionally we use the packages generated by catalyst as > input for our binary package server. We're currently looking into the > tinderbox target to use catalyst to validate new packages on existing > system images. To add another string to this thread... I've been using Gentoo on a small number of machines for several years. Each server is managed individually with its own portage tree, etc. None of the boxes are true production boxes. I've held off on using Gentoo in larger deployments because the idea of putting a C compiler on a production box is just silly. I've been meaning to get to the bottom of this for a while, but never had the time or incentive. Does a multi-server gentoo install require a portage tree and gcc on each box? I know you can configure a BINHOST server in make.conf, but that won't stop the install process requiring gcc as part of the profile. Injecting a dummy stub for gcc will probably get around that, but I can't see how removing the portage tree is possible. Granted, in a large deployment that's not really an issue, /usr/portage can be NFS-mounted from a central source. In a more distributed environment however (central management server, widely distributed production servers) that's not ideal. I suspect they way around the gcc question is to use a profile which doesn't have gcc as a base system dependancy. Does such a profile exist, or is does one have to roll their own? Is there a way to run gentoo without a portage tree on each box? -Ronan -- gentoo-server@gentoo.org mailing list ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [gentoo-server] Best practices in managing large server groups 2007-05-21 9:04 ` Ronan Mullally @ 2007-05-21 13:44 ` Thilo Bangert 2007-05-21 14:30 ` Ronan Mullally 2007-05-21 15:10 ` Karl Holz 1 sibling, 1 reply; 35+ messages in thread From: Thilo Bangert @ 2007-05-21 13:44 UTC (permalink / raw To: gentoo-server [-- Attachment #1: Type: text/plain, Size: 245 bytes --] > I've held off on using Gentoo in larger deployments because the idea of > putting a C compiler on a production box is just silly. why? some production quality software _requires_ a compiler to run. http://varnish.projects.linpro.no/wiki/FAQ [-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --] ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [gentoo-server] Best practices in managing large server groups 2007-05-21 13:44 ` Thilo Bangert @ 2007-05-21 14:30 ` Ronan Mullally 2007-05-21 14:36 ` Arturo 'Buanzo' Busleiman 0 siblings, 1 reply; 35+ messages in thread From: Ronan Mullally @ 2007-05-21 14:30 UTC (permalink / raw To: gentoo-server On Mon, 21 May 2007, Thilo Bangert wrote: > > I've held off on using Gentoo in larger deployments because the idea of > > putting a C compiler on a production box is just silly. > > why? > > some production quality software _requires_ a compiler to run. > http://varnish.projects.linpro.no/wiki/FAQ As do many rootkits. If somebody gets local access to a server with a suite of development tools they're well on their way to rooting the box. Removing these tools is simply a good example of security in depth. -Ronan -- gentoo-server@gentoo.org mailing list ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [gentoo-server] Best practices in managing large server groups 2007-05-21 14:30 ` Ronan Mullally @ 2007-05-21 14:36 ` Arturo 'Buanzo' Busleiman 2007-05-21 14:53 ` Ronan Mullally 0 siblings, 1 reply; 35+ messages in thread From: Arturo 'Buanzo' Busleiman @ 2007-05-21 14:36 UTC (permalink / raw To: gentoo-server -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 Ronan Mullally wrote: > As do many rootkits. If somebody gets local access to a server with a > suite of development tools they're well on their way to rooting the box. > Removing these tools is simply a good example of security in depth. You just slow the attack a little bit by removing the compiler. The attacker will probably use statically linked binaries, or compile somewhere else. Most rootkits do not depend on external libraries, neither, except for kernel modules, of course, that depend on the kernel's source. But, of course, if they got access to the box, then the compiler is the least of your problems at that time, but I have to admit that the "slowing the attacker down" is an extra layer of protection. It provides the sysadmins/users/monitoring software more time to detect the breach. - -- Arturo "Buanzo" Busleiman - Consultor Independiente en Seguridad Informatica OpenPGP for HTTP: New Web-Auth Scheme: http://freshmeat.net/articles/view/2599 Consulting and Secure Mail Hosting: http://www.buanzo.com.ar/pro/ -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.7 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFGUa54AlpOsGhXcE0RCv2JAJ9FBW3UVp/LHa0utGFAcjSoD94fVwCeINiK 94XbD11OieY31dQM6M4/URY= =4HBQ -----END PGP SIGNATURE----- -- gentoo-server@gentoo.org mailing list ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [gentoo-server] Best practices in managing large server groups 2007-05-21 14:36 ` Arturo 'Buanzo' Busleiman @ 2007-05-21 14:53 ` Ronan Mullally 2007-05-21 15:01 ` Arturo 'Buanzo' Busleiman ` (2 more replies) 0 siblings, 3 replies; 35+ messages in thread From: Ronan Mullally @ 2007-05-21 14:53 UTC (permalink / raw To: gentoo-server On Mon, 21 May 2007, Arturo 'Buanzo' Busleiman wrote: > But, of course, if they got access to the box, then the compiler is the > least of your problems at that time, but I have to admit that the > "slowing the attacker down" is an extra layer of protection. It provides > the sysadmins/users/monitoring software more time to detect the breach. Removing development tools is one of just a range of security measures. It is by no means the be-all and end-all of security - hence my mention of security in depth. There are easily a couple of dozen security measures I implement when installing a box. Removing development tools (or in most cases, never installing them) is just one of them, but we diverge... Back to the original question. How do I run a number of gentoo boxes without gcc (or a portage tree)? -Ronan -- gentoo-server@gentoo.org mailing list ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [gentoo-server] Best practices in managing large server groups 2007-05-21 14:53 ` Ronan Mullally @ 2007-05-21 15:01 ` Arturo 'Buanzo' Busleiman 2007-05-21 15:28 ` Christian Bricart 2007-05-22 4:19 ` Justin Cataldo 2007-05-22 4:59 ` Brian Kroth 2 siblings, 1 reply; 35+ messages in thread From: Arturo 'Buanzo' Busleiman @ 2007-05-21 15:01 UTC (permalink / raw To: gentoo-server -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 Ronan Mullally wrote: > Back to the original question. How do I run a number of gentoo boxes > without gcc (or a portage tree)? WIll sound like a joke, but my answer would be "without running gentoo". It's a source-based distro. There are some binary distros that are created from portage (sadly, I can only recall the argentinian one, Ututo, but I don't know if it is alive). - -- Arturo "Buanzo" Busleiman - Consultor Independiente en Seguridad Informatica OpenPGP for HTTP: New Web-Auth Scheme: http://freshmeat.net/articles/view/2599 Consulting and Secure Mail Hosting: http://www.buanzo.com.ar/pro/ -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.7 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFGUbRAAlpOsGhXcE0RCtPXAJ4jkTrMY1FXmHgOFsZDOnHfnSVvVACdG2wO ld4jsx8vexRI4yJoKCFWvy4= =PfXB -----END PGP SIGNATURE----- -- gentoo-server@gentoo.org mailing list ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [gentoo-server] Best practices in managing large server groups 2007-05-21 15:01 ` Arturo 'Buanzo' Busleiman @ 2007-05-21 15:28 ` Christian Bricart 2007-05-21 15:54 ` Arturo 'Buanzo' Busleiman 0 siblings, 1 reply; 35+ messages in thread From: Christian Bricart @ 2007-05-21 15:28 UTC (permalink / raw To: gentoo-server Arturo 'Buanzo' Busleiman wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA512 > > Ronan Mullally wrote: >> Back to the original question. How do I run a number of gentoo boxes >> without gcc (or a portage tree)? > > WIll sound like a joke, but my answer would be "without running gentoo". > It's a source-based distro. > .. nonsense - of course you're able to maintain your own $BINHOST which compiles the packages (--buildpkg[only]) and have other servers in your farm that have the same $arch and USE-flags and use "emerge --{get,use}binpkg .." on them http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=2&chap=3#doc_chap4 then actually you only need "tar" and "b[un]zip2" on the target. remark: add those keys to $FEATURES in /etc/make.conf and tweak the servers' repository links to your local buildhost(s) and Portage mirrors... Works like charm here - I've got a central host here to build all packages for identically configured cluster hosts that (e)merge the pre-built packages. It's quite a time saver Christian -- gentoo-server@gentoo.org mailing list ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [gentoo-server] Best practices in managing large server groups 2007-05-21 15:28 ` Christian Bricart @ 2007-05-21 15:54 ` Arturo 'Buanzo' Busleiman 0 siblings, 0 replies; 35+ messages in thread From: Arturo 'Buanzo' Busleiman @ 2007-05-21 15:54 UTC (permalink / raw To: gentoo-server -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 Christian Bricart wrote: > nonsense - of course you're able to maintain your own $BINHOST which [...] > Works like charm here - I've got a central host here to build all packages > for identically configured cluster hosts that (e)merge the pre-built > packages. It's quite a time saver Of course it's doable, but there are better choices for binary-based distros than doing all that. I'm sure it works ok, but if you want to avoid compiling, or having a compiler, then the best idea sounds like not using a source-based distro. Even cluster-oriented distros, for example. Anyway, this is a Gentoo list, so I'll never say a "choose another thing instead of Gentoo"-like phrase never again :P - -- Arturo "Buanzo" Busleiman - Consultor Independiente en Seguridad Informatica OpenPGP for HTTP: New Web-Auth Scheme: http://freshmeat.net/articles/view/2599 Consulting and Secure Mail Hosting: http://www.buanzo.com.ar/pro/ -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.7 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFGUcCbAlpOsGhXcE0RCkxdAJ0XiKzM1Qr0sz6g7Wv+6nQlPlXC0wCfcqir WGeA7ANwGmBMbXjqBkuo9VY= =ZkHV -----END PGP SIGNATURE----- -- gentoo-server@gentoo.org mailing list ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [gentoo-server] Best practices in managing large server groups 2007-05-21 14:53 ` Ronan Mullally 2007-05-21 15:01 ` Arturo 'Buanzo' Busleiman @ 2007-05-22 4:19 ` Justin Cataldo 2007-05-22 4:59 ` Brian Kroth 2 siblings, 0 replies; 35+ messages in thread From: Justin Cataldo @ 2007-05-22 4:19 UTC (permalink / raw To: gentoo-server [-- Attachment #1: Type: text/plain, Size: 1183 bytes --] >Back to the original question. How do I run a number of gentoo boxes >without gcc (or a portage tree)? This all sounds way over my head, but anyway... could distcc be the answer? http://www.gentoo.org/doc/en/distcc.xml JC On 5/22/07, Ronan Mullally <ronan@iol.ie> wrote: > > On Mon, 21 May 2007, Arturo 'Buanzo' Busleiman wrote: > > > But, of course, if they got access to the box, then the compiler is the > > least of your problems at that time, but I have to admit that the > > "slowing the attacker down" is an extra layer of protection. It provides > > the sysadmins/users/monitoring software more time to detect the breach. > > Removing development tools is one of just a range of security measures. > It is by no means the be-all and end-all of security - hence my mention of > security in depth. There are easily a couple of dozen security measures I > implement when installing a box. Removing development tools (or in most > cases, never installing them) is just one of them, but we diverge... > > Back to the original question. How do I run a number of gentoo boxes > without gcc (or a portage tree)? > > > -Ronan > -- > gentoo-server@gentoo.org mailing list > > [-- Attachment #2: Type: text/html, Size: 1677 bytes --] ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [gentoo-server] Best practices in managing large server groups 2007-05-21 14:53 ` Ronan Mullally 2007-05-21 15:01 ` Arturo 'Buanzo' Busleiman 2007-05-22 4:19 ` Justin Cataldo @ 2007-05-22 4:59 ` Brian Kroth 2 siblings, 0 replies; 35+ messages in thread From: Brian Kroth @ 2007-05-22 4:59 UTC (permalink / raw To: gentoo-server > Back to the original question. How do I run a number of gentoo boxes > without gcc (or a portage tree)? > > > -Ronan Sorry for the late post, I'm still catching up on email. I haven't looked into removing gcc (but your comments intrigue me). As for no portage tree, all of my machines auto-NFS mount it from a local build host that also holds the binary packages. The NFS mount is set read-only so the novice doesn't get to emerge on the machine (yes it's easily subverted). I've found this helps with stability since then everything must go through the same build server and I have better guarantees about what is actually on the individual machines. There are a couple of different images to take care of the different roles each of those servers take on (web server, database server, mail server, etc.). I've also been looking into PXE booting so I only need to update a single image. To be honest I'm not quite ready for this yet, but it might be another option for you. Brian -- gentoo-server@gentoo.org mailing list ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [gentoo-server] Best practices in managing large server groups 2007-05-21 9:04 ` Ronan Mullally 2007-05-21 13:44 ` Thilo Bangert @ 2007-05-21 15:10 ` Karl Holz 2007-05-21 15:51 ` Ronan Mullally 1 sibling, 1 reply; 35+ messages in thread From: Karl Holz @ 2007-05-21 15:10 UTC (permalink / raw To: gentoo-server [-- Attachment #1: Type: text/plain, Size: 1140 bytes --] On 21-May-07, at 5:04 AM, Ronan Mullally wrote: > Does a multi-server gentoo install require a portage tree and gcc on > each box? No, you can use the following command: # ROOT="/chroot" emerge <pkages you want to install> -pv this will allow you build a new system, and it wount install the gcc packages. all you'll need is a stage 3 tarball for building, edit the /etc/make.conf to what ever setting you desire. Just keep in mind you will need to install all the programs needed for boot: base- system, grep, openssh, pam, core-utills, etc. > Is there a way to run gentoo without a portage tree on each box? yes, if you setup a build system, using a stage3 tarball, and build your system into a directory. Portage will only be under your / usr/portage and not into the system image you're building. the good thing about using a Stage3 tarball is you can build you system on any linux system, build your system image, tarball the image, deploy and install grub on x86, yaboot on Mac PPC, silo on Sparc64. __________________ Karl Gustav B. Holz ---------- karl@new-aeon.com ---------- http://www.new-aeon.com [-- Attachment #2: Type: text/html, Size: 4030 bytes --] ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [gentoo-server] Best practices in managing large server groups 2007-05-21 15:10 ` Karl Holz @ 2007-05-21 15:51 ` Ronan Mullally 2007-05-21 16:27 ` Ryan Gibbons 0 siblings, 1 reply; 35+ messages in thread From: Ronan Mullally @ 2007-05-21 15:51 UTC (permalink / raw To: gentoo-server Hi Karl, On Mon, 21 May 2007, Karl Holz wrote: > >Is there a way to run gentoo without a portage tree on each box? > > yes, if you setup a build system, using a stage3 tarball, and build your > system into a directory. Portage will only be under your /usr/portage and not > into the system image you're building. the good thing about using a Stage3 > tarball is you can build you system on any linux system, build your system > image, tarball the image, deploy and install grub on x86, yaboot on Mac PPC, > silo on Sparc64. How are updates handled? "emerge -uD <pkg|world>" isn't going to work without a portage tree, so I presume I'd need to tell each server which packages need to be updated with "emerge <pkg1> <pkg2> ... <pkgn>" to have it download them from the binhost? -Ronan -- gentoo-server@gentoo.org mailing list ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [gentoo-server] Best practices in managing large server groups 2007-05-21 15:51 ` Ronan Mullally @ 2007-05-21 16:27 ` Ryan Gibbons 2007-05-21 17:29 ` Ronan Mullally 2007-05-21 22:58 ` Karl Holz 0 siblings, 2 replies; 35+ messages in thread From: Ryan Gibbons @ 2007-05-21 16:27 UTC (permalink / raw To: gentoo-server [-- Attachment #1: Type: text/plain, Size: 1276 bytes --] I believe you will still need a tree either way. I would just have the master server share it's portage tree over nfs, and then when you update the nodes of the cluster, just mount the nfs share, run your emerge system or world or whatever, and then when you are finished umount the nfs share. I imagine this could be done easily via scripts, complete with error checking for bad mounts bad emerges etc. Ronan Mullally wrote: > Hi Karl, > > On Mon, 21 May 2007, Karl Holz wrote: > > >>> Is there a way to run gentoo without a portage tree on each box? >>> >> yes, if you setup a build system, using a stage3 tarball, and build your >> system into a directory. Portage will only be under your /usr/portage and not >> into the system image you're building. the good thing about using a Stage3 >> tarball is you can build you system on any linux system, build your system >> image, tarball the image, deploy and install grub on x86, yaboot on Mac PPC, >> silo on Sparc64. >> > > How are updates handled? "emerge -uD <pkg|world>" isn't going to work > without a portage tree, so I presume I'd need to tell each server which > packages need to be updated with "emerge <pkg1> <pkg2> ... <pkgn>" to have > it download them from the binhost? > > > -Ronan > [-- Attachment #2: Type: text/html, Size: 1783 bytes --] ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [gentoo-server] Best practices in managing large server groups 2007-05-21 16:27 ` Ryan Gibbons @ 2007-05-21 17:29 ` Ronan Mullally 2007-05-21 17:35 ` Petteri Räty 2007-05-21 17:47 ` José Costa 2007-05-21 22:58 ` Karl Holz 1 sibling, 2 replies; 35+ messages in thread From: Ronan Mullally @ 2007-05-21 17:29 UTC (permalink / raw To: gentoo-server On Mon, 21 May 2007, Ryan Gibbons wrote: > I believe you will still need a tree either way. > > I would just have the master server share it's portage tree over nfs, and then > when you update the nodes of the cluster, just mount the nfs share, run your > emerge system or world or whatever, and then when you are finished umount the > nfs share. > > I imagine this could be done easily via scripts, complete with error checking > for bad mounts bad emerges etc. That's what I figured. Okay, last question - how do I stop emerge trying to update the compiler-less systems to include development tools like gcc? I presume tweaking the profile is the way to do it. Is there a stock profile that already has these excluded? -Ronan -- gentoo-server@gentoo.org mailing list ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [gentoo-server] Best practices in managing large server groups 2007-05-21 17:29 ` Ronan Mullally @ 2007-05-21 17:35 ` Petteri Räty 2007-05-21 17:46 ` Ronan Mullally 2007-05-21 17:47 ` José Costa 1 sibling, 1 reply; 35+ messages in thread From: Petteri Räty @ 2007-05-21 17:35 UTC (permalink / raw To: gentoo-server [-- Attachment #1: Type: text/plain, Size: 879 bytes --] Ronan Mullally kirjoitti: > On Mon, 21 May 2007, Ryan Gibbons wrote: > >> I believe you will still need a tree either way. >> >> I would just have the master server share it's portage tree over nfs, and then >> when you update the nodes of the cluster, just mount the nfs share, run your >> emerge system or world or whatever, and then when you are finished umount the >> nfs share. >> >> I imagine this could be done easily via scripts, complete with error checking >> for bad mounts bad emerges etc. > > That's what I figured. Okay, last question - how do I stop emerge trying > to update the compiler-less systems to include development tools like gcc? > I presume tweaking the profile is the way to do it. Is there a stock > profile that already has these excluded? > I think /etc/portage/profile/package.provided could work. Regards, Petteri [-- Attachment #2: OpenPGP digital signature --] [-- Type: application/pgp-signature, Size: 252 bytes --] ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [gentoo-server] Best practices in managing large server groups 2007-05-21 17:35 ` Petteri Räty @ 2007-05-21 17:46 ` Ronan Mullally 0 siblings, 0 replies; 35+ messages in thread From: Ronan Mullally @ 2007-05-21 17:46 UTC (permalink / raw To: gentoo-server [-- Attachment #1: Type: TEXT/PLAIN, Size: 953 bytes --] On Mon, 21 May 2007, Petteri Räty wrote: > > That's what I figured. Okay, last question - how do I stop emerge trying > > to update the compiler-less systems to include development tools like gcc? > > I presume tweaking the profile is the way to do it. Is there a stock > > profile that already has these excluded? > > I think /etc/portage/profile/package.provided could work. It looks like it might, but you've got to specify packages with version numbers. I could see lots of fun and games when newer versions are added to portage or called as dependancies. Keeping this file up to date with the version numbers required would make the process rather tiresome. That said, it's something that could probably be scripted (run a dummy emerge on the portage tree and parse the output for any new installs of gcc, binutils, etc), and if something did slip through, the corresponding binaries shouldn't be on the binhost. -Ronan ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [gentoo-server] Best practices in managing large server groups 2007-05-21 17:29 ` Ronan Mullally 2007-05-21 17:35 ` Petteri Räty @ 2007-05-21 17:47 ` José Costa 2007-05-21 17:54 ` José Costa 1 sibling, 1 reply; 35+ messages in thread From: José Costa @ 2007-05-21 17:47 UTC (permalink / raw To: gentoo-server try portage-utils. they are in C. On 5/21/07, Ronan Mullally <ronan@iol.ie> wrote: > On Mon, 21 May 2007, Ryan Gibbons wrote: > > > I believe you will still need a tree either way. > > > > I would just have the master server share it's portage tree over nfs, and then > > when you update the nodes of the cluster, just mount the nfs share, run your > > emerge system or world or whatever, and then when you are finished umount the > > nfs share. > > > > I imagine this could be done easily via scripts, complete with error checking > > for bad mounts bad emerges etc. > > That's what I figured. Okay, last question - how do I stop emerge trying > to update the compiler-less systems to include development tools like gcc? > I presume tweaking the profile is the way to do it. Is there a stock > profile that already has these excluded? > > > -Ronan > -- > gentoo-server@gentoo.org mailing list > > -- gentoo-server@gentoo.org mailing list ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [gentoo-server] Best practices in managing large server groups 2007-05-21 17:47 ` José Costa @ 2007-05-21 17:54 ` José Costa 0 siblings, 0 replies; 35+ messages in thread From: José Costa @ 2007-05-21 17:54 UTC (permalink / raw To: gentoo-server ups, replied for the wrong email "question". how about dealing with /var/*/portage and db stuff? On 5/21/07, José Costa <meetra@gmail.com> wrote: > try portage-utils. they are in C. > > On 5/21/07, Ronan Mullally <ronan@iol.ie> wrote: > > On Mon, 21 May 2007, Ryan Gibbons wrote: > > > > > I believe you will still need a tree either way. > > > > > > I would just have the master server share it's portage tree over nfs, and then > > > when you update the nodes of the cluster, just mount the nfs share, run your > > > emerge system or world or whatever, and then when you are finished umount the > > > nfs share. > > > > > > I imagine this could be done easily via scripts, complete with error checking > > > for bad mounts bad emerges etc. > > > > That's what I figured. Okay, last question - how do I stop emerge trying > > to update the compiler-less systems to include development tools like gcc? > > I presume tweaking the profile is the way to do it. Is there a stock > > profile that already has these excluded? > > > > > > -Ronan > > -- > > gentoo-server@gentoo.org mailing list > > > > > ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [gentoo-server] Best practices in managing large server groups 2007-05-21 16:27 ` Ryan Gibbons 2007-05-21 17:29 ` Ronan Mullally @ 2007-05-21 22:58 ` Karl Holz 1 sibling, 0 replies; 35+ messages in thread From: Karl Holz @ 2007-05-21 22:58 UTC (permalink / raw To: gentoo-server [-- Attachment #1: Type: text/plain, Size: 2730 bytes --] Sure, you'll have a Portage tree, but it will be in you build root. here is the way I would set it up the build root would be under /build, you could also share this over nfs too # cd build # tar jxvf ~/stage3*.tar.bz2 # cd usr # tar jxvf ~/portage-latest.tar.bz2 # cd /build -mounting all the needed directories, binding the root to /build/ chroot is only if you want to build packages into it. # for x in "/sys:/sys" "/dev:/dev/" "/:/chroot" > do > mount -o bind $(echo $x|cut -d':' -f1) /build/$(echo $x|cut -d':' -f2) > done # mount -t proc none /build/proc # cat /etc/resolv.conf > /build/etc/resolv.conf # chroot /build /bin/bash now you can set your profile, edit your /etc/mack.conf (chroot) # env-update; source /etc/profile (chroot) # ROOT="/chroot" emerge <pkg> for updating you system image use (chroot) # ROOT="/chroot" emerge <pkg> -uD you could use world, but it will install the things you may not want. you can update the world of the build root /build (chroot) # emerge --sync ; emerge world -uD This can all be scripted too, you just neet to make 2 scripts; one to start the job and one to work inside the chroot, just change # chroot /build /bin/bash to # chroot /build /start.sh __________________ Karl Gustav B. Holz ---------- karl@new-aeon.com ---------- http://www.new-aeon.com On 21-May-07, at 12:27 PM, Ryan Gibbons wrote: > I believe you will still need a tree either way. > > I would just have the master server share it's portage tree over > nfs, and then when you update the nodes of the cluster, just mount > the nfs share, run your emerge system or world or whatever, and > then when you are finished umount the nfs share. > > I imagine this could be done easily via scripts, complete with > error checking for bad mounts bad emerges etc. > > Ronan Mullally wrote: >> Hi Karl, >> >> On Mon, 21 May 2007, Karl Holz wrote: >> >> >>>> Is there a way to run gentoo without a portage tree on each box? >>>> >>> yes, if you setup a build system, using a stage3 tarball, and >>> build your >>> system into a directory. Portage will only be under your /usr/ >>> portage and not >>> into the system image you're building. the good thing about using >>> a Stage3 >>> tarball is you can build you system on any linux system, build >>> your system >>> image, tarball the image, deploy and install grub on x86, yaboot >>> on Mac PPC, >>> silo on Sparc64. >>> >> How are updates handled? "emerge -uD <pkg|world>" isn't going to >> work >> without a portage tree, so I presume I'd need to tell each server >> which >> packages need to be updated with "emerge <pkg1> <pkg2> ... <pkgn>" >> to have >> it download them from the binhost? >> >> >> -Ronan >> [-- Attachment #2: Type: text/html, Size: 6077 bytes --] ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [gentoo-server] Best practices in managing large server groups 2007-05-20 18:29 [gentoo-server] Best practices in managing large server groups Charles Duffy 2007-05-20 20:20 ` Nicolas MASSE 2007-05-20 21:25 ` Ramon van Alteren @ 2007-05-21 23:11 ` Ramon van Alteren 2007-05-22 5:10 ` Brian Kroth 2007-05-22 16:54 ` Charles Duffy 2007-05-22 12:58 ` Tomasz Szymczak 3 siblings, 2 replies; 35+ messages in thread From: Ramon van Alteren @ 2007-05-21 23:11 UTC (permalink / raw To: gentoo-server, cduffy Hi Charles I've been looking for time to answer this more fully than the quick oneshot mail I send off earlier. We run 600 servers on gentoo and started with a single server originally. So yes it's definitely doable :) I'll try and answer as much as possible, any questions feel free to mail. Charles Duffy wrote: > I'm looking at replacing SuSE SLES9 with Gentoo for an enterprise > application (for reasons of flexibility and licensing) (no, we don't > have an enterprise application budget -- just the reliability > requirements; yaaay, startups!). We're looking to be able to deploy and > manage hundreds of geographically distributed servers. See above, what is your planned initial deployment ? Are you starting with a hundred or more servers or are you starting with just a couple ? > We have a QA department available to vet each configuration before it is > deployed to the field. We have infrastructure for tracking the progress > of code in svn from creation though QA to deployment; I'm anticipating > tracking a local overlay (containing all packages we use), make.conf, > /etc/portage/*, etc. through this system, autobuilding system images > (either to run virtualized or on real hardware) from the contents of > svn, building binary packages and deploying them to real hardware. Having a QA department to offload this work to is certainly a bonus :) > I'm interested in best practices, suggested tools, and/or 3rd party > experiences in this regard. > > Some particular questions which come to mind: > - Should I be using a custom profile or a standard profile with > overrides through make.conf, /etc/portage/* and the like? AFAIK you should be able to set all required stuff through overrides. The point is to keep in mind the benefits of using gentoo and not try and work against the system. Several people discussed running gentoo servers in produktion without a build toolchain (gcc etc.) I have no comments to offer on how desirable this is, but if this is a goal/requirement for you I'd strongly suggest using a binary distro. Gentoo shines as a ultra-configurable source-based distro, running it without a build toolchain and / or portage tree is certainly possible. It would however take away much of the advantages of using gentoo, so why not switch to something else in that case. Removing the portage tree has always been a weird question to me, nobody discusses removing the rpm-package database, why are people so keen on removing the portage tree ? It takes roughly 550Mb of space which is quite a lot, but hardly a killing requirement given todays diskspace and hardware. The linux kernel source tree is roughly in the same sizing category. > - What's the Right Way to create new system images ready to be loaded > onto a hard drive or run through a virtual machine? gentoo-buildhoster > looks interesting. I've seen Catalyst mentioned as a way to create > stage3 images, but what documentation I've been able to find doesn't > seem very much targeted for my use cases. I would recommend catalyst-2. Although documentation is lacking, it isn't that hard to setup. You're probably looking for the stage4 target if you want to build system images. Rolling out gentoo on such a large scale, you need a repeatable system image build environment. The bonus of catalyst is that you automatically get a binary package server in the process of generating your images. Catalyst can be told to use a binary package cache, by carefully setting up your catalyst environment you can easily reuse that as source for your binpkg server. I'm not familiar with gentoo-buildhoster, but since it's webpage [1] lists it as no longer maintained that would be a no-go area for me. We combined catalyst with a pxe based boot environment, the quickstart installer [2] and puppet[3]. It allows us to provision a server within 30 minutes. That's 30 minutes from connecting the hardware to a switch and active in production. This requires very little manual intervention, which we consider to be a good thing (tm) And yes, that's concurrent, we believe it to be capable of roughly 30 servers concurrent setup and that appears to be a pxe limitation. If at all possible, try to build your deployment system thus that you can always easily wipe a server and reinstall. We didn't originally and are refactoring to allow it now. > - Any experiences with puppet? With out ratio of servers to staff, > automating configuration and administration is a priority. (We already > have an internal tool written with automating the server configuration > process in mind; it has some functionality puppet doesn't, and puppet > has functionality it doesn't; in theory, I'd like to extend puppet until > our internal tool becomes unnecessary, though I'll need to understand > puppet much better before I can think too hard about that). We are using puppet extensively. It works, although it's still rough around the edges which is as expected from such a young project. The gentoo provider for puppet is in it's infancy. It works, but definitly needs work as well. Apart from that puppet is a very versatile and powerful tool. And most importantly it has a very active community of people around it. They are actively exchanging recipes for server configuration, which is useful in itself but becomes extremely useful when combined with the new module organization in puppet. Many problems you will face in deploying and configuring such an amount of servers will have been solved in whole or in part by someone in the puppet community. I would be curious what functionality is missing from puppet right now in your opinion ? > - Have any of 'yall been in the 100s-of-servers situation with > comparable requirements and come up with a different approach to > managing it? How did things work out? We've grown very very fast and have tried different methods along the way. To be honest, we're still in the process of moving most of the serverpark under puppet control (nearly 50% done) And I actually do not expect to find a single set of tools that cope with all the issues that you face when deploying such an amount of servers. Your situation might be different because you are starting with a single app. One vital thing that is missing from the picture is an inventory database. You need some sort of queryable database that stores servers, location, networking info, function, server-identifyable serial of some sort, hardware classes, deployment status etc. Without that you're basically lost. We use a homebrew mysql based system with both a cli- and a webinterface. Apart from that, you'll need lots of infrastructure: * logservers * monitoring * statistics gathering * backups * scripts repository * version controlled configs * bug / issue tracking * firewalling * loadbalancing * network monitoring and configuration system * etc. etc. etc. > Thank you! You're welcome, I would like to see more people use gentoo in large-scale environments and am actively looking for possibilities to exchange experiences. Feel free to contact me if you have any questions. I also hang out at a couple of irc-channels [4] with nickname Innocenti Out of pure curiosity what is your staff to server ratio ? Grtz Ramon Senior System Administrator Hyves.nl [1]http://badpenguins.com/source/ [2]http://dev.gentoo.org/~agaffney/quickstart.php [3]http://puppet.reductivelabs.com/ [4]#puppet, #gentoo-server, #gentoo-cluster, #gentoo-amd64 -- gentoo-server@gentoo.org mailing list ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [gentoo-server] Best practices in managing large server groups 2007-05-21 23:11 ` Ramon van Alteren @ 2007-05-22 5:10 ` Brian Kroth 2007-05-22 16:54 ` Charles Duffy 1 sibling, 0 replies; 35+ messages in thread From: Brian Kroth @ 2007-05-22 5:10 UTC (permalink / raw To: gentoo-server I heard a couple people talking up puppet, but also saying that it's young. Does anyone have experience with cfengine? Better or worse? I'm planning on deploying one of these this summer for a 40 server setup. Thanks, Brian -- gentoo-server@gentoo.org mailing list ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [gentoo-server] Best practices in managing large server groups 2007-05-21 23:11 ` Ramon van Alteren 2007-05-22 5:10 ` Brian Kroth @ 2007-05-22 16:54 ` Charles Duffy 2007-05-22 17:23 ` Wendall Cada 2007-05-23 7:37 ` [gentoo-server] " Ramon van Alteren 1 sibling, 2 replies; 35+ messages in thread From: Charles Duffy @ 2007-05-22 16:54 UTC (permalink / raw To: Ramon van Alteren; +Cc: gentoo-server Thank you for your advice. It's good to hear that someone else is in a similar scenario. The only thing that's going to be a hard sell around here is Catalyst -- our senior sysadmin (who is a considerably more seasoned Gentoo user than myself) has taken the position that using Catalyst is unnecessary and that emerge (targeting a chroot, with appropriate FEATURES set to generate binary packages) should be adequate. He's not immovable on such things -- but I'll need to have a very solid understanding of the benefits of using Catalyst before arguing any case to the contrary. (I've also contacted the author of gentoo-buildhoster to find out why he abandoned it, what he's using in its place, and whether he believes the project to be worth picking up; if he believes catalyst-2 to be more suitable for his use cases, understanding the reasoning behind that decision may provide some powerful arguments). Much of your other advice (ie. quickstart) is completely in line with our preexisting plans; thanks again for answering. (As for some of the items you're curious about -- such as our staff-to-server ratio -- I'm not entirely comfortable discussing all of that on an archived list; perhaps on IRC). -- gentoo-server@gentoo.org mailing list ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [gentoo-server] Best practices in managing large server groups 2007-05-22 16:54 ` Charles Duffy @ 2007-05-22 17:23 ` Wendall Cada 2007-05-22 21:06 ` [gentoo-server] " Charles Duffy 2007-05-23 7:37 ` [gentoo-server] " Ramon van Alteren 1 sibling, 1 reply; 35+ messages in thread From: Wendall Cada @ 2007-05-22 17:23 UTC (permalink / raw To: gentoo-server [-- Attachment #1: Type: text/plain, Size: 2774 bytes --] On Tue, 2007-05-22 at 11:54 -0500, Charles Duffy wrote: > Thank you for your advice. It's good to hear that someone else is in a > similar scenario. > > The only thing that's going to be a hard sell around here is Catalyst -- > our senior sysadmin (who is a considerably more seasoned Gentoo user > than myself) has taken the position that using Catalyst is unnecessary > and that emerge (targeting a chroot, with appropriate FEATURES set to > generate binary packages) should be adequate. He's not immovable on such > things -- but I'll need to have a very solid understanding of the > benefits of using Catalyst before arguing any case to the contrary. > (I've also contacted the author of gentoo-buildhoster to find out why he > abandoned it, what he's using in its place, and whether he believes the > project to be worth picking up; if he believes catalyst-2 to be more > suitable for his use cases, understanding the reasoning behind that > decision may provide some powerful arguments). > I very much agree with his assessment here. This is what I do for binary distribution to desktop systems. It is very effective. I have played with Catalyst quite a bit, but agree that catalyst-2 is much more well suited for this. I use also use the method described here: http://m8y.org/gentoosync.txt to filter the portage tree. It makes for faster sync times, but primarily, it makes me take a look at any additions or changes to the tree. I've caught potential problems with updates by simply keeping a very clean tree, which is important on the build server. I surprises me how little work has gone into the binary support in portage with the sheer number of devs around here who use the features. I asked over three years ago about some specific bugs, and was assured that they would be fixed soon. I don't think there has been a single significant change in that time. Would be nice if -g/G was fixed. Here is the method I use for using -k/K: For package/*.tbz2 format: #!/bin/bash cd /usr/portage/packages/All/ all=`emerge -p $@ | grep "\[ebuild " | sed -e "s/\[ebuild[^]]*] //" | / awk '{print $1}'` for pkg in ${all} do `wget -nc http://binhost.tld/portage/packages/${pkg}.tbz2` done For *.tbz2 format: #!/bin/bash cd /usr/portage/packages/All/ all=`emerge $@ -p | grep "\[ebuild " | sed -e "s/\[ebuild[^]]*] //" / | sed -e "s/.*\///g" | awk '{print $1}'` for pkg in ${all} do `wget -nc http://binhost.tld/packages/All/${pkg}.tbz2` done Maybe someday, I'll turn it into a proper script, but for now, this works. Wendall -- Only wimps use tape backup: _real_ men just upload their important stuff on ftp, and let the rest of the world mirror it ;) -- Linus Torvalds [-- Attachment #2: This is a digitally signed message part --] [-- Type: application/pgp-signature, Size: 189 bytes --] ^ permalink raw reply [flat|nested] 35+ messages in thread
* [gentoo-server] Re: Best practices in managing large server groups 2007-05-22 17:23 ` Wendall Cada @ 2007-05-22 21:06 ` Charles Duffy 2007-05-23 1:33 ` Wendall Cada 0 siblings, 1 reply; 35+ messages in thread From: Charles Duffy @ 2007-05-22 21:06 UTC (permalink / raw To: gentoo-server Wendall Cada wrote: > I very much agree with his assessment here. This is what I do for binary > distribution to desktop systems. It is very effective. I have played > with Catalyst quite a bit, but agree that catalyst-2 is much more well > suited for this. I'm sorry; which "this" are you referring to? I'm a little unclear on whether what you're indicating that you use is Ramon's suggestion (of using catalyst-2) or our senior sysadmin's suggestion (of using emerge, set to output binary packages and target a chroot). Thank you! -- gentoo-server@gentoo.org mailing list ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [gentoo-server] Re: Best practices in managing large server groups 2007-05-22 21:06 ` [gentoo-server] " Charles Duffy @ 2007-05-23 1:33 ` Wendall Cada 0 siblings, 0 replies; 35+ messages in thread From: Wendall Cada @ 2007-05-23 1:33 UTC (permalink / raw To: gentoo-server [-- Attachment #1: Type: text/plain, Size: 986 bytes --] On Tue, 2007-05-22 at 16:06 -0500, Charles Duffy wrote: > Wendall Cada wrote: > > I very much agree with his assessment here. This is what I do for binary > > distribution to desktop systems. It is very effective. I have played > > with Catalyst quite a bit, but agree that catalyst-2 is much more well > > suited for this. > > I'm sorry; which "this" are you referring to? I'm a little unclear on > whether what you're indicating that you use is Ramon's suggestion (of > using catalyst-2) or our senior sysadmin's suggestion (of using emerge, > set to output binary packages and target a chroot). I use (of using emerge, set to output binary packages and target a chroot) right now, as Ramon's senior sysadmin recommends. But am looking into using catalyst-2 in the future. Wendall > > Thank you! > -- Only wimps use tape backup: _real_ men just upload their important stuff on ftp, and let the rest of the world mirror it ;) -- Linus Torvalds [-- Attachment #2: This is a digitally signed message part --] [-- Type: application/pgp-signature, Size: 189 bytes --] ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [gentoo-server] Best practices in managing large server groups 2007-05-22 16:54 ` Charles Duffy 2007-05-22 17:23 ` Wendall Cada @ 2007-05-23 7:37 ` Ramon van Alteren 2007-05-23 12:28 ` Andrew Gaffney 2007-05-26 9:53 ` Thilo Bangert 1 sibling, 2 replies; 35+ messages in thread From: Ramon van Alteren @ 2007-05-23 7:37 UTC (permalink / raw To: gentoo-server, cduffy Charles Duffy wrote: > Thank you for your advice. It's good to hear that someone else is in a > similar scenario. It's likewise nice to hear someone is planning the same as we do. > The only thing that's going to be a hard sell around here is Catalyst > -- our senior sysadmin (who is a considerably more seasoned Gentoo > user than myself) has taken the position that using Catalyst is > unnecessary and that emerge (targeting a chroot, with appropriate > FEATURES set to generate binary packages) should be adequate. He's not > immovable on such things -- but I'll need to have a very solid > understanding of the benefits of using Catalyst before arguing any > case to the contrary. (I've also contacted the author of > gentoo-buildhoster to find out why he abandoned it, what he's using in > its place, and whether he believes the project to be worth picking up; > if he believes catalyst-2 to be more suitable for his use cases, > understanding the reasoning behind that decision may provide some > powerful arguments). Well, basically he's right. Catalyst is a build tool that wraps all the stuff you need to do when building packages in a chroot, with some additional features You don't need it.... it just saves time and a lot of work writing your own scripts to manage the environment, and it's semi-maintained. OTOH you lose flexibility, need to invest time in learning how catalyst works etc. Catalyst-1 is completely unusable for building system-images, this is a feature that catalyst gained with the -2 release. Catalyst has gained quite a community of users by now, who keep bugging Chris for features and explaination, you can find them on gentoo-catalyst. The benefit of using catalyst for us is that it solves two wishes in one fell swoop: * an automated and repeatable system image build tool * a binary package generator for specified system images Additionally we're looking into using the tinderbox target to validate builds on top of our different server images. > Much of your other advice (ie. quickstart) is completely in line with > our preexisting plans; thanks again for answering. (As for some of the > items you're curious about -- such as our staff-to-server ratio -- I'm > not entirely comfortable discussing all of that on an archived list; > perhaps on IRC). OK, that's cool, we've been thinking of generalizing the changes we did to quickstart to get it to talk to our inventory system and submitting them back to agaffney. If somebody finds the time to do the work, that is. I would be very curious about the inventory system you are planning, if you're willing to shed some light on that I'd be grateful. Ramon -- gentoo-server@gentoo.org mailing list ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [gentoo-server] Best practices in managing large server groups 2007-05-23 7:37 ` [gentoo-server] " Ramon van Alteren @ 2007-05-23 12:28 ` Andrew Gaffney 2007-05-23 13:03 ` Ramon van Alteren 2007-05-26 9:53 ` Thilo Bangert 1 sibling, 1 reply; 35+ messages in thread From: Andrew Gaffney @ 2007-05-23 12:28 UTC (permalink / raw To: gentoo-server Ramon van Alteren wrote: > Well, basically he's right. Catalyst is a build tool that wraps all the > stuff you need to do when building packages in a chroot, with some > additional features > You don't need it.... it just saves time and a lot of work writing your > own scripts to manage the environment, and it's semi-maintained. You have an odd definition of "maintained". Chris (catalyst lead) and I (general code monkey) are actively working on catalyst. We just don't care much about features that don't directly benefit release building, since that's what catalyst's primary function is. If someone asks for a feature that doesn't affect building releases and submits code, we're very likely to throw it in. -- Andrew Gaffney http://dev.gentoo.org/~agaffney/ Gentoo Linux Developer Catalyst/Installer + x86 release coordinator -- gentoo-server@gentoo.org mailing list ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [gentoo-server] Best practices in managing large server groups 2007-05-23 12:28 ` Andrew Gaffney @ 2007-05-23 13:03 ` Ramon van Alteren 2007-05-23 13:46 ` Andrew Gaffney 0 siblings, 1 reply; 35+ messages in thread From: Ramon van Alteren @ 2007-05-23 13:03 UTC (permalink / raw To: gentoo-server Andrew Gaffney wrote: > Ramon van Alteren wrote: >> Well, basically he's right. Catalyst is a build tool that wraps all >> the stuff you need to do when building packages in a chroot, with >> some additional features >> You don't need it.... it just saves time and a lot of work writing >> your own scripts to manage the environment, and it's semi-maintained. > > You have an odd definition of "maintained". Chris (catalyst lead) and > I (general code monkey) are actively working on catalyst. We just > don't care much about features that don't directly benefit release > building, since that's what catalyst's primary function is. If someone > asks for a feature that doesn't affect building releases and submits > code, we're very likely to throw it in. Please, that's not what I meant, accept my apologies if that's what came across. What I meant with semi-maintained is that it is maintained as an internal tool for building gentoo-releases and not as a general system-images buildtool. Reading it again I should have said that more clearly, sorry. Ramon -- gentoo-server@gentoo.org mailing list ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [gentoo-server] Best practices in managing large server groups 2007-05-23 13:03 ` Ramon van Alteren @ 2007-05-23 13:46 ` Andrew Gaffney 0 siblings, 0 replies; 35+ messages in thread From: Andrew Gaffney @ 2007-05-23 13:46 UTC (permalink / raw To: gentoo-server Ramon van Alteren wrote: > Andrew Gaffney wrote: >> Ramon van Alteren wrote: >>> Well, basically he's right. Catalyst is a build tool that wraps all >>> the stuff you need to do when building packages in a chroot, with >>> some additional features >>> You don't need it.... it just saves time and a lot of work writing >>> your own scripts to manage the environment, and it's semi-maintained. >> >> You have an odd definition of "maintained". Chris (catalyst lead) and >> I (general code monkey) are actively working on catalyst. We just >> don't care much about features that don't directly benefit release >> building, since that's what catalyst's primary function is. If someone >> asks for a feature that doesn't affect building releases and submits >> code, we're very likely to throw it in. > Please, that's not what I meant, accept my apologies if that's what came > across. > > What I meant with semi-maintained is that it is maintained as an > internal tool for building gentoo-releases and not as a general > system-images buildtool. > Reading it again I should have said that more clearly, sorry. That's *very* different from "semi-maintained" :) -- Andrew Gaffney http://dev.gentoo.org/~agaffney/ Gentoo Linux Developer Catalyst/Installer + x86 release coordinator -- gentoo-server@gentoo.org mailing list ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [gentoo-server] Best practices in managing large server groups 2007-05-23 7:37 ` [gentoo-server] " Ramon van Alteren 2007-05-23 12:28 ` Andrew Gaffney @ 2007-05-26 9:53 ` Thilo Bangert 1 sibling, 0 replies; 35+ messages in thread From: Thilo Bangert @ 2007-05-26 9:53 UTC (permalink / raw To: gentoo-server [-- Attachment #1: Type: text/plain, Size: 2149 bytes --] hi all, > It's likewise nice to hear someone is planning the same as we do. at work, we are currently planning for a massive expansion of our server park and i am in the process of figuring it all out. not having done this before i am probably about to fall into a bunch of holes - so any insight into how you do stuff is of great help. thanks for all the information so far. what follows are the pieces that we've put together for now. much of this has not been tested yet, but i'd wouldn't mind some feedback. - use catalyst2 to build different role stage4 images. - seed a binhost with the binary packages from catalyst - add additional packages to the binhost (as needed) - use quickstart to deploy stage4 image - use enhost to add the host to a inventory db - use puppet for configuration management - use munin for resource and performance monitoring - use nagios for service monitoring - build a tool which creates nagios configuration from the inventory - all syslog to a central loghost - using srlog2 - use nullmailer to forward email to a central smarthost - higher level applications will be deployed using capistrano - possibly drawing some of the configuration options from the inventory database. we will not do backups of the nodes - the goal is to be able to reproduce the setup faster (or at roughly the same speed) than a backup recovery. application data will most likely be backed up to amazon S3 in (near) real time. we are currently looking into RT or bugzilla for issue tracking... i'd love to hear what tools other people are using for these and similar tasks or what comments people have to the setup outlined above. > I would be very > curious about the inventory system you are planning, if you're willing > to shed some light on that I'd be grateful. i haven't given this two much of a thought, just yet. enhost supplies its data to ldap - so for a start we'll probably just use that. depending on how the deployment procedure of the higher layers works out a relational database may turn out to be better suited... kind regards Thilo [-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --] ^ permalink raw reply [flat|nested] 35+ messages in thread
* Re: [gentoo-server] Best practices in managing large server groups 2007-05-20 18:29 [gentoo-server] Best practices in managing large server groups Charles Duffy ` (2 preceding siblings ...) 2007-05-21 23:11 ` Ramon van Alteren @ 2007-05-22 12:58 ` Tomasz Szymczak 3 siblings, 0 replies; 35+ messages in thread From: Tomasz Szymczak @ 2007-05-22 12:58 UTC (permalink / raw To: gentoo-server On Sunday 20 of May 2007 20:29:18 Charles Duffy wrote: > I'm looking at replacing SuSE SLES9 with Gentoo for an enterprise > application (for reasons of flexibility and licensing) (no, we don't > have an enterprise application budget -- just the reliability > requirements; yaaay, startups!). We're looking to be able to deploy and > manage hundreds of geographically distributed servers. I'm using some custom made gentoo setup, it's not perfect but works fine for me (>30 gentoo servers and >50 gentoo vservers in different locations) Every gentoo server has mounted snapshot of portage tree compressed by squashfs = 40MB (vservers are using bind mounted version), it's extended by custom overlays (security, updates, etc). I can do 'big' upgrade of gentoo by putting newer portage snapshot. I've made custom gentoo profiles (f.e. amd64-default-20061004) which are setting most things like cflags, use flags, overlays and inherits real profile at the end. Also I'm extending it by creating my subprofiles to force installing packages, for example: x86-default-20061004/h (vserver hardware node) vserver-default-20061004/www/php5 (www vservers with php5) vserver-default-20061004/mail (mail vservers) Most servers/vservers have /var/lib/portage/world empty, all packages are forced by putting it into 'system'. Also, /etc/make.conf on all servers are empty too :) After emerge (compile) of package, it's sent into binhost server (via scp in /etc/portage/bashrc) and other servers in same profile are fetching binary version. This solution is a little bit tricky, have some issues but after all - makes many things faster and easier for me. regards -- Tomasz Szymczak _.-. jgs GCS/M d- s-:- a-- C+++$ UL++$>++++$ P++ L++>++++ E W++ N+ w O+ '( ^{_} ( PS+ PE !Y PGP+ t- X- R tv-- b++>+++ DI D>+++ G e>++++ h! r- y? `~\`-----'\ Umysł sprawia, że wszystko się zmienia, żeby upozorować upływ czasu )_)---)_) -- gentoo-server@gentoo.org mailing list ^ permalink raw reply [flat|nested] 35+ messages in thread
end of thread, other threads:[~2007-05-26 9:57 UTC | newest] Thread overview: 35+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2007-05-20 18:29 [gentoo-server] Best practices in managing large server groups Charles Duffy 2007-05-20 20:20 ` Nicolas MASSE 2007-05-20 20:34 ` Charles Duffy 2007-05-20 21:25 ` Ramon van Alteren 2007-05-21 9:04 ` Ronan Mullally 2007-05-21 13:44 ` Thilo Bangert 2007-05-21 14:30 ` Ronan Mullally 2007-05-21 14:36 ` Arturo 'Buanzo' Busleiman 2007-05-21 14:53 ` Ronan Mullally 2007-05-21 15:01 ` Arturo 'Buanzo' Busleiman 2007-05-21 15:28 ` Christian Bricart 2007-05-21 15:54 ` Arturo 'Buanzo' Busleiman 2007-05-22 4:19 ` Justin Cataldo 2007-05-22 4:59 ` Brian Kroth 2007-05-21 15:10 ` Karl Holz 2007-05-21 15:51 ` Ronan Mullally 2007-05-21 16:27 ` Ryan Gibbons 2007-05-21 17:29 ` Ronan Mullally 2007-05-21 17:35 ` Petteri Räty 2007-05-21 17:46 ` Ronan Mullally 2007-05-21 17:47 ` José Costa 2007-05-21 17:54 ` José Costa 2007-05-21 22:58 ` Karl Holz 2007-05-21 23:11 ` Ramon van Alteren 2007-05-22 5:10 ` Brian Kroth 2007-05-22 16:54 ` Charles Duffy 2007-05-22 17:23 ` Wendall Cada 2007-05-22 21:06 ` [gentoo-server] " Charles Duffy 2007-05-23 1:33 ` Wendall Cada 2007-05-23 7:37 ` [gentoo-server] " Ramon van Alteren 2007-05-23 12:28 ` Andrew Gaffney 2007-05-23 13:03 ` Ramon van Alteren 2007-05-23 13:46 ` Andrew Gaffney 2007-05-26 9:53 ` Thilo Bangert 2007-05-22 12:58 ` Tomasz Szymczak
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox