EON ZFS Storage
Introduction:
EON stands for Embedded Operating system/Networking. EON turns your hardware and disks, into an enterprise featured ZFS storage appliance. It is the first embedded Solaris ZFS (Zettabyte File System) NAS (Network Attached Storage) distribution based on Opensolaris. It is a memory (RAM) based live/install image which runs from CD/DVD, USB or CF (compact flash) and Disk on Module. EON delivers a high performance 32/64-bit storage solution built on ZFS, using regular/consumer disks which eliminates the use of costly RAID arrays, controllers and volume management software. EON focuses on using a small memory footprint so it can run from RAM while maximizing the remaining free memory (L1 ARC) for ZFS performance. Running from RAM adds the advantage of being one hard disk greener in power consumption and removes the OS install disk as a point of failure. And if your hardware fails, no costly measures are needed to get your data. Simply attach the disks to another machine and with a ZFS capable operating system or EON.
Hardware Requirements:
- 32/64-bit x86 processor (64-bit preferred)
- 1GB RAM minimum, 2GB good, 4GB+ better performance
- 2 or more identical size disks for RAID-0, RAID-1. 3 identical size disks minimum for RAID-Z.4 identical size disks minimum for double parity or RAID-Z2. RAID-Z3
Requirements to test/install the release iso:
- A blank CD to burn, demo and install the iso file (example: eon-0.600-130-64-cifs.iso).
- A bootable USB drive (256 Mb or higher) or an IDE to compact flash adapter (I've used these) and 256Mb or larger compact flash drive (CF install).
- A x86 machine capable of booting from CD and/or USB. One that supports 3 or more drives, is more ideal. More drive support means more storage growth potential.
Features:
RAID-0 (stripe)
RAID-1 (mirror)
RAID-10 (striped-mirror)
RAID-Z (raidz or raidz1 similar to RAID-5 with variable-width stripes which avoids the RAID-5 write hole, requires 3 or more disks)
RAID-Z2 (raidz2 or RAID-6, double parity, requires 4 or more disks)
RAID-Z3 (raidz3 or triple parity RAID)
- Supports client OS, Windows 200x/XP/Vista, 7, Mac OS X(Leopard, Snow Leopard, LION), Unix and Linux
- Transparent in-band, dynamic filesystem compression (LZJB or GZIP algorithms)
- Capable of expanding the zpool by expanding each disk in the pool (since snv_117)
- Thin provisioned (green) file systems
- Unlimited files, links, directories and snapshots versions(also known as version-ing or read only clones/copies)
- Copy-On-Write (writable) clones
- Link aggregation (teaming network interfaces)
- User Groups and Quotas
- IPfilter module and application to control/restrict network access.
- DTrace, Perl and PHP
- Deduplication (since EON 0.59.9/snv 129)
- Hot spares
- SSD acceleration
Supported add-on features:
- Firefly/iTunes media server (32-bit): Install guide, download mt-daapd
- Mediatomb UPnP server (32-bit): Install guide, download section
- napp-it (graphical web admin by Alka Guenther, version 0.20+: Install Guide, download napp-it)
- Transmission cli/web bit torrent client/server (available since binary kit 124 in download section)
- Aria2c 1.9.3 (HTTP/HTTPS, FTP, BitTorrent and Metalink)
- tmux 1.1 (terminal multiplexer)
- lighttpd (Web server: Install guide, download lighttpd)
- nginx (Web server: Install guide, download nginx)
- Netatalk (Apple Talk Fileserver: download netatalk)
- elinks (text based browser)
- wget/curl (retrieving files using HTTP, HTTPS and FTP)
- ddclient/inadyn (dynamic DNS clients)
- glusterfs 3.0 (clustered storage solution)
Requirements to create your own iso:
- A standard working Opensolaris or virtual installation, B72 or higher. B114 or higher to build snv_114 or higher.
- Solaris Express Community Edition (SXCE) CD's/DVD (a.k.a Opensolaris/Nevada) or ISO images. This will be the snv_xxx version you intend to build.
- EON build scripts (imgsol.sh) and root access on the working Solaris installation.
Tested Solaris Community Express versions :
- Solaris Community Express Edition B84 - B98, B104 - B124, B130.
Burn the (eon.iso) image to a CD/DVD. Boot and login as:
user: admin pass: eonstore
user: root pass: eonsolaris
Type and run the following. This script prompts the user through configuration questions like hostname, IP/DHCP, netmask, domain name and more. This step will configure and ID the system for storage use.
/usr/bin/setup
This step is optional but necessary if the configuration changes made are to be preserved beyond a reboot or power down. This requires connecting writable destination (USB or CF drive) before the command is run. The command will assist formatting and installing EON (image on the CD) to the USB or CF drive.
/usr/bin/install.sh
This step is usually done after install.sh or, to preserve configuration changes made to the image before the next power off. This preserves the original image to /mnt/eonX/boot/x86.eon.orig (bootable by the OEM choice from GRUB) and saves a new default boot image to /boot/x86.eon. It will move the live image to x86.eon.1, x86.eon.2 and so on each time it is run. The original image allows resetting to initial defaults if required.
/usr/bin/updimg.sh