We released a new Node.js Sailor 2.6.26
which improves the communication and
speed with queueing system. In particular with new sailor we:
Here is the NPM package release link.
With the 21.27 release we improved the loading speeds of the execution threads. In this scope the following improvements were done:
We also added a new environment variable to the system (BRAN_RETENTION_MONTHS_MESSAGES
)
This variable defines the number of months to store the data for Executions page.
The default value is 1
(1 month).
We are in middle of constantly improving various aspects of HELM3 deployments in collaborations with our partners. These are updates and improvements done in this round.
To support external Redis service we made the service as optional and the HELM3 charts were changed accordingly. To use en external Redis service follow these steps:
values.global.services.maesterRedis.enabled
and values.global.services.cache.enabled
values as false
. This means both Redis services will not be deployed during the deployment.values.global.config.CACHE_REDIS_URI
: redis://uri-to-external.redis
,values.global.config.MAESTER_REDIS_URI
: redis://uri-to-external.redis
.An audit of HELM3 charts were performed to remove any sensitive data like keys, password and credentials from main charts. All sensitive data were migrated into the secrets.
In scope of this audit a new environment variable FRONTEND_SESSION_SECRET
was added.
Configure it in Values.global.config.FRONTEND_SESSION_SECRET
. It is required value,
without it the platform deployment would not work.
News in this section are for our customers who use OEM version of the elastic.io platform.
With 21.27 version we changed a logic of internal service communications.
All internal calls to the API would use internal API address from now on. For that
reason the parameter API_URI
environment variable value will be computed by Kubernetes
API service URL and not hard-coded. Here are the details of this approach:
API_URI
everywhere. The tenant record parameter responsible for this is data/attributes.api_domain
.EXTERNAL_API_URI
parameter.api.elastic.io
default in the platform UI when displaying the API address if not set in tenant.You can now control number of users in any contract in your tenant. This new
feature works through the platform quota service and has a unique API endpoint
/v2/quotas/per_contract_user_count_limit/TENANT_ID.CONTRACT_ID
.
Note: The default value of this quota is
-1
, which means unlimited.
As with all types of quotas you need global.quota_limits.edit
permission to
apply any values.
When the quota is set for a contract the following rules apply:
We extended the /sidedoor/quotatxns/sync
endpoint used to sync the quotas during
the release process. This endpoint must be called once to sync the correct numbers
of users in contracts and workspaces with the quotatxns
data base.
You must add an extra parameter that represents resource type to sync. Available
types are user
and workspace
. For example:
/sidedoor/quotatxns/sync/user
,/sidedoor/quotatxns/sync/workspace
.For this release you must call the following command to properly sync user data:
curl -u 'username@password' -X POST API/sidedoor/quotatxns/sync/user
You need to use have AccessManager.ACTIONS.GLOBAL.QUOTATXN.SYNC
permission to
work with these endpoints.
There is a known issue with sync
, it might return 504
if your DB contains large
number of contracts. The sync operations can take anywhere from 30 to 60 seconds
causing a timeout on HTTP proxy. However, the sync operation will continue in
background to a successful completion.
If you are running ClickHouse in replica set continue reading.
On this round of optimisation we optimised the bran
service by creating new
tables and views in ClickHouse. To apply you must run the following command
for each replica after the installation of 21.27 version:
docker run \
-e LOG_LEVEL=info \
-e AMQP_URI= \
-e MONGO_URI= \
-e BRAN_CLICKHOUSE_URI="http://localhost:8123/bran" \
--rm --network=host elasticio/bran:21.27 npm run start:migrate
Don’t forget to change the BRAN_CLICKHOUSE_URI
to your replica URL.
step_id
and related problems from amqp routing key in case when an old node.js sailor (earlier than 2.3.0
) library is used in the component.FRONTEND_SESSION_SECRET
is introduced.refresh_token
property is now optional for Access Token Response (also optional in OAuth2 standard).maester-client
library based on object-storage-client
library.2.6.24
.