How to create an environment

In this article, you will learn how to create an environment on our Virtuozzo PaaS service.

 

The first step of any application hosting is the creation of the environment with the required isolated containers. Virtuozzo PaaS provides a powerful and intuitive UI to create and configure environments up to your specific needs. This article will guide you through all the needed steps, giving an extended explanation of available specifics and features.

 

Step 1: Log in to the Virtuozzo dashboard and click the New Environment button in the upper-left corner.


 

Step 2: Within the opened topology wizard dialog, you can set up all the necessary customizations. We recommend performing adjustments in the following order:

 

  1. choose a programming language or specialized deployment solution (Docker Engine or Kubernetes Cluster)
  2. set up topology by adding required software stacks
  3. configure nodes resources and specifics
  4. review estimations, name the environment and confirm the creation

 

 

Below, we’ll review each of these points in detail, providing explanations of all of the recommended adjustments. The process may seem complex at the beginning, but after familiarizing yourself, you’ll be able to configure a new (or adjust existing) environment in under a minute.

 

Choosing Programming Language or Specific Deployment Option

 

As the first step of your environment creation, you need to select the deployment solution required for your project. Virtuozzo PaaS is an extremely versatile platform that supports multiple options for application development and hosting thus it suits even the most demanding clients.

 

  1. The most common and recommended choice (unless you are pursuing a specific application/architecture) is certified containers. These stacks are specifically configured and managed by Virtuozzo (e.g. version updates, security patches). By default, they support all platform features (scaling, automated deployment, redeploy, SSL, etc.) for the most smooth and convenient hosting and development.

 

The available Software Stack Versions can be found here.


 

Click on the tab with the required programming language (Java, PHP, Ruby, .NET, Node.js, or Python) tab to proceed with Virtuozzo certified containers.

 

  1. The other deployment options are available via the Docker tab. All the variants listed below utilize the basic Virtuozzo system container (so-called OS container), which makes them compatible with the most (but not all) of the platform-distinguishing features (e.g. vertical and horizontal scaling).


 

  • Custom Container Images - any Docker image (based on the supported OS) deployed into the system container. Compared to the managed containers, this option provides access to a greater variety of solutions, search the entire Docker Hub registry or use your private repository. However, the software's operability and compatibility with the platform cannot be guaranteed as the content is managed by respective image maintainers. It’s recommended to build custom container images based on Virtuozzo-certified images using FROM instruction.

 

  • Docker Engine - a Docker Engine CE deployed into the system container. It provides access to all the Docker native functionality, including deployment, scaling, and management of multiple application containers inside.

 

  • Kubernetes Cluster - ready-to-go Kubernetes cluster with a preconfigured control plane and worker nodes created based on the system containers. The deployment, scaling, and orchestration of the microservices inside are handled by Kubernetes control units, while Virtuozzo scales and manages the control plane and worker nodes.

 

  1. Also, it is recommended to select the preferred region (if available) before proceeding further.




Configuring Topology

 

You can configure environment topology via the left part of the wizard. Сonsider it as a constructor that helps you to create your environment. Here, the following blocks are available:

 

  • Load Balancers - stacks that operate as an entry point for the environment to distribute incoming requests and create even load on other nodes
  • Application Servers (compute nodes) - web servers that run your application
  • Databases (SQL & NoSQL) - database solutions to store and manage data
  • Cache Node - a Memcached object caching system for speeding up web applications through alleviating database load
  • Shared Storage - dedicated storage node with NFSv4 support, enlarged disk space, and optimized performance
  • Elastic VPS - virtual private servers on top of the CentOS, Ubuntu, Debian, and Windows OS
  • Build Node - a build automation tool for Java projects
  • Extra (custom layers) - any of the Software Stack Versions mentioned above


 

  1. Virtuozzo PaaS offers a number of the most popular options for each of these sections based on the default role. If you cannot find a required software solution, you can add it as a custom container from Docker Hub or your private repository by using the Docker Image option.


 

  1. An SSL protection can be configured for your environment via the same-named section. Here, two options are available:

 

Built-In SSL - enables an already trusted SSL certificate, avoiding any additional checks and saving your time on the certificate validation. However, it is applied to the default environment domain name only (i.e. with the hoster’s domain at the end) and does not work if public IP is attached to your servers.

Custom SSL - shows the pre-conditions of using your custom SSL certificates for the environment. Click the Enable button to automatically fulfill the requirements (e.g. enable Public IP) and refer to the linked instruction for further guidance.

 

Note: Also, you can apply the Let’s Encrypt SSL add-on after the environment creation to automatically issue and integrate a free SSL certificate.




Configuring Nodes Resources and Specifics

 

Once you are done with the topology structure, you can adjust each particular layer via the wizard’s central part. Let’s review the available options from the top to the bottom of the section.

 

  1. You can toggle a layer on/off, as well as provide a custom alias for it.


 

  1. Configure the automatic vertical scaling by setting the number of reserved and dynamic cloudlets (1 cloudlet = 128 MiB of RAM and 400 MHz of CPU) for the nodes within the layer.

 

 

Think of it as a minimum and maximum CPU & RAM capacities per server. It is worth mentioning that no matter how high the scaling limit is, only actually consumed resources are charged. This helps to overcome load spikes and, at the same time, not to overpay for unused memory or processor.

 

  1. The Horizontal Scaling part allows defining a number of nodes within the layer and choosing a preferred scaling mode (stateful or stateless).

 

 

You can use the drop-down lists to change stack and engine type/versions. In case of adjusting an existing environment, these lists will redirect to the container redeploy dialog in order to apply changes.

 

Note: Click on the gear icon for additional management options during scaling.





  1. Next, you need to configure additional settings.


 

  • Auto-Clustering - automatic clusterization for some Virtuozzo certified templates. Additional fields can appear after activation, e.g. scheme selection (master-slave, master-master, or Galera) for the database cluster.
  • Disk Limit - an amount of disk space reserved per node. The dedicated Shared Storage containers are usually provided with enlarged storage capacity.
  • Sequential restart delay - a delay between the restart operation completion on one node and the start on the other. It is used to avoid downtime, ensuring that at least one server is active. You can set it to “-1” for the simultaneous restart of all nodes within the layer.
  • Access via SLB - blocks access to the nodes of the layer via the platform Shared Load Balancer
  • Public IPv4 - attach the specified number of external IP addresses to each node within the layer

 

  1. At the bottom of the section, you can find buttons for the container configuration tools:

 

 

 

  • Variables - review and manage a list of the environment variables for the current layer
  • Links - interconnect layers inside the environment
  • Volumes - manage a list of the data volumes to ensure files integrity during the container lifecycle
  • Ports - view information about containers' ports
  • CMD / Entry Point - configure containers' Entry Point and Run Command





Reviewing and Confirming Environment Creation

 

After all the configurations are done, you can review the number of allocated resources and the estimated cost of the environment.

 

  1. The main resource measuring units in Virtuozzo PaaS are cloudlets. Here, you can see the number of reserved ones and the scaling limit (dynamic) for the whole environment.


 

For better analysis, the values are divided into the color-marked groups:

 

  • green - load balancers
  • blue - application servers
  • orange - databases and cache nodes
  • gray - all other stacks



  1. Next, you can view the Estimated Cost of your environment. The widget displays the price using the same color-marking as above, and you can change the period - hourly, daily, or monthly.

 

 

The FROM tab shows the price that will be fully charged as it covers reserved resources. The TO tab shows the maximum possible price if all nodes in the environment are going to fully consume all resources up to the scaling limit during the whole period.

 

Note: You can hover over the pricing widget to view extended details on the estimated cost calculation:


 

  1. Lastly, provide a name for your environment and click the Create button to proceed.


 

You have completed all required steps!!!

 

You may view the creation progress of your environment using the down-left tab with the name Tasks. 




After a few minutes, your environment will appear on the dashboard.




Now, you are ready for application deployment and further use of your cloud environment, Enjoy!

 

  • paas, environment, dashboard
  • 0 Users Found This Useful
Was this answer helpful?

Related Articles

How to enable and configure SSL at Jelastic

In this article, you will learn how to enable and configure SSL in your environment on our...

How to modify/change topology in an environment

In this article, you will learn how to modify/change topology in an environment on our Virtuozzo...

How to refill my account

In this article, you will learn how to refill the balance of your account for our Virtuozzo PaaS...

How to use Built-In Monitoring Jelastic's Dashboard

In this article, you will learn how to use Built-In Monitoring on our Virtuozzo PaaS service....

Instructions for Configuration Manager

This article will help with using the Configuration File Manager of our Virtuozzo PaaS service....