Release 4625: Tweaked checking interval in the PHP-FPM GONE slayer
This release includes a slight optimization in how we handle requests that are already processing where visitors of Magento shops click away when the server is under high load. Smart request handling on Hypernode On Hypernode servers we do various things to filter out unnecessary work. Under normal load these mechanism aren’t really noticeable but…
Read moreRelease 4615: Ported Hypernode memory management daemon to Python 3
Hypernode OOM monitor In this release we have ported our memory management daemon from Python 2 to Python 3. For more information about the Hypernode OOM monitor see this earlier changelog. If you are using hypernode-vagrant please do a git pull and a box update. See this pull request for details. Magerun Additionally we have…
Read moreRelease 4589: Brotli enabled on all Hypernodes, PHP 7.0.25
In this release we have enabled Brotli on all Hypernodes. Google Brotli Compression Brotli is the often requested generic-purpose lossless compression algorithm by Google that can achieve a compression ratio of 20 to 26% higher than their previous Zopfli compression algorithm. This can give the performance of your shop an edge in low bandwidth situations…
Read moreRelease 4566: Increased NGINX map_hash_bucket_size
In this release, we have increased the NGINX map_hash_bucket_size from the default 64 to 128. This change will allow longer lines in map includes. This is convenient in situations like the external whitelist include we describe in this article about Magento and smarter 404 handling. For example, the app/force404.txt in that article will now be…
Read moreRelease-4475: Multi-threaded magerun-hypernode cache warmer, PHP update and more
Multi-threaded cache warmer In this release we’ve once again deployed a new version of magerun-hypernode. This time with a great new feature by the people at Tickles. This update makes the hypernode cache warmer multi-threaded so it can warm the cache for multiple pages at the same time. To specify the amount of concurrent requests…
Read moreRelease-4453: Renamed hypernode-importer3 to hypernode-importer
In this release we have renamed the new version of the hypernode-importer to hypernode-importer (before it was named hypernode-importer3). The old version of the hypernode-importer will not be completely removed yet, but instead has been renamed to hypernode-importer-legacy for backwards compatibility. For more information about changes in the new importer, see this earlier changelog. Other…
Read moreRelease-4424: Bugfix for maintenance mode in hypernode-importer3
This release brings a minor bugfix for hypernode-importer3 (and the service panel importer). Previously if the –set-maintenance-on-source flag was used to set the original shop in maintenance mode, the importer would fail if the maintenance mode flag was removed on the Hypernode the shop was imported on before the entire import had been completed. Because…
Read moreRelease-4310: Updated PHP 7 to 7.0.23
We have updated our PHP 7 version to 7.0.23. For a complete list of changes see the PHP 7 ChangeLog. We will be deploying this update gradually over all Hypernodes this week.
Read moreRelease-4398: hypernode-magerun magerun2 modules installed system wide
In this Hypernode changelog we discuss the latest changes made to the hypernode-magerun package and the hypernode-image-optimizer. Hypernode-magerun In this release we’ve updated the hypernode-magerun package to install some modules for magerun2 system wide. Currently this only includes the hypernode:performance command. $ magerun2 | grep hypernode hypernode hypernode:performance Generate a performance report based on sitemaps….
Read moreRelease 4373: Importer improvements, log parser bugfixes and more
This release brings a new version of hypernode-importer3, some bugfixes for hypernode-parse-nginx-log and various changes to our cloud operations job processing backend. Magento path discovery in the importer is now breadth first The hypernode-importer3 tool will now find the top level Magento in the specified path. If a path was supplied that contained a Magento…
Read moreRelease 4366: PHP 5.6 is now the default for new Magento 1 Hypernodes
From now on when a new Magento 1 Hypernode is created the default PHP version will be 5.6 instead of 5.5. Magento 2 Hypernodes will still be created with PHP 7.0 as the default setting. PHP 5.6 is a lot faster than PHP 5.5, check out this benchmark of an unoptimized Magento 1 shop with…
Read moreRelease-4352: Updated magerun-hypernode
We’ve added a new version of magerun-hypernode to our repositories. Changes since the last release: [ Jochem Klaver ] * Fixing #46 hypernode:patches:list matching the inconsistent patch names in applies.patches.list (#47) * Do not list reverted patches as applied [ Timon de Groot ] * Make command hypernode:performance available for n98-magerun2 * Add information to…
Read moreRelease-4293: New hypernode-importer3 with Magento 2 support
In the past month we re-wrote the hypernode-importer from scratch to fix a couple of issues, added some new functionalities and made it more efficient. Now it supports Magento 2, handles special characters in database passwords and imports the database and file-system in parallel. Hypernode-importer3 – loads of new options The original hypernode-importer will still…
Read moreRelease-4236: Gzip vector based images by default and more
In this release GZIP compression in NGINX for vector based images is enabled by default. In the past this was already configurable by adding custom GZIP types to your NGINX config, but enabling this in the default config is a sensible default. The following image formats are now compressed: image/svg image/svg+xml image/eps. Suggested by Mark…
Read moreRelease-4220: Patch NGINX CVE-2017-7529, PHP5.6 in hypernode-vagrant
Last night NGINX issued a security advisory for versions 0.5.6 – 1.13.2 regarding an integer overflow issue in the built-in range filter module. This issue could potentially allow denial of service or disclosure of worker process memory if abused. Our NGINX build has been patched to fix this issue. The patched version is nginx/1.13.2. We…
Read moreRelease-4176: Enhanced brute-force detection, NeoPi and libfcgi
Today we deployed some changes to the code of our emergency rescue strategy. In case a Hypernode goes down as a result of a saturated PHP-FPM queue we try to detect malicious patterns in the pending requests running on the FPM workers. If the request pattern across the server looks like a brute-force attack or…
Read moreRelease-4164: Varnish 4.1.3 and Nginx 1.13.1
Today we will be gradually rolling out a version update of Varnish and Nginx on the Xenial Hypernodes. Nginx will be upgraded from nginx/1.10.2 to nginx/1.13.1. The changelog for the differences between these versions can be found here. Our current 1.10.2 build has IPv6 disabled, which we expected to be fine since the Hypernodes do…
Read moreRelease-3943: Xenial hypernode-vagrant
Over the past couple of weeks we’ve been very busy preparing to upgrade Hypernode to the latest LTS version Ubuntu 16.04 Xenial. While for Hypernode we highly modify the Ubuntu base, upgrading to this newer version will have many advantages like newer releases of various packages. For Hypernode we build all important parts of the…
Read moreRelease-3774: Mitigate CVE-2017-6074 and firewall known bot networks
Today’s release implements two security measures on Hypernode. Yesterday a new double-free vulnerability was announced in the Linux kernel. We’ve implemented some rules to mitigate this vulnerability until all nodes are running the new patched kernel. Additionally we’ve seen an increase on brute-force attacks on the Magento /downloader. In this release we blacklist a range…
Read moreRelease-3732: Let’s Encrypt Nginx configs are generated without www. prefix
Today we will update the hypernode-ssl-config-generator so that it generates Nginx server definitions without a www. prefix in the server name. This additional server_name was unneeded because dehydrated only creates certificates for the domain you specified, not automatically also a www. domain. A new config will automatically be generated the next time you run dehydrated…
Read moreRelease-3657: Whitelist Sendcloud
This release contains a change to the default Nginx whitelist that makes SendCloud exempt from the standard bot ratelimit. The FPM slot limit still applies. Users can further configure their ratelimiting settings in the Nginx config in /data/web/nginx. Also in this release: more tweaks to the WAF for yesterday’s RCE mitigation The Cart2Quote development team…
Read moreRelease-3636: New WAF rules to mitigate RCE in two plugins
We’ve added new rules to our web application firewall to block hacking attempts relating to a remote code execution exploit found in the EM_Ajaxproducts and Ophirah_Qquoteadv plugins. We scanned all Hypernodes, if your shop had any of these two plugins installed you will have received an email with more specific information. Other changes in this…
Read more