Firstly, I need to create an appropriate environment to host my application. It will circulate across a set of servers, chosen according to my app's requirements and programming language it is written in. Each instance in CloudJiffy environment (like database, app server etc.) illustrate an independent virtual machine.
CloudJiffy supervises and provides support to my environment. For example, if instances need more resources, they are moved to more powerful hosts without the necessity of my manual interference. Additionally, CloudJiffy sends me an email notification whenever it makes any modifications to my environment.
The below guidelines will tell me the steps of environment creation, describing the available software stacks and additional possibilities the CloudJiffy provides. So, go through it;
1. Log in to the CloudJiffy dashboard with my credentials.
2. Click New environment in the upper left corner of the dashboard.
3. The Environment Topology dialogue box will be open. For starting, choose the programming language by clicking on the proper tab in the upper part of the dialogue box:
4. Here I can fully customize my environment settings.
- If I want to set up the load balancing, simply pick the NGINX-balancer node by clicking the Balancing button (also, it is automatically enabled if I use more than one server). Then, specify the resources limits for vertical scaling of my server (fixed and dynamic amount of cloudlets I want to use) in the centre section of the Environment topology window.
If I need an external IP address, switch on the Public IPv4 option (please note: this is a paid add-on).
Click the Application servers button.
- In the drop-down menu, choose the application server I want to use. There are many options available (as per my requirement) for different applications [ GlassFish (5.x,4.x.x), Jetty(6.1.26 ,8.1.17,6.1.26),TomEE+(7.0.x), Tomcat 6/7/8/9, Apache 2.4.6, and many more]
- I can change the cloudlet limits per server (vertical scaling) using the sliders (for a fixed and dynamic amount of cloudlets separately).
- Use the +/- buttons between the application server icons to scale my server horizontally (more or fewer nodes).
- In case of NodeJS or .NET usage, the only available version (Node.js 0.10 or .NET 4 correspondingly) will be chosen automatically.
- If I need it, I can switch the High Availability on for my Java application server. I can also attach the Public IPv4 address to my app server, regardless of the used programming language (please note: this is a paid add-on).
Using the Cache icon, I can add a Memcached Node.
Use the sliders to change the cloudlet limits for its vertical scaling.
Two sets of databases are available:
- NoSQL databases
Click on the SQL icon to activate an SQL Database. I can select the dadatbase as per my requirement: MariaDB(10.x.x,5.x.x), MySQL(5.7.x,5.6.x), PostgreSQL(10.x.x ,9.x.x), MSSQL 2012 and many more.
Then specify the cloudlet limits using the sliders. If I need it, switch on the Public IPv4 (please note: this is a paid add-on).
Click on the NoSQL icon to activate a NoSQL Database. Choose the desired database from the drop-down menu.
Then specify the cloudlet limits using the sliders. If I need a public IP, switch on the Public IPv4 option (please note: this is a paid add-on).
Additional options are also available such as :
- Build node(Maven)
To use Data Storage Container, enable the Extra Storage icon and specify cloudlet and disk limits for it.
A few other options are also available here, like setting a number of server instances, Sequential restart delay(to specify a particular time frame between restart of two containers within one layer) and Public IPv4 address enabling (note that it is a paid option).
If I want to use an Elastic Virtual Private Server (VPS), click on the same-named VPS icon, choose the required one via the appeared drop-down list (Centos 6.8, Centos 7.2, Ubuntu 16.04, Windows 2008 or Windows 2012) and scale it vertically by changing the cloudlet limits.
Note that VPS containers are provided with the automatically attached external IP address by default.
To use a Maven build-node (for Java projects), click the Build icon and specify the cloudlet limits for its vertical scaling using the sliders.
If I want to activate an SSL for my environment, click on the corresponding icon at the top part of the wizard frame (above topology blocks).
CloudJiffy gives me an opportunity to choose between CloudJiffy SSL (only application server is required) and Custom SSL (application server/NGINX balancer with Public IP is required).
In addition to the variety of available programming languages, the environment wizard contains one more special Docker tab, intended for creation of containers, based on Docker templates. Inside, I’ll find four equal blocks with different layer names to the left, where I can select any amount of Docker containers with required software (added either within just one section or to different ones).
Once a particular template’s slot is chosen (at the bottom part of the frame), I can specify the resources limits for it using the cloudlets sliders, attach the Public IPv4 address (please note: this is a paid option) or perform some basic container configurations through a separate graphics tool (Edit button).
Also, the above-mentioned SSL option is available for Docker-based environments (currently only the CloudJiffy SSL certificates are supported).
On the far right of the wizard, in the Resources (cloudlets) pane I will see the overall amount of selected cloudlets for all nodes in my environment, my discount, and Estimated cost.
Use the How Pricing Works and Quotas & Pricing links for getting more detailed information on resources consumption and price.
Finally, type a name for my environment and click the Create button.
My environments will be listed in the upper pane of the admin panel alongside the information about its status, deployed files and resources usage.