Jelastic 5.5.1

This document is preliminary and subject to change.

In this document, you will find all of the new features, enhancements and visible changes included to the Jelastic PaaS 5.5.1 release.

Two-Factor Authentication

An additional security layer for Jelastic account, to ensure environments safety

Learn more
UI for Access Tokens

A user interface for the convenient personal access tokens management directly in the dashboard

Learn more
Go Archive Deployment

Implemented automated projects deployment from archives for the Go programming language

Learn more
Cloud Scripting Transfer Events

The new onBeforeConfirmTransfer and onAfterConfirmTransfer events added to Cloud Scripting

Learn more
Node Group Scaling Mode

A possibility to set the stateless (simultaneous) or stateful (sequential) scaling mode for environment layers

Learn more
API for Scaled Nodes Management

Refactored API methods for scaled nodes management to reduce the number of used parameters

Learn more
HelloWorld Package

Adjusted the universal HelloWorld package to ensure successful installation into all supported application servers

Learn more
Engine Versions Grouping

Simplified engine versions selection in topology wizard grouping them by type and major release

Learn more
Collaboration Adjustments

Hiding the inappropriate options of the environment owner during environment creation as the collaborator

Learn more
Cloud Scripting Console Optimization

Improved auto-refresh functionality for the Cloud Scripting console to simplify logs analysis

Learn more
Software Stack Versions

Actualized list of supported OS templates and software stack versions

Learn more
Bug Fixes

List of fixes applied to the platform starting from the current release

Learn more

Two-Factor Authentication

In order to massively increase your account safety, Jelastic PaaS implemented a possibility to set up access based on the two-factor authentication (2FA). As an additional layer of security alongside with your username/password credentials, the platform allows using access codes generated in the authentication application on your mobile phone (e.g. Google Authenticator). In such a way with 2FA enabled, even if someone gets your password, it won't be enough to connect to or manage your account.

The two-factor authentication can be enabled from a new Account section added to the Settings (accessible from the panel at the top of the dashboard). Here, you can manage your 2FA (set up, view recovery codes and disable) and change a regular account password.

account two-factor authentication

To successfully Set Up Two-Factor Authentication click the appropriate button and, after confirming the password, follow the displayed instruction to interconnect your authentication application and account (either scan the QR code or provide the required details manually). After the authenticator is configured, it will return a six-digit code, which should be provided in the dashboard to proceed. Next, you’ll be shown the recovery codes, which can be used as a one-time alternative to the authentication codes generated by the mobile app.

Note: Ensure your recovery codes are saved, as otherwise, in case of your phone unavailability, you won’t be able to connect to your account. Also, they are the only option to restore access upon device loss.

For accounts with configured 2FA, you can View Recovery Codes with the same-named button as well as generate a set of new codes (the old ones will no longer be viable) with the appropriate link. Also, it is possible to Disable Two-Factor Authentication, e.g. to rebind to another device. Both these actions require a password confirmation to be performed.

Be aware, that in order to manage accounts with 2FA via API, the access tokens should be used.

More info

Back to the top

UI for Access Tokens

Personal Access Tokens are the alternative way to authenticate API requests in Jelastic PaaS. Also, for the accounts with the two-factor authentication enabled, this option allows to avoid the complexity of the authenticator app code provisioning in custom scripts. So, within the 5.5.1 platform release, the appropriate subsection for Access Tokens is added to the Settings tab (accessible from the panel at the top of the dashboard).

Here, you can see the list of existing tokens (including ones created before UI addition, i.e. during previous releases) with the following information displayed in columns:
  • Description - custom description provided for token
  • API - the name of the predefined API requests set (IDE Plugins, Marketplace, Maven Plugin) or Custom one (hover over to view the exact methods)
  • Expires - the date the current token is valid till (the expired ones can be regenerated or deleted)
  • Last Used - the time of this token last usage
  • Created - the date of the creation

personal access tokens
The tools panel above the list provides access to the following buttons:
  • Generate - creates a new token by providing the description, expiration date and selecting the required API methods (either from predefined sets or manually)
  • Edit - adjusts the existing token or regenerates it (i.e. sets a new name, while maintaining all other parameters)
  • Copy - creates a new token using parameters of the existing one as a basis
  • Remove - deletes selected token
  • Refresh - displays the most recent changes to the list

All the token changes on account require an obligatory confirmation with the password before being applied.

More info

Back to the top

Node Group Scaling Mode

Starting with the Jelastic 5.5.1 upgrade, it is possible to explicitly set the scaling mode for each node group in the environment. Just select the required one using a new drop-down list in the Horizontal Scaling section of the topology wizard.

nodes horizontal scaling mode
There are two scaling modes:
  • Stateless - creates a new node from the base image template; the scaling is performed simultaneously
  • Stateful - copies file system of the master container into a new node; the scaling is performed sequentially (simultaneously during the initial layer creation)

The first option is comparatively faster, while the second one automatically copies all custom configurations (e.g. deployments or Custom SSL). Herewith, the transfer of custom files for the stateless mode can be done manually or configured via the Cloud Scripting automation.

The default scaling mode value is stateful for the load balancer, application server, VPS stacks and stateless for others. Herewith, when configuring a custom JPS package, the preferable scaling type can be defined with a new scalingMode property (using the new or clone value for the stateless or stateful mode respectively).

More info

Back to the top

API for Scaled Nodes Management

The API methods for the management of the scaled nodes (e.g. Deploy, DeployApp, RestartNodes, etc) were refactored to simplify their usage. Namely, the isSequential parameter was deprecated (but still available for the compatibility reasons) and its logic added into the delay one:
  • if set to “-1” - the called action will be performed simultaneously (i.e. altogether)
  • if the value is >= 0 - operations will be done sequentially (i.e. one by one) with the specified delay between actions
Note: In case both parameters are provided with contradictory values, e.g. isSequential = true and delay = -1, the delay will have a higher priority.
Currently, such a change is already integrated into the dashboard topology wizard, allowing to set the default restart delay for the layer (can be set differently during the operation itself).

sequential delay

Back to the top

Go Archive Deployment

Improving integration of the Go programming language, an ability to deploy Go project from the archive was implemented in the current Jelastic release. The deployment process is the same as for any other application server and could be done in a few clicks - just upload or provide a link to the archive with sources of your Go project and select the desired target environment. Optionally, configure any other configs (e.g. hooks or deploy strategy) and click Deploy for the platform to install your application automatically.

go project deployment from archive

Back to the top

HelloWorld Package Update

Jelastic PaaS provides and maintains a universal HelloWorld package, which can be deployed automatically on top of any certified application server stack. In such a way this solution supports all of the platform programming languages - Java, PHP, Python, Ruby, .NET and Node.js.

Due to the Go archive deployment integration within the current 5.5.1 release, the appropriate adjustments were applied to the HelloWorld package, ensuring its successful deployment into the Golang server. Also, to support the specifics of the Spring Boot Java application server, the .jar version of this solution was integrated into the package as well.

Back to the top

Engine Versions Grouping

Aiming to increase clarity and ensure better usability of the topology wizard, a grouping of the programming language engine versions was implemented. Now, the right-hand drop-down list within the Horizontal Scaling section automatically groups the available engine versions in the easy-to-find form, i.e by the major version (PHP 7.x.x, PHP 5.x.x) or type (JDK, OpenJDK, OpenJ9).

engine versions grouping

Also, as a part of this improvement, the displayed version names of the Java 7 and 8 engines were adjusted to match the latest releases pattern. For example, the old 1.8.0_172 denomination is now displayed as 8.0_172.

Back to the top

Collaboration Adjustments

When being included into collaboration with permission to create environments on the primary account, a user will be able to select Environment Owner through the appropriate pop-up. Starting with the present 5.5.1 Jelastic release, if a new environment cannot be created due to limitations of a particular account, the appropriate user email option will be hidden in the drop-down menu of the Environment Owner pop-up.

More info

Back to the top

Cloud Scripting Console Optimization

Cloud Scripting (CS) console allows tracking actions performed due to the JPS packages installation. It is accessible via the {hosterDomain}/console URL (should be already logged into Jelastic account) and provides real-time information on the CS code execution. Herewith, to keep the displayed data up to date, the Auto-Refresh feature can be enabled with the same-named button at the top of the page.

In the current 5.5.1 release, the behavior of the Auto-Refresh option was adjusted to simplify CS logs analysis:
  • automatic switching to the latest records will be performed only if scrolled to the bottom of the console (i.e. upon changing screen position, it won’t be jumping down, allowing to conveniently read/analyze logs)
  • upon selecting some text in the console, the Auto-Refresh feature will be immediately disabled
  • option re-enabling with the appropriate button will deselect text in the console

Back to the top

Software Stack Versions

Check out the list of the most accurate Jelastic software stacks for the current platform version:

StackJelastic 5.4.8
Apache Balancer2.4
Apache PHP2.4.6
Apache Python2.4
Apache Ruby2.4.34
CentOS 6 (VPS)6.8
CentOS 7 (VPS)7.2
Docker Engine CE18.03
GlassFish 44.1.2
GlassFish 55.0
Jetty 99.3.7
MariaDB 55.5.60
MariaDB 1010.3.7
MongoDB 22.6.11
MongoDB 33.4.0
MySQL 55.7.22
MySQL 88.0.11
NGINX Balancer1.12.2
NGINX Ruby1.14.0
NodeJS 66.14.1
NodeJS 88.11.3
NodeJS 99.11.1
NodeJS 1010.8.0
Payara 55.182
PostgreSQL 99.6.10
PostgreSQL 1010.5
Spring Boot2
Tomcat 77.0.88
Tomcat 88.5.31
Tomcat 99.0.8
Ubuntu (VPS)16.04
Varnish 44.1.8
Varnish 55.2.1
Varnish 66.0.0
WildFly 1010.1.0
WildFly 1111.0.0
WildFly 1212.0.0
WildFly 1313.0.0
Windows (VPS)2012
Open JDK1.7.0._181

Back to the top

Bug Fixes

In the table below, you can see the list of bug fixes applied to the platform starting from Jelastic 5.5.1 release:

Jelastic 5.5.1
JE-19106Email templates for some managed stacks are not provided with environment name and admin panel link
JE-28131The Add/Remove Nodes auto-horizontal scaling triggers are still ticked in UI after being automatically disabled due to the more than 100% and less than 0% load conditions
JE-34803Unhandled error during password reset on the MySQL node, after redeployment from the 5.7 version to the 5.6 one
JE-35161Crash report is not displayed, upon invoking the RestartNodesByGroup API method on the custom Docker container
JE-35199The long names of the Java engine versions are clipped in topology wizard
JE-35558The custom Docker containers based on the Ubuntu 16.10 cannot be created
JE-38074An error is displayed within dashboard task manager, while following tutorial as a trial user
JE-39861The email repors on the OOM killer execution within containers are not provided
JE-40002The project link displayed in the dashboard Deployments column is not updated for the Golang server after context redeploy
JE-40877The free resources displayed in the Quotas & Pricing window should be colored in green
JE-41094Incorrect engine versions order in the appropriate topology wizard list
JE-41152Dashboard tutorial is displayed incorrectly due to the corrupted styles
JE-41423When working with multiple mount points, the one selected after unmounting becomes unselectable
JE-41543Web SSH console is flickering during connection establishment
JE-41562Error, while creating Docker-based containers
JE-41757The redeploy operation fails, if container is busy with some external process
JE-41823Windows-based nodes are not accessible via RDP protocol
JE-41909After creating Couchbase cluster, the admin credentials should be sent for the master node only
JE-41915If the default description for access token is used, it should be automatically adjusted after switching to another API preset
JE-41942The “-1” value for sequential restart delay is not saved through the topology wizard
JE-41954The status for the password protected actions (e.g. 2FA and access tokens related) is not displayed in tasks manager
JE-41970Custom Docker containers based on the CentOS 6 image are missing the iptables-services package
JE-41988Some API requests cannot be authenticated by the access tokens with sufficient permissions
JE-41996Error, while cloning environment with a configured layers linking
JE-42109Error, while reading logs and redeploying custom Docker container simultaneously
JE-42120Incorrect description for the access tokens expiration date hint
JE-42178Error, while trying to authenticate the SignOut and CheckSign API methods with token
JE-42192Error, while trying to mount the Ubuntu/Debian Docker containers as storage

Back to the top