Linux Docker Technology and What it Means for Egnyte
A few months back, Red Hat acknowledged the growing presence and relevance of the Docker open source community by extending its certification program to Docker apps. This is indeed a major milestone in the history of Red Hat Enterprise Linux and more generically in the history of virtualization.
So what exactly is Docker?
When a software application is being built, programmers and testers have access to a certain set of platforms with the associated set of development and test environments. Given the limited resources, it’s not realistically possible for this group of engineers to envision and develop their applications to work perfectly in all customer environments with the myriad of platforms, libraries and other applications in the ecosystem.Docker is the technology that enables programmers to architect the perfect world where each application will work 100 percent of the time, no matter where it is deployed. Docker is a contained environment where an application has all of its libraries, dependencies and other enablers to provide functional completeness; this container can be “shipped” to any platform and to any environment where it will co-exist with other applications or containers. In a sense, it’s like deploying your customized virtual machine for any location, except that your app, which is the “virtual machine,” runs on the customer’s hardware.
A win across the board:
This is a big deal for developers. They can build their applications one time and have them run on any device. This is an even bigger deal for testers as they can solely focus on the functional validity of the application within the container and do not have to factor in container endpoints (e.g. laptop, desktops, or enterprise servers). There’s also something in it for packaging folks. When an application or dependent library changes, they just have to package and ship the updated binary. The real icing on the cake is for the customer. Since third-party applications run in their own containers, the end user doesn’t have to worry about platform compatibility or having to power down the entire system for installation and software maintenance.
Docker and Egnyte:
One of the basic tenets of Egnyte Storage Sync is to provide a hybrid solution on any hardware platform that our customers use. In order to realize this vision, we built Storage Sync entirely encapsulated inside a Docker container that can execute on any supported Linux operating system, regardless of the host distribution package.Most NAS device vendors have stringent certification requirements governing the installation and execution of third-party apps on their host platforms. Our storage partners love the Docker approach, especially during the certification process, since the entire Storage Sync application runs inside a container and does not compromise the functionality of the host ecosystem. Moreover, Egnyte’s services are not impacted, even if the administrator decides to upgrade the NAS device’s firmware, since all of Storage Sync’s software service dependencies are contained within the Docker. This architecture has led to significant cost savings for our engineering (fewer certification issues) and support teams (fewer firmware upgrade issues) when it comes to our Storage Sync integrations with multiple NAS vendors.
As a testament to the vision of Docker-based architecture, we see a huge demand from SMBs, enterprises, storage vendors and resellers wanting to embrace the hybrid approach on diverse hardware platforms. In order to meet the ever-growing demand to expand our product portfolio in the shortest possible time, the core architecture fundamentally has been built to be agile and flexible to work on any hardware platform with quick development, testing and packaging effort. Storage Sync currently works on five different hardware platforms, including, NetApp, Netgear and Synology, and we will add three more hardware platforms in the next couple of months. We created Storage Sync and the full portfolio of products across our platform to work seamlessly for any work environment, and this architecture helps us quickly meet the shifting needs of our customers.
Hari Krishnan is a Product Manager at Egnyte. He is responsible for Egnyte’s Storage Sync product and its integrations on associated platforms. Through his career, he has worked primarily in the storage industry with focus on distributed storage systems and wide area file systems. Hari has a bachelors degree from RV College of Engineering in Bangalore, India and has an MS in Computer Science from SUNY, Stony Brook.