Enterprise Storage OS, also known as ESOS, is a Linux distribution that serves as a block-level storage server in a storage area network (SAN).[2] ESOS is composed of open-source software projects that are required for a Linux distribution and several proprietary build and install time options.[3] The SCST project is the core component of ESOS; it provides the back-end storage functionality.[4]
Screenshot of the main TUI screen in ESOS (Enterprise Storage OS).
ESOS utilizes a text-based user interface (TUI) for system management, network configuration, and storage provisioning functions.[7] The TUI used in ESOS is written in C; the ncurses and CDK libraries are used.
ESOS supports connectivity on several different front-end storage area network technologies.[8] These core functions are supported by SCST and third-party target drivers that vendors have developed for SCST:[9]
Fibre Channel: QLogic HBAs are natively supported, and Emulex OneConnect FC HBAs can be supported by a build time option (requiring the Emulex OCS SDK)[10]
Fibre Channel over Ethernet (FCoE): A software target implementation supports NICs with DCB/DCBX capabilities, or build time options exist for supporting Emulex OneConnect FCoE CNAs (requires the Emulex OCS SDK) and Chelsio Uwire FCoE CNAs.[12]
iSCSI: Will work over any IP communication method supported by ESOS (Ethernet, IPoIB).
Open-source software projects and commodity computing server hardware are used on the back-end side to provide the underlying storage utilized by the front-end target interfaces:
Btrfs, XFS, and ext4 are all supported file systems for virtual disk files used with the "vdisk_fileio" device handler.
Popular, modern hardware RAID controllers from LSI, Adaptec, HP, and Areca are also supported in ESOS, including install-time CLI tool integration for these adapters.
Clustering and high-availability support is made possible by the Pacemaker and Corosync cluster software stack.
DRBD is fully supported to facilitate replication between ESOS storage servers, and/or to create redundant ESOS storage server clusters.
ESOS differs from popular Linux distributions in that there is no bootable ISO image provided. ESOS consists of one archive file that is extracted on a local computer running a supported operating system (Linux, Windows, or Mac OS X).[12] The local computer is only used for installing the ESOS image to a USB flash drive (or other removable media device).[13] Users of ESOS extract the archive and execute the ESOS install script. The ESOS installer script prompts the user for the installation target device, writes the image, and allow users to integrate proprietary CLIRAID controller utilities into the ESOS USB flash drive.