Jelastic on Top of Azure Cloud for Highly-Loaded Applications
Last year Jelastic PaaS announced the support of Microsoft Azure platform resources. Today we`d like to describe the technical structure of this integration and the main results of our cooperation.
Currently, from the technological point Jelastic platform is interrelated with Azure in two ways:
- It can be installed onto Azure IaaS and you’ll get your own private cloud. At the same time, there will be used virtual machines, virtual network and high performing storage system of Azure.
- Computing resources from different regions of Azure can be connected to Jelastic Cloud, that is installed at your own data center. In this way, a customer gets a turnkey hybrid cloud. This workflow is popular among clients, who lack their own computing resources, and adding extra permanent capacity to the data center is not reasonable due to the variable load. Let`s take as an example the Christmas sale that lasts just several days and then decreases. In this case, new virtual machines from Azure can be dynamically connected for applications scaling. Containerized technology allows Jelastic to migrate applications between Private Cloud and Azure regions live without downtime. This solution greatly simplifies the process of applications migration between data centers, making it completely transparent and secure.
Both above-mentioned solutions can be installed automatically from the Azure Marketplace.
The use case of autoscaling into Microsoft Azure Public Cloud is also very popular among big customers. Azure Cloud is available in lots of countries worldwide and allows to reduce network delays and the time that is required to transfer data. In addition, we have integrated Azure Traffic Manager in order to organize the highly-available geo-balancing.
Now let’s take a look at the technical side. Jelastic architecture includes a set of management services written in Java. Among these services are smart orchestrator, systems of security, statistics, billing, templates pool management, etc. Also, there is a dedicated entry point, that consists of reverse Nginx proxy server and Bind domains server. HTTP and TCP-requests to end-users` environments are passed through this entry point and distributed across specific applications.
Below you can see the environment topology that is the most widely used among Jelastic customers:
- 2 Nginx servers for load balancing
- 2-4 Java-application servers (GlassFish/Tomcat/JBoss) with http-sessions data replication
- SQL database with replication (PostgreSQL, MariaDB, Percona)
- NoSQL database with replication (MongoDB, Redis, Cassandra, Neo4j)
The application deployment was smooth and easy, but still we had to adapt the established architecture a bit to meet Azure requirements. Now we can share several issues we faced and solved:
- Low productivity of the Azure Premium Storage on Linux. The reason was in the improper size of the file system block, used by default. When we changed the block size from 63 to 4096, the disk subsystem performance of Azure Premium Storage was increased in several times.
- A strong filtering of network packets in virtual networks. This problem appeared because we use virtual containers distributed across several Azure machines, and at the same time Jelastic manages the internal containers network. This issue was solved by creating an overlay network, that works according to our requirements.
- The limitation of external IP-addresses number that can be assigned to a single virtual machine. Currently, you can assign not more than 2 external IP-address for one VM. Since one Azure VM may operate several virtual containers, they may require more than 3 IP-addresses. And this was solved by using Reserved IPs.
Working with Microsoft Azure and having our platform within Azure Marketplace, we are gaining several aims:
- Enlarging the number of big customers, who are interested in PaaS for Java and other Open Source technologies over Microsoft Azure
- Co-selling Jelastic and Microsoft to enterprises, including international markets
Currently, we have already achieved excellent results:
- Several international companies got interested in our solution on top of Azure. Among them is one of the biggest oil companies from Latin America.
- Promotion within Microsoft Go-to-Market program. In particular, this program includes blog publications and social media support, the success story in the Microsoft Resource, grant on the marketing campaign and other activities.
We’ve got reasonable benefits while using Azure as IaaS for Jelastic platform. It enables to significantly simplify and speed up the Jelastic installation for customers. Previously this process could last about several days and required the involvement of our engineers. Now, with the help of Azure Marketplace users can deploy the isolated Jelastic cluster by their own just in half an hour. Our developers and operation engineers spent about a month and a half, packaging the Jelastic solution for Azure Marketplace, but this expenditure was repaid in 3-4 months.
Check out the easiest way of the Jelastic cluster deployment, stay tuned and subscribe to our blog!