CloudJiffy 7.3 Release Notes

In this blog, you will find all of the new features, enhancements and visible changes included to the CloudJiffy 7.3 release.

Whats New :

Dashboard Performance Optimization

One of the major benefits the platform is renowned for is a versatile and robust user interface. It provides users with all the necessary tools to track and manage all hosted resources. However, when working with a large number of environments on the account (over 100), the drop in the dashboard’s performance can be noted. In order to resolve the issue and improve customers’ experience, several internal optimizations were applied in the 7.3 platform release to boost the operation speed when working with a lot of environments.

Among the applied changes, the most notable are:

  • significantly improved the dashboard initialization time
  • optimized operability in the Firefox browser
  • optimized floating menu, search, and environment list components

Ubuntu 22 Support

The platform introduces support of the latest Long Term Support release for one of the world’s most popular Linux distributions – Ubuntu 22.04 LTS (Jammy Jellyfish). The update integrates the base operating system template (for custom Docker containers) and adds the Ubuntu 22.04 VPS stack. Moreover, the distribution support is automatically available for all platform versions since the 6.0.2 release via the appropriate patches.

 

API to Move Public IPs

The new MoveExtIP API method allows moving external IP addresses from the source node to the target node. It complements the existing SwapExtIps API, making the management of existing public IPs more flexible. Additionally, the new method supports nodes with multiple IPs and can manage them in a single API call.

The following parameters should be specified for the MoveExtIP method:

  • envName – source environment name
  • session – user session or personal access token
  • sourceNodeId – source node ID (from the source environment)
  • targetNodeId – target node ID
  • ips – a comma- or semicolon-separated list of IP addresses that should be transferred (use “*” to move all the source node external IP addresses)

Note: The UI implementation of moving public IPs will be provided in future releases.

CloudJiffy supports the most popular operating system templates, which allows using multiple different solutions from Docker Hub as custom containers. Due to the recent CentOS Linux 8 end of life, the recommended alternative template was added to the platform – CentOS Stream 8. You can find a comparison of these two versions in the official documentation.

Note: Do not confuse OS templates (base image for containers) support with container templates

In the current 7.1 PaaS release, two new API methods were implemented for sending email notifications from the container to its owner. These methods provide automatic authentication based on the container IP address so that user session (password and login) is not required. Such implementation significantly simplifies notification of the container owner based on the events inside the node, which allows automating various scenarios that previously were difficult in realization.

Both new methods are part of the environment > node service:

  • SendEvent – sends a predefined event using IP authorization
    • eventName – the name of the required event; currently, the following values are supported:
      • SEND_NOTIFICATION – sends an email notification to the node owner
      • OOM_KILLER – sends a message after OOM Killer invocation
      • CUSTOM_NODE_EVENT – a user-defined custom event
    • params – JSON object with parameters for Cloud Scripting
  • SendNotification – sends an email notification to the node owner using IP authorization
    • name – title of the message
    • message – body of the message

The platform already utilizes these new methods to provide proper notification about changes in containers – for example, automatic notifications due to smart recovery after the OOM error. Developers can benefit from the implementation by extending their custom packages with automatic notification of the container owner based on some specific condition.

Changes:

Platform Optimizations

Below you can find a number of optimizations implemented in the current 7.3 release to boost performance and enhance the user experience when working with the platform:

  • Optimized SSL certificate requests to prevent a vast number of queries to the platform database. It results in a faster response of the hosted services in case of multiple simultaneous requests.
  • Improved the security of some platform cookies with the additional “HttpOnly” and “Secure” flags.
  • Changed the error code for the “limit_conn” problem from 503 to 429. The new code better corresponds to the generally accepted rule of code interpreting (i.e. 4xx – client error; 5xx – server error).

Show Logs Button in Dashboard Notifications

In the current 7.3 platform release, the ability to display the Show Logs button within the ‘warning’ and ‘error’ dashboard notification was implemented. Previously, such functionality was available for the ‘info’ notifications only. The implementation allows custom package developers to handle errors more naturally. Namely, the log file may contain additional information on the occurred issue and even some suggested resolution steps.

API Changes

Below, you can find a list of all changes to the public API in the 7.3 platform version (compared to the preceding 7.1 ones):

  • Implemented a new MoveExtIP API method (the binder service) that can move external IP addresses between containers and can operate with multiple IPs
  • Added a new GetBasicEnvsInfo API method (the control service) to improve the dashboard loading speed

Two new API methods were added to the environment > node service, implementing a simplified flow to notify the container owner (using IP authorization instead of user session):

  • SendEvent – sends a predefined notification based on the specific event inside a container
  • SendNotification – sends a custom email notification to the node owner

In order to extend the capabilities of the account collaboration feature even further and ensure the possibility of providing full access to the shared account, a new Execute CMD policy was added. If included in the collaboration role, it allows members to execute custom CMD commands on the shared environments. This permission may be required when installing some complex JPS solutions.

In the current CloudJiffy 7.2 release, the dashboard’s combo-boxes for environment selection were improved. For now, the displayed items provide better clarity by showing both the custom alias (if specified) and the environment name. Such implementation uniquely identifies the provided options and helps avoid possible confusion when several environments have similar aliases.

Fixed

Fixes Compatible with Prior Versions

Below, you can find the fixes that were implemented in the CloudJiffy 7.3 release and also integrated into previous platform versions by means of the appropriate patches.

#

Compatible from

Description

JE-60375anyAn invalid SSL certificate is issued when installing the Docker Swarm application with the Portainer option enabled
JE-62024anyThe file-sync add-on does not work with the LLSMP stack
JE-62554anyWildFly Cluster nodes are not displayed in the admin panel of the controller node
JE-62881anyAn error occurs when installing OpenSearch for the Magento or Magento Cluster application
JE-63203anyAn error occurs when installing the Magento or Magento Cluster application from the Marketplace
JE-63204anyAn error occurs when installing the IOTA application from the Marketplace
JE-571243.3The Eclipse Vert.x Thin Jar Builder application does not work after installation from the Marketplace
JE-601303.3The Rocket.Chat application does not work after restarting the environment
JE-602913.3The PrestaShop application does not work with the platform’s Built-In SSL feature
JE-605833.3An error occurs when installing the Eclipse Che package from the Marketplace
JE-619723.3An error occurs when installing the Let’s Encrypt add-on with a domain that has a redirect
JE-623633.3Cron tasks on all nodes of the layer should be cleaned up upon the Let’s Encrypt add-on removal
JE-624993.3Let’s Encrypt certificate update operation cannot be performed by the collaboration member
JE-632713.3An error occurs when installing the Drupal application from the Marketplace
JE-626845.3The Open Liberty application does not work in the Kubernetes Cluster
JE-604175.7The Galera Cluster application does not work after restarting the environment
JE-599515.9.2An error occurs when installing the Jira package from the Marketplace
JE-51420anyThe project is not updated by the Git-Push-Deploy add-on if the VCS auto-deploy option is disabled
JE-59566anyAn error occurs when installing the IOTA Node application from the Marketplace
JE-62033anyThe File Synchronization add-on does not support LiteSpeed and LLSMP stacks
JE-588663.3Redundant information in the error message if the Let’s Encrypt add-on installation fails
JE-621843.3The WAF module for the BitNinja add-on does not work on the nodes without public IP
JE-623853.3An error occurs when installing both BitNinja and Let’s Encrypt add-ons
JE-601235.0.5Errors in the opensearch-cluster.log file after the OpenSearch Cluster package installation
JE-610605.0.5An error occurs when connecting from the Apache Python application server to the PostgreSQL database
JE-616505.0.5Problems with installation of some RPM packages on the old MariaDB versions
JE-623745.0.5An error occurs when restarting Tomcat, TomEE, WildFly, and Apache Python nodes
JE-625605.0.5Nodes added via the horizontal scaling are not included in the MinIO Cluster
JE-475535.3An error occurs when establishing a connection from the WildFly admin panel to the database
JE-602865.4The sendmail process is not started within the Debian VPS container
JE-594715.7Database credentials are missing in the email when cloning an environment with the MySQL/MariaDB auto-cluster
JE-599185.7Data mounts are absent on the new WordPress Cluster nodes after horizontal scaling
JE-608605.7The gd library is missing for the WordPress packages based on the LiteSpeed application server
JE-587195.7.4An error occurs when changing the permalinks option for the WordPress Cluster on the LiteSpeed server with WAF enabled
JE-619255.7.4After the GlusterFS cluster redeployment, nodes added via horizontal scaling are not included in the cluster
JE-46279anyAn error occurs when installing the Minio Cluster package from the Marketplace
JE-57935anyErrors and warnings during the LiteSpeed and LLSMP stacks restart are displayed incorrectly
JE-58694anyWhen using the prepackaged Jitsi application, all users are disconnected upon any user being kicked or if the moderator leaves
JE-58696anyWhen using the prepackaged Jitsi application, audio and video are not working in conferences with multiple users
JE-61742anyAn error occurs when installing the IOTA Nodes application
JE-598973.3An error occurs when installing the Liferay prepackaged application from the Marketplace
JE-606853.3The prepackaged Odoo application is down after the application server restart
JE-618793.3An error occurs when installing the BitNinja add-on on the LEMP stack
JE-618873.3Credentials are displayed in one line in the success pop-up for the IOTA Nodes application
JE-619513.3The BitNinja add-on is not supported on some templates
JE-602725.0An error occurs when installing the JMeter JPS package
JE-613345.0Incorrect credentials are sent via email for the OpenVPN application from the Marketplace
JE-462945.0.5The Elytron subsystem is unavailable on the WildFly nodes after creation
JE-472225.0.5The HTTP/2 is not supported on some versions of the Apache PHP application servers
JE-482955.0.5The /var/lib/jelastic/backup directory is missing on the MongoDB database containers
JE-495775.0.5The yum install command is not working on the MongoDB database containers
JE-497625.0.5Errors in logs after restarting the MongoDB database containers
JE-500645.0.5The Let’s Encrypt add-on installation breaks symlinks in the Python application servers
JE-501305.0.5The Node.js restart hangs if called during the add project operation
JE-504135.0.5Incorrect response for the jem service start/stop/restart/reload commands on the VPS nodes
JE-504635.0.5Incorrect template version in the metainf.conf file for the NGINX PHP servers
JE-504725.0.5Incorrect path for the backup shortcut on the MongoDB nodes
JE-506335.0.5Empty template version in the metainf.conf file for the Percona servers
JE-507095.0.5The JavaEngine server based on OpenJDK 14 is down after deploying an application
JE-508905.0.5Warnings about the deprecated ssl directive are present in the NGINX load balancer logs
JE-509355.0.5Incorrect access permissions to the /var/log/redis/redis.log file on the PHP-based application servers
JE-520645.0.5Incorrect regex for deleting upstreams from load balances
JE-521605.0.5GlusterFS cluster is not operable after downgrading (redeploying to a lower version)
JE-532785.0.5Jetty servers are not accessible after installing the Let’s Encrypt add-on
JE-557255.0.5Incorrect permissions for the /usr/java directory on the JavaEngine stack with the Dragonwell JDK
JE-565705.0.5Invalid mbstring module configuration options in the php.ini file
JE-567055.0.5Incorrect error message for the unsuccessful Storage node restart
JE-569275.0.5An error occurs when installing the GitLab package from the Marketplace
JE-570135.0.5The /var/log/haproxy/haproxy.log file is not rotated via logrotate on the HAProxy stack
JE-574685.0.5An error occurs when disabling SSL on the Varnish stack
JE-577645.0.5An error occurs when adding new nodes to the MySQL cluster
JE-579945.0.5The Ruby application is down if installing Let’s Encrypt after removing the FTP add-on
JE-583265.0.5An error occurs when deploying an application on the GlassFish stack
JE-587335.0.5The btmp and wtmp files are not rotated via logrotate on the CentOS VPS stack
JE-593965.0.5Incorrect repository details on the NGINX PHP stacks
JE-599145.0.5The “cannot change locale” error occurs when connecting to the node via the SSH gate
JE-600165.0.5Custom SSL is unavailable on the Varnish nodes after redeploy
JE-604465.0.5Password information is missing in the email for the cloned PostgreSQL Cluster environment
JE-606625.0.5Incorrect permissions for the /etc/logrotate.d/nginx file on the NGINX load balancer stack
JE-618075.0.5An error occurs when deploying an application to the Apache Ruby stack
JE-529875.3.2Some instances of the WildFly auto-cluster clone are broken
JE-529905.3.2Removed worker instances are displayed in the WildFly DAS node
JE-537225.3.2Auto-clustering is not properly removed when deleting all WildFly nodes from the topology
JE-544545.3.2An error occurs when undeploying application from WildFly Cluster after removing the public IP address
JE-554185.3.2The WildFly application is down when enabling auto-clustering after redeployment from the old version to the one with the feature support.
JE-578725.3.2An error occurs when restarting WildFly nodes after adjusting the STANDALONE_MODE_CONFIG variable
JE-606915.3.2An error occurs when installing the WildFly Cluster prepackaged solution from the Marketplace
JE-616055.3.2An error occurs when deploying an application to the WildFly stack with JDK 17
JE-619595.4An error occurs when installing the MySQL Cluster package from the Marketplace
JE-519725.5Payara Cluster servers are down after restarting the environment
JE-523375.7An error occurs when cloning an environment with the WildFly auto-cluster
JE-536105.7An error occurs if removing worker nodes while logged into the WildFly DAS admin panel
JE-536915.7After environment migration, instances are displayed as stopped or broken in the WildFly DAS admin panel
JE-545305.7The maximum number of environments on the account should be verified when installing the Magento Standalone package
JE-504275.7.2The 404 Not Found error is displayed for the LLSMP applications deployed to the non-root context
JE-508425.7.2Warnings in the phpMyAdmin panel for the LLSMP stack
JE-509245.7.2Errors in the admin panel after the LiteSpeed/LLSMP node creation
JE-511415.7.2The phpMyAdmin folder is not available via FTP on the LEMP/LLSMP nodes
JE-573375.7.2The firewall is not working on the LiteSpeed ADC stack
JE-556725.7.4The GlusterFS Replication add-on should not be removable after configuring GlusterFS Cluster
JE-577395.7.4LiteSpeed ADC admin panel is not available via IPv6
JE-585755.7.4The force_kill function works incorrectly on the LiteSpeed ADC stack
JE-621735.7.4An error occurs when installing the TimeZone add-on on the Ubuntu and Debian VPS stacks
JE-520655.8Two controller nodes are added to the Extra layer when creating WildFly auto-cluster via the topology wizard
JE-529885.8The dashboard should display a button to access the WildFly DAS admin panel on the layer level (not for a separate node)
JE-540905.8An error occurs when creating the WildFly auto-cluster
JE-561675.8An error occurs when installing the Jenkins instance via the topology wizard
JE-611695.8Unclear UI for the Elastic Beats add-on installation frame
JE-611705.8Errors in CS logs after the Elastic Beats add-on installation
JE-611775.8Incorrect permissions for the /etc/heartbeat folder after the Elastic Beats add-on installation
JE-618465.8After the Elastic Beats add-on deletion, the /etc/heartbeat folder is not entirely removed
JE-616417.0An error occurs when installing the CDN add-on
JE-62351anyWorker nodes of the Couchbase CE Cluster are down after the package installation
JE-601343.3Incorrect Content-Security-Policy header in the NGINX configurations of the WebMail Lite package
JE-608343.3An error occurs when installing the Plesk package
JE-623795.3Worker nodes of the Couchbase CE Cluster are down after the environment restart
JE-617657.0If installed by a collaborator, the Open Liberty application is created without the Storage node

 

Bug Fixes

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

#

Affected Versions

Description

JE-332155.2An error occurs when backing up the containers during the dashboard operation
JE-407105.2Incorrect permissions for some authentication configuration files in containers
JE-504645.7.8Directory mounts are missing after container redeployment to the alpine-based image
JE-51538Slow response of the GetEnvs API method for environments with many external domains
JE-624547.0Incorrect escaping for special characters in the environment variables
JE-62724Password authentication should be disabled when connecting over SSH
JE-62906The autofs service start is delayed after the container restart
JE-62934An error occurs when creating nodes based on the httpd:2.4-alpine image
JE-62943An error occurs if the manually created firewall set has the same name as any of the system ones
JE-62946Insufficient permissions to attach/detach add-ons are provided via the Containers > Add-Ons collaboration policy
JE-62983Insufficient permissions to swap IPs are provided via the Environment > Managing > Edit Environment collaboration policy
JE-55128Environment transferring requests to yourself is not validated when executed via API
JE-55797An error occurs when installing required packages for the custom Docker containers
JE-566116.0Active shares should be unmounted after autofs timeout
JE-593716.1FTP add-on does not work in the cloned environments
JE-61758A warning notification is shown when starting the openrc-jelinit service on the alpine-based containers
JE-61760An error occurs when installing alpine-based custom Docker containers
JE-621286.0.6An error occurs when redeploying containers with modified configs
JE-623437.0.2An error occurs when removing a custom container from the topology via the dashboard
JE-62364The file manager tab in the dashboard does not automatically become operable after the layer restart operation is finished
JE-624577.0.2A collaboration member with full rights cannot download from the shared environment via the dashboard’s file manager
JE-62608An error occurs when starting the openrc-jelinit service on the alpine-based containers
JE-626107.0.2An error occurs when exporting billing history from the dashboard
JE-62615Incorrect escaping for the “!” symbol in the environment variable value provided via the dashboard
JE-62617An error occurs when trying to install an add-on from the Marketplace on the account without any environments
JE-62636Duplicated records in the configuration file after container redeployment failure
JE-626507.0Default placeholders are not replaced in the collaboration emails
JE-62664If billing history is downloaded for the specific environment and not the whole account, the filename should contain the appropriate environment name
JE-627267.1.2An error occurs when loading variables or redeploying a container if the first variable in the configs is empty
JE-62729An error occurs after the Spring Boot Thin Jar Builder package installation
JE-62804An error occurs when a collaboration member with the ‘Cost Estimation / Billing History’ policy tries to download billing history for the shared environment
JE-431245.5The disk IOPS value is not calculated on the containers
JE-45740The sendmail application is not available in containers
JE-509645.8The redeploy operation should check for enough disk space inside the container
JE-511065.8Exports records and iptables rules are not removed when unmounting a folder with the “+” symbol in the path
JE-52664The site cannot be reached after the FTP add-on installation on the GlassFish/Payara containers
JE-552345.9.4An error occurs when redeploying the Ubuntu VPS 10.04 container
JE-59950An incorrect launcher is used for entrypoint commands in custom containers
JE-607196.3An error occurs when transferring an environment to a user outside of the collaboration
JE-607957.0An error occurs when transferring an environment to a user in a “pending acceptance” collaboration status
JE-61892Invalid pgrep option error occurs when creating containers
JE-61942An unhandled error occurs when deploying a damaged archive to the PHP environment
JE-621567.0Incorrect wizard behavior when adding a template that does not correspond with the selected layer
JE-623787.0The “`” character is not properly escaped when defined in the container variables
JE-62393Permissions issue when installing JPS to the owner account as a collaboration member
JE-62393Permissions issue when installing JPS to the owner account as a collaboration member

 

 

 

Leave a Reply

Your email address will not be published. Required fields are marked *