BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage News Jelastic Joker 4.0 released with Advanced Docker Features

Jelastic Joker 4.0 released with Advanced Docker Features

Jelastic, a PaaS and container based IaaS provider, released Joker (Jelastic + Docker) 4.0 with advanced Docker features including horizontal scaling for containers and support for stateful containers with live migration.

Joker 4.0 supports both horizontal and vertical scaling of “environments”, which are collections of containers that run in isolation and provide the entire stack for running an application. The horizontal scaling feature lets the application developer add (or remove) copies of a container. This is useful in cases where traffic rises unexpectedly and the number of containers needs to be increased to handle it. Other container IaaS services like Google Container Engine and Amazon ECS also offer horizontal scaling. Incidentally, both AWS ECS and Jelastic support automatic horizontal scaling via a trigger mechanism. For AWS the triggers can be implemented using AWS services like CloudWatch, SNS and Lambda whereas in Joker the triggers can be set directly from the UI.

The live migration feature lets Jelastic provide vertical scalability to containers when applications demand more resources. Multiple application containers usually share a server. When an application running in a container needs to scale, i.e. requires more resources, other containers running on the same server can be migrated to another server so that resources are freed up for the one needing them.

During such live migrations, “data persistence is ensured by using a ploop, filesystem backend for containers, distributed cloud storage (that supports ploop) and CRIU technology (checkpoint/restore in userspace)”, said Ihor Kolodyuk, Jelastic’s director of technologies. CRIU is a Linux tool that makes it possible to freeze a running application and store it as a checkpoint to persistent storage for later revival. He also said that vertical scaling using live migration is useful for legacy applications that were not designed for scaling and applications that have a stateful design, like Solr.

Docker volumes let data be persisted outside the container’s lifecycle by bypassing the Union File System that Docker uses. Volumes were introduced in Docker in order to be able to save (persist) data and share data between containers. This release of Jelastic adds support for Docker volumes including a section for managing them in the UI.

Another new feature is support for container redeployment that lets one preserve existing configurations while a container is redeployed to a newer version. An option called “Sequential Deployment” can be chosen to avoid downtime when there are multiple identical containers that need to be updated. Enabling sequential deployment updates the containers one after another. When a container is being updated it is unavailable but the others continue to serve requests so that the end user never sees downtime.

Jelastic, which supports multiple technologies in its PaaS offering, utilizes Docker for managing its “environments”, which are collections of containers that run in isolation and provide the entire stack required for running an application. The company has made improvements to Docker’s core technology to achieve the features in the Joker release. According to the full list of features, the Joker release also includes a UI redesign for better user experience, custom domains for Docker, software defined storage for containers, a CLI client and support for Centos 7 as a container OS. It also adds better integration with Virtuozzo. Virtuozzo is a commercial solution built on top of OpenVZ, which is a container virtualization tool for Linux. The Docker engine was also upgraded from 1.6.2 to 1.8 to support Docker Registry 2.x repositories.

Rate this Article

Adoption
Style

BT