Yandex Cloud
Search
Contact UsTry it for free
  • Customer Stories
  • Documentation
  • Blog
  • All Services
  • System Status
  • Marketplace
    • Featured
    • Infrastructure & Network
    • Data Platform
    • AI for business
    • Security
    • DevOps tools
    • Serverless
    • Monitoring & Resources
  • All Solutions
    • By industry
    • By use case
    • Economics and Pricing
    • Security
    • Technical Support
    • Start testing with double trial credits
    • Cloud credits to scale your IT product
    • Gateway to Russia
    • Cloud for Startups
    • Center for Technologies and Society
    • Yandex Cloud Partner program
    • Price calculator
    • Pricing plans
  • Customer Stories
  • Documentation
  • Blog
© 2026 Direct Cursus Technology L.L.C.
Yandex StoreDoc
  • Getting started
    • All guides
      • Information about existing clusters
      • Creating a cluster
      • Updating cluster settings
      • Yandex StoreDoc version upgrade
      • Stopping and starting a cluster
      • Managing cluster hosts
      • Migrating hosts to a different availability zone
      • Managing backups
      • Managing cluster access
      • Deleting a cluster
  • Access management
  • Pricing policy
  • Terraform reference
  • Monitoring metrics
  • Audit Trails events
  • Public materials
  • Release notes

In this article:

  • Before version upgrade
  • Upgrading the cluster version
  • Updating the cluster compatibility version
  • Examples
  1. Step-by-step guides
  2. Clusters
  3. Yandex StoreDoc version upgrade

Yandex StoreDoc version upgrade

Written by
Yandex Cloud
Updated at February 6, 2026
  • Before version upgrade
  • Upgrading the cluster version
  • Updating the cluster compatibility version
  • Examples

You can only upgrade your Yandex StoreDoc cluster to the next sequential version, e.g., from 4.2 to 4.4. Upgrading to subsequent versions must be done incrementally. For example, upgrading Yandex StoreDoc from version 4.2 to 8.0 is performed in the following sequence: 4.2 → 4.4 → 5.0 → 6.0 → 7.0 → 8.0. Before each cluster upgrade stage, you must update the cluster compatibility version.

Alert

After the upgrade, it is impossible to revert the cluster to a previous version.

Before version upgradeBefore version upgrade

  1. Make sure the upgrade will not disrupt your applications:

  2. Review the MongoDB release notes to learn how upgrades may affect your applications.

  3. Try upgrading a test cluster. You can deploy it from a backup of the main cluster.

  4. Back up your main cluster before upgrading.

  5. Make sure the cluster compatibility version matches the current cluster version. If necessary, upgrade the cluster compatibility version.

Upgrading the cluster versionUpgrading the cluster version

Management console
CLI
Terraform
REST API
gRPC API
  1. Open the folder dashboard.
  2. Navigate to the Yandex StoreDoc service.
  3. Select the cluster you need from the list and click Edit.
  4. Select the new version number in the Version field.
  5. Click Save changes.

Once you launch the upgrade, the cluster status will change to UPDATING. Wait for the operation to complete and then check the cluster version.

  1. Retrieve the list of your Yandex StoreDoc clusters using this command:

    yc managed-mongodb cluster list
    
  2. Get the target cluster details and check the config.version setting for its Yandex StoreDoc version:

    yc managed-mongodb cluster get <cluster_name_or_ID>
    
  3. Start the Yandex StoreDoc upgrade:

    yc managed-mongodb cluster update <cluster_name_or_ID> \
       --mongodb-version=<new_version_number>
    

    Once you launch the upgrade, the cluster status will change to UPDATING. Wait for the operation to complete and then check the cluster version.

  4. After the upgrade, all non-backward-compatible Yandex StoreDoc features will be disabled. To remove this limitation, run the following command:

    yc managed-mongodb cluster update <cluster_name_or_ID> \
       --feature-compatibility-version=<new_version_number>
    
  1. Open the current Terraform configuration file describing your infrastructure.

    To learn how to create this file, see Creating a cluster.

  2. Add or update the version field in the Yandex StoreDoc cluster description:

    resource "yandex_mdb_mongodb_cluster" "<cluster_name>" {
      ...
      cluster_config {
        version = "<Yandex_StoreDoc_version>"
      }
    }
    
  3. Validate your configuration.

    1. In the command line, navigate to the directory that contains the current Terraform configuration files defining the infrastructure.

    2. Run this command:

      terraform validate
      

      Terraform will show any errors found in your configuration files.

  4. Confirm resource changes.

    1. Run this command to view the planned changes:

      terraform plan
      

      If you described the configuration correctly, the terminal will display a list of the resources to update and their parameters. This is a verification step that does not apply changes to your resources.

    2. If everything looks correct, apply the changes:

      1. Run this command:

        terraform apply
        
      2. Confirm updating the resources.

      3. Wait for the operation to complete.

For more information, see this Terraform provider guide.

Timeouts

The Terraform provider sets the following timeouts for Yandex StoreDoc cluster operations:

  • Creating a cluster, including by restoring one from a backup: 30 minutes.
  • Editing a cluster: 60 minutes.

Operations exceeding the set timeout are interrupted.

How do I change these limits?

Add the timeouts block to the cluster description, for example:

resource "yandex_mdb_mongodb_cluster" "<cluster_name>" {
  ...
  timeouts {
    create = "1h30m" # An hour and a half
    update = "2h"    # Two hours
  }
}
  1. Get an IAM token for API authentication and place it in an environment variable:

    export IAM_TOKEN="<IAM_token>"
    
  2. Call the Cluster.Update method, e.g., via the following cURL request:

    Warning

    The API method will assign default values to all the parameters of the object you are modifying unless you explicitly provide them in your request. To avoid this, list the settings you want to change in the updateMask parameter as a single comma-separated string.

    curl \
       --request PATCH \
       --header "Authorization: Bearer $IAM_TOKEN" \
       --header "Content-Type: application/json" \
       --url 'https://mdb.api.cloud.yandex.net/managed-mongodb/v1/clusters/<cluster_ID>' \
       --data '{
                "updateMask": "configSpec.version",
                "configSpec": {
                  "version": "<Yandex_StoreDoc_new_version>"
                }
              }'
    

    Where:

    • updateMask: Comma-separated list of settings you want to update.

      Here, we provide only one setting.

    • configSpec.version: New Yandex StoreDoc version.

    You can get the cluster ID from the list of clusters in your folder.

  3. Check the server response to make sure your request was successful.

  1. Get an IAM token for API authentication and place it in an environment variable:

    export IAM_TOKEN="<IAM_token>"
    
  2. Clone the cloudapi repository:

    cd ~/ && git clone --depth=1 https://github.com/yandex-cloud/cloudapi
    

    Below, we assume that the repository contents reside in the ~/cloudapi/ directory.

  3. Call the ClusterService.Update method, e.g., via the following gRPCurl request:

    Warning

    The API method will assign default values to all the parameters of the object you are modifying unless you explicitly provide them in your request. To avoid this, list the settings you want to change in the update_mask parameter as an array of paths[] strings.

    Format for listing settings
    "update_mask": {
        "paths": [
            "<setting_1>",
            "<setting_2>",
            ...
            "<setting_N>"
        ]
    }
    
    grpcurl \
        -format json \
        -import-path ~/cloudapi/ \
        -import-path ~/cloudapi/third_party/googleapis/ \
        -proto ~/cloudapi/yandex/cloud/mdb/mongodb/v1/cluster_service.proto \
        -rpc-header "Authorization: Bearer $IAM_TOKEN" \
        -d '{
              "cluster_id": "<cluster_ID>",
              "update_mask": {
                "paths": [ 
                  "config_spec.version"
                ]
              },  
              "config_spec": {
                "version": "<Yandex_StoreDoc_version>"
              }
           }' \
        mdb.api.cloud.yandex.net:443 \
        yandex.cloud.mdb.mongodb.v1.ClusterService.Update
    

    Where:

    • update_mask: List of settings you want to update as an array of strings (paths[]).

      Here, we provide only one setting.

    • version: New Yandex StoreDoc version.

    You can get the cluster ID from the list of clusters in your folder.

  4. Check the server response to make sure your request was successful.

Note

After the upgrade, all non-backward-compatible Yandex StoreDoc features will be disabled. To remove this limitation, update the cluster compatibility version.

Updating the cluster compatibility versionUpdating the cluster compatibility version

Updating the cluster compatibility version is necessary when you need to:

  • Upgrade your cluster to a new version (when the compatibility version does not match the current cluster version).
  • Enable the new Yandex StoreDoc features after the cluster upgrade.

To learn more about backward compatibility, refer to the MongoDB documentation.

Alert

Updating the cluster compatibility version is irreversible.

Management console
CLI
Terraform
REST API
gRPC API
  1. Open the folder dashboard.
  2. Navigate to the Yandex StoreDoc service.
  3. Select the cluster you need from the list and click Edit.
  4. In the Compatibility version field, select the required version number.
  5. Click Save changes.
  1. Retrieve the list of your Yandex StoreDoc clusters using this command:

    yc managed-mongodb cluster list
    
  2. Get the target cluster details and check the config.feature_compatibility_version setting for its Yandex StoreDoc version:

    yc managed-mongodb cluster get <cluster_name_or_ID>
    
  3. Run the cluster update command, providing the new compatibility version:

    yc managed-mongodb cluster update <cluster_name_or_ID> \
       --feature-compatibility-version=<Yandex_StoreDoc_compatibility_version>
    
  1. Open the current Terraform configuration file describing your infrastructure.

    To learn how to create this file, see Creating a cluster.

  2. Add or update the feature_compatibility_version field in the Yandex StoreDoc cluster description:

    resource "yandex_mdb_mongodb_cluster" "<cluster_name>" {
      ...
      cluster_config {
        feature_compatibility_version = "<Yandex_StoreDoc_compatibility_version>"
      }
    }
    
  3. Validate your configuration.

    1. In the command line, navigate to the directory that contains the current Terraform configuration files defining the infrastructure.

    2. Run this command:

      terraform validate
      

      Terraform will show any errors found in your configuration files.

  4. Confirm resource changes.

    1. Run this command to view the planned changes:

      terraform plan
      

      If you described the configuration correctly, the terminal will display a list of the resources to update and their parameters. This is a verification step that does not apply changes to your resources.

    2. If everything looks correct, apply the changes:

      1. Run this command:

        terraform apply
        
      2. Confirm updating the resources.

      3. Wait for the operation to complete.

For more information, see this Terraform provider guide.

Timeouts

The Terraform provider sets the following timeouts for Yandex StoreDoc cluster operations:

  • Creating a cluster, including by restoring one from a backup: 30 minutes.
  • Editing a cluster: 60 minutes.

Operations exceeding the set timeout are interrupted.

How do I change these limits?

Add the timeouts block to the cluster description, for example:

resource "yandex_mdb_mongodb_cluster" "<cluster_name>" {
  ...
  timeouts {
    create = "1h30m" # An hour and a half
    update = "2h"    # Two hours
  }
}
  1. Get an IAM token for API authentication and place it in an environment variable:

    export IAM_TOKEN="<IAM_token>"
    
  2. Call the Cluster.Update method, e.g., via the following cURL request:

    Warning

    The API method will assign default values to all the parameters of the object you are modifying unless you explicitly provide them in your request. To avoid this, list the settings you want to change in the updateMask parameter as a single comma-separated string.

    curl \
       --request PATCH \
       --header "Authorization: Bearer $IAM_TOKEN" \
       --header "Content-Type: application/json" \
       --url 'https://mdb.api.cloud.yandex.net/managed-mongodb/v1/clusters/<cluster_ID>' \
       --data '{
                "updateMask": "configSpec.featureCompatibilityVersion",
                "configSpec": {
                  "featureCompatibilityVersion": "<Yandex_StoreDoc_compatibility_version>"
                }
              }'
    

    Where:

    • updateMask: Comma-separated list of settings you want to update.

      Here, we provide only one setting.

    • configSpec.featureCompatibilityVersion: New Yandex StoreDoc compatibility version.

    You can get the cluster ID from the list of clusters in your folder.

  3. Check the server response to make sure your request was successful.

  1. Get an IAM token for API authentication and place it in an environment variable:

    export IAM_TOKEN="<IAM_token>"
    
  2. Clone the cloudapi repository:

    cd ~/ && git clone --depth=1 https://github.com/yandex-cloud/cloudapi
    

    Below, we assume that the repository contents reside in the ~/cloudapi/ directory.

  3. Call the ClusterService.Update method, e.g., via the following gRPCurl request:

    Warning

    The API method will assign default values to all the parameters of the object you are modifying unless you explicitly provide them in your request. To avoid this, list the settings you want to change in the update_mask parameter as an array of paths[] strings.

    Format for listing settings
    "update_mask": {
        "paths": [
            "<setting_1>",
            "<setting_2>",
            ...
            "<setting_N>"
        ]
    }
    
    grpcurl \
        -format json \
        -import-path ~/cloudapi/ \
        -import-path ~/cloudapi/third_party/googleapis/ \
        -proto ~/cloudapi/yandex/cloud/mdb/mongodb/v1/cluster_service.proto \
        -rpc-header "Authorization: Bearer $IAM_TOKEN" \
        -d '{
              "cluster_id": "<cluster_ID>",
              "update_mask": {
                "paths": [ 
                  "config_spec.feature_compatibility_version"
                ]
              },  
              "config_spec": {
                "feature_compatibility_version": "<Yandex_StoreDoc_compatibility_version>"
              }
           }' \
        mdb.api.cloud.yandex.net:443 \
        yandex.cloud.mdb.mongodb.v1.ClusterService.Update
    

    Where:

    • update_mask: List of settings you want to update as an array of strings (paths[]).

      Here, we provide only one setting.

    • feature_compatibility_version: New Yandex StoreDoc compatibility version.

    You can get the cluster ID from the list of clusters in your folder.

  4. Check the server response to make sure your request was successful.

ExamplesExamples

Suppose you need to upgrade a cluster from version 5.0 to 6.0.

CLI
  1. To get the cluster ID, retrieve a list of all clusters in your folder:

    yc managed-mongodb cluster list
    

    Result:

    +----------------------+---------------+---------------------+--------+---------+
    |          ID          |     NAME      |     CREATED AT      | HEALTH | STATUS  |
    +----------------------+---------------+---------------------+--------+---------+
    | c9q8p8j2gaih******** |   storedoc406  | 2019-04-23 12:44:17 | ALIVE  | RUNNING |
    +----------------------+---------------+---------------------+--------+---------+
    
  2. To get c9qut3k64b2o******** cluster details, run the following command:

    yc managed-mongodb cluster get c9qut3k64b2o********
    

    Result:

    id: c9qut3k64b2o********
    folder_id: b1g0itj57rbj********
    created_at: "2019-07-16T09:43:50.393231Z"
    name: storedoc406
    environment: PRODUCTION
    monitoring:
    - name: Console
      description: Console charts
      link: https://console.yandex.cloud/folders/b1g0itj57rbj********/managed-mongodb/cluster/c9qut3k64b2o********?section=monitoring
    config:
      version: "5.0"
      feature_compatibility_version: "5.0"
      ...
    
  3. To upgrade the c9qutgkd4b2o******** cluster to version 6.0, run this command:

    yc managed-mongodb cluster update c9qutgkd4b2o******** \
        --mongodb-version=6.0
    
  4. To enable all version 6.0 capabilities in the c9qutgkd4b2o******** cluster, run this command:

    yc managed-mongodb cluster update c9qutgkd4b2o******** \
        --feature-compatibility-version=6.0
    

Was the article helpful?

Previous
Updating cluster settings
Next
Stopping and starting a cluster
© 2026 Direct Cursus Technology L.L.C.