History of EFS
Tue, 12/15/2009 - 10:52 | by einderri
This is a brief history of the current EFS product.
Why was it created?
Members of a prestigious Wall Street firm were aware that there are unnecessary costs and risks in distributing internally developed software. They found that there were hurdles to overcome:
- an inconsistent namespace both within and across geographic regions,
- a huge duplication of effort in the integration of development tools and dependencies, being performed independently by different development teams;
- many distribution errors when distributing software, given that the deployment / upgrade / patch / decommission processes are manual and unstructured;
- It was difficult to share applications among different development teams due to inconsistent environments (e.g., platforms, operation systems, code bases; and
- Fragmentation of expertise (there was no centralized community for developers across different teams to exchange knowledge).
Original vision
The original vision of EFS was to provide a common standard for all development efforts as well as a standard global distribution environment. This environment would:
- Create a globally consistent, distributed namespace for application;
- Include a Perl-based command line interface (CLI) that would provide distribution functions for developers and release managers, allowing for distribution automation ;
- Provide development tools and dependencies that are integrated and maintained centrally, eliminating redundant efforts; and
- Help to create developer communities by creating forums around key development languages, facilitating discussion and knowledge sharing across the entire development organization.
By streamlining and standardizing the software deployment process, EFS would afford the development community the opportunity to focus on business solutions rather than the underlying application infrastructure.
Timeline
- Oct-2005: Phil Moore begins to address issues of deployment. Phil had experience developing this type of enterprise structure for a number of different firms.
- Jan-2006: First proof of concept on Mac OS 10/MySQL
- Mar-2006: First TEST hardware for EFS (Dev lab)
- Sep-2006: First DEV cells in London and NY
- 2007: EFS 1.0 goes into production with DEV and PROD clients sharing DEV storage infrastructure. This release is for Tier 2 applications (without the redundancy, not appropriate for Tier 1 apps) with regional cells in NY, London, Singapore, Tokyo and Hong Kong. Uses Acopia switches for redirection.
- Jan-2008: Acopia switches are dropped in favor of using automounter for /efs/dev and FlexCache in /efs/dist in its place.
- Apr-2008: Funds for separate PROD storage infrastructure for the PROD clients are approved.
- Jun-2008: EFS 2.0 is in PROD. This includes separate hardware for DEV and PROD. EFS is now ready to support Tier 1 applications.
- Jun-2009: Decision is made to open source the product to give back to the Open Source community as well as get input from external developers.
- Jan-2010: Initial alpha release of the Open Source version of the product.
