What's new in the YugabyteDB Anywhere v2024.1 STS release series
What follows are the release notes for all releases in the YugabyteDB Anywhere (YBA) v2024.1 series. Content will be added as new notable features and changes are available in the patch releases of the YBA v2024.1 series.
For an RSS feed of all release series, point your feed reader to the RSS feed for releases.
Replicated end of life
The 2024.1 release series is not available for installation using Replicated.
YugabyteDB Anywhere is ending support for Replicated installation at the end of 2024.
If you have a Replicated installation, you must migrate from Replicated to YBA Installer before upgrading YBA to v2024.1. See Migrate from Replicated.
Changes to supported operating systems
YugabyteDB 2024.1.0.0 and newer releases do not support v7 Linux versions (CentOS7, Red Hat Enterprise Linux 7, Oracle Enterprise Linux 7.x), Amazon Linux 2, and Ubuntu 18. If you're currently using one of these Linux versions, upgrade to a supported OS version before installing YugabyteDB v2024.1.0. Refer to Operating system support for the complete list of supported operating systems.v2024.1.0.0 - June 4, 2024
Build: 2024.1.0.0-b129
Third-party licenses: YugabyteDB, YugabyteDB Anywhere
Download
Highlights
Enhanced Postgres Compatibility Mode EA
We're pleased to announce the early access of the new Enhanced Postgres Compatibility Mode in the 2024.1.0.0 release. This mode enables you to take advantage of many new improvements in both PostgreSQL compatibility and performance parity, making it even easier to lift and shift your applications from PostgreSQL to YugabyteDB. When this mode is turned on, YugabyteDB uses the Read-Committed isolation mode, the Wait-on-Conflict concurrency mode for predictable P99 latencies, and the new Cost Based Optimizer EA that takes advantage of the distributed storage layer architecture and includes query pushdowns, LSM indexes, and batched nested loop joins to offer PostgreSQL-like performance.
You can enable the compatibility mode by setting the following flags on a universe:
yb_enable_read_committed_isolation=true
ysql_enable_read_request_caching=true
"ysql_pg_conf_csv": "yb_enable_base_scans_cost_model=true,"
"yb_bnl_batch_size=1024,"
"yb_fetch_row_limit=0,"
"yb_fetch_size_limit=1MB,"
"yb_use_hash_splitting_by_default=false"
Note: When enabling the cost models, ensure that packed row for colocated tables is enabled by setting the --ysql_enable_packed_row_for_colocated_table
flag to true.
New Yugabyte Kubernetes Operator TP
The new Yugabyte Kubernetes Operator is a powerful tool designed to automate the deployment, scaling, and management of YugabyteDB clusters in Kubernetes environments. It streamlines database operations, reducing manual effort for developers and operators.
YugabyteDB Anywhere (YBA) CLI TP
YBA CLI is a brand-new open-source tool written in GoLang that's used to interact with YBA using shell commands. With minimal configuration, you can start running commands from the command line, providing functionality equivalent to that offered by the browser-based YBA interface and YBA REST APIs.
New features
-
Kubernetes Resource Specification. You can configure CPU and memory needs for YB-TServer and YB-Master pods natively, instead of using the instance types API. EA
-
Replace node. With this new node action, you can directly replace a database node in a universe with a new one to handle problematic nodes.
-
Rollback after database upgrade. Ability to roll back an upgrade to the pre-upgrade release. (The release from which the database was upgraded). You can roll back a database upgrade only to the pre-upgrade release.
-
Database registration simplification. Simplification of process for registering database versions (and their binaries) with YBA. The UX has been dramatically simplified. EA
-
Force update of EIT certs. If EIT certs expire, customers can now "force update" the replacement of certs with new ones, removing the need to call Technical Support. EA
-
Support for OIDC groups in YugabyteDB Anywhere. In support of role-based access control (RBAC), ability to assign YugabyteDB Anywhere roles to groups from an OIDC-based Identity Provider. EA
-
Decoupling. YBA can now be upgraded to a version without requiring its database universe(s) to be upgraded. Versioning is now independent. This is enabled by features including, a published compatibility matrix and database registration simplification.
-
YBA HA enhancements. Simplified user experience for active/passive YBA deployments.
Change log
View the detailed changelog
Improvements
- Changes the clock skew alert threshold from 500ms to 250ms, enabling detection of clock skew issues before TServer starts crashing, giving users more reaction time. PLAT-13249
- Now includes previously missed migration settings and properly reloads system units during restart. PLAT-13330,PLAT-13331,PLAT-13340
- Introduces an adjustable 1-minute delay to AutoFlags promotion before undertaking any other action. PLAT-13139
- Fixes the failure of admin user DDL due to concurrent DDLs across all cloud providers. PLAT-13221
- Modifies the password reset URL to a new URL on the platform. PLAT-13510
- Alerts now raise 30 days prior to certificate expiry for better visibility, reducing the risk of missed expiration. PLAT-13348
- Displays clear optional tags and tooltips for Azure provider's
Network Resource Group
andNetwork Subscription ID
fields for better understanding when to fill them. PLAT-12546 - Adds
ikeep
to the XFS mount options to mitigate possible key duplication in the block cache. PLAT-13192
Bug fixes
- Bypasses clock sync check on a node if
chronyc
is not installed. PLAT-13137 - Enables the retrieval of api_token from the HA follower, supporting existing automation functions. PLAT-13274,PLAT-13267
- Adds missing cloud regions in YBA's metadata, keeping it in sync with available regions for EKS/GKS/AKS Kubernetes providers. PLAT-13374
- Modifies node metrics file creation to explicitly set permissions, ensuring accessibility despite custom system umasks. PLAT-13378
- Fixes LDAP validation to correctly identify the first instance of
ldap
using regex with whitespace characters. This eliminates previous false validations. PLAT-13575 - Disables weak
C
grade ciphers for key exchange to prevent security threats. Adjusts cipher suite list for Prometheus, allowing modification during installation/upgrade to disable certain ciphers. Ensures onlyA
grade ciphers with key size greater than 2048 bits are used, enhancing security against potential attacks. PLAT-9590 - Allows users to filter out resolved alert notifications via WebHook channel configuration. PLAT-13506
- Corrects the checksum mismatch in the V342 migration to ensure successful upgrades from 2.14 to later branches. PLAT-13977
- Prevents universe chain upgrade failure from 2.0 to 2.18 and 2.20 by ensuring the clock-script doesn't run during yb-process start command if it's not present or executable. PLAT-13444
- Prevents
Edit Universe
modal from wrongly displaying master placement asPlace Masters on the same nodes as T-Servers
for a dedicated universe, providing accurate universe creation details. PLAT-13445 - Enables handling of release artifacts that come with sha1 or md5 checksums after release migrations. PLAT-13716
- Deprecates the change_password API due to lack of current password confirmation and introduces a new reset_password API that ensures increased account security by identifying the user through the Auth/API token only. PLAT-10472
- Enables better handling of Gflag upgrade failure in Dual NIC case, rectifying issues with communication using secondary IPs. PLAT-13223
- Allows for consistent loading of the placement modal in the create universe form regardless of the selected provider. PLAT-13294
- Tunes GC generation sizes and fixes WSClient memory leak, also disables process metrics collector to prevent growing memory allocation over time. PLAT-13619
- Adjusts tab display in the UI to prevent hiding due to addition of xCluster Disaster Recovery and CDC Replication Slots tabs. PLAT-13678
- Restores initialization of the local instance's last backup time during HA sync for accurate updates. PLAT-13708
- Fixes inconsistency in auto-generated YBA bundles, enabling correct default configuration when YBA version is bumped for AMI. PLAT-13796
- Removes the misuse of defaultImageBundle in universe when custom AMI is specified using YBA's machineImage. PLAT-13800
- Allows error-free query for releases with artifacts of a specific deployment type by excluding artifacts without a linked release. PLAT-14057
- Enables direct file copying when creating a tarball for seamless third-party packages incorporation. PLAT-12564
- Allows raising universe level alerts when the YBA Node Agent is down for over a minute. PLAT-12835
- Allows starting a new master in stop or remove node with AZ UUID or region name for uniqueness. PLAT-12886
- Shifts the
useIMDSv2
field from AWS cloudinfo to the ImageBundle details for better provider creation payload configuration. PLAT-12967 - Corrects the NTP Clock Sync health check failure on Amazon Linux 2 CIS hardened image. PLAT-13000
- Enables preflight check validation for image bundles during provider creation/editing on AWS, preventing creation with missing AMI in corresponding region. PLAT-13111
- Resolves rare memory pressure issue causing
bad_alloc
exception in RunOp queue and clearstablets_to_ip
map before retry to prevent unwarranted uploads. Increases YBC client and server version. PLAT-13157 - Allows editing the number of read replicas in K8S from both the backend and UI without error. PLAT-13163
- Allows Kubernetes to refresh certificates using YBA Universe metadata's
rootCA
rather than taskParams, enhancing data backup integrity during a task failure. Resolves aunder replicated
error in node-to-node root certificate rotation, maintaining stability. PLAT-13172 - Increases the YBC client and server version to 2.1.0.0-b8, solves the issue with deletion of backups on certain NFS mount points. PLAT-13197
- Adds a database version check to prevent software upgrade failures on xcluster universe. PLAT-13204
- Allows recognition of custom alert names for replication lag by using the
template
field instead of thename
field on the YBA UI, increasing alert configuration flexibility. PLAT-13211 - Allows Python to access seobject library via
policycoreutils-python-utils
on Alma9 for SSH port registration. PLAT-13276 - Allows fetching the updated provider object from the database thereby ensuring correct SSH port configuration during bundle setup, preventing generation of bundles with wrong ports. PLAT-13325
- Allows sort by version, date, and release state, and changes "copy file path" string to "copy file name". PLAT-13350,PLAT-13362
- Adjusts migration names to successfully upgrade from
2024.1.0.0-b32
to2024.1.0.0-b35
avoiding previous errors. PLAT-13379 - Relocates the IMDSv2 toggle to the image bundle details on AWS provider creation page, improving customization per image bundle. PLAT-13429,PLAT-13333
- Adds a tooltip in the UI to explain the requirement of OIDC provider metadata. This offers guidance for configuring YBA in an air-gapped mode. PLAT-13446
- Supports the inclusion of
unknownField
in theuserIntent
from subsequent configure calls. PLAT-13462 - Changes made to fall back to YugabyteDB's default AMI for YugabyteDB managed bundles if the AMI is not available in a particular region. For custom bundles, there's no fallback mechanism and it will fail early in situations where the respective AMI is missing. Dependency on region to ybImage removed. PLAT-13500
- Adjusts Universe create and upgrade UI workflows to use the new ybdb_releases API, recommending suitable DB versions. PLAT-13435,PLAT-13519
- Fixes UI crash tied to running DeleteNode after the last placement update task failure. PLAT-13546
- Fixes the JS error causing unresponsiveness when clicking on the
In-Use Universes
tab in the releases page. PLAT-13549 - Simplifies AWS/GCP/AZU provider settings by eliminating the
useTimeSync
toggle whensetUpChrony
is already enabled. Addsenable_imdsv2_support
runtime flag to AWS provider form and allows toggling of IMDSv2 in YBAManged Imagebundle. PLAT-13551,PLAT-13536 - Disables kamon status page module to tackle security concerns. PLAT-13563
- Ensures the
Upgrade Available
link only appears when upgrades are genuinely present and makes the CDC link clickable. PLAT-13677,PLAT-13675 - Allows manual backups on HA standby nodes without interfering with the node's later promotion to primary. PLAT-13683
- Resolves Jenkins build errors by using an older version of a dependency causing issues. PLAT-13690
- Allows rerun of GFlagsUpgrade task without the AreNodesSafeToTakeDown precheck, making task retries successful. PLAT-13703
- Removes NGINX from Yugaware charts branch 2024.1 and updates the version in the upgrade chart to 1.25.2. PLAT-10837
- Allows adding Aarch Linux Version even without any other aarch linux versions in AWS provider. PLAT-13744
- Fixes an issue that caused data from newer backups to be wrongly restored during the restoration of older backups. PLAT-13905
- Resolves the issue of universe creation failure due to incorrect Image Bundle UUID by using the specified ec2-user. PLAT-14004
- Displays error when a selected zone doesn't contain any available nodes during universe configuration. PLAT-12959
- Ensures index tables aren't overlooked when computing bootstrap parameters, preventing failure when adding a table to a database already containing an index. Also removes options to add/remove index tables in transactional xCluster configs. PLAT-13308
- Allows users to pass depreciated fields when editing a provider, ensuring compatibility with providers created using legacy APIs. Fixes issue where providers created on version 2.14 were not editable through UI. PLAT-13394
- Now generates necessary artifacts correctly when ReleaseMetadata contains both a local and a helm chart, and ensures inclusion of local helm charts on YBAd restart. PLAT-13558,PLAT-13561
- Ensures generation of YBA-managed bundles even if
yugaware_property
contains legacy ones, paving the way for successful version comparison and patching. PLAT-13681 - Skips checks for
ListLiveTabletServers
API for YugabyteDB versions earlier than 2.8 to prevent chain upgrade failures. PLAT-13657 - Ensures automatic setting of default image when creating a universe, enhancing user experience. PLAT-13722
- Displays correct SSH port in the connection modal on user interface. PLAT-13754
- Enables proper import/export of universe with newer releases, preventing attach/detach universe failures. PLAT-13761
- Eliminates deprecated
vnetName/securityGroupId
fields from the region object during provider editing. PLAT-14802 - Corrects the retrieval of autoflags from the target universe, ensuring tserver autoflags, not master autoflags, are compared during backup procedures. PLAT-13161
- Marks
useIMDSv2
as deprecated at the provider level and moves it back to AWS cloud info. PLAT-13482 - Updates YBC client and server versions to 2.1.0.0-b9, removing an error condition for multiple master leader addresses and enhancing Java client's resilience to short network outages. PLAT-13529
- Now correctly reads inherited provider level runtime config values on Universe Form, enhancing geo-partitioning functionality. Fixes a bug with incorrect readings if values were not set at the provider level. PLAT-13606