docs/content/stable/releases/ybdb-releases/end-of-life/v2.21-anywhere.md
What follows are the release notes for all releases in the YugabyteDB Anywhere (YBA) v2.21 series. Content will be added as new notable features and changes are available in the patch releases of the v2.21 series.
Build: 2.21.1.0-b271
Show Overridden Configs checkbox in runtime configs. PLAT-8389db_version label to universe_active_task_code for automated stats calculation related to DB version by the QA team. PLAT-12479trimWhitespace=false. PLAT-9662yba-installer upgrades with customized postgres by validating the useExisting option correctly. PLAT-12469installRoot config values for a smooth replicated migration process by adding a validation check before starting the migration. The check prevents installRoot from equating storage_path and considers the precheck type while creating the config. PLAT-12784,PLAT-12785ebs to disk in the disk failure detection script and service name. PLAT-12425switch to correct branch step in the update-version GitHub action for 2.20.* releases by treating yb_release_train argument as a string, which prevents branch misalignment. PLAT-12440pexlock created by root. PLAT-12445mv command usage across file systems during replicated migration, addressing failure issue when root install directory exists on a different file system. Also resolves minor logging issues. PLAT-12836skipProvisioning value instead of defaulting to false when editing the access key, retaining the manual provisioning settings in edit provider. PLAT-12393thirdparty- into the YBA tarball for simplified dockerfile changes. PLAT-12564sbt runPlatform flow and simplifying dockerfile changes by moving thirdparty- to the yugabytedb/managed repo. PLAT-12564sshPort value could be overridden to null, ensuring compatibility with Custom-AMI during universe creation. PLAT-12946sshPort value could be overridden to null, ensuring compatibility with Custom-AMI during universe creation. PLAT-12946sudo in the node-agent installer if the user is already running as root, beneficial for pbrun users. PLAT-13080Add instance type modal to avoid unintentional edits in the on-prem provider. PLAT-12641ERR_04120_TLS_HANDSHAKE_ERROR. PLAT-12703NullPointerException 500 server error during backup configuration retrieval. PLAT-12954Agent Status, Version, and Time since heartbeat in NodeAgent UI. PLAT-9847IAM Profile for non-AWS YugaByte Platform deployments, preventing task failure. PLAT-12181useIMDSv2 as deprecated at the provider level and moves it back to AWS cloud info. PLAT-13482This is a YugabyteDB-only release, with no changes to YugabyteDB Anywhere.
{{< warning title="Use 2.21.0.1">}} {{< /warning >}}
New YugabyteDB Kubernetes Operator
A preliminary version of the completely rewritten YugabyteDB Kubernetes Operator is available in Tech Preview. The new operator automates the deployment, scaling, and management of YugabyteDB clusters in Kubernetes environments. It streamlines database operations, reducing manual effort for developers and operators.
For more information, refer to the YugabyteDB Kubernetes Operator GitHub project.
backupServiceValidateCloudConfig, enhancing the reliability of backups and restores. A universe level runtime flag skip_config_based_preflight_validation is also added allowing users to skip these validations. PLAT-10725update_profile permission to ConnectOnly role, establishes a super admin check in the set runtime config key API, and prevents resetting of rbac runtime config. PLAT-11013,PLAT-11054,PLAT-11117OTHER.READ by default when UNIVERSE.READ is assigned, enhancing user's access to all associated resources. PLAT-11433yb.node_ops.leader_blacklist.fail_on_timeout, failing the StopNodeInUniverse operation if the leader blacklist doesn't complete within a set timeout. Beneficial for customers managing multiple failover layers to secondary databases. PLAT-11892follower_lag.max_threshold to allow control over the maximum time allowed for a tserver/master to lag behind peers. PLAT-10286ap-south-2 region into YBA, updates the AWS AMIs to 8.8, and includes previously absent availability zones in the AWS regions. PLAT-10407master_join_existing_universe parameter to false post cluster creation, offering atomic replacement without recreating the config files. PLAT-10511customer level runtime configuration, show_xcluster_config, that unveils the underlying xCluster configurations from DR setups in the xCluster tab for better troubleshooting. PLAT-10734replicated-migrate help message in ybctl for a more intuitive command flow, replacing its previous alphabetical order. PLAT-10970ts_live_tablet_peers metrics to YBA charts, indicating the count of tablet peers (including followers and leaders) on each node. PLAT-11258bootstrap with full copy, modifying the modal text for better clarity and updating buttons to capital case. Includes the DR replica name in the switchover and failover modal titles and adjusts the confirmation text for clearer user interaction. PLAT-11664bootstrapParams an optional field for set_tables API and allows for skipping table bootstrapping when not passed during add table. Simplifies create api payload by using bootstrapParams instead of bootstrapBackupParams. Optimizes table selection in database during replication removal, focusing on YSQL tables. PLAT-11678,PLAT-11618,PLAT-10622Create universe step for simplified setup. PLAT-11944Upgrade Kubernetes Universe task. PLAT-8423View Universe option to inspect the user intent of the created universe and the status of the primary cluster and read replicas if available. PLAT-11107createSupportBundle API: maxNumRecentCores to define the number of recent files to collect, and maxCoreFileSize to set a size limit for each file. Defaults for these fields are 1 and 25GB respectively, if not specified. PLAT-11505InstallYbcSoftwareOnK8s and UpdateKubernetesDiskSize.java tasks, enhancing task handling. PLAT-8425,PLAT-8426filePrefix field in logging_config and audit_logging_config APIs. PLAT-10223active field in the image bundles, hardens image bundle validation for region additions in the provider, and accommodates three types of bundles: YBA_ACTIVE, YBA_DEPRECATED, and CUSTOM. Transfers image bundle editing to the task and removes region references from the image bundle when the region is deleted. It now strictly fetches active:true image bundles for each provider & structure. PLAT-10363PREVIEW via @YbaApi annotation. PLAT-10438swaggerGen functionality. PLAT-10456useTablespaces boolean factor while listing backups. PLAT-10552yb_platform_backup.sh, addressing issues of the restore process failing due to inaccessible file paths. PLAT-10579yb_platform_backup.sh restore commands in version 2.18.3 by fixing the back_plat_version variable assignment and addressing the "no such file or directory" error while running pg_restore inside the container. PLAT-10579use_new_authz runtime flag, eliminating errors when adding new customers. PLAT-10618UNIVERSE.CREATE, setting allowAll=true and an empty resource UUID. PLAT-10640allowAll=false and empty resource UUID set in the new RBAC when creating or updating role bindings, restricts OTHER.SUPER_ADMIN_ACTIONS permission in custom roles, user assignment of SuperAdminrole to any role bindings, and scoping down of system defined roles. No longer pass resourceGroup in the payload for roleResourceDefinitions for system-defined roles. PLAT-10689serviceAccount in DB helm charts. PLAT-10691Restore Tablespace option for Incremental Backups, enhances the visibility of the Backup location button in Restore History, and removes the Aborted filter from Restore History. PLAT-10695su -c to run commands as a specific user, enhancing compatibility with corporate sudo whitelists. PLAT-10794Add GFlags, Add as JSON, and Apply Changes buttons on the GFlag UI page without UNIVERSE.UPDATE permissions. PLAT-10845ConnectOnly role by default when no system roles are assigned, enhances error messages for incorrect permissions in Create Role API, and sets OTHER.READ as a prerequisite for UNIVERSE.CREATE permission. PLAT-10692,PLAT-10891,PLAT-10840UNIVERSE.READ and OTHERS.CREATE permissions and deletion with OTHERS.DELETE and UNIVERSE.READ permissions. PLAT-10933disabled feature for the readOnly and backupAdmin roles, correcting the API call made while altering passwords. PLAT-10960yb-cleanup and ybc. PLAT-10990Create Backup buttons as disabled to prevent backup initiation on the tables page. PLAT-10993resourceType:OTHER,action:READ},{resourceType:UNIVERSE,action:READ},{resourceType:UNIVERSE,action:BACKUP_RESTORE},{resourceType:ROLE,action:READ},{resourceType:ROLE,action:UPDATE} PLAT-11025,PLAT-11028,PLAT-11017,PLAT-11009Backup tablespaces checkbox in the Backup tab when YCQL is selected as the API type, preventing unnecessary selections. PLAT-11073specificGFlags with tserverGFlags/masterGFlags. Supports both UI and API users in terms of gflags with temporary measures for older approaches. PLAT-11207useTserver in the yb_backup.py script for successful backup operations on k8s and universes with dedicated master nodes, fixing S3 V2 backup failures. PLAT-11260Submit button on the updated TLS modal for users with insufficient permissions, preventing a 401 error. PLAT-11295onlySupportedForXCluster API query string to list only supported tables. PLAT-11352xClusterSupportedOnly query parameter instead of onlySupportedForXCluster when setting up replication. PLAT-11352Custom date picker is used in the metrics tab of the Universe page. PLAT-11358bad request error instead of silently failing when attempting to edit a role name, and now issues a 409 status for role name conflicts. PLAT-11436Save button issue on read replica form during primary cluster creation. PLAT-11487enable_rollback_support runtime flag with New DBVersionWidget across all universe states, and blocks actions based on upgrade states. Maintains old upgrade flow for XCluster universe. PLAT-11334,PLAT-11336,PLAT-11333,PLAT-11332,PLAT-11536enable_rollback_support for better management of finalize/rollback upgrade APIs. PLAT-11544yba universe upgrade software command for easier universe software upgrades. PLAT-11553Include Future Universes when Create Universe is selected as a role permission. PLAT-11675Connect Only role for users without built-in roles. PLAT-11676enableYbc in upgrade payload, and disables UI elements for unauthorized operations. PLAT-12078build:ci and build scripts. PLAT-12094node_export temporary directory. PLAT-12213unavailable errors when accessing the server via http. Ensures HSTS and other high-priority security-related headers like X-Content-Type-Options can be added per user requirements, especially in versions 2.18+ where nginx won't be used. PLAT-9109no-ssl flag in yb_backup.py. PLAT-9397401 unauthorized http status if RBAC is enabled. PLAT-9700last modified time only for affected nodes in a cluster, preventing erroneous resize errors in AWS. PLAT-11345yb_platform_backup.py script for better performance on Kubernetes installations, enhancing backup and restore functions by targeting the correct version metadata files. PLAT-11354terminationGracePeriodSeconds in YugaByte's helm chart. PLAT-11531no changes applied by the edit universe. Resolves issue of increasing node size in RR clusters failing. PLAT-11810live graphs, and removes the configure RPO step from DR config creation. Additionally, it ensures fixed time interval data won't auto-refetch and introduces the ability to view top k nodes/ namespaces/ tables. PLAT-10283allow_volume_decrease configuration for seamless instance type transitions from I3.2xLarge to I3.xLarge in AWS. PLAT-10325Create Alert page by hiding the default destination option if no default destination is previously set by the user. PLAT-10340Nothing changed! response if only the second phase fails. PLAT-10409Create Universe software version dropdown, potentially smoothing out universe creation workflow. PLAT-10481help showing in YB's Prometheus data scrapes by passing show_help=false to metrics endpoint. PLAT-10489waitForDataMove always executes to prevent data loss, and performs better cluster checks in removal processes. Additionally, includes a new runtime config yb.always_wait_for_data_move for more behavioral control. PLAT-10522yb.always_wait_for_data_move from RUNTIME-FLAGS.md, ceasing instance alive checks on node stop and removal. PLAT-10522.row definition to the base of the backup. PLAT-10548ToBeRemoved state as Live, thus preventing the invalid parallel backups error during backup processes. PLAT-10599yb-file when proxy is enabled, ensuring accurate pick-up at customer end. PLAT-10620Could not find last PowerState for VM error. PLAT-10630kubectl and SSH. PLAT-10632lock only and freeze, enabling run validations between these phases. The update doesn't necessitate any API alterations except for a task type addition. PLAT-10705isTserver and isMaster fields, ensuring effective navigation in the nodes/pods section. PLAT-10717CheckUnderReplicatedTablets subtask for easier troubleshooting. PLAT-10736Replicated to YBA Installer Migration, caused by hardcoded restore directory paths, enabling seamless system upgrades without backup failures. PLAT-10806ywFileDataSynced is completed and disableSyncDBStateToFS is true, saving startup time. PLAT-10820always_backup_tablespaces runtime flag to hidden and defaults to false. PLAT-10867ReleaseInstanceFromUniverse task, incorporating new task freezing changes and relocating pre-check for release node. PLAT-10883Retry Task button next to the Universe name and navigates to the Task tab upon retrying a failed task. PLAT-10905updateSucceeded bit to false by default prior to universe creation, preventing incorrect display of a validation success indication in the UI. PLAT-10924load_balancer_initial_delay_secs gflag to increase the default timeout to 8 minutes, ensuring greater accuracy in the waitForDataMove function after master leader failover and preventing potential data loss. PLAT-10931formik with react-hook-form in the create DR config modal, providing a link to the storage config page for users without any storage setups, and delivering minor design updates. PLAT-11103provision_instance.py script and node agent certificates, enhancing migration from Yugabundle to YBA-installer, and resolving issues with full movement failures in high availability/replication scenarios. PLAT-11124,PLAT-11123prom_snapshot, fixing a regression causing backup restore failures on CentOS 7. PLAT-11216edit DR modal is removed for clarity. Future changes are planned to allow users to modify their replication lag and bootstrap storage config uuid settings. PLAT-11379ansible_runner.sh, preventing failures for YBM. PLAT-11450kubeConfig on K8s provider edit, addressing a bug causing universe creation failures on autofill local K8s providers after editing. PLAT-11464validateRestoreOverwrites call up to parent restore task to prevent xCluster bootstrapping failure, only activating on the first try but not on retries. PLAT-11468Backup Failed to Restore Failed in the restore history tab for clarity. PLAT-11489hostPath from the Yugabyte helm chart, eliminating any confusion without impacting the database's operation or capacity usage. PLAT-11597force delete is checked. PLAT-11637-classic and -core Java packages in your home library to version 1.2.11 for more advanced capability. PLAT-11662ReadOnlyClusterDelete action to still run if the universe is broken. PLAT-11702mainTableUUID field to index tables list for improved cross cluster replication control and allows table details retrieval using either table uuid or table id. PLAT-11771isBootstrapRequired RPC call using the is_bootstrap_required_rpc_pool.max_threads runtime config. PLAT-11841RbacValidator component to remaining DR actions. PLAT-11987isYsqlAuthEnabled function to process specific GFlags instead of using deprecated tserverGflags. Ensures accurate determination of Ysql auth status. PLAT-12066api/v1/login and api/login endpoints, enabling continuous itest/API access and customerUUID details retrieval after HA failover. PLAT-12154gceApplicationCredentials property by converting it from JsonNode to String, ensuring the property lists in swagger. Ensures backward compatibility for old API users. Recommends iTest/UI to use a stringified json format. PLAT-12156- instead of current date for indefinite backup expiry, enhancing backup details readability. PLAT-12241CheckNodeSafeToDelete subtask for delete read replica clusters ensuring quicker deletion process. PLAT-12242details construct. PLAT-12293Edit Universe task, node details are now saved and user intent is kept unchanged until the end of the task, allowing better task progress tracking. PLAT-6752Upgrade Gflags task on Kubernetes, resolving issues caused by helm non-idempotency. PLAT-8427nodePrefix remains unaltered. PLAT-8586wait_for_server_ready.timeout that replaces the static 10-minute wait to cater to users with a massive number of tablets requiring extended local bootstrap time. PLAT-8632yb.wait_for_clock_sync.inline_enabled to false. Effectively manages clock skew. PLAT-9452accessKey in NodeConnectModal.js and displays <private key> in the access command if the actual private key is unfindable. PLAT-10613submitting state until the API request has processed fully, preventing multiple submissions and ensuring users understand when their request is being processed. PLAT-10646database over keyspace, reflecting a terminology preference as users primarily use YSQL. Fixes a grammatical error in the source universe text. PLAT-10745yugabyte user reads/executes the file on OS's where these files are not automatically created. PLAT-10930yb-prebuilt-ami. This specifically includes installing cgconfig services on CentOS, potentially affecting server_base_linux.yml. PLAT-11870active releases, and viewing the latest releases on refresh. Allows importing new releases by URL or file upload. PLAT-12061,PLAT-12060,PLAT-12059,PLAT-12062,PLAT-12250centos during the instance creation for GCP via API or UI eliminating provider invalidation and hang issues. PLAT-9007make, adding commands like yba auth for API Key connection, yba provider list to list current customer providers, and supporting CRUD operations for Providers and Universes. PLAT-10500,PLAT-10499,PLAT-10498bring your own encryption in transit workflow, providing more detailed instructions for the verification process and explaining when a client certificate is needed. PLAT-10799sprig for a cleaner and more streamlined codebase. PLAT-11105replicated-migrate to be hidden by YBA_MODE=ea; modifies help text to state that replicated-migrate is now in Early Access (EA). The YBA_MODE flag changes from dev to ea. PLAT-11274