On Fri 06 Jul 2007 at 01:10PM, Jeff Victor wrote: > >> > >> - We are planning to test 1000 nodes (=containers) on a 2 GB RAM > >> Athlon Dual Core 4.2 GHz machine. Is that possible? > > I'll make a stronger statement than JeffS: a Solaris container > requires at least 20MB of RAM to boot and start up even the most basic > services. Running all of them *simultaneously* is unlikely to work: > the system would be paging to disk all of the time.
RAM is definitely going to be a big issue. There's also the fact that JVMs tend to create quite a lot of threads. Some of the java instances on my machine have 25 threads. 25*1000 = 25000, which is doable, but a lot. Remember that each of those threads has a stack. If each stack is 16K (pretty conservative) then that's 400MB of java thread stacks alone-- never mind the heap space consumption. You might be able to limit that with JVM options, I don't know. > - Each container should be a sparse zone that contains no application > but a JRE. How do I create one of these? To expand on what Jeff Savit said: You really want to minimize your zone using SMF. Turn off inetd and most other system services. Use 'svcs -p' to spot the ones which you don't want. You might want to keep nscd if your p2p app does a lot of name service lookups, but most other daemons can go: cron, rpcbind (probably), automountd (unless using NFS), sac, syslogd, sshd, sendmail. You'll wind up with various parts of the system not working, but your memory footprint will really shrink. Once you have a very minimized zone, then you can clone lots of copies of it. If you are running Solaris Nevada, and using ZFS to store your zones, zones will use zfs cloning to do this very rapidly. -dp -- Daniel Price - Solaris Kernel Engineering - [EMAIL PROTECTED] - blogs.sun.com/dp _______________________________________________ zones-discuss mailing list email@example.com