Re: [asterisk-users] Build your own appliance concept

2007-09-07 Thread Jeremy P
Thanks for all the good info.  If you're looking for a cheaper version of
the thin client you could try the t5530.  It's about $300 US but it only has
64 MB Flash.  A 1GB flash module is $70 US but sounds like overkill for your
application.

On 9/6/07, Gordon Henderson [EMAIL PROTECTED] wrote:

 On Thu, 6 Sep 2007, Jeremy P wrote:

  I've been working on this the past few days and thought I would put it
 out
  there to see if anyone else has interest in it.  It really has nothing
 to do
  with the Digium appliance, I've just been looking for some mass produced
  solid state hardware to run small branch offices off of for awhile now
 and I
  think I've finally landed on something I like.
 
  Basically I've taken an HP thin client workstation which is all solid
 state
  and loaded Debian and Asterisk on it (well, Asterisk-GUI too, but just
 to
  prove I could make it appliance-worthy).  I'd be interested in any
  feedback on how to improve it, specifically on how to make Debian and
  Asterisk take up less space so I could buy the model that only has 512
 MB of
  flash rather than 1 GB.

 I built my own appliance some time back - initially for a router
 project, but I've since adapted it for Asterisk boxes and NAS boxes..

 The basic unit has 64MB of IDE-flash, 256MB (or more) RAM. The flash IDE
 device has one partition and is bootable, so it has a /boot with a bzImage
 in it, enough of a /dev/ and /etc to make Lilo work on it and an initrd.gz
 which is unpacked into a 128MB RAM disk, then the system runs entirely
 from RAM once booted, so there's no continual write to flash issues (I
 hope!) I do actually have a 2nd partition on the device which I tar all
 the configuration files into - the bare minimal of what I need gets stored
 there whenever something changes. (and a copy of astdb too). I don't think
 this is perfect, and is prone to issues like a power cycle during write,
 but ...

 I put a 2nd IDE flash device for Voicemail storage - that does have a live
 filesystem on it (currently just ext2, which I force an fsck of at boot
 time, if it's dirty) I've used 64MB to 256MB devices for this (storing VM
 in GSM format only), some customers want call recording, so they get the
 bigger ones, but I'm thinking of moving to a laptop drive for people who
 want even more (and enable idle spin down, etc.)

 I build the kernel and initrd.gz file on a separate box - it's Debian, but
 it could be anything as I don't actually put a distribution as such into
 it, I just copy the files I need, and I'm lazy about it, so I copy all of
 /bin, /lib, most of /etc and a /dev and selected bits of /usr/bin and
 /usr/lib. (I use ldd on all the executables to work out which libraries I
 really need from /usr/lib) The kernel is a custom kernel for the hardware
 with no modules apart from Zaptel, etc.

 I copy everything into a 128MB file, zeroed (it compresses better)
 formatted ext2, mounted as a lookback device. Once the copy is complete, I
 unmount it, gzip -9 it and that's the initrd.gz file. You need to make
 sure that the Linix kernel you compile has the ability to load an
 initrd.gz file and a big enough ramdisk!

 It's not that efficient, and I could save space by using uClib, busybox,
 etc. but it's really not worth it, but 2 things I don't have on the target
 system is perl and vim.. Perl is about 10MB, as is vim. Right now I don't
 have a need for either (and I use nano when I do need to tweak stuff which
 is rarely) Perl would be nice so I could run stuff like mrtg locally on
 the boxes, but isn't essential for now.

 So if there are some new security implications on the current Debian, or
 an asterisk upgrade, I just upgrade/update the build box, then create a
 new initrd.gz file and install it. (however this is in the order of 40MB
 for an Asterisk system with apache  php) so it a bit tricky to do a field
 upgrade if the remote system is bandwidth limited, but I can pull it in
 off a USB drive if necessary.

 My /etc/asterisk and /var/www/docs are actually stored as part of the tar
 file, so upgrading those is fairly trivial.

 This is what a running system looks like:

 $ df -h
 FilesystemSize  Used Avail Use% Mounted on
 /dev/ram0 124M  107M   18M  87% /
 tmpfs 125M 0  125M   0% /dev/shm
 /dev/hdc2  60M   23M   37M  39% /data


 If I mount the flash device, then:

 # ls -l /mnt
 total 39019
 drwxr-xr-x   2 root root 1024 Aug  9 14:54 boot
 drwxr-xr-x  13 root root24576 Dec  6  2006 dev
 drwxr-xr-x   2 root root 1024 Nov 15  2006 etc
 -rw-r--r--   1 dsx  1000 39758472 Aug  9 14:53 image.gz
 drwx--   2 root root12288 Dec 12  2006 lost+found

 # ls -l /mnt/boot
 total 2849
 -rw-r--r--  1 root root 512 Dec 12  2006 boot.0300
 -rw-r--r--  1 root root 512 Dec 22  2006 boot.0800
 -rw-r--r--  1 root root 512 Dec 12  2006 boot.1600
 -rw-r--r--  1 dsx  1000 1390066 Jun  5 15:47 bzImage
 -rw---  1 root root   31744 Aug  9 14:54 map

[asterisk-users] Build your own appliance concept

2007-09-06 Thread Jeremy P
I've been working on this the past few days and thought I would put it out
there to see if anyone else has interest in it.  It really has nothing to do
with the Digium appliance, I've just been looking for some mass produced
solid state hardware to run small branch offices off of for awhile now and I
think I've finally landed on something I like.

Basically I've taken an HP thin client workstation which is all solid state
and loaded Debian and Asterisk on it (well, Asterisk-GUI too, but just to
prove I could make it appliance-worthy).  I'd be interested in any
feedback on how to improve it, specifically on how to make Debian and
Asterisk take up less space so I could buy the model that only has 512 MB of
flash rather than 1 GB.

Here's the link. http://tinyurl.com/2hf2cu  Let me know what you think.

Jeremy
___

Sign up now for AstriCon 2007!  September 25-28th.  http://www.astricon.net/ 

--Bandwidth and Colocation Provided by http://www.api-digital.com--

asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-users