Updating Greenplum® cluster settings
After creating a cluster, you can:
To move a cluster to a different availability zone, restore it from a backup. While restoring the cluster, specify a new availability zone. You will thus move the cluster hosts.
If you use external data sources for PXF operations, learn how to configure the protocol. This will allow you to optimize operations with external data.
Changing the cluster name and description
- Go to the folder page
and select Managed Service for Greenplum. - Select the cluster and click Edit at the top of the page.
- Under Basic parameters, enter a new name and description for the cluster.
- Click Save.
If you do not have the Yandex Cloud command line interface yet, install and initialize it.
The folder specified in the CLI profile is used by default. You can specify a different folder using the --folder-name
or --folder-id
parameter.
To change the name and description of a Greenplum® cluster:
-
View the current
name
anddescription
of the cluster:yc managed-greenplum cluster get <cluster_name_or_ID>
-
View a description of the update cluster configuration CLI command:
yc managed-greenplum cluster update --help
-
Enter a new name and description for the cluster:
yc managed-greenplum cluster update <cluster_name_or_ID> \ --new-name <new_cluster_name> \ --description <new_cluster_description>
To change a cluster's name and description, use the update REST API method for the Cluster resource or the ClusterService/Update gRPC API call and provide the following in the request:
- Cluster ID in the
clusterId
parameter. To find out the cluster ID, get a list of clusters in the folder. - New name in the
name
parameter. - New description in the
description
parameter. - List of updatable cluster configuration fields in the
updateMask
parameter (in this case,name
,description
).
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.
Change the public access setting
- Go to the folder page
and select Managed Service for Greenplum®. - Select the cluster and click Edit at the top of the page.
- Under Network settings, enable or disable Public access.
- Click Save.
If you do not have the Yandex Cloud command line interface yet, install and initialize it.
The folder specified in the CLI profile is used by default. You can specify a different folder using the --folder-name
or --folder-id
parameter.
To change the public access setting Greenplum®:
-
View a description of the update cluster configuration CLI command:
yc managed-greenplum cluster update --help
-
Configure public access in the
--assign-public-ip
parameter:yc managed-greenplum cluster update <cluster_name_or_ID> \ --assign-public-ip=<public_access_to_cluster>
Where
assign-public-ip
is the public access to the cluster, true or false.
Use the update API method and include the following in the request:
- Cluster ID in the
clusterId
parameter. To find out the cluster ID, get a list of clusters in the folder. - Public access settings in the
config.assignPublicIp
parameter. - List of updatable cluster configuration fields in the
updateMask
parameter (in this case,name
,description
).
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.
Tip
If you enabled public access to the cluster but cannot access it from the internet:
- Check the security group settings.
- Wait a while. It may take some time to enable public access.
Changing additional cluster settings
-
Go to the folder page and select Managed Service for Greenplum.
-
Select the cluster and click Edit in the top panel.
-
Change additional cluster settings:
-
Backup start time (UTC): Time interval during which the cluster backup starts. Time is specified in 24-hour UTC format. The default time is
22:00 - 23:00
UTC. -
Maintenance window: Maintenance window settings:
- To enable maintenance at any time, select arbitrary (default).
- To specify the preferred maintenance start time, select by schedule and specify the desired day of the week and UTC hour. For example, you can choose a time when the cluster is least loaded.
Maintenance operations are carried out both on enabled and disabled clusters. They may include updating the DBMS, applying patches, and so on.
-
DataLens access: Allows you to analyze cluster data in Yandex DataLens.
-
The Yandex Query access option enables you to run YQL queries from Yandex Query to a managed database in Managed Service for Greenplum®.
-
Deletion protection: Manages protection of the cluster, its databases, and users against accidental deletion.
Enabled deletion protection will not prevent a manual connection with the purpose to delete database contents.
-
Hybrid storage: Activates the Yandex Cloud Yezzey extension
. This extension is used to export AO and AOCO tables from disks within the Managed Service for Greenplum® cluster to a cold storage in Yandex Object Storage. This way, the data will be stored in a service bucket in a compressed and encrypted form. This is a more cost-efficient storage method.You cannot disable this option after you save your cluster settings.
Note
This feature is at the Preview stage and is free of charge.
-
Connection pooler: Operation mode and parameters of the connection pooler:
- Mode:
SESSION
(default) orTRANSACTION
. - Size: Maximum number of client connections.
- Client Idle Timeout: Client idle time (in ms), after which the connection will be terminated.
- Mode:
-
-
Click Save.
If you do not have the Yandex Cloud command line interface yet, install and initialize it.
The folder specified in the CLI profile is used by default. You can specify a different folder using the --folder-name
or --folder-id
parameter.
To change additional cluster settings:
-
View the description of the update cluster CLI command:
yc managed-greenplum cluster update --help
-
Run the following command with a list of settings to update:
yc managed-greenplum cluster update <cluster_name_or_ID> \ --backup-window-start <backup_start_time> \ --datalens-access=<access_from_DataLens> \ --yandexquery-access=<access_from_Yandex_Query> \ --maintenance-window type=<maintenance_type>,` `day=<day_of_week>,` `hour=<hour> \ --assign-public-ip=<public_access_to_cluster> \ --deletion-protection
You can change the following settings:
--backup-window-start
: The cluster backup start time, set in UTC formatHH:MM:SS
. If the time is not set, the backup will start at 22:00 UTC.
-
--datalens-access
: Access to the cluster from Yandex DataLens,true
orfalse
. -
--yandexquery-access
: Access to the cluster from Yandex Query,true
orfalse
. -
--maintenance-window
: Maintenance window settings (including for disabled clusters), wheretype
is the maintenance type:anytime
(default): Any time.weekly
: On a schedule. If setting this value, specify the day of week and the hour:day
: Day of week inDDD
format:MON
,TUE
,WED
,THU
,FRI
,SAT
, orSUN
.hour
: Hour (UTC) inHH
format:1
to24
.
-
--assign-public-ip
: Cluster accessibility from the internet. -
--deletion-protection
: Protection of the cluster, its databases, and users against accidental deletion.Enabled deletion protection will not prevent a manual connection with the purpose to delete database contents.
You can get the cluster name with a list of clusters in the folder.
To change additional cluster settings, use the update REST API method for the Cluster resource or the ClusterService/Update gRPC API call and provide the following in the request:
-
Cluster ID in the
clusterId
parameter. To find out the cluster ID, get a list of clusters in the folder. -
Public access in the
config.assignPublicIp
parameter. -
Backup window in the
config.backupWindowStart
parameter. -
Cluster access from Yandex DataLens in the
config.access.dataLens
parameter. -
Cluster access from Yandex Query in the
config.access.yandexQuery
parameter. -
Maintenance window (including for disabled clusters) in the
maintenanceWindow
parameter. -
Cluster deletion protection in the
deletionProtection
parameter.Enabled deletion protection will not prevent a manual connection with the purpose to delete database contents.
-
List of cluster configuration fields to update in the
updateMask
parameter.
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.
Editing the scheduled maintenance operations settings
You can edit your cluster's scheduled maintenance operations settings.
-
Go to the folder page and select Managed Service for Greenplum.
-
Select the cluster and click Edit in the top panel.
-
Under Managing background processes, change the parameters:
- Start time (UTC):
VACUUM
start time. The default value is19:00 UTC
. Once theVACUUM
operation is completed, theANALYZE
operation starts. - VACUUM timeout: Maximum
VACUUM
execution time, in seconds. Valid values: from7,200
to86,399
, with36,000
by default. As soon as this period expires,VACUUM
will be forced to terminate. - ANALYZE timeout: Maximum
ANALYZE
execution time, in seconds. Valid values: from7,200
to86,399
, with36,000
by default. As soon as this period expires, theANALYZE
operation will be forced to terminate.
The combined
VACUUM
andANALYZE
execution time may not exceed 24 hours. - Start time (UTC):
-
Click Save.
To edit your cluster's scheduled maintenance operations settings, use the REST API update method for the Cluster resource or the ClusterService/Update gRPC API call, and provide the following in the request:
-
Cluster ID in the
clusterId
parameter. To find out the cluster ID, get a list of clusters in the folder. -
New parameter values for the
configSpec.backgroundActivities.analyzeAndVacuum
object:start.hours
: Start hour of theVACUUM
operation in UTC. Values range from0
to23
, the default one is19
.start.minutes
: Start minute of theVACUUM
operation in UTC. Values range from0
to59
, the default one is0
.vacuumTimeout
: Maximum duration of theVACUUM
operation, in seconds. Values range from7200
to86399
, the default one is36000
. As soon as this period expires, theVACUUM
operation will be forced to terminate.analyzeTimeout
: Maximum duration of theANALYZE
operation, in seconds. Values range from7200
to86399
, the default one is36000
. As soon as this period expires, theANALYZE
operation will be forced to terminate.
-
List of cluster configuration fields to update in the
updateMask
parameter.
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.
Changing Greenplum® settings
You can change the DBMS settings of the hosts in your cluster.
- Go to the folder page and select Managed Service for Greenplum.
- Select the cluster and click Edit in the top panel.
- Change the Greenplum® settings by clicking Settings under DBMS settings.
- Click Save.
- Click Save.
If you do not have the Yandex Cloud command line interface yet, install and initialize it.
The folder specified in the CLI profile is used by default. You can specify a different folder using the --folder-name
or --folder-id
parameter.
To change the Greenplum® DBMS settings:
-
View the full list of settings specified for the cluster:
yc managed-greenplum cluster get <cluster_name_or_ID>
-
View a description of the update cluster configuration CLI command:
yc managed-greenplum cluster update-config --help
-
Set the required parameter values:
All supported parameters are listed in the request format for the update method, in the
greenplumConfig_<Greenplum_version>
field. To specify a parameter name in the CLI call, convert its name fromlowerCamelCase
tosnake_case
. For example, convert themaxConnections
parameter from an API request tomax_connections
for the CLI command:yc managed-greenplum cluster update-config <cluster_name_or_ID> \ --set <parameter_1_name>=<value1>,<parameter_2_name>=<value2>,...
Managed Service for Greenplum® runs the update cluster settings operation.
To change Greenplum® settings, use the update REST API method for the Cluster resource or the ClusterService/Update gRPC API call and provide the following in the request:
-
New values in the
configSpec.greenplumConfig_<version>
parameter. -
List of cluster configuration fields to update, in the
updateMask
parameter.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.
Changing the host class
You can change the host class for both master hosts and segment hosts. When changing the host class:
- The cluster's primary master host will change.
- Using a special FQDN does not guarantee a stable database connection: user sessions may be terminated.
We recommend changing the host class only when the cluster has no active workload.
- Go to the folder page and select Managed Service for Greenplum.
- Select a cluster and click
Edit in the top panel. - Under Host class, select the required class for Greenplum® master hosts or segment hosts.
- Click Save changes.
If you do not have the Yandex Cloud command line interface yet, install and initialize it.
The folder specified in the CLI profile is used by default. You can specify a different folder using the --folder-name
or --folder-id
parameter.
To change the host class for the cluster:
-
View the description of the update cluster CLI command:
yc managed-greenplum cluster update --help
-
Request a list of available classes (the
ZONE IDS
column specifies the availability zones where you can select the appropriate class):-
For master hosts:
yc managed-greenplum resource-preset list master
-
For segment hosts:
yc managed-greenplum resource-preset list segment
+-------------+--------------------------------+--------------------------------+-------+----------+--------------------+---------------------+ | ID | ZONE IDS | DISK TYPES | CORES | MEMORY | HOST COUNT DIVIDER | MAX SEGMENT IN HOST | +-------------+--------------------------------+--------------------------------+-------+----------+--------------------+---------------------+ | i2.2xlarge | ru-central1-a, ru-central1-b | local-ssd, | 16 | 128.0 GB | 1 | 0 | | | | network-ssd-nonreplicated | | | | | | ... | +-------------+--------------------------------+--------------------------------+-------+----------+--------------------+---------------------+
-
-
Specify the required classes in the cluster update command:
yc managed-greenplum cluster update <cluster_name_or_ID> \ --master-config resource-id=<master_host_class_ID> \ --segment-config resource-id=<segment_host_class_ID>
Managed Service for Greenplum® will run the update host class command for the cluster.
-
Open the current Terraform configuration file with an infrastructure plan.
For more information about creating this file, see Creating clusters.
For a complete list of available Managed Service for Greenplum® cluster configuration fields, see the Terraform provider documentation
. -
In the Managed Service for Greenplum® cluster description, change the
resource_preset_id
attribute value undermaster_subcluster.resources
orsegment_subcluster.resources
:resource "yandex_mdb_greenplum_cluster" "<cluster_name>" { ... master_subcluster { resources { resource_preset_id = "<host_class>" ... } segment_subcluster { resources { resource_preset_id = "<host_class>" ... } } }
-
Make sure the settings are correct.
-
Using the command line, navigate to the folder that contains the up-to-date Terraform configuration files with an infrastructure plan.
-
Run the command:
terraform validate
If there are errors in the configuration files, Terraform will point to them.
-
-
Confirm updating the resources.
-
Run the command to view planned changes:
terraform plan
If the resource configuration descriptions are correct, the terminal will display a list of the resources to modify and their parameters. This is a test step. No resources are updated.
-
If you are happy with the planned changes, apply them:
-
Run the command:
terraform apply
-
Confirm the update of resources.
-
Wait for the operation to complete.
-
Warning
The Terraform provider limits the amount of time for all Managed Service for Greenplum® cluster operations to complete to 120 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_greenplum_cluster" "<cluster name>" { ... timeouts { create = "1h30m" # 1 hour 30 minutes update = "2h" # 2 hours delete = "30m" # 30 minutes } }
-
To change the class of cluster hosts, use the update REST API method for the Cluster resource or the ClusterService/Update gRPC API call and provide the following in the request:
- Cluster ID in the
clusterId
parameter. To find out the cluster ID, get a list of clusters in the folder. - Master host class ID in the
masterConfig.resources.resourcePresetId
parameter or segment host class ID in thesegmentConfig.resources.resourcePresetId
parameter. You can get a list of supported values by using the list method for theResourcePreset
. - List of settings to update (in this case,
masterConfig.resources.resourcePresetId
orsegmentConfig.resources.resourcePresetId
), in theupdateMask
parameter.
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.
Increasing storage size
Make sure the cloud has enough quota to increase the storage size. Open the cloud's Quotas
To increase the cluster storage size:
- In the management console
, select the folder with the cluster you need. - Select Managed Service for Greenplum.
- Select the cluster you need.
- At the top of the page, click Edit.
- Edit the settings in the Storage section.
- Click Save.
To increase the cluster storage size, use the update REST API method for the Cluster resource or the ClusterService/Update gRPC API call and provide the following in the request:
- Cluster ID in the
clusterId
parameter. To find out the cluster ID, get a list of clusters in the folder. - New master and segment host storage size in the
masterConfig.resources.diskSize
andsegmentConfig.resources.diskSize
parameters. - List of cluster configuration fields to update in the
updateMask
parameter.
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.
Greenplum® and Greenplum Database® are registered trademarks or trademarks of VMware, Inc. in the United States and/or other countries.