From 2efa8ae881bc475308217b7db2242eef67efbc11 Mon Sep 17 00:00:00 2001 From: proposalbot Date: Thu, 24 Nov 2022 08:58:53 +0000 Subject: [PATCH] Changes to dds_umn from docs/doc-exports#409 (DDS UMN 20221101 version DDS UMN Reviewed-by: Hasko, Vladimir Co-authored-by: proposalbot Co-committed-by: proposalbot --- .../_static/images/en-us_image_0269983210.png | Bin 0 -> 457 bytes .../_static/images/en-us_image_0271492125.png | Bin 0 -> 457 bytes .../_static/images/en-us_image_0271515222.png | Bin 0 -> 474 bytes .../_static/images/en-us_image_0271515223.png | Bin 0 -> 474 bytes .../_static/images/en-us_image_0284274943.png | Bin 0 -> 295 bytes .../_static/images/en-us_image_0284274967.png | Bin 0 -> 15130 bytes .../_static/images/en-us_image_0284274973.png | Bin 0 -> 477 bytes .../_static/images/en-us_image_0284274974.png | Bin 0 -> 16677 bytes .../_static/images/en-us_image_0284274979.png | Bin 0 -> 184 bytes .../_static/images/en-us_image_0284274981.png | Bin 0 -> 214 bytes .../_static/images/en-us_image_0284274985.png | Bin 0 -> 16677 bytes .../_static/images/en-us_image_0284274989.png | Bin 0 -> 234 bytes .../_static/images/en-us_image_0284275009.png | Bin 0 -> 234 bytes .../_static/images/en-us_image_0284275018.png | Bin 0 -> 1004 bytes .../_static/images/en-us_image_0284275038.png | Bin 0 -> 214 bytes .../_static/images/en-us_image_0284275043.png | Bin 0 -> 16868 bytes .../_static/images/en-us_image_0284275046.png | Bin 0 -> 540 bytes .../_static/images/en-us_image_0284275075.png | Bin 0 -> 540 bytes .../_static/images/en-us_image_0284275079.png | Bin 0 -> 190 bytes .../_static/images/en-us_image_0284275085.png | Bin 0 -> 9472 bytes .../_static/images/en-us_image_0284275089.png | Bin 0 -> 446 bytes .../_static/images/en-us_image_0284275118.png | Bin 0 -> 1004 bytes .../_static/images/en-us_image_0284275119.png | Bin 0 -> 214 bytes .../_static/images/en-us_image_0284275120.png | Bin 0 -> 295 bytes .../_static/images/en-us_image_0284275122.png | Bin 0 -> 295 bytes .../_static/images/en-us_image_0284275123.png | Bin 0 -> 1004 bytes .../_static/images/en-us_image_0284275146.png | Bin 0 -> 474 bytes .../_static/images/en-us_image_0284275156.png | Bin 0 -> 1004 bytes .../_static/images/en-us_image_0284275158.png | Bin 0 -> 555 bytes .../_static/images/en-us_image_0284275172.png | Bin 0 -> 178 bytes .../_static/images/en-us_image_0284275173.png | Bin 0 -> 540 bytes .../_static/images/en-us_image_0284275178.png | Bin 0 -> 39701 bytes .../_static/images/en-us_image_0284275185.png | Bin 0 -> 540 bytes .../_static/images/en-us_image_0284275219.png | Bin 0 -> 12377 bytes .../_static/images/en-us_image_0284275220.png | Bin 0 -> 234 bytes .../_static/images/en-us_image_0284275230.png | Bin 0 -> 9872 bytes .../_static/images/en-us_image_0284275232.png | Bin 0 -> 214 bytes .../_static/images/en-us_image_0284275243.png | Bin 0 -> 16868 bytes .../_static/images/en-us_image_0284275249.png | Bin 0 -> 178 bytes .../_static/images/en-us_image_0284275259.png | Bin 0 -> 248 bytes .../_static/images/en-us_image_0284275268.png | Bin 0 -> 214 bytes .../_static/images/en-us_image_0284275280.png | Bin 0 -> 214 bytes .../_static/images/en-us_image_0284275286.png | Bin 0 -> 295 bytes .../_static/images/en-us_image_0284275295.png | Bin 0 -> 293 bytes .../_static/images/en-us_image_0284275296.png | Bin 0 -> 234 bytes .../_static/images/en-us_image_0284275300.png | Bin 0 -> 234 bytes .../_static/images/en-us_image_0284275307.png | Bin 0 -> 190 bytes umn/source/change_history.rst | 197 +++++++++++++++ ..._a_template_to_create_dds_db_instances.rst | 8 + umn/source/faqs/common_faqs/index.rst | 20 ++ ...s_the_availability_of_dds_db_instances.rst | 10 + ...autions_should_be_taken_when_using_dds.rst | 21 ++ ...fected_by_other_users_dds_db_instances.rst | 8 + ...rnal_server_access_the_dds_db_instance.rst | 11 + ...matic_reconnecting_to_the_dds_database.rst | 10 + .../how_can_i_create_and_log_in_to_an_ecs.rst | 12 + .../how_can_i_install_a_mongodb_client.rst | 61 +++++ ...ions_access_a_dds_db_instance_in_a_vpc.rst | 8 + .../faqs/connection_and_access_faqs/index.rst | 30 +++ ...the_number_of_dds_database_connections.rst | 8 + ...nt_problem_causes_a_connection_failure.rst | 22 ++ ...er_problem_causes_a_connection_failure.rst | 16 ++ ...cs_cannot_connect_to_a_dds_db_instance.rst | 31 +++ umn/source/faqs/index.rst | 26 ++ ...ds_db_instances_available_when_scaling.rst | 8 + .../does_dds_support_read_write_splitting.rst | 8 + umn/source/faqs/management_faqs/index.rst | 24 ++ ...ndary_synchronization_in_a_replica_set.rst | 17 ++ .../what_should_i_do_if_my_query_is_slow.rst | 12 + .../why_is_data_missing_from_my_database.rst | 13 + ...e_deleted_if_i_delete_my_cloud_account.rst | 8 + .../do_i_need_to_use_dds_in_a_vpc.rst | 12 + ..._i_ensure_the_security_of_dds_in_a_vpc.rst | 8 + .../faqs/network_and_security_faqs/index.rst | 18 ++ ...rity_protection_policies_does_dds_have.rst | 8 + .../faqs/parameter_and_metric_faqs/index.rst | 14 ++ ..._metrics_do_i_need_to_pay_attention_to.rst | 27 ++ .../how_do_i_back_up_dds_to_ecs.rst | 8 + ...ow_long_does_dds_store_backup_data_for.rst | 8 + umn/source/faqs/storage_faqs/index.rst | 26 ++ ..._dds_db_instance_storage_configuration.rst | 10 + ..._after_i_applied_for_a_dds_db_instance.rst | 8 + ...ase_storage_space_of_a_dds_db_instance.rst | 11 + ...space_on_my_purchased_dds_db_instances.rst | 8 + ...s_occupy_dds_db_instance_storage_space.rst | 16 ++ ...nds_are_supported_or_restricted_by_dds.rst | 230 ++++++++++++++++++ .../binding_and_unbinding_an_eip.rst | 62 +++++ ...ting_to_a_db_instance_through_a_client.rst | 132 ++++++++++ .../enabling_or_disabling_ssl.rst | 51 ++++ .../index.rst | 18 ++ .../creating_a_cluster_instance.rst | 177 ++++++++++++++ .../getting_started_with_clusters/index.rst | 22 ++ .../restrictions.rst | 36 +++ .../service_process.rst | 32 +++ .../setting_a_security_group.rst | 63 +++++ .../binding_and_unbinding_an_eip.rst | 62 +++++ ...ting_to_a_db_instance_through_a_client.rst | 150 ++++++++++++ .../enabling_or_disabling_ssl.rst | 41 ++++ .../index.rst | 18 ++ .../creating_a_replica_set_instance.rst | 157 ++++++++++++ .../index.rst | 22 ++ .../restrictions.rst | 36 +++ .../service_process.rst | 33 +++ .../setting_a_security_group.rst | 63 +++++ umn/source/glossary.rst | 8 + umn/source/index.rst | 12 + .../introduction/basic_concepts/cluster.rst | 39 +++ .../database_parameter_group.rst | 8 + .../introduction/basic_concepts/index.rst | 18 ++ .../basic_concepts/regions_and_azs.rst | 14 ++ .../database_engine_and_version.rst | 8 + .../dds_db_instance/database_status.rst | 60 +++++ .../db_instance_specifications.rst | 46 ++++ .../introduction/dds_db_instance/index.rst | 18 ++ umn/source/introduction/index.rst | 28 +++ .../product_advantages/ease_of_use.rst | 21 ++ .../product_advantages/high_reliability.rst | 30 +++ .../product_advantages/high_security.rst | 37 +++ .../introduction/product_advantages/index.rst | 20 ++ .../product_advantages/scalability.rst | 16 ++ umn/source/introduction/related_services.rst | 55 +++++ .../cluster_architecture.rst | 23 ++ .../system_architecture/index.rst | 16 ++ .../replica_set_architecture.rst | 31 +++ .../typical_application_scenarios.rst | 22 ++ umn/source/introduction/user_permissions.rst | 13 + umn/source/introduction/what_is_dds.rst | 17 ++ umn/source/logging_in_to_the_dds_console.rst | 22 ++ .../creating_a_manual_backup.rst | 64 +++++ .../deleting_a_manual_backup.rst | 43 ++++ .../deleting_an_automated_backup.rst | 45 ++++ .../downloading_backup_files.rst | 46 ++++ .../backup_and_restore/index.rst | 26 ++ ...oring_a_cluster_instance_from_a_backup.rst | 44 ++++ ...g_a_replica_set_instance_from_a_backup.rst | 42 ++++ .../setting_automated_backup_policy.rst | 79 ++++++ ...cpu_or_memory_of_a_cluster_db_instance.rst | 46 ++++ ...or_memory_of_a_replica_set_db_instance.rst | 31 +++ .../changing_db_instance_classes/index.rst | 16 ++ .../deleting_a_db_instance.rst | 27 ++ .../exporting_db_instance_information.rst | 31 +++ .../db_instance_operations/index.rst | 22 ++ ...y_and_secondary_nodes_of_a_replica_set.rst | 30 +++ .../modifying_the_db_instance_name.rst | 39 +++ .../restarting_a_db_instance_or_a_node.rst | 49 ++++ .../managing_dds_db_instances/index.rst | 32 +++ .../managing_database_accounts.rst | 105 ++++++++ .../migrating_data.rst | 129 ++++++++++ ...changing_a_parameter_group_description.rst | 25 ++ .../changing_associated_parameter_group.rst | 40 +++ .../comparing_two_parameter_groups.rst | 24 ++ .../creating_a_parameter_group.rst | 43 ++++ .../deleting_a_parameter_group.rst | 26 ++ .../editing_a_parameter_group.rst | 43 ++++ .../parameter_group/index.rst | 28 +++ .../replicating_a_parameter_group.rst | 24 ++ .../resetting_a_parameter_group.rst | 23 ++ .../security/changing_a_security_group.rst | 31 +++ .../security/changing_the_database_port.rst | 39 +++ .../security/index.rst | 18 ++ .../resetting_the_administrator_password.rst | 42 ++++ .../storage/adding_cluster_instance_nodes.rst | 57 +++++ .../storage/index.rst | 18 ++ .../reverting_cluster_instance_nodes.rst | 35 +++ .../storage/scaling_up_storage_space.rst | 58 +++++ umn/source/managing_dds_db_instances/tag.rst | 67 +++++ .../managing_dds_db_instances/task_center.rst | 37 +++ umn/source/monitoring/error_log.rst | 27 ++ umn/source/monitoring/index.rst | 20 ++ .../dds_metrics.rst | 205 ++++++++++++++++ .../interconnected_with_cloud_eye/index.rst | 18 ++ .../setting_alarm_rules.rst | 36 +++ .../viewing_dds_metrics.rst | 48 ++++ .../interconnecting_with_cts/index.rst | 16 ++ .../key_operations_recorded_by_cts.rst | 70 ++++++ .../querying_traces.rst | 44 ++++ umn/source/monitoring/slow_query_log.rst | 29 +++ 177 files changed, 4895 insertions(+) create mode 100644 umn/source/_static/images/en-us_image_0269983210.png create mode 100644 umn/source/_static/images/en-us_image_0271492125.png create mode 100644 umn/source/_static/images/en-us_image_0271515222.png create mode 100644 umn/source/_static/images/en-us_image_0271515223.png create mode 100644 umn/source/_static/images/en-us_image_0284274943.png create mode 100644 umn/source/_static/images/en-us_image_0284274967.png create mode 100644 umn/source/_static/images/en-us_image_0284274973.png create mode 100644 umn/source/_static/images/en-us_image_0284274974.png create mode 100644 umn/source/_static/images/en-us_image_0284274979.png create mode 100644 umn/source/_static/images/en-us_image_0284274981.png create mode 100644 umn/source/_static/images/en-us_image_0284274985.png create mode 100644 umn/source/_static/images/en-us_image_0284274989.png create mode 100644 umn/source/_static/images/en-us_image_0284275009.png create mode 100644 umn/source/_static/images/en-us_image_0284275018.png create mode 100644 umn/source/_static/images/en-us_image_0284275038.png create mode 100644 umn/source/_static/images/en-us_image_0284275043.png create mode 100644 umn/source/_static/images/en-us_image_0284275046.png create mode 100644 umn/source/_static/images/en-us_image_0284275075.png create mode 100644 umn/source/_static/images/en-us_image_0284275079.png create mode 100644 umn/source/_static/images/en-us_image_0284275085.png create mode 100644 umn/source/_static/images/en-us_image_0284275089.png create mode 100644 umn/source/_static/images/en-us_image_0284275118.png create mode 100644 umn/source/_static/images/en-us_image_0284275119.png create mode 100644 umn/source/_static/images/en-us_image_0284275120.png create mode 100644 umn/source/_static/images/en-us_image_0284275122.png create mode 100644 umn/source/_static/images/en-us_image_0284275123.png create mode 100644 umn/source/_static/images/en-us_image_0284275146.png create mode 100644 umn/source/_static/images/en-us_image_0284275156.png create mode 100644 umn/source/_static/images/en-us_image_0284275158.png create mode 100644 umn/source/_static/images/en-us_image_0284275172.png create mode 100644 umn/source/_static/images/en-us_image_0284275173.png create mode 100644 umn/source/_static/images/en-us_image_0284275178.png create mode 100644 umn/source/_static/images/en-us_image_0284275185.png create mode 100644 umn/source/_static/images/en-us_image_0284275219.png create mode 100644 umn/source/_static/images/en-us_image_0284275220.png create mode 100644 umn/source/_static/images/en-us_image_0284275230.png create mode 100644 umn/source/_static/images/en-us_image_0284275232.png create mode 100644 umn/source/_static/images/en-us_image_0284275243.png create mode 100644 umn/source/_static/images/en-us_image_0284275249.png create mode 100644 umn/source/_static/images/en-us_image_0284275259.png create mode 100644 umn/source/_static/images/en-us_image_0284275268.png create mode 100644 umn/source/_static/images/en-us_image_0284275280.png create mode 100644 umn/source/_static/images/en-us_image_0284275286.png create mode 100644 umn/source/_static/images/en-us_image_0284275295.png create mode 100644 umn/source/_static/images/en-us_image_0284275296.png create mode 100644 umn/source/_static/images/en-us_image_0284275300.png create mode 100644 umn/source/_static/images/en-us_image_0284275307.png create mode 100644 umn/source/change_history.rst create mode 100644 umn/source/faqs/common_faqs/can_i_use_a_template_to_create_dds_db_instances.rst create mode 100644 umn/source/faqs/common_faqs/index.rst create mode 100644 umn/source/faqs/common_faqs/what_is_the_availability_of_dds_db_instances.rst create mode 100644 umn/source/faqs/common_faqs/what_precautions_should_be_taken_when_using_dds.rst create mode 100644 umn/source/faqs/common_faqs/will_my_dds_db_instances_be_affected_by_other_users_dds_db_instances.rst create mode 100644 umn/source/faqs/connection_and_access_faqs/can_an_external_server_access_the_dds_db_instance.rst create mode 100644 umn/source/faqs/connection_and_access_faqs/do_applications_need_to_support_automatic_reconnecting_to_the_dds_database.rst create mode 100644 umn/source/faqs/connection_and_access_faqs/how_can_i_create_and_log_in_to_an_ecs.rst create mode 100644 umn/source/faqs/connection_and_access_faqs/how_can_i_install_a_mongodb_client.rst create mode 100644 umn/source/faqs/connection_and_access_faqs/how_can_my_applications_access_a_dds_db_instance_in_a_vpc.rst create mode 100644 umn/source/faqs/connection_and_access_faqs/index.rst create mode 100644 umn/source/faqs/connection_and_access_faqs/what_is_the_number_of_dds_database_connections.rst create mode 100644 umn/source/faqs/connection_and_access_faqs/what_should_i_do_if_a_database_client_problem_causes_a_connection_failure.rst create mode 100644 umn/source/faqs/connection_and_access_faqs/what_should_i_do_if_a_dds_server_problem_causes_a_connection_failure.rst create mode 100644 umn/source/faqs/connection_and_access_faqs/what_should_i_do_if_the_ecs_cannot_connect_to_a_dds_db_instance.rst create mode 100644 umn/source/faqs/index.rst create mode 100644 umn/source/faqs/management_faqs/are_my_dds_db_instances_available_when_scaling.rst create mode 100644 umn/source/faqs/management_faqs/does_dds_support_read_write_splitting.rst create mode 100644 umn/source/faqs/management_faqs/index.rst create mode 100644 umn/source/faqs/management_faqs/what_is_the_time_delay_for_primary_secondary_synchronization_in_a_replica_set.rst create mode 100644 umn/source/faqs/management_faqs/what_should_i_do_if_my_query_is_slow.rst create mode 100644 umn/source/faqs/management_faqs/why_is_data_missing_from_my_database.rst create mode 100644 umn/source/faqs/management_faqs/will_my_backups_be_deleted_if_i_delete_my_cloud_account.rst create mode 100644 umn/source/faqs/network_and_security_faqs/do_i_need_to_use_dds_in_a_vpc.rst create mode 100644 umn/source/faqs/network_and_security_faqs/how_do_i_ensure_the_security_of_dds_in_a_vpc.rst create mode 100644 umn/source/faqs/network_and_security_faqs/index.rst create mode 100644 umn/source/faqs/network_and_security_faqs/what_security_protection_policies_does_dds_have.rst create mode 100644 umn/source/faqs/parameter_and_metric_faqs/index.rst create mode 100644 umn/source/faqs/parameter_and_metric_faqs/what_db_instance_monitoring_metrics_do_i_need_to_pay_attention_to.rst create mode 100644 umn/source/faqs/storage_faqs/how_do_i_back_up_dds_to_ecs.rst create mode 100644 umn/source/faqs/storage_faqs/how_long_does_dds_store_backup_data_for.rst create mode 100644 umn/source/faqs/storage_faqs/index.rst create mode 100644 umn/source/faqs/storage_faqs/what_is_the_dds_db_instance_storage_configuration.rst create mode 100644 umn/source/faqs/storage_faqs/what_overhead_does_the_storage_space_have_after_i_applied_for_a_dds_db_instance.rst create mode 100644 umn/source/faqs/storage_faqs/what_should_i_do_if_my_data_exceeds_the_database_storage_space_of_a_dds_db_instance.rst create mode 100644 umn/source/faqs/storage_faqs/which_items_occupy_the_storage_space_on_my_purchased_dds_db_instances.rst create mode 100644 umn/source/faqs/storage_faqs/which_types_of_logs_and_files_occupy_dds_db_instance_storage_space.rst create mode 100644 umn/source/faqs/which_commands_are_supported_or_restricted_by_dds.rst create mode 100644 umn/source/getting_started_with_clusters/connecting_to_a_cluster_instance/binding_and_unbinding_an_eip.rst create mode 100644 umn/source/getting_started_with_clusters/connecting_to_a_cluster_instance/connecting_to_a_db_instance_through_a_client.rst create mode 100644 umn/source/getting_started_with_clusters/connecting_to_a_cluster_instance/enabling_or_disabling_ssl.rst create mode 100644 umn/source/getting_started_with_clusters/connecting_to_a_cluster_instance/index.rst create mode 100644 umn/source/getting_started_with_clusters/creating_a_cluster_instance.rst create mode 100644 umn/source/getting_started_with_clusters/index.rst create mode 100644 umn/source/getting_started_with_clusters/restrictions.rst create mode 100644 umn/source/getting_started_with_clusters/service_process.rst create mode 100644 umn/source/getting_started_with_clusters/setting_a_security_group.rst create mode 100644 umn/source/getting_started_with_replica_sets/connecting_to_a_replica_set_instance/binding_and_unbinding_an_eip.rst create mode 100644 umn/source/getting_started_with_replica_sets/connecting_to_a_replica_set_instance/connecting_to_a_db_instance_through_a_client.rst create mode 100644 umn/source/getting_started_with_replica_sets/connecting_to_a_replica_set_instance/enabling_or_disabling_ssl.rst create mode 100644 umn/source/getting_started_with_replica_sets/connecting_to_a_replica_set_instance/index.rst create mode 100644 umn/source/getting_started_with_replica_sets/creating_a_replica_set_instance.rst create mode 100644 umn/source/getting_started_with_replica_sets/index.rst create mode 100644 umn/source/getting_started_with_replica_sets/restrictions.rst create mode 100644 umn/source/getting_started_with_replica_sets/service_process.rst create mode 100644 umn/source/getting_started_with_replica_sets/setting_a_security_group.rst create mode 100644 umn/source/glossary.rst create mode 100644 umn/source/introduction/basic_concepts/cluster.rst create mode 100644 umn/source/introduction/basic_concepts/database_parameter_group.rst create mode 100644 umn/source/introduction/basic_concepts/index.rst create mode 100644 umn/source/introduction/basic_concepts/regions_and_azs.rst create mode 100644 umn/source/introduction/dds_db_instance/database_engine_and_version.rst create mode 100644 umn/source/introduction/dds_db_instance/database_status.rst create mode 100644 umn/source/introduction/dds_db_instance/db_instance_specifications.rst create mode 100644 umn/source/introduction/dds_db_instance/index.rst create mode 100644 umn/source/introduction/index.rst create mode 100644 umn/source/introduction/product_advantages/ease_of_use.rst create mode 100644 umn/source/introduction/product_advantages/high_reliability.rst create mode 100644 umn/source/introduction/product_advantages/high_security.rst create mode 100644 umn/source/introduction/product_advantages/index.rst create mode 100644 umn/source/introduction/product_advantages/scalability.rst create mode 100644 umn/source/introduction/related_services.rst create mode 100644 umn/source/introduction/system_architecture/cluster_architecture.rst create mode 100644 umn/source/introduction/system_architecture/index.rst create mode 100644 umn/source/introduction/system_architecture/replica_set_architecture.rst create mode 100644 umn/source/introduction/typical_application_scenarios.rst create mode 100644 umn/source/introduction/user_permissions.rst create mode 100644 umn/source/introduction/what_is_dds.rst create mode 100644 umn/source/logging_in_to_the_dds_console.rst create mode 100644 umn/source/managing_dds_db_instances/backup_and_restore/creating_a_manual_backup.rst create mode 100644 umn/source/managing_dds_db_instances/backup_and_restore/deleting_a_manual_backup.rst create mode 100644 umn/source/managing_dds_db_instances/backup_and_restore/deleting_an_automated_backup.rst create mode 100644 umn/source/managing_dds_db_instances/backup_and_restore/downloading_backup_files.rst create mode 100644 umn/source/managing_dds_db_instances/backup_and_restore/index.rst create mode 100644 umn/source/managing_dds_db_instances/backup_and_restore/restoring_a_cluster_instance_from_a_backup.rst create mode 100644 umn/source/managing_dds_db_instances/backup_and_restore/restoring_a_replica_set_instance_from_a_backup.rst create mode 100644 umn/source/managing_dds_db_instances/backup_and_restore/setting_automated_backup_policy.rst create mode 100644 umn/source/managing_dds_db_instances/changing_db_instance_classes/changing_the_cpu_or_memory_of_a_cluster_db_instance.rst create mode 100644 umn/source/managing_dds_db_instances/changing_db_instance_classes/changing_the_cpu_or_memory_of_a_replica_set_db_instance.rst create mode 100644 umn/source/managing_dds_db_instances/changing_db_instance_classes/index.rst create mode 100644 umn/source/managing_dds_db_instances/db_instance_operations/deleting_a_db_instance.rst create mode 100644 umn/source/managing_dds_db_instances/db_instance_operations/exporting_db_instance_information.rst create mode 100644 umn/source/managing_dds_db_instances/db_instance_operations/index.rst create mode 100644 umn/source/managing_dds_db_instances/db_instance_operations/manually_switching_the_primary_and_secondary_nodes_of_a_replica_set.rst create mode 100644 umn/source/managing_dds_db_instances/db_instance_operations/modifying_the_db_instance_name.rst create mode 100644 umn/source/managing_dds_db_instances/db_instance_operations/restarting_a_db_instance_or_a_node.rst create mode 100644 umn/source/managing_dds_db_instances/index.rst create mode 100644 umn/source/managing_dds_db_instances/managing_database_accounts.rst create mode 100644 umn/source/managing_dds_db_instances/migrating_data.rst create mode 100644 umn/source/managing_dds_db_instances/parameter_group/changing_a_parameter_group_description.rst create mode 100644 umn/source/managing_dds_db_instances/parameter_group/changing_associated_parameter_group.rst create mode 100644 umn/source/managing_dds_db_instances/parameter_group/comparing_two_parameter_groups.rst create mode 100644 umn/source/managing_dds_db_instances/parameter_group/creating_a_parameter_group.rst create mode 100644 umn/source/managing_dds_db_instances/parameter_group/deleting_a_parameter_group.rst create mode 100644 umn/source/managing_dds_db_instances/parameter_group/editing_a_parameter_group.rst create mode 100644 umn/source/managing_dds_db_instances/parameter_group/index.rst create mode 100644 umn/source/managing_dds_db_instances/parameter_group/replicating_a_parameter_group.rst create mode 100644 umn/source/managing_dds_db_instances/parameter_group/resetting_a_parameter_group.rst create mode 100644 umn/source/managing_dds_db_instances/security/changing_a_security_group.rst create mode 100644 umn/source/managing_dds_db_instances/security/changing_the_database_port.rst create mode 100644 umn/source/managing_dds_db_instances/security/index.rst create mode 100644 umn/source/managing_dds_db_instances/security/resetting_the_administrator_password.rst create mode 100644 umn/source/managing_dds_db_instances/storage/adding_cluster_instance_nodes.rst create mode 100644 umn/source/managing_dds_db_instances/storage/index.rst create mode 100644 umn/source/managing_dds_db_instances/storage/reverting_cluster_instance_nodes.rst create mode 100644 umn/source/managing_dds_db_instances/storage/scaling_up_storage_space.rst create mode 100644 umn/source/managing_dds_db_instances/tag.rst create mode 100644 umn/source/managing_dds_db_instances/task_center.rst create mode 100644 umn/source/monitoring/error_log.rst create mode 100644 umn/source/monitoring/index.rst create mode 100644 umn/source/monitoring/interconnected_with_cloud_eye/dds_metrics.rst create mode 100644 umn/source/monitoring/interconnected_with_cloud_eye/index.rst create mode 100644 umn/source/monitoring/interconnected_with_cloud_eye/setting_alarm_rules.rst create mode 100644 umn/source/monitoring/interconnected_with_cloud_eye/viewing_dds_metrics.rst create mode 100644 umn/source/monitoring/interconnecting_with_cts/index.rst create mode 100644 umn/source/monitoring/interconnecting_with_cts/key_operations_recorded_by_cts.rst create mode 100644 umn/source/monitoring/interconnecting_with_cts/querying_traces.rst create mode 100644 umn/source/monitoring/slow_query_log.rst diff --git a/umn/source/_static/images/en-us_image_0269983210.png b/umn/source/_static/images/en-us_image_0269983210.png new file mode 100644 index 0000000000000000000000000000000000000000..ad79b27da0c4bc5c983ee591dc07b330e91a392a GIT binary patch literal 457 zcmV;)0XF`LP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0bWT&K~z{r?Uq5V zgCG=as8z_V(?7-1`qH(|NN zpJvtueaxhH0v8iaSk98|!4N2q*fnjgvL-BR*H`qPP&aFgz)3|DZrk?t(6((?%lFXN zOnN79QqhFvrEs3-)$%=*g_-nD;G_~=n7(GxJK+`1t|YSCbn3D8OIgt8PmeW_3A4C3 zAiJv>%#R;mdGKHCnI(chek7_iOT%X31VE7BH*K+NmT<{}Qy5s16hf{bm#qv`yuuRd zlNsksl$T44U@XRD?9lxZB>bN!!l^03X%XTHj^3VMqw~#l00000NkvXXu0mjfzmCUd literal 0 HcmV?d00001 diff --git a/umn/source/_static/images/en-us_image_0271492125.png b/umn/source/_static/images/en-us_image_0271492125.png new file mode 100644 index 0000000000000000000000000000000000000000..ad79b27da0c4bc5c983ee591dc07b330e91a392a GIT binary patch literal 457 zcmV;)0XF`LP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0bWT&K~z{r?Uq5V zgCG=as8z_V(?7-1`qH(|NN zpJvtueaxhH0v8iaSk98|!4N2q*fnjgvL-BR*H`qPP&aFgz)3|DZrk?t(6((?%lFXN zOnN79QqhFvrEs3-)$%=*g_-nD;G_~=n7(GxJK+`1t|YSCbn3D8OIgt8PmeW_3A4C3 zAiJv>%#R;mdGKHCnI(chek7_iOT%X31VE7BH*K+NmT<{}Qy5s16hf{bm#qv`yuuRd zlNsksl$T44U@XRD?9lxZB>bN!!l^03X%XTHj^3VMqw~#l00000NkvXXu0mjfzmCUd literal 0 HcmV?d00001 diff --git a/umn/source/_static/images/en-us_image_0271515222.png b/umn/source/_static/images/en-us_image_0271515222.png new file mode 100644 index 0000000000000000000000000000000000000000..2dc46d96dcecd7bfde107367d143dd219492e040 GIT binary patch literal 474 zcmV<00VV#4P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0dGk}K~zXf<(8pN z1TheXc`YmwiNu~nBC$y1$+O6N1TZ9rAUOmH2og>pPMkP_s6Y(!b+?;dnS|N)NJ#jT zNw&M4oo{ER?H-GGo{EBB}|GyYaO?g3CmwPR`|a4?h$CNlvWV8-PUC%3E!*Njwk}L zqRc=}V_DM=wOXhz{fi<{Yq{`eS=S0*J_7~4Pl6HWS*eID; zbJ_#t$rN*}GMhlH;y;L$OHi^v<}t3h$GN%4%9QI@fY5XHgGL+pe$Yg|03b6G$;930 QwEzGB07*qoM6N<$f+nEJ`Tzg` literal 0 HcmV?d00001 diff --git a/umn/source/_static/images/en-us_image_0271515223.png b/umn/source/_static/images/en-us_image_0271515223.png new file mode 100644 index 0000000000000000000000000000000000000000..2dc46d96dcecd7bfde107367d143dd219492e040 GIT binary patch literal 474 zcmV<00VV#4P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0dGk}K~zXf<(8pN z1TheXc`YmwiNu~nBC$y1$+O6N1TZ9rAUOmH2og>pPMkP_s6Y(!b+?;dnS|N)NJ#jT zNw&M4oo{ER?H-GGo{EBB}|GyYaO?g3CmwPR`|a4?h$CNlvWV8-PUC%3E!*Njwk}L zqRc=}V_DM=wOXhz{fi<{Yq{`eS=S0*J_7~4Pl6HWS*eID; zbJ_#t$rN*}GMhlH;y;L$OHi^v<}t3h$GN%4%9QI@fY5XHgGL+pe$Yg|03b6G$;930 QwEzGB07*qoM6N<$f+nEJ`Tzg` literal 0 HcmV?d00001 diff --git a/umn/source/_static/images/en-us_image_0284274943.png b/umn/source/_static/images/en-us_image_0284274943.png new file mode 100644 index 0000000000000000000000000000000000000000..1267615e3e449ae0f815dd16f3aabb9bbb6d5d74 GIT binary patch literal 295 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 T6>Wyb00000NkvXXu0mjfvk}Ke literal 0 HcmV?d00001 diff --git a/umn/source/_static/images/en-us_image_0284274974.png b/umn/source/_static/images/en-us_image_0284274974.png new file mode 100644 index 0000000000000000000000000000000000000000..01bbfe6545aefca2f45f40606cb7ba964225d9e9 GIT binary patch literal 16677 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 Yc+XvH{kzO97HBYor>mdKI;Vst009Lw@Bjb+ literal 0 HcmV?d00001 diff --git a/umn/source/_static/images/en-us_image_0284274981.png b/umn/source/_static/images/en-us_image_0284274981.png new file mode 100644 index 0000000000000000000000000000000000000000..247a08a4ad0285f5e1425f3ad89bc0b741ff0d25 GIT binary patch literal 214 zcmeAS@N?(olHy`uVBq!ia0vp^fNn{1`ISV`@iy0XB4ude`@%$AjK*4NJ7sn6_|GN{Sxeh4su7M@LiSB}ePy2F!)-rgy`njxg HN@xNAtJ+Ak literal 0 HcmV?d00001 diff --git a/umn/source/_static/images/en-us_image_0284274985.png b/umn/source/_static/images/en-us_image_0284274985.png new file mode 100644 index 0000000000000000000000000000000000000000..01bbfe6545aefca2f45f40606cb7ba964225d9e9 GIT binary patch literal 16677 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 literal 0 HcmV?d00001 diff --git a/umn/source/_static/images/en-us_image_0284275038.png b/umn/source/_static/images/en-us_image_0284275038.png new file mode 100644 index 0000000000000000000000000000000000000000..247a08a4ad0285f5e1425f3ad89bc0b741ff0d25 GIT binary patch literal 214 zcmeAS@N?(olHy`uVBq!ia0vp^fNn{1`ISV`@iy0XB4ude`@%$AjK*4NJ7sn6_|GN{Sxeh4su7M@LiSB}ePy2F!)-rgy`njxg HN@xNAtJ+Ak literal 0 HcmV?d00001 diff --git a/umn/source/_static/images/en-us_image_0284275043.png b/umn/source/_static/images/en-us_image_0284275043.png new file mode 100644 index 0000000000000000000000000000000000000000..30c3d923b09fa508acdf2bd8ccd6d1284e973871 GIT binary patch literal 16868 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 literal 0 HcmV?d00001 diff --git a/umn/source/_static/images/en-us_image_0284275046.png b/umn/source/_static/images/en-us_image_0284275046.png new file mode 100644 index 0000000000000000000000000000000000000000..c808e11c36ee8c29d51723f5e042624ff604d4a6 GIT binary patch literal 540 zcmV+%0^|LOP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0kKI$K~z{r?U*f( zgFq05?_VPjD=-Me3Je0V0#k7UQHwxe5SJ8DgQ!4Y+GGW3G4Jib()8}yD<3`DFh^>(8%vI`2H9R$a7k}RT83e6>6Dh^NVK%Xu#>E~H zAJQ}WMtG#I?8itk^-{*|sBjahGq;h6+nmee`{#Cy7DK&7(99@~^_3acQ5S1)S}hh} z+xIyt#)~Pc?Fu#(H7s~xhVrs-T_OuTSj}-8@A&{L#UwGJ+NtSoQE?rn1s3YTekl5o{#D=nn4P_A<$``Sh{i$+19-9Q&J~POH eT+U*z2k;4>cV8xgT$6|Z0000Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0kKI$K~z{r?U*f( zgFq05?_VPjD=-Me3Je0V0#k7UQHwxe5SJ8DgQ!4Y+GGW3G4Jib()8}yD<3`DFh^>(8%vI`2H9R$a7k}RT83e6>6Dh^NVK%Xu#>E~H zAJQ}WMtG#I?8itk^-{*|sBjahGq;h6+nmee`{#Cy7DK&7(99@~^_3acQ5S1)S}hh} z+xIyt#)~Pc?Fu#(H7s~xhVrs-T_OuTSj}-8@A&{L#UwGJ+NtSoQE?rn1s3YTekl5o{#D=nn4P_A<$``Sh{i$+19-9Q&J~POH eT+U*z2k;4>cV8xgT$6|Z0000a~60+7BevL9R^{>9WqrSA2nghdmh zwzC~MP|6|gzvA*Xm3uZiOjY|j{3Z&$X?2ZikP}i=-&`TzJ>g@~L;1=jeYt@`C->@a hs?#@9v*>u?jLWn+bbjw&#y6;&Y!vLYcoCYF!9Kh+8x&mA~aUruIq#e zne@9~ju#R-FJ`{~XVG^*Z@YNG`2G&j%g#O?2ltwI8{aM!`uRdO$%ygNEIWzuQVC(0 zTvb4Eq-4uYWaiXB2eRX?@VqmXLGWDL2jS<@OGENrzeIrYKp*0_2SZGVJcYl)MR;P* zlefIX|D6!IX=cV1HQpvhoxQ)o1Al=eUsSD4(GIdu*0h5KgW-rTkdX6a(|r&M}|MZXZ#9}b(TTwG$9hslks~X z#}C6}!L;*##>5V}>_N_<`Q+ z_UR4g6xAzWdEEJJvW3H81bTv%d%5q2I+3WjsV+lk_ZjL^`L-D7=vgv8k`+63^@`6F zdU7c8CQWG|dAj0$c$1Aq%FTo~`}9R`Sg-7Py{;ID2)KpaSmCi7Do?(Xo9k^Uerc$A zZSv!>N0vW!sLO&FQb#@B{Mz3tuK$+iZ|U!rT91lc$r)9TOE4uyms%?*L2GNr4`%ee z4P0Bgp+3`btJ0&t$93M3`1{s2sq2-@^vveDsk&74?0C3co%2{Bmf}8uh!s0tjpjY- z>I1dIRIn@c-fHEiW*hZi+&K53&#*u0VIRWq$Nt;9K>AD`v!bh;6m(EA`b9|&2#35y zi|xKWf6HZ#zPpty3+Y3N+jsQ!eM>A^`C-te3U~=dthmot4PqmoEJKxTeH?Qohevo) zMG=EFBfaXBum9q5iZ1B&ZX+?CRP}o&e|X7AT+)tgy_?v<7Wh)|-}FAD#&^lri@Di5 z`v-_ycZf*+@RDnKWL(S;vI#?#jy0aYIVQ^_GVVs?l4%EzFVz+|6-}3IES20dx!u*#J2LL# zJ&;xF;{7^0>5p}_=%LdJKWDGMnj56I7yjmCKS?3BT|;CrKmgAt6Wls~XHzQm7~jds!diB#Fatnxy|CTuTBd8(= z1_o+(qRqVKN6Dj$26{b$&-cSc6g@`YKV4Dy{`dmMQ?5mO6|bcSRR#OKJ2LlC{41SrCo z_!;=rHh3&l260=LY`O)aCql?8PDje##Y6bvS9<|m>5%c;A;+gd#63rn@8M(6Ajpl0 z$TMWP20V5jK-B-s!x^6?yQW4C>DN)G7u81q%pP^HEMfnc{_IIefNNIo9ZDYn*ig6m zsihTfwG%(oF!m;geNoCye%+vX>Ee&2JW`-`Saurvs#k70D_5PWGOy6E%lPX2b|A1^ zReL?zccSb{mt{yKE~$@t2bx+DIb6m5ed%Ly&H)(fS0k+|L(wjAp2_3NjC(Gc8n{Ny zW4&Ko7NvhoS-2Bo8AqF?BCUg?DVn+zo8~yTf@lk@LWqXP$3LaAAsQS{_W%ngt0A3@ zwzsRy4c4;alA;$wc}@6-9eVEL52eEN$W17kUX%T#;En+Tbo2}vA3Cq6%!)9Y-lDIc zYl&u3-JEQK?9DKi2y$HoFr;xH*^oec4ADqJqh~jTnG{K@=WvlO1JE%|4^1n@oO6() zmJK{-J!=vsSyz#!+!OJkDBuw<;_=fb5Z*;`Q?nc0ml0hT`n-D_D_4KtHnKy(K+e5Q35qvZkm8l@)uYC&1yOzRPsJq4$jAJ#6_H|TQA~9Ufw6U(tguJFie#?daCE^q)X|5 z2%QH+#*@3VP!X9Z5VkT1ndtu)emeRg0knpPj7<)66MyNFTz3rNi>LKpe$bbp4wK9h zTMhN#cgpi$zKorO|MiF6^w2?#ymGyg$#$M_dIEIREoIP*_=Fe2ziLMOXa*OVFa3<) zE}~05%OOA)3HVU9EaIE&pa0E5zQ_Wx;g$i>phWWChKsbkL>}Jy{l_j+d+wppWpgW! z3n(%qZg&l4K05WWS1`b+Yw5=esyt_*==j|Hiev4(0Lttl0SxCe(jw#!?gxfmTbxkk zler7vxtB`KmIp4u1@R~t$2V!~r~_BWLWd7=5qATDIxpNKTZ{{(jZz+)1xs+>hu4Y2 z$Db%b__g*A#%cL4e*6044K;x3Zp8AITihnsrA^JuTy<e*Q*eA{u@*(S$e( zCx6!acb@KKK=>ol{?O@57Jfimoax;{ogP(BcQ&_U74>ENDL%$S%;B*%3~O>qUv|mS z@y_juDbnG9jdNR%r6ZS3DS7CUeGABO8H8sBaw6jf9PQ*-a3frSFWj*tAhc4+7bBi| zwQo8uVmU5~axdLW!*YEgtXJV=scng5D$K9Xs8gl?+PL@Iw?#huX0|k&AOe)TpY2}u zPfW*^s9#!}C-8?}3rD#9Lh$tJy`@=}a8a#m;Th$*aH(}cF)6Ymt2C#=K71tbJ3G2L z-6BK1=Da>;9>qt2TecSKp`8=9W_C`7x}4&FtA#CVgO(2T8Xo;l(~0Qn<5U5@Sc^No z=hY-{^qz>+IF*=MF+Jz_F2s>!O?lrf@ts{dnKvm>(Xr;l^f*FDQRh;F`UKvk1}VW& z<2?T*^*dEXXh8a|IrJ7MbWO-mYZqtt&CNOmU?hK^243=}t@w7NWBU36Uq|AkcZ~B! zt0BETbhC9Kg9gqy`QsB>T&q)?6gx5v+6qd=9@}uHk5NDAeJHQFECJ3#G5Cx)g0p>s zSY{+i+LAP72}?Lsv#sBn$SRo+%2ov@pyR;fSlP&cRAZtT>CZk>jD0EF>18d}! ze~J&4R6{W?vldb}HE}r%R6&3>YH5n9y2Y~yz|8n^woy=y|7wm;0`_5g{Z8gknBZ-mHC=KY-Wt2X>TGW}l=wi8uw~QklAzm1FOlo^ zg~kPlvTE-5QdOM=zX?M4^*kwB%a?ry{TwCaF3L>J@|)q+604;+2mr}296$) z%B}&M(e#P2F=@M*1Cp@f$}T9Nv!{PbZQ8F5{TrV=N1&B!h8)IIUCC_Mn$>aDmXHWi zy(iH7g>-5lv0|y$X+%Z=$VGsuE^vSuuEg15{3OQ6jYD>CKoWirm~M`!jqhRH{1}Z{ zs0tUk`nBPqaHkSQQ&@M^YtHA|6Fl|I1m}5UIxaS$@M|(d1X{iFAQ-AQBtcV=8PWMM zFv$zRi>^s{XoH>(K^p({wCasdC8ed-?BvMj$QNUJwri#+E-e#krO}wqfUNBqS|41_5yY<4 zdo&P%_8Dfxy&DX3QqJH~Nok`{E)XN=lj~CGso0u|DPk+_!4=>b@VB4wp;p!NF$H;? zxhQOd(BxMj_ZyiwmtV8SU`%AC;*NBEXdD7Z>YM2U-W>*==~3DTbw~eJrMq4^v>}gs zP9i|XC)+icc{Ano6xF|}nA`YeM36cH;IWa5uib)j*H)TglDeZUjYAWaKb$aPX=NnJ zoax)FL3_{-G<|lF{Miz_+G?BAU9?g~}}Td1BlZ1@YFW)!DhG zL!75EB(FD_ebw~$gOufaj4#3-ni18gtD6f5P~vbqq~%|{M!|A~br;FfuvK!SEj!4) zE)|*>fV-cjg%oOYv4&J04VS0xSzn!+I79YFR+wt}ArE4nHo4_3^`$9rv}HO*aVzIh zjC=Wh5t&HAOr&E89?yF3&GL8uSOxH{0JE4b)hHBHQWim?*u2bE#L&KM_vm%U=92`Z zdP-F^uGO5x7FU;XvducTN3N!`>eR8!>N^-WCL{&Bv-R%uu6bb6ukWA*Ne!^d`Z@Qh zC4H>d-L1G9`a|Ynk*{YiSc=*)&eY!0nD#<5RfWyyyL~3eXfmT8Krxn371^_=Dta?^5685l)#}zaDBodu3|2*r&~f>Fl2S&N(o&%@Qz>?r4AyTOO-V>5%orS) zdL_(fdM+sVrR4s{B^?-^4pz~fLCVCW#GrkY*3|*``aK@!ABte-mREGD-x~3K2=Xq( z&Pb86NAgd)+~L(nz)q8#p4oTMduDXlVy7rZAtRa|nv#pv21)km`7Ybn>CxlLl{1b6 zD`}~*80Wp4^@7;h30;fVo9-c~u+8B~zYa-WblfM+$pEDPta|uDzZc~SmqJUJ5N}$u zwKjr@lHq>o_R^^S)0umg#=1CK4lQfhtI5sH1XgCd;4?$bcP{%8$D)_*%aSJ`mI^BU zU4!#x6w#u*=qN=!^kd!3by&zAf8@dZ@w)N&NgA^QH}Y^peX7(>lYLNHdYRr-tevbt zTjPWEq<*@dEK860vV8L7YZT1ULRw1Pn0Q1op=oFB*MNcuXbgG%WPkf2-g@~+$4GOO zIf!^E+5-b2c@Cyb@Zdv1?MgK9A^t&uvh~M69mzJdmEr#G8fuqRDs26@ZIPSG-1R`) zJCyWcP{eKZ^Ez0UMe$Pbw{&KfDPkX zV$xM9>BznVhj`4oj6OusJQUkjR!2_sMbaOYC8NXo;#VY11uHC@x~c2bx157^H#mcf zXus}}>IN?=baFJU5I>;QKcT5;(9cyfC)^l#Tu;8dv@mUK$h{g%^ zOHrRqfa{iwvzSjOq5$P$fGlP!QTrZ%h~!cSLTcrV@h!6CJ>AS|5e#+gBk4-ZMa28Y zp^;p!cp+`SvpY7v@Sa9=Py+z-l4`#SL0x2rAYHKsws{I(B{#8ZGO0ue8f zh=^H?g>Si_h@A&Wuddu=d~*x~=!m&n(4^(aPa^hqpj`kSI~5w$tnr2ZsqQcrT%LeJ z*I=#$hBiE|W*|HC*gSy#1oBV~E18S;l zz&-Hb{(|0~oNEIhu32c*P8N)B4`hT49a2s|NxxvrPX6%bGd`K#)Uz8LJo7LM&xRU= zMja0W{l#PuBF6%I4OdR^yiblG743q@hL-<9ZGOQ5h7zT{b_=XS79m3WgW%lblmS|3 z#ZJyJAtse7IksPB2GTV~e&TW=gb1Y7Z?z+pbGe$sDu_Dr4Ui$nL~dU8w6WpL$C-nC zfCZv*fo!@XY@Mol&jTJC;}4Xw(psM?^4NB>Y?HGNQueQq)|M(jb8<0&nl}p(8XJc$ znGo~N`>M%l_J-p@4s?OXW(0tmXO0netpjufsW}mF8RwKg3C_I_AT{rnMZ}JSB!3RY zUYS$9_W@*eP`AwRoydsG;a8|SfxE5*MguKnv`5Et=qUm6xa(ef6gV7^6_pI_qQNH3 zgo(Spk_?!7qq^muoK#&Qo+c{rTr8i3X=Z?GLZ?0o)5PG(IDgwD3akL z{LLXJn}tM10d~Vlf;SvE?9FG~GtSm-YaeS?gRoJ9&sF`&T ztFyDi2zE&K-LdkO0Fo?1U_XW|%O(mJYS%}QNT5pQu`B2Wa$-M6Uz%MmP>2DZ#U*+X zq~*5n`)IFK#|J2863;wWPcvd@0DG=E*QaXakjJ*srpBSxOeDXE_7p7e8|;b7_Z7?a zd`j2N1(X;DB-(()OCP=Z?*taZBS>+&WRY)MrB-xUV67)`!P;P5fgb?HDmhU) zgb6?m1uZuUebklbq)0<5hb8^LyDz&g z71dr=CCKH1%GAy3vu`BTJdv|3K+#c2y9nRDV_3zvwAzzWo?OoizhX)hrvX|hp_z6_ z(tUV{0^1Bs;wOxclB4Y*0aHD17=r=KNH4_Ckjlehd=|g?PRIn#HUJmiOW%^QlY(@s znro`vzCElNCgw>|sd zcczy-T?Oj6r6xpGh2J#bXhVUc;1YpW^~yjlZ`);P)Zz9N;T z(b;v~D%Gpq)kt0?7J-|*hua8AL(+?vLT(p^7|u+wMkS}qwja6$kDb>;H??_MiF!{- z?T2V&p``RfHkAB~B?8|eMIm};2+oi315x!D9U?aM4Kp@;MJ`2n$^ zrrDb>=i&1kH~YDjmHSdpPdZwf&6jwJ`D4hCamH);$otRmd|;xo_;q z+HC9nXIgBvqovS=suM;`St>%wIZf=*%RvuujfJlE!CQfRDc6q9d|U@z#iu`d=nj!K zhHz0wOc?hPGm$-bvRO)K=4N5EU>x(B1B`Vhez3`%&&c`6AgPv@%J#7rXT9m_ zzc?A3a7_VaJ9&G(b$1tH<8Bsm0!5a5nTvE(%XidX>T71%WF}{+mn54Jrjq70;uHDc z>DQYc6+RtrS98&wPJ}5}qh|Mfj#ow(p8Aa1T%vbg>@yfJ)Vw}&WUe;7uf8U{I9LYZ zZ%tg#j7}aaOYuvPrDxx!$B+AqT_Cs1(t(Xg0zM4?kGBiG1kj_nH2w+b@VEeGme-h+ zr&Nuc91B~DO)Z#kGC-ldB1D1%f_p4~IegspNY4dIRoft(Xs&WGpgc(OHYdT{{K}_<1nLscuEnjL((*1-$ z=IQRqH4H6CQ>85ZIF?({BYHqIT0OK{6_cA$N@ndR?OVr%fl=N{>Awj)x(j0HCPG_j zx5~0{KIP(>&~>-l1iilCsLFHH)qX{5cNR+1Y0t$WqvbPK+(_k9cfbL?3_sBNWyF8* z=8~y`a+30fM6^BE3aarJA*U2;q6L(o&!3Xx+>XZHmhxWbyXaEY=AgmT1bnlmgmcxE z%O@xJEZUyG>=@cSmWHG@;P)h;tth4XA2p3WpmAh55TF~H@w<#bEC)K$3sTKaptbm;=Pd>p*^5BTzLA;RzR zfS7RkM|}BL$np0B8*&ZxPvPzFr2uSo%*@Pu4VPB@pTOC!Na4Q_2j$7@_?{uR1{?hI z&te?7;fmmizx$8h%78r1dmZqX|NXNX^8Yg8xI9%@+Hm(HbnJifX68S4pY!*VCX*nFJ_0H^b10y`{;HxE`OBW2!=bycP?|%R(ZVt-; literal 0 HcmV?d00001 diff --git a/umn/source/_static/images/en-us_image_0284275089.png b/umn/source/_static/images/en-us_image_0284275089.png new file mode 100644 index 0000000000000000000000000000000000000000..b26f87fc82c36b13ffc32699e5d651beb385c9ff GIT binary patch literal 446 zcmV;v0YUzWP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0aHmtK~zXf&6dAw z!ax+q{a?jFf@YKp4EDRPSr%Z8sF2!%fjrt81rjy!~U=(l~*o1|l1VEfANCBtq zP_xxE9we7D%F2O(yu7@Ef`TF#C@Co^gMo^QimIxrnwpwA7-(o{XliO|X=!PL zfsT%juCA`0o}RwGz5y5*8X6iI85tWJo0yoGnwpxKnVFlLTUc0FT3T9JSy@|K+kkCcvmzTGP*6~CaBxUSNN8wiSXfv@L_}m{WK>jCbaZq~OiWx{Tzq_dLPA1fVq$V~a!N`{ zYHDg)T3SX%MrLMaR#sMac6M%VZeCtqetv#oVPR2GQAtTjX=!O$Sy@FzMP+4WRaI3@ zO-*fWZGC-xLqkJTQ&V$ub4yE0TU%RudwXYRXIEEOPft&8Z*PBp|AYw>CQX_&dGh3` zQ>RX!K7GcF8M9{1nmv2=+_`h-&!4|w!GcAL7A;=9cQ>uk5sDH4e!pN zM?2c%!f)$Moqn;JbAR{#-LH2<-aWd<6M=_Uy)Vz z>Gb1s+(~DB#NsS6_)g4`cRj>@b~4MGr%TsH2#HlrdJFVdQ&MBb@08(^UA^-pY literal 0 HcmV?d00001 diff --git a/umn/source/_static/images/en-us_image_0284275119.png b/umn/source/_static/images/en-us_image_0284275119.png new file mode 100644 index 0000000000000000000000000000000000000000..247a08a4ad0285f5e1425f3ad89bc0b741ff0d25 GIT binary patch literal 214 zcmeAS@N?(olHy`uVBq!ia0vp^fNn{1`ISV`@iy0XB4ude`@%$AjK*4NJ7sn6_|GN{Sxeh4su7M@LiSB}ePy2F!)-rgy`njxg HN@xNAtJ+Ak literal 0 HcmV?d00001 diff --git a/umn/source/_static/images/en-us_image_0284275120.png b/umn/source/_static/images/en-us_image_0284275120.png new file mode 100644 index 0000000000000000000000000000000000000000..1267615e3e449ae0f815dd16f3aabb9bbb6d5d74 GIT binary patch literal 295 zcmeAS@N?(olHy`uVBq!ia0vp^B0$W?!3HGtkJx+wQjEnx?oJHr&dIz4a#+$GeH|GX zHuiJ>Nn{1`ISV`@i-8&rgD~Uq{1quc!9AWXjv*HQOD`I79Wsz;OVoenIcJVdgZf9l zpq6*62QPYBaa;-%XjXW&D0Y#c-S4d%g)VQoxF;av(){+8ZvwNbUQJ(R@Ii6Hnq;4{ z@V$aetDGBMUo5Xlo6%Lh^RIkHf*@OD+w4_#GanSTx;&|RxPmoV{==RlJ7l`LA6sAG z>$$o>guCZUg7T|I!^fxmt_UYz^WS)JZD(#!jEux)2et3TJlR*|lY13@yVV*zW4S5) n^=O3li6@>F$!moF=ssZWS}C#bj1zMU&>sw*u6{1-oD!MNn{1`ISV`@i-8&rgD~Uq{1quc!9AWXjv*HQOD`I79Wsz;OVoenIcJVdgZf9l zpq6*62QPYBaa;-%XjXW&D0Y#c-S4d%g)VQoxF;av(){+8ZvwNbUQJ(R@Ii6Hnq;4{ z@V$aetDGBMUo5Xlo6%Lh^RIkHf*@OD+w4_#GanSTx;&|RxPmoV{==RlJ7l`LA6sAG z>$$o>guCZUg7T|I!^fxmt_UYz^WS)JZD(#!jEux)2et3TJlR*|lY13@yVV*zW4S5) n^=O3li6@>F$!moF=ssZWS}C#bj1zMU&>sw*u6{1-oD!Me7D%F2O(yu7@Ef`TF#C@Co^gMo^QimIxrnwpwA7-(o{XliO|X=!PL zfsT%juCA`0o}RwGz5y5*8X6iI85tWJo0yoGnwpxKnVFlLTUc0FT3T9JSy@|K+kkCcvmzTGP*6~CaBxUSNN8wiSXfv@L_}m{WK>jCbaZq~OiWx{Tzq_dLPA1fVq$V~a!N`{ zYHDg)T3SX%MrLMaR#sMac6M%VZeCtqetv#oVPR2GQAtTjX=!O$Sy@FzMP+4WRaI3@ zO-*fWZGC-xLqkJTQ&V$ub4yE0TU%RudwXYRXIEEOPft&8Z*PBp|AYw>CQX_&dGh3` zQ>RX!K7GcF8M9{1nmv2=+_`h-&!4|w!GcAL7A;=9cQ>uk5sDH4e!pN zM?2c%!f)$Moqn;JbAR{#-LH2<-aWd<6M=_Uy)Vz z>Gb1s+(~DB#NsS6_)g4`cRj>@b~4MGr%TsH2#HlrdJFVdQ&MBb@08(^UA^-pY literal 0 HcmV?d00001 diff --git a/umn/source/_static/images/en-us_image_0284275146.png b/umn/source/_static/images/en-us_image_0284275146.png new file mode 100644 index 0000000000000000000000000000000000000000..2dc46d96dcecd7bfde107367d143dd219492e040 GIT binary patch literal 474 zcmV<00VV#4P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0dGk}K~zXf<(8pN z1TheXc`YmwiNu~nBC$y1$+O6N1TZ9rAUOmH2og>pPMkP_s6Y(!b+?;dnS|N)NJ#jT zNw&M4oo{ER?H-GGo{EBB}|GyYaO?g3CmwPR`|a4?h$CNlvWV8-PUC%3E!*Njwk}L zqRc=}V_DM=wOXhz{fi<{Yq{`eS=S0*J_7~4Pl6HWS*eID; zbJ_#t$rN*}GMhlH;y;L$OHi^v<}t3h$GN%4%9QI@fY5XHgGL+pe$Yg|03b6G$;930 QwEzGB07*qoM6N<$f+nEJ`Tzg` literal 0 HcmV?d00001 diff --git a/umn/source/_static/images/en-us_image_0284275156.png b/umn/source/_static/images/en-us_image_0284275156.png new file mode 100644 index 0000000000000000000000000000000000000000..1909444d23d92a3a6566bca91ce065d14dbda919 GIT binary patch literal 1004 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@H3?x5i&EaHVU}gyL32_B-i2;l_022maMg=TL zfE5PVkN`UjaKHd37;wP=HyH51052HufdM}l2!Meg7zlxZFc^q{fvBjc7#N6yfrNyF zBp676fwZ)=3>e7D%F2O(yu7@Ef`TF#C@Co^gMo^QimIxrnwpwA7-(o{XliO|X=!PL zfsT%juCA`0o}RwGz5y5*8X6iI85tWJo0yoGnwpxKnVFlLTUc0FT3T9JSy@|K+kkCcvmzTGP*6~CaBxUSNN8wiSXfv@L_}m{WK>jCbaZq~OiWx{Tzq_dLPA1fVq$V~a!N`{ zYHDg)T3SX%MrLMaR#sMac6M%VZeCtqetv#oVPR2GQAtTjX=!O$Sy@FzMP+4WRaI3@ zO-*fWZGC-xLqkJTQ&V$ub4yE0TU%RudwXYRXIEEOPft&8Z*PBp|AYw>CQX_&dGh3` zQ>RX!K7GcF8M9{1nmv2=+_`h-&!4|w!GcAL7A;=9cQ>uk5sDH4e!pN zM?2c%!f)$Moqn;JbAR{#-LH2<-aWd<6M=_Uy)Vz z>Gb1s+(~DB#NsS6_)g4`cRj>@b~4MGr%TsH2#HlrdJFVdQ&MBb@08(^UA^-pY literal 0 HcmV?d00001 diff --git a/umn/source/_static/images/en-us_image_0284275158.png b/umn/source/_static/images/en-us_image_0284275158.png new file mode 100644 index 0000000000000000000000000000000000000000..680a1e3344f970c1b655695a7bf4cbb08d97c3f3 GIT binary patch literal 555 zcmV+`0@VG9P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0l-N_K~zXf)tAl7 zK|vJ8=dVQ;h$3R6u(M$!b_h|DWUK73@{xrdDdjV4bj2k3yk*x04efRt zUtD8z?K z1!6XvS>imIOmb6!$mMdJTFlaFwKz6yHk+yD_xrJ0t)$mGA`l304m8VRvEW50f0}6| zG8ha>uXp~3$Zy>4-EJqn-Vu+h&Mc`^itlz6h|Ok$YPBl6#)(FwmiYM%PUcil&|Pel zUatqY+l|ZRA}!XUU5m7cQ79JY^SSISmZ-MX=OATX+a~60+7BevL9R^{>eZ5RSkl8qIPBJ%S`4n;Bi{! z$@s;P!{xAnqQeD+6e)QLiDm~Ap2f_Qc%7C_Jm_J>(boA;nOUS+gR%MSg8%;+!xl(Y Uuw2Z%1T>Pt)78&qol`;+0QuiBt^fc4 literal 0 HcmV?d00001 diff --git a/umn/source/_static/images/en-us_image_0284275173.png b/umn/source/_static/images/en-us_image_0284275173.png new file mode 100644 index 0000000000000000000000000000000000000000..c808e11c36ee8c29d51723f5e042624ff604d4a6 GIT binary patch literal 540 zcmV+%0^|LOP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0kKI$K~z{r?U*f( zgFq05?_VPjD=-Me3Je0V0#k7UQHwxe5SJ8DgQ!4Y+GGW3G4Jib()8}yD<3`DFh^>(8%vI`2H9R$a7k}RT83e6>6Dh^NVK%Xu#>E~H zAJQ}WMtG#I?8itk^-{*|sBjahGq;h6+nmee`{#Cy7DK&7(99@~^_3acQ5S1)S}hh} z+xIyt#)~Pc?Fu#(H7s~xhVrs-T_OuTSj}-8@A&{L#UwGJ+NtSoQE?rn1s3YTekl5o{#D=nn4P_A<$``Sh{i$+19-9Q&J~POH eT+U*z2k;4>cV8xgT$6|Z0000Zy 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 z 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 Ll+oF8hF<>*esz%J literal 0 HcmV?d00001 diff --git a/umn/source/_static/images/en-us_image_0284275220.png b/umn/source/_static/images/en-us_image_0284275220.png new file mode 100644 index 0000000000000000000000000000000000000000..97358745f009dd50dcb080ec1310ba59a7a18736 GIT binary patch literal 234 zcmeAS@N?(olHy`uVBq!ia0vp^Vn8g+!3HF!RQ~M%QjEnx?oJHr&dIz4a#+$GeH|GX zHuiJ>Nn{1`ISV`@iy0XB4ude`@%$AjK*4%X7sn6_|E*U7`5F{>m;>H>*?U5Q23LFT>teWpK@blt&n-1p)$lQj#J<+#EExymjGl?8IV zU!b|CJIEloZT%#h?Mh)LVvcM772P$8ag7fQ`5Ruh!R6tz$TS=GK-=!C-$IsZv*f+u bSv-^bme_BBg~uL)e8b@B>gTe~DWM4f`2^tRd#|qo(NT?wpp*+0X2VkMx z{XRx^gdia?zLJ#?)p$R(qo){PI_}u0dH7f|gbsxAFd&f*t)2iiFqM{zJ{S*6tXl-z zSR9~$B8x@r?^U)nr4>~Uo9m#RR{(006X($KzXF89z5Vt4nX zw1DmJweO#+Oh#PKjhnOd_0r_PckQdC>$%yH{rzA!=dsz7-KAN4{hEDxLHCoQ**9Wm z>+`Xn8z|U5*E?RT_mEaE>mU;?)d;TJ>e@Oaf#-zI_CsH_wMCOTjfC3emaHHS7CiQ% zRc~&Ej1uB-zukH!4DV+L;2nC(2=&iR6ci9ysQ|WFk+#XU_s%vg_xS1#vR&7rtrJ*e z#m;5=0r!lNzwiVvBNq%$Y^VUlqoX0o*VnRes(9=EX@&(17;^;R9{UNjIZNpFV0x{Fti zF*orjoEs9BGBVo`We9`-6*%kpcB_+GUn_+e@xYEH2t`Iq>g(3b9`&AZgUXB^BuGMI$FcyqGFgOEd87$An@aKp~Rdef2tgfVZ-X$qsucK6>7Mx;j;zwRwM? zGvIQC-PnjNP;Ah_XJ3eEVt;h$hb*l!$<@8ZG+v(jAeBC&6)*N1OlK!p!t%&;!RK;!E$ZC0GPVGU6$O+USjs=V$2 zmaEZ(HfzPj)6;c|rse#YovN9ys(!E=Z+=qNHMMMDnf)5zoL~M-=9Fdby2K2^*FKiQ zw7l%&({eo9?1L%C^*-JX+EGEeJgK)gGelyg(wESV9F%CI21sao6*dtS3MPO+xe7qV zBj{VGv7hccObFaq;-IgNgxm(rNe1`>Bt*D+rV+;SpIVr8i!{^Id*XjIv)>~uh3EDtcpmC9>3w66^JtJ35}=QP5!ltB~vsW?kuru>4^#0;TRXAw~|c zqbmc^`lz{;1UB-zi!nXbi@Xx0oE!3_!fA#&6lIJjr>=szROCe8P98O;3d|q`=neME zso+$hhnT zk=~%MqsG&7MhEIf5~cYjMpgNje0W0m*rA*gok+t0+VCND7r;CxWMrvHdK0ZjGwLXbL9;wIJ(lI1K-w zR9&k4<9L+)=2U5-76ZIw5=vUYeR?(%T-{nE3fk1~qYD1v4b+haI2~4htW-AHh6h*^ zwBMJZntHOKiyB{lue3xAD$y7IZMgYScz4^=g^#r9XK6342BhBYc^~!99RQ z1GAJ#$Z*8xjZ*1E?&J2sXKjgA=t**)sL7MjH?FiQa926{{m!tc&vO~Mv0KSE-0*kQ z0B*C3_QvlG+sCp-k)ljz%o3l^FSY0#Eb4_5?px%SzvtkSoKFKB`A+1@97gncCo>;x z-8*Fo05+F?(0T$#vsbt={lS}y3lWgpdS}JVM!TgdpQd_NYDedl$15E8V%kNlx8V6} z8BhOnQXmmQpAC`eXqSS>yB;6?d*xf~(U1b!sCv`Woz@?9jP>lYpD`9vH6bh(ch_4) zBl#&<;S|tWOcYXgk(eTdp!4wWOncX1GT5kzdh<=`)k(Lkl9pe$=^88|x4I)X=W$r5 zNLQo#Op8eXoIOr}67T*HR*8uPL2jJ>UW4QFgA|VBhVEM}CBFw`Qh0b>leGOg%n3Q# zvCeZYH`(!QMRhx2z`>`*W;;lBClQrYi!zw!lrk7EXex>lls{iCBxVg3m~71>TD>X> zuG$;ghA3A%vrLi~5Q{&t7iXl}*Wh+){k^ea7s!9dMU%rcwctDQ@lw9|sQzmM_NyN+ z+kMIR>(KUawO=~?A^P`D=bup2`9W-a$I=D!`*#=ie_h{P!W!G8xcf}+v7Nt6V*u*R z`mk6o`{j#rQ>CCQQ&hUFbHgp&%hEu(z-LP`L#}+-L3lA{((*Y1`L{+@JTOUx0Po9e z27$L#k*VrF+=Zdw`R43(5rwW{B0`r7uM32|M+s-2HO5qSob|`tY@D~}g{<0CNkA9< zHP!WSDfq}*VW&mQlf@kgD-h3cUiO@i8P7nLGP|_Hz2nyI$2-<9$U z4_BuaNg`qQ1-PVMUYmt|n+n@zhM~Wi%GpuwbNmjAR04$(YW5|BsTxQW4d!KMqjd&f zRo4t)ull7hSHH?;NB12dt1%}z%>P8SO@vE`eb2kuAV+&3C6EzJ+C-$l%eiD$gf559cTJGmXw`AtqJPm zOD#PB0qGv>ka*PiKn7D!Z9IQg7lz*SWVf#j?)PKFkOX_U2g*{a0vWN{qL2%kaH5r9 zae2=JHq1Op=v5kxn`3OX7HQEN%Lmbp7dCxPBl zyl!mSbzHfCS->VccU$tVZazXRgrrJ)NRt2IwOICLH!jYw7cfqqB7g~=uo>$1l<&;2 zB>51nFoI2ea7jLzKPKxH$-~y;E}6%Y^wdnaa+{bVTXnK{x)Puze#UmyiUjgQFkPEs zMOF02pd@o2a3?*U*Q(c-mF%Np%2GotD!sp8*Y9)lU2htPIj_P$AC%G0LM#+9hP-tcQik zX*@=fVxG^&-{rfqq%w>V*9S8jjiEz9z75MJ0ZjKuGgH#)N0~RYRrFKbvSSku z3^Lt7rSmpiJzcPlhUTqOsI6eV!Hk-p5V*?NNz-R<`NtCO z{?gE-r&CudT7H@;eR-9gYr#ifb7YtqSZ^&<092M7!}bN<7p&<(r?is4VHs8xL<=?T z>B^Ig5}XrXEbvI@2z;_)nnu25*hNReN&eNq!8Xs5Zx`%6xO}m}d=~NS$vc1qgwS1) zg$C#=B`2-H1jn)(F0|EXK!&exQl&lMkGYSslK~e4X~%aw113_5PE-&$2YS2P3z@s$ ze#tf|(H-&9GOb=PsC;a40nW=-BV=3*tgXzK`l49O02{E58jn%{1udIlL7|NiEHo_> zd`mXX?;gN>PS1J85bgTQI_X8HgMyvF@<*o(ACz3_2wOz(E3 zM+E2vGg?FrAqAy56UPm4zNzE=t;~7Qel}Lctm4elT9S;>j5mC6m>bBMwG{xiqykO! zFJXXbrY9@{=L+~y^Ta!&=$dp7INMus;0pPnV?MJK`T(4AtY3Uhs0L9M$OZbTHwNxx z*m;Oe`;RTnU_1qUQLGJc9jVe_j;VTMm%6~ur3?mck zbro9im7AJYR~?ibFy~1MCox!Rw5|sU=549~gfPVY`m^HPQRc;UMFm2|*O*_DxzgtZ z*r!?eak=$<$y+}ESgIZIEnITi5O1WA)3$x?K7>Y`{E;1c6$-?tIJxh{<8K1D#8&X{C2wVY9vsdGm{FOYrBfDpSdp0Rj3%U-P=Yv1i3V=$+_VPe7dLHaTEdcgwQ zAh#m+Le|of*y!{HV^9h4AU%zf7rEv;xh;9q zrG{#)OU}nzNmS`NfSbZQ5}cc#d7rF{rUG5|K$Al;dhN9F^lDAm`R%NgO<0%<$O1E< z+`nRnK$>5LwX~ThHE4rBDgShgz4TRR4Q$WlqDf;^Qx}l-LvFgXn z)9XnKPfh(jtft%e7pIeJpQT!Wj7tEPtWn~TYo+Udrj1dp{`gX`Qy z>Z%Ka^QAYHlV5bt5y_s1FJizq`+JRNP=gO7K#!Ti@vWk|(4PTdg2Vj~v+45u#koIH z-ikq!@YRma3#?q~ex(=o#=ksT&;8WD%Jbc+0J2)2bEDnf%7FXxqhjcq2ZP}0q+`|K z&*<^M8^4KK_-vr#cIG|E{UVe`1#s5?^B{~@sgc6tsB_Wt9_0Mev+-usrlDjv?pJW( z`r+Sn7(MQ>*L8S%KIZ9uap<|PGzeP>pF10>P2T+ZG_L3Z{O+BzD9@j&zdr%}I&stfFNfibN3Qda(9f&AjL1fUA}p_y(y5rYsIBAs97qiD+_`B@Nsw&W@CLsTh{Qm1Cx< zI%&L>fCnNVos#;gyUg+=>%V4}+_UVRs;KGb8#fuv4mOF}YNiJK+DAC4U`iHA0p!wF z2eyNy)la+${`UFv`myE23Pg?Fl27Ok{*_#^XjXMVzrC8G;NxG}CF6>D5ZQup-d-(6kY&#eO*vD%m8E9p=0$tfAu zQ&uam(q8u2^P2XsY{WT2S}K#-eKxg!V8K~299+#R$(xo zQsz61pJ~D~Bg2BBz`T``Vbv7rsWf1epG<^010m!LP!y#(Cy zHLbxiE*cP8>-(p}YR1Nav&HXE#Y4gG^Vu|24hmC@aN|!pH;=mQ?1mWOA+nTdD(2DP zX39qU_BcxiV-=PZZ7Y{lHU(y0mITo%AH)-qgaM};7T5R)Fk4U7SbV)AsB-y!VQXwK z#*SX2FQ$i409xk3>Q3q$Z0uXJFNpu)VjUJtQ|R3i=9D=Qh9;P<3V606hQ#r$xa^4j zoO=89F(M84j8PUIGcF6nk-!xk%4(CSLw;(B{`xIKZ6eLilN-l-4X=p2NRBn4;Z+Li zUqOMJd!_Kx@1P(Q_&O?FHJH`~TW(>7GmQO3ilFG6)~>2%j$m!Jfd+I@9^H=aL8=1i z0~bHq(MNeAi7Hb_>8P+Y)wtrR!G4T3G90UbK~(kmO<~T`Oo<$XZ*=TTP9lLSMkDU_ z84UWRy~Q$8hZOM!8(wm6A=?(^_E{jftk;gxoeAAEih(*8D0}c8Kd|`1hfq@VE&^CQ ziZhOAF}%s}k$=pT>efssqi$}0ZOA&$1`v6@F8L<}v`Y~&-E4Wwd#@P5mXaw5h{*$< zKw1}s{2xg_hGi#>ekD-&Kbtav@wmXI>YXa9QrPu09?ETgvWekFjuw(oW}cJ}f{&em zeMP>sr7sG??l3N>D*rBgpdo-|h60hX3!f>)VmB{!tT22Y{=oc_yHh`S9YZwbBO*OD zDg^x>nv6;QZ<>4wX*DC1BxQL<9{PY49$AG%2c%*M2I{juO}T&k=bkp7d-!#uHqFF1Gr!{?>u555{D;qDVQ zroZ>(cst1w64`h<$ObPN2eCc&!<4dA1mn`kcIw5spb9^%hlXw7FAQ0^SOgiUrv{2i zMF;qnC#=q!Kj!N?GiqIITR`F^gJ7@g&@2@^_UWqWRG(H=3b9bPgKLI^Q9@h8Ly3{U zf?MVWS02{$} z#T^b!hF8o+iNzj_xrA`E!o!OGZH@)j!AHkt@}ICz-z_Ml=Ubre*ortD^>tAlHCp^a zCq?q@M}{tnI}2-=bKA1s<}>1Pi@Ytp=QUH!VQ;HT5P*Z9>9RQEdA`#3{pRG@v1)cm z(*a?jEg+I2lx5}5JNz^fh4l&bwPPV(aJa|rJeCs}X=H(59+81!MSDgTO{s(b!DM&= z2FL~eEPpFPNFe8{O}C4;H_L!6>%5;<%!AsrFMoS{@a6`@3R|g^11($>`>%Og%qlwG z@ubUd{+4m!I`eOC{WfSy+~&NMh3_{l1)p^+H)B12a?t+~75>di{O!^4EnWopS4Dlh z&9$(!G2VCrXaBGvzh#~N>xDS4JQi5+J&sn`n+TcU^>=*sw4SX!KAE;D{tLM=f{VXx z-f8}i)&FJpkrJTI+*vA~3~fde+ny>EQ0c_xLtUds&oyu}Hs)Em69vMKGe!_mQ7M@t z6ZQ~Qt}v3K_~^8C5$f_N*QAEh6aU$}i*`cWD?REc`zF3R1?-Rl{mZ~NAJgT3S1N!z z5+{5C9OtcEm7Kdg`VSA^51kvN4u#|nXorrgt$fi3J|l+1CuDNtT=C;31=Y(^JMT<9 zW0oW(5AHa@NaK(IUeq=e2nXc=lW0SyC&6eDB_RppHQxcJKKI?G-CANU5}@M-?AZ!BeCHdxM3{aWDaRAPXp5I5i* zQ>rlrNixzWJ%-rPO)S~IT9-UeMOkXNUW&dE&W$sBxx_45mM7a!&wfde$U#hR(8450 zdcc60Fe`-6?gu^ethG=aI&XIq}>iZl^Hko91s zQ9&G{8eKmwp3wg=V=E|F*rl7$Ji(fXP?Nw$c(0)53d)IoaNn4>9%4>0OTp`9{-x)1 zZ7#kF|8nzm4b@G9G~X=NmYQ{tE`X+hDMO%p;Z6*OJQov9w?kv{xk83X;T z2*89ES0V@HHM$XDiXn1=spcURaMqqu`dpyFDQs%z@sUAW-)qv!~3;J zBBu|YTi0jB^k!Y!vtoDGc@>)|*&=qAWUyrqmlm`DPLx7)eh9llH-SB; za_CBQO;XPg=sJU$#DMuLLD^6bV)%`s8K6Odx|;qYdSp>i(FvadByu~`QkIyc8g%?k z=y9d3)Ce%aa1Nl|f0T)<=`!RN_t>#b-FubCBPr}zHgIySJV`G88%&PY);NKRH(^Bde8a3(16S+Oi4N;53F`~TbBb&diNbZ1E~ zMOd*yW5Qr65W=Y}?FE=CDr9K1j?$dzYZ*J~I7S5uFALmM4>+!6>V!to1+aaAVZ+Sy zR6lX=JKW)3TseyI!BHRu8}3C6A*_Q_VAKF_;Q6!TUoQU|i*a*G?qPblD@gQ%Q*?ct zDMXc?U7U&a2&#*W-TCdlC+eqZ5luGgz$#g9N0ba?xH%?aHetN+Vm;BNyGhV^#{INd z7mzvcS?55;jhB>@kUrocmYupNlu2u)Gb+tQH`HW0C}Tk`NG|W$_$fF_Nv|qQQw@-; zr-dV9AZ_CKBr7aJ;h(iRu$$)uoH4h5U*?09GhR;(2Aj)$V4qt=YfY+lj&-k1H%<_|a3z z7*sv3lu7Y9jf1P^309f4t_&*<|G@m>jQ%IVj7A~tqw6>@XoEG|^yR`wLY?TBs4`L5 zugU_Df@Mg?7_!=^p_o5>wFZWr%!Vg7g(f{;Y>WD!=PoQ7?waxfR)c7jKo=Sr`Q4hZ zADpM*U$#Fk3098$=silRe?M*_q1EN9UMw!+Pna=`cOw$cAwbK+?&2`XpPR3*T-mQw zcgk;Jn2jKcDCcW*<$RyA#R8{Vff*zR^+mWMh|EbmEK{%y#nFBC4l$iSVLh;0481@6 z-N*w9MQe{ED~ow|t;_X5{?qqFq)30GjB-n|%FOBGCV%ArZTRF?%G&f%2YqhLA1wQ` z_txhNh@#%d%64@@^Q(>(Nfub8qP-?YXML0r?|fu3U6ZD9SAd~@=^z59uu>lQyi})& zU0D~+cP%+<$T_c&Z3+u2hd{R$DK9mCj){Tr?!4j>5Bm&1C6#!YYc7?Qy#vzhS(t1J z*tOww43z(_)$)Yy)`TzfUz(3Cp0d%QJ~|WM0yp-x%I?y2PnGrMpSQT`zEk{q$EBy7wm&{c{Z||Df^R=uwgxCq}$G%OFv3(XOcfl6U4^s7Q(| zD*qWOh=MeJhYD?{tWU3P3a@|l`m*l|Ob@WId*UH0RC&G9oX;N&Ti~Q5Nbl*X;YoL) zi++Icy+HIUO$k-VgJw~B^}EQB#a3Zx|Jm)wA^uWj_adkLp~Vq_1&5dji<*^Z+KWky z+2dgVA3SyW=R{K}4S;D`5I2;hsvM3*V|4#%@w=v`uS43?=69*WHppPggQey}^e#J& z!f9M0gXBqeboQuOqIz(q@RY1!eRp`W+oIva-aPO4!%&dwIUQMcK=;3rMTB>P4g3r< z7@U@GUWnmmcG1ga zR!pcDv33KFk$=3oH9_s)ym`P~SpHXmzaod_!yR2O39{>Xv<@|TBYX2>>aPj3in8@8 zlemUw`jZleHMM7h?Vu%na4Lg))+Onl2TT>9JW5KekseyYlMxY(kB2c%7XJJMYzvjz zjNf%#3(NTpdKIP$S&$)~0iUrv5C2mb>9@kldL=SOQVrMFgF7^icLV71)c-z!hW7p( zK!-3y^(I$2yJk+XJyZjb4m%T?;*(#a|1s!9K}atY$uPyhY(w_o#YF#Ro+zj^fqq;H zZeJT(43AR-gd+je(+Zp9*VHLNX@3u)EeES#P@orDu?ma)Zr!W6MO+Frhs)FI&CPqY zg;tuRPQk`*ME&&CnLzOaqL|hiGfD#wUKj8B(wWSB1s4bTCKygfJkFv74}T)~;?aI_pE)yq#qA&uXOZJ9#OtfB-R<=$Cxz7z%JPEi;H zVwL+u^&T`~zz1V_6J-8$>v6R8e|PKur$IDv%r~KVtgI*8H69#5-gAqwp>*qOjvst{aT6)PImG7NEBWlLk#eg#OnoS}4!7SgBAmE3N_-lT(3P z9~YxO9@gLft1U0o%C6~J({CrW#)YV!f_Jri$touJ!6nIExD_8LOo}BPd}zLjY}y{k zuTfMln*~5gAw8EURhZ1@I&M>j&n4AjajY=f#YU%I5wis|u3)*z%_i|690)RwTJ6?&@%87{1-#&i(ZX@bbu)y!JJ3 z`FNlr!vKCrzqf-2>lDVjgxBKkzBWvA)Ce9MLf@yurw^yHfhV;cEA2m;1Bzq|km-A> z`#5cyyL_saJL(=jS{&DSlMz82Ajh#~sc=Ya9GsjlAZbvT6LiJj2K6yVrkwVVRg) zgE_$Pa@4MK9|38oUQeIR#KL2Q~?KywhH}5yR zw>+8;qLVaT)>79DTsMYmr+3YfsSd$ocm!|o-%itpIYbP6H2r}pHXU?+R73qq7N>!~ z5>E+q&m7RAJR?BaZ)B~&U-|bS83>=LbKX1Inf^BwrzI6s~0DvFU+Ju=04ti QX@(>#sU-15%+ULP0DyQfr~m)} literal 0 HcmV?d00001 diff --git a/umn/source/_static/images/en-us_image_0284275232.png b/umn/source/_static/images/en-us_image_0284275232.png new file mode 100644 index 0000000000000000000000000000000000000000..851e7d6befa41c87ca29d3b953d47fa7d4289dfe GIT binary patch literal 214 zcmeAS@N?(olHy`uVBq!ia0vp^LLkh+1SD^+kpz+qb3I)gLn>}1|M~ylp7~`%p-1-b zn&RKjHuD_YH}BP+B^lMF3%2L8H@gRJY`*c~;)P7qJd?7r7Rl`K zGSd?)n!}P?U0-(Z$kpw24L4=77XI`+)?|_6TrTXQ&OAv@M0CfN#+JN$DWT!*x1HCR z)g-nodTYwf&(F@R_u=vB>Gq2yl! literal 0 HcmV?d00001 diff --git a/umn/source/_static/images/en-us_image_0284275243.png b/umn/source/_static/images/en-us_image_0284275243.png new file mode 100644 index 0000000000000000000000000000000000000000..30c3d923b09fa508acdf2bd8ccd6d1284e973871 GIT binary patch literal 16868 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 literal 0 HcmV?d00001 diff --git a/umn/source/_static/images/en-us_image_0284275249.png b/umn/source/_static/images/en-us_image_0284275249.png new file mode 100644 index 0000000000000000000000000000000000000000..7c24340c912c82ca8af52121776de8d7314a0695 GIT binary patch literal 178 zcmeAS@N?(olHy`uVBq!ia0vp^LO?9c!3HGfPKx~mq!^2X+?^QKos)S9a~60+7BevL9R^{>eZ5RSkl8qIPBJ%S`4n;Bi{! z$@s;P!{xAnqQeD+6e)QLiDm~Ap2f_Qc%7C_Jm_J>(boA;nOUS+gR%MSg8%;+!xl(Y Uuw2Z%1T>Pt)78&qol`;+0QuiBt^fc4 literal 0 HcmV?d00001 diff --git a/umn/source/_static/images/en-us_image_0284275259.png b/umn/source/_static/images/en-us_image_0284275259.png new file mode 100644 index 0000000000000000000000000000000000000000..b7fd23a5d1fd9e35702afe3d2f8029cb870c5749 GIT binary patch literal 248 zcmeAS@N?(olHy`uVBq!ia0vp^{2QeYOVZ*zY~~$9Si2`q!1UrAX&t>*K*>xmV?Hhx> pP~yxD%v(ZUNKAb2l)Yv`qiA$ZXzNn{1`ISV`@iy0XB4ude`@%$AjK*4NJ7sn6_|GN{Sxeh4su7M@LiSB}ePy2F!)-rgy`njxg HN@xNAtJ+Ak literal 0 HcmV?d00001 diff --git a/umn/source/_static/images/en-us_image_0284275280.png b/umn/source/_static/images/en-us_image_0284275280.png new file mode 100644 index 0000000000000000000000000000000000000000..851e7d6befa41c87ca29d3b953d47fa7d4289dfe GIT binary patch literal 214 zcmeAS@N?(olHy`uVBq!ia0vp^LLkh+1SD^+kpz+qb3I)gLn>}1|M~ylp7~`%p-1-b zn&RKjHuD_YH}BP+B^lMF3%2L8H@gRJY`*c~;)P7qJd?7r7Rl`K zGSd?)n!}P?U0-(Z$kpw24L4=77XI`+)?|_6TrTXQ&OAv@M0CfN#+JN$DWT!*x1HCR z)g-nodTYwf&(F@R_u=vB>Gq2yl! literal 0 HcmV?d00001 diff --git a/umn/source/_static/images/en-us_image_0284275286.png b/umn/source/_static/images/en-us_image_0284275286.png new file mode 100644 index 0000000000000000000000000000000000000000..1267615e3e449ae0f815dd16f3aabb9bbb6d5d74 GIT binary patch literal 295 zcmeAS@N?(olHy`uVBq!ia0vp^B0$W?!3HGtkJx+wQjEnx?oJHr&dIz4a#+$GeH|GX zHuiJ>Nn{1`ISV`@i-8&rgD~Uq{1quc!9AWXjv*HQOD`I79Wsz;OVoenIcJVdgZf9l zpq6*62QPYBaa;-%XjXW&D0Y#c-S4d%g)VQoxF;av(){+8ZvwNbUQJ(R@Ii6Hnq;4{ z@V$aetDGBMUo5Xlo6%Lh^RIkHf*@OD+w4_#GanSTx;&|RxPmoV{==RlJ7l`LA6sAG z>$$o>guCZUg7T|I!^fxmt_UYz^WS)JZD(#!jEux)2et3TJlR*|lY13@yVV*zW4S5) n^=O3li6@>F$!moF=ssZWS}C#bj1zMU&>sw*u6{1-oD!MNn{1`ISV`@iy0XB4ude`@%$AjK*3#}E{-7<{%0?(7HU-xV0-ZSnv3?q1KI(- zY^(JX6eQNLF&|A(i1@eoaG(1g1BJHF=Plx<{dBwWx8af(+p#;|Ara5aP7D8?}al%X1vJuF#90Wye?4UrLKwG zhsb{nGNMxciys~EbW96ZUOIi*t>q`|W28c5o`)*bd5?>!&Pvi-%C mvHd5X1^)`Z2&osmA6P?<{C?Q@bA39{7Yv@RelF{r5}E+%5N|*L literal 0 HcmV?d00001 diff --git a/umn/source/_static/images/en-us_image_0284275296.png b/umn/source/_static/images/en-us_image_0284275296.png new file mode 100644 index 0000000000000000000000000000000000000000..97358745f009dd50dcb080ec1310ba59a7a18736 GIT binary patch literal 234 zcmeAS@N?(olHy`uVBq!ia0vp^Vn8g+!3HF!RQ~M%QjEnx?oJHr&dIz4a#+$GeH|GX zHuiJ>Nn{1`ISV`@iy0XB4ude`@%$AjK*4%X7sn6_|E*U7`5F{>m;>H>*?U5Q23LFT>teWpK@blt&n-1p)$lQj#J<+#EExymjGl?8IV zU!b|CJIEloZT%#h?Mh)LVvcM772P$8ag7fQ`5Ruh!R6tz$TS=GK-=!C-$IsZv*f+u bSv-^bme_BBg~uL)e8b@B>gTe~DWM4f`2Nn{1`ISV`@iy0XB4ude`@%$AjK*4%X7sn6_|E*U7`5F{>m;>H>*?U5Q23LFT>teWpK@blt&n-1p)$lQj#J<+#EExymjGl?8IV zU!b|CJIEloZT%#h?Mh)LVvcM772P$8ag7fQ`5Ruh!R6tz$TS=GK-=!C-$IsZv*f+u bSv-^bme_BBg~uL)e8b@B>gTe~DWM4f`2a~60+7BevL9R^{>9WqrSA2nghdmh zwzC~MP|6|gzvA*Xm3uZiOjY|j{3Z&$X?2ZikP}i=-&`TzJ>g@~L;1=jeYt@`C->@a hs?`, :ref:`Creating a Replica Set Instance `, and :ref:`Tag `. | +| | - Supported a maximum of 16 mongos and 16 shards in a cluster instance in sections :ref:`Cluster Architecture `, :ref:`Cluster `, :ref:`Creating a Cluster Instance `, and :ref:`Adding Cluster Instance Nodes `. | +| | - Optimized the procedures based on the **Connections** tab in sections :ref:`Binding and Unbinding an EIP `, :ref:`Enabling or Disabling SSL `, :ref:`Binding and Unbinding an EIP `, :ref:`Enabling or Disabling SSL `, :ref:`Changing the Database Port `, and :ref:`Changing a Security Group `. | ++-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| 2019-11-07 | Modified the following content: | +| | | +| | Supported DB instances that are compatible with MongoDB 3.4 Community Edition in sections :ref:`Database Engine and Version `, :ref:`Creating a Cluster Instance `, :ref:`Creating a Replica Set Instance `, and :ref:`How Can I Install a MongoDB Client? ` | ++-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| 2019-09-16 | Modified the following content: | +| | | +| | - Added the description of disabling OBS Browser certificate verification and the procedure for enabling the certificate verification in section :ref:`Downloading Backup Files `. | ++-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| 2019-08-19 | Added the following content: | +| | | +| | - :ref:`Binding and Unbinding an EIP ` | +| | - :ref:`Binding and Unbinding an EIP ` | +| | | +| | Modified the following content: | +| | | +| | - Supported binding and unbinding an EIP in sections :ref:`Service Process `, :ref:`Restrictions `, :ref:`Creating a Cluster Instance `, :ref:`Connecting to a DB Instance Through a Client `, :ref:`Service Process `, :ref:`Restrictions `, :ref:`Creating a Replica Set Instance `, :ref:`Connecting to a DB Instance Through a Client `, :ref:`Migrating Data `, :ref:`Key Operations Recorded by CTS `, and :ref:`Can an External Server Access the DDS DB Instance? ` | +| | - Added the procedure for disabling certificate verification on OBS Browser in section :ref:`Downloading Backup Files `. | ++-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| 2019-07-24 | Modified the following content: | +| | | +| | - Modified the description of the DB instance status **Changing private IP address** in section :ref:`Database Status `. | +| | - Modified the description of **AZ** in section :ref:`Creating a Replica Set Instance `. | ++-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| 2019-07-17 | Modified the following content: | +| | | +| | - Supported the deployment of a replica set instance across three AZs in sections :ref:`Regions and AZs ` and :ref:`Creating a Replica Set Instance `. | +| | - Optimized the description of the parameter group status **In-Sync** in section :ref:`Database Status `. | +| | - Modified the description of the **DB Instance Type** parameter in section :ref:`Creating a Replica Set Instance `. | +| | - Optimized the description and steps in :ref:`Manually Switching the Primary and Secondary Nodes of a Replica Set `. | +| | - Optimized the description and steps in :ref:`Migrating Data `. | +| | - Optimized the application scenarios in section :ref:`Task Center `. | +| | - Optimized figures in this document. | ++-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| 2019-07-03 | Added the following content: | +| | | +| | - :ref:`Manually Switching the Primary and Secondary Nodes of a Replica Set ` | +| | - :ref:`Changing the CPU or Memory of a Cluster DB Instance ` | +| | - :ref:`Changing the CPU or Memory of a Replica Set DB Instance ` | +| | - :ref:`Task Center ` | +| | | +| | Modified the following content: | +| | | +| | - Modified DB instance statuses in section :ref:`Database Status `. | +| | | +| | - Modified the parameter description of DB instance class and the description of subnet in sections :ref:`Creating a Cluster Instance ` and :ref:`Creating a Replica Set Instance `. | +| | - Added the description of the parameter group in sections :ref:`Creating a Cluster Instance `, :ref:`Creating a Replica Set Instance `, and :ref:`Adding Cluster Instance Nodes `. | +| | - Optimized the procedures for buying, restarting, deleting, backing up, and restoring a DB instance, and managing parameter groups, and operations related to storage space, security groups, tags, task centers, and monitoring metrics. | +| | - Moved the subsection "Managing Database Accounts" from section *Getting Started* to :ref:`Managing Database Accounts `. | +| | - Moved the subsection "Migrating Data" in section *Getting Started* to :ref:`Migrating Data `. | +| | - Divided chapter "Getting Started" into sections :ref:`Getting Started with Clusters ` and :ref:`Getting Started with Replica Sets `. | ++-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| 2019-03-12 | Accepted in OTC-4.0/Agile. | ++-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| 2019-02-15 | Modified the following content: | +| | | +| | - Modified the description of the **Tags** parameter in sections :ref:`Creating a Cluster Instance ` and :ref:`Creating a Replica Set Instance `. | +| | - Optimized the tag scenario in section :ref:`Tag `. | +| | - Deleted the description of specification confirmation in sections :ref:`Adding Cluster Instance Nodes ` and :ref:`Scaling Up Storage Space `. | ++-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| 2019-01-31 | Modified the following content: | +| | | +| | - Added parameter **Tags** in sections :ref:`Creating a Cluster Instance ` and :ref:`Creating a Replica Set Instance `. | +| | - Supported retaining backups for a maximum of 732 days in section :ref:`Setting Automated Backup Policy `. | ++-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| 2018-12-29 | Added the following content: | +| | | +| | - :ref:`Changing a Security Group ` | +| | - :ref:`Downloading Backup Files ` | +| | | +| | Modified the following content: | +| | | +| | - Added parameter **SSL** in sections :ref:`Creating a Cluster Instance ` and :ref:`Creating a Replica Set Instance `. | ++-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| 2018-10-08 | Modified the following content: | +| | | +| | - Modified the command for connecting to a DB instance using SSL and added the description in section :ref:`Connecting to a DB Instance Through a Client `. | +| | - Modified the note in section :ref:`Replica Set Architecture `. | +| | - Accepted in OTC-3.2. | ++-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| 2018-09-10 | Modified the following content: | +| | | +| | - Deleted the release numbers and retained the release dates only in accordance with the unified public cloud style. | +| | - Modified the description about the parameter group quotas in section :ref:`Creating a Parameter Group `. | ++-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| 2018-08-31 | Added the following content: | +| | | +| | - :ref:`Changing a Parameter Group Description ` | +| | | +| | Modified the following content: | +| | | +| | - Supported case-sensitive manual backup names in section :ref:`Creating a Manual Backup `. | +| | - Modified commands supported and restricted by DDS in section :ref:`Which Commands are Supported or Restricted by DDS? ` | ++-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| 2018-08-17 | Modified the following content: | +| | | +| | - Modified the description of high-availability replica sets in section :ref:`Replica Set Architecture `. | +| | - Modified the description about the parameter group quotas in section :ref:`Creating a Parameter Group `. | +| | - Optimized the description of the step following the successful creation of a DB instance in sections :ref:`Creating a Cluster Instance ` and :ref:`Creating a Replica Set Instance `. | +| | - Changed **HA Type** to **DB Instance Type** displayed on the page for creating a DB instance, optimized the buttons of the warning dialog box of restart and delete operations, and synchronized the changes to the document. | ++-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| 2018-08-03 | Added the following content: | +| | | +| | - :ref:`Replica Set Architecture ` | +| | - :ref:`Creating a Replica Set Instance ` | +| | - :ref:`Restoring a Replica Set Instance from a Backup ` | +| | - :ref:`What Is the Time Delay for Primary/Secondary Synchronization in a Replica Set? ` | +| | - :ref:`Tag ` | +| | | +| | Modified the following content: | +| | | +| | - Supported the creation of the replica set DB instance in sections :ref:`Modifying the DB Instance Name `, :ref:`Restarting a DB Instance or a Node `, :ref:`Deleting a DB instance `, :ref:`Setting Automated Backup Policy `, :ref:`Creating a Manual Backup `, :ref:`Deleting a Manual Backup `, :ref:`Deleting an Automated Backup `, :ref:`Parameter Group `, :ref:`Scaling Up Storage Space `, :ref:`Security `, :ref:`Security `, and :ref:`DDS Metrics `. | +| | - Supported disk encryption in sections :ref:`Creating a Cluster Instance ` and :ref:`Creating a Replica Set Instance `. | +| | - Changed the length of the instance name to 4 to 64 characters in sections :ref:`Creating a Cluster Instance `, :ref:`Creating a Replica Set Instance `, and :ref:`Modifying the DB Instance Name `. | +| | - Supported the batch querying of error logs of all nodes, all mongos, all shards, and all configs of a cluster instance and supported the querying of error logs of all nodes of a replica set instance in section :ref:`Error Log `. | +| | - Supported the batch querying of slow query logs of all nodes of a replica set instance in section :ref:`Slow Query Log `. | ++-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| 2018-07-03 | Accepted in OTC-3.1. | ++-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| 2018-06-27 | Added the following content: | +| | | +| | - :ref:`Deleting an Automated Backup ` | +| | | +| | Modified the following content: | +| | | +| | - Changed the number of days for retaining automated backups and the restriction on the backup cycle in section :ref:`Setting Automated Backup Policy `. | ++-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| 2018-06-21 | Modified the following content: | +| | | +| | - Modified the procedure for creating a DB instance and fixed the storage space of config at 20 GB in section :ref:`Creating a Cluster Instance `. | +| | - Supported the enabling or disabling the automated backup policy in section :ref:`Setting Automated Backup Policy `. | +| | - Moved the subsection "Monitoring" in chapter "Managing DDS DB Instances" to a new section :ref:`Monitoring `. | ++-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| 2018-06-04 | Modified the following content: | +| | | +| | - Modified the description of disk encryption and detailed the description of the HA type and storage type in section :ref:`Creating a Cluster Instance `. | +| | - Modified the description of the **pwd** parameter in section :ref:`Managing Database Accounts `. | ++-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| 2018-05-04 | Added the following content: | +| | | +| | - :ref:`Managing Database Accounts ` | +| | - :ref:`Reverting Cluster Instance Nodes ` | +| | | +| | Modified the following content: | +| | | +| | - Supported disk encryption, enabled the setting of DB instance name on the page for creating a DB instance, and changed the range of the config storage space in section :ref:`Creating a Cluster Instance `. | +| | - Supported the deletion of node that fails to be added in section :ref:`Adding Cluster Instance Nodes `. | +| | - Supported the viewing of slow logs of all shards in section :ref:`Slow Query Log `. | +| | - Modified commands supported and restricted by DDS in section :ref:`Which Commands are Supported or Restricted by DDS? ` | ++-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| 2018-03-09 | Modified the following content: | +| | | +| | - Modified the description of DDS and changed its location in section :ref:`What Is DDS? ` | +| | - Added the tag editing function in section :ref:`Tag `. | ++-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| 2018-02-23 | Added the following content: | +| | | +| | - :ref:`Tag ` | +| | | +| | Modified the following content: | +| | | +| | - Added the description in section :ref:`Setting Automated Backup Policy `: If you set the retention period to one or more days, the backup policy is enabled and a full automated backup is triggered instantly. | ++-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| 2018-02-19 | Accepted in OTC-3.0. | ++-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| 2018-02-09 | Modified the following content: | +| | | +| | - Optimized commands in sections :ref:`Connecting to a DB Instance Through a Client ` and :ref:`Migrating Data `. | ++-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| 2018-02-02 | Added the following content: | +| | | +| | - :ref:`Glossary ` | +| | | +| | Modified the following content: | +| | | +| | - Added the description of DDS in section :ref:`What Is DDS? ` | +| | - Modified the definition of cluster in section :ref:`Cluster Architecture `. | +| | - Modified the description of the automated backup policy in section :ref:`Setting Automated Backup Policy `. | +| | - Modified the description of effect on backups when instances and cloud account are deleted in sections :ref:`Deleting a DB instance ` and :ref:`Will My Backups Be Deleted If I Delete My Cloud Account? ` | ++-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| 2018-01-30 | This issue is the first official release. | ++-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ diff --git a/umn/source/faqs/common_faqs/can_i_use_a_template_to_create_dds_db_instances.rst b/umn/source/faqs/common_faqs/can_i_use_a_template_to_create_dds_db_instances.rst new file mode 100644 index 0000000..e291c1d --- /dev/null +++ b/umn/source/faqs/common_faqs/can_i_use_a_template_to_create_dds_db_instances.rst @@ -0,0 +1,8 @@ +:original_name: dds_faq_0003.html + +.. _dds_faq_0003: + +Can I Use a Template to Create DDS DB Instances? +================================================ + +You do not need a template to create DDS DB instances. When you create a DB instance, DDS provides different DB instance specifications which are similar to templates. diff --git a/umn/source/faqs/common_faqs/index.rst b/umn/source/faqs/common_faqs/index.rst new file mode 100644 index 0000000..e56a463 --- /dev/null +++ b/umn/source/faqs/common_faqs/index.rst @@ -0,0 +1,20 @@ +:original_name: dds_faq_0101.html + +.. _dds_faq_0101: + +Common FAQs +=========== + +- :ref:`What Precautions Should Be Taken When Using DDS? ` +- :ref:`What Is the Availability of DDS DB Instances? ` +- :ref:`Can I Use a Template to Create DDS DB Instances? ` +- :ref:`Will My DDS DB Instances Be Affected by Other Users' DDS DB Instances? ` + +.. toctree:: + :maxdepth: 1 + :hidden: + + what_precautions_should_be_taken_when_using_dds + what_is_the_availability_of_dds_db_instances + can_i_use_a_template_to_create_dds_db_instances + will_my_dds_db_instances_be_affected_by_other_users_dds_db_instances diff --git a/umn/source/faqs/common_faqs/what_is_the_availability_of_dds_db_instances.rst b/umn/source/faqs/common_faqs/what_is_the_availability_of_dds_db_instances.rst new file mode 100644 index 0000000..a10e983 --- /dev/null +++ b/umn/source/faqs/common_faqs/what_is_the_availability_of_dds_db_instances.rst @@ -0,0 +1,10 @@ +:original_name: dds_faq_0002.html + +.. _dds_faq_0002: + +What Is the Availability of DDS DB Instances? +============================================= + +Formula for a DDS DB instance availability: + +DDS DB instance availability = (1 - Failure duration/Total service duration) x 100%. diff --git a/umn/source/faqs/common_faqs/what_precautions_should_be_taken_when_using_dds.rst b/umn/source/faqs/common_faqs/what_precautions_should_be_taken_when_using_dds.rst new file mode 100644 index 0000000..660ffd9 --- /dev/null +++ b/umn/source/faqs/common_faqs/what_precautions_should_be_taken_when_using_dds.rst @@ -0,0 +1,21 @@ +:original_name: dds_faq_0001.html + +.. _dds_faq_0001: + +What Precautions Should Be Taken When Using DDS? +================================================ + +#. Failover + + DDS uses multiple mongos, replica sets, and shards to ensure data reliability. When a mongos is faulty, the other mongos takes over services immediately to ensure service continuity. A replica set consists of a primary, a secondary, and a hidden node. When the primary node is faulty, DDS selects the secondary node as the new primary within 30 seconds. + +#. ECSs used for DB instances are invisible to you. Your applications can access the IP addresses and ports corresponding to the database only. + +#. Backup files stored on OBS are invisible to you. They are only visible in the DDS backend management system. + +#. Precautions after applying for DDS: + + After purchasing DDS DB instances, you do not need to perform basic database O&M operations, such as HA and security patches. You need to pay attention to the following: + + a. Whether the vCPUs, IOPS, and storage space for DDS DB instances are sufficient. If any of them is insufficient, optimize or upgrade the related configuration. + b. Whether the performance of DDS DB instances is satisfying, whether a large number of slow query statements exist, whether query statements need to be optimized, and whether any index is redundant or missing. diff --git a/umn/source/faqs/common_faqs/will_my_dds_db_instances_be_affected_by_other_users_dds_db_instances.rst b/umn/source/faqs/common_faqs/will_my_dds_db_instances_be_affected_by_other_users_dds_db_instances.rst new file mode 100644 index 0000000..3e35ebf --- /dev/null +++ b/umn/source/faqs/common_faqs/will_my_dds_db_instances_be_affected_by_other_users_dds_db_instances.rst @@ -0,0 +1,8 @@ +:original_name: dds_faq_0004.html + +.. _dds_faq_0004: + +Will My DDS DB Instances Be Affected by Other Users' DDS DB Instances? +====================================================================== + +No. Your DDS DB instances and resources are isolated from others. diff --git a/umn/source/faqs/connection_and_access_faqs/can_an_external_server_access_the_dds_db_instance.rst b/umn/source/faqs/connection_and_access_faqs/can_an_external_server_access_the_dds_db_instance.rst new file mode 100644 index 0000000..d11d5ec --- /dev/null +++ b/umn/source/faqs/connection_and_access_faqs/can_an_external_server_access_the_dds_db_instance.rst @@ -0,0 +1,11 @@ +:original_name: dds_faq_0011.html + +.. _dds_faq_0011: + +Can an External Server Access the DDS DB Instance? +================================================== + +You can access the DDS DB instance using the following methods: + +- Create a DDS DB instance and an ECS in the same VPC to enable the ECS to access the instance. +- If the DDS DB instance has an EIP assigned, you can access the instance through the EIP. diff --git a/umn/source/faqs/connection_and_access_faqs/do_applications_need_to_support_automatic_reconnecting_to_the_dds_database.rst b/umn/source/faqs/connection_and_access_faqs/do_applications_need_to_support_automatic_reconnecting_to_the_dds_database.rst new file mode 100644 index 0000000..0a86ad8 --- /dev/null +++ b/umn/source/faqs/connection_and_access_faqs/do_applications_need_to_support_automatic_reconnecting_to_the_dds_database.rst @@ -0,0 +1,10 @@ +:original_name: dds_faq_0017.html + +.. _dds_faq_0017: + +Do Applications Need to Support Automatic Reconnecting to the DDS Database? +=========================================================================== + +It is recommended that your applications support automatic reconnections to the database. After a database reboot, your applications will automatically reconnect to the database to increase service availability and continuity. + +In addition, you are advised to set your applications to connect to the database using a long connection to reduce resource consumption and improve performance. diff --git a/umn/source/faqs/connection_and_access_faqs/how_can_i_create_and_log_in_to_an_ecs.rst b/umn/source/faqs/connection_and_access_faqs/how_can_i_create_and_log_in_to_an_ecs.rst new file mode 100644 index 0000000..8fc01fb --- /dev/null +++ b/umn/source/faqs/connection_and_access_faqs/how_can_i_create_and_log_in_to_an_ecs.rst @@ -0,0 +1,12 @@ +:original_name: dds_faq_0034.html + +.. _dds_faq_0034: + +How Can I Create and Log In to an ECS? +====================================== + +For details on how to create and log in to an ECS, see "Creating and Logging In to a Windows ECS" or "Creating and Logging In to a Linux ECS" in the *Elastic Cloud Server User Guide*. + +- The ECS to be created must be in the same VPC with the DDS DB instance to which it connects. +- When you create an ECS, select an OS, such as Red Hat 6.6, and bind an EIP to it. +- Configure the security group to enable the ECS to access the DB instance through the private IP address, that is, the value of **Private IP Address** of mongos on the **Basic Information** page. diff --git a/umn/source/faqs/connection_and_access_faqs/how_can_i_install_a_mongodb_client.rst b/umn/source/faqs/connection_and_access_faqs/how_can_i_install_a_mongodb_client.rst new file mode 100644 index 0000000..e0ce751 --- /dev/null +++ b/umn/source/faqs/connection_and_access_faqs/how_can_i_install_a_mongodb_client.rst @@ -0,0 +1,61 @@ +:original_name: dds_faq_0018.html + +.. _dds_faq_0018: + +How Can I Install a MongoDB Client? +=================================== + +MongoDB official website provides client installation packages for different OSs. Download the official binary installation package at https://www.mongodb.com/download-center#community. + +The following uses Red Hat Linux 7 and MongoDB 3.4.0 as examples to describe how to obtain the required installation package and install the MongoDB client. + +Procedure +--------- + +#. Obtain the installation package. + + a. Log in at https://www.mongodb.com/download-center#community. + + b. Choose **Server**, select **RHEL 7.0 Linux 64-bit x64** for **OS**, and click **All version binaries**. :ref:`Figure 1 ` shows an example. + + .. _dds_faq_0018__fig129943125910: + + .. figure:: /_static/images/en-us_image_0284275178.png + :alt: **Figure 1** MongoDB official webpage + + **Figure 1** MongoDB official webpage + + c. Open the downloading page, click **linux/mongodb-linux-x86_64-rhel70-3.4.0.tgz** to download the binary installation package of MongoDB 3.4.0. + + + .. figure:: /_static/images/en-us_image_0284275230.png + :alt: **Figure 2** Downloading page + + **Figure 2** Downloading page + +#. Upload the installation package to the ECS. For details about how to log in to an ECS, see :ref:`How Can I Create and Log In to an ECS? ` + +#. Decompress the installation package on the ECS. + + **tar zxvf mongodb-linux-x86_64-rhel70-3.4.0.tgz** + +#. Obtain the client tool from the **bin** directory of the installation package. + + **cd mongodb-linux-x86_64-rhel70-3.4.0/bin** + + The common tools are as follows: + + - MongoDB client mongo + - Data export tool mongoexport + - Data import tool mongoimport + +#. Before using a client tool, assign the execute permission to it. + + - Run the **chmod +x mongo** command to grant a client permission to connect to a DB instance. + - Run the **chmod +x mongoexport** command to grant a client permission to export data. + - Run the **chmod +x mongoimport** command to grant a client permission to import data. + +#. Connect to a DB instance through the installed client. + + - For details on how to connect to a cluster instance, see :ref:`Connecting to a DB Instance Through a Client `. + - For details on how to connect to a replica set instance, see :ref:`Connecting to a DB Instance Through a Client `. diff --git a/umn/source/faqs/connection_and_access_faqs/how_can_my_applications_access_a_dds_db_instance_in_a_vpc.rst b/umn/source/faqs/connection_and_access_faqs/how_can_my_applications_access_a_dds_db_instance_in_a_vpc.rst new file mode 100644 index 0000000..260e194 --- /dev/null +++ b/umn/source/faqs/connection_and_access_faqs/how_can_my_applications_access_a_dds_db_instance_in_a_vpc.rst @@ -0,0 +1,8 @@ +:original_name: dds_faq_0016.html + +.. _dds_faq_0016: + +How Can My Applications Access a DDS DB Instance in a VPC? +========================================================== + +Ensure that the ECS where in which your applications are located is in the same VPC and subnet as the DDS DB instance. If the ECS and the DDS DB instance are in different subnets or VPCs, modify the VPC route table and network access control list (ACL) to ensure the ECS can access the DDS DB instance. diff --git a/umn/source/faqs/connection_and_access_faqs/index.rst b/umn/source/faqs/connection_and_access_faqs/index.rst new file mode 100644 index 0000000..f735e4b --- /dev/null +++ b/umn/source/faqs/connection_and_access_faqs/index.rst @@ -0,0 +1,30 @@ +:original_name: dds_faq_0104.html + +.. _dds_faq_0104: + +Connection and Access FAQs +========================== + +- :ref:`Can an External Server Access the DDS DB Instance? ` +- :ref:`What Is the Number of DDS Database Connections? ` +- :ref:`What Should I Do If the ECS Cannot Connect to a DDS DB Instance? ` +- :ref:`What Should I Do If a Database Client Problem Causes a Connection Failure? ` +- :ref:`What Should I Do If a DDS Server Problem Causes a Connection Failure? ` +- :ref:`How Can My Applications Access a DDS DB Instance in a VPC? ` +- :ref:`Do Applications Need to Support Automatic Reconnecting to the DDS Database? ` +- :ref:`How Can I Create and Log In to an ECS? ` +- :ref:`How Can I Install a MongoDB Client? ` + +.. toctree:: + :maxdepth: 1 + :hidden: + + can_an_external_server_access_the_dds_db_instance + what_is_the_number_of_dds_database_connections + what_should_i_do_if_the_ecs_cannot_connect_to_a_dds_db_instance + what_should_i_do_if_a_database_client_problem_causes_a_connection_failure + what_should_i_do_if_a_dds_server_problem_causes_a_connection_failure + how_can_my_applications_access_a_dds_db_instance_in_a_vpc + do_applications_need_to_support_automatic_reconnecting_to_the_dds_database + how_can_i_create_and_log_in_to_an_ecs + how_can_i_install_a_mongodb_client diff --git a/umn/source/faqs/connection_and_access_faqs/what_is_the_number_of_dds_database_connections.rst b/umn/source/faqs/connection_and_access_faqs/what_is_the_number_of_dds_database_connections.rst new file mode 100644 index 0000000..a086974 --- /dev/null +++ b/umn/source/faqs/connection_and_access_faqs/what_is_the_number_of_dds_database_connections.rst @@ -0,0 +1,8 @@ +:original_name: dds_faq_0012.html + +.. _dds_faq_0012: + +What Is the Number of DDS Database Connections? +=============================================== + +The number of DDS database connections indicates the number of applications that can be simultaneously connected to the database. Generally, it indicates the number of connections to mongos. The number of DDS connections is irrelevant to the maximum number of users allowed by applications or websites. diff --git a/umn/source/faqs/connection_and_access_faqs/what_should_i_do_if_a_database_client_problem_causes_a_connection_failure.rst b/umn/source/faqs/connection_and_access_faqs/what_should_i_do_if_a_database_client_problem_causes_a_connection_failure.rst new file mode 100644 index 0000000..8eaa623 --- /dev/null +++ b/umn/source/faqs/connection_and_access_faqs/what_should_i_do_if_a_database_client_problem_causes_a_connection_failure.rst @@ -0,0 +1,22 @@ +:original_name: dds_faq_0014.html + +.. _dds_faq_0014: + +What Should I Do If a Database Client Problem Causes a Connection Failure? +========================================================================== + +Identify a DDS DB instance connection failure caused by a client problem from the following aspects. + +#. ECS Security Policy + + In Windows, check whether the DDS port is enabled in the Windows security policy. + + In Linux, run the **iptables** command to check whether the DDS port is enabled in firewall settings. + +#. Application Configuration + + Check whether the IP address, port parameter, and Java database connectivity (JDBC) are configured correctly. + +.. note:: + + If the problem persists, contact post-sales technical support. diff --git a/umn/source/faqs/connection_and_access_faqs/what_should_i_do_if_a_dds_server_problem_causes_a_connection_failure.rst b/umn/source/faqs/connection_and_access_faqs/what_should_i_do_if_a_dds_server_problem_causes_a_connection_failure.rst new file mode 100644 index 0000000..1e34d06 --- /dev/null +++ b/umn/source/faqs/connection_and_access_faqs/what_should_i_do_if_a_dds_server_problem_causes_a_connection_failure.rst @@ -0,0 +1,16 @@ +:original_name: dds_faq_0015.html + +.. _dds_faq_0015: + +What Should I Do If a DDS Server Problem Causes a Connection Failure? +===================================================================== + +Check whether the following problems occur on the DDS database. Check the following one at a time. + +#. The maximum number of connections is reached. + + **Solution**: Use the Cloud Eye resource monitoring function to check whether the number of current connections and the CPU usage are normal. If the number of connections or CPU usage reaches the maximum, restart the DDS database, disconnect DB instances, or increase the node quantity. + +#. DB instance status is normal, such as a restarting or system failure. + + **Solution**: Restart the DB instance to see if the problem is resolved. If the problem persists, contact post-sales technical support. diff --git a/umn/source/faqs/connection_and_access_faqs/what_should_i_do_if_the_ecs_cannot_connect_to_a_dds_db_instance.rst b/umn/source/faqs/connection_and_access_faqs/what_should_i_do_if_the_ecs_cannot_connect_to_a_dds_db_instance.rst new file mode 100644 index 0000000..21b0a2b --- /dev/null +++ b/umn/source/faqs/connection_and_access_faqs/what_should_i_do_if_the_ecs_cannot_connect_to_a_dds_db_instance.rst @@ -0,0 +1,31 @@ +:original_name: dds_faq_0013.html + +.. _dds_faq_0013: + +What Should I Do If the ECS Cannot Connect to a DDS DB Instance? +================================================================ + +Perform the following steps to identify the problem: The following uses the cluster instance as an example. + +#. Check whether the ECS and DDS DB instance are located in the same VPC. + + - If they are in the same VPC, go to :ref:`2 `. + - If they are in different VPCs, create an ECS in the VPC where the DDS DB instance is located. + +#. .. _dds_faq_0013__li10923237103639: + + Check whether a security group has been added to the ECS. + + - If yes, check whether its configuration rules are suitable. For details, see the security group description in section :ref:`Setting a Security Group `. Then, go to :ref:`3 `. + - If no security group has been added, go to the VPC console from the ECS details page and click **Security Groups** to add a security group. + +#. .. _dds_faq_0013__li2748172710406: + + On the ECS, check whether the DDS DB instance address port can be connected. + + .. code-block:: + + telnet {8635} + + - If the port can be connected, the network is normal. Check the database account and password. For details, see section :ref:`Connecting to a DB Instance Through a Client `. + - If the port cannot be connected, contact post-sales technical support for troubleshooting. diff --git a/umn/source/faqs/index.rst b/umn/source/faqs/index.rst new file mode 100644 index 0000000..4f13903 --- /dev/null +++ b/umn/source/faqs/index.rst @@ -0,0 +1,26 @@ +:original_name: dds_faq_0100.html + +.. _dds_faq_0100: + +FAQs +==== + +- :ref:`Common FAQs ` +- :ref:`Management FAQs ` +- :ref:`Connection and Access FAQs ` +- :ref:`Parameter and Metric FAQs ` +- :ref:`Network and Security FAQs ` +- :ref:`Storage FAQs ` +- :ref:`Which Commands are Supported or Restricted by DDS? ` + +.. toctree:: + :maxdepth: 1 + :hidden: + + common_faqs/index + management_faqs/index + connection_and_access_faqs/index + parameter_and_metric_faqs/index + network_and_security_faqs/index + storage_faqs/index + which_commands_are_supported_or_restricted_by_dds diff --git a/umn/source/faqs/management_faqs/are_my_dds_db_instances_available_when_scaling.rst b/umn/source/faqs/management_faqs/are_my_dds_db_instances_available_when_scaling.rst new file mode 100644 index 0000000..55eb550 --- /dev/null +++ b/umn/source/faqs/management_faqs/are_my_dds_db_instances_available_when_scaling.rst @@ -0,0 +1,8 @@ +:original_name: dds_faq_0009.html + +.. _dds_faq_0009: + +Are My DDS DB Instances Available When Scaling? +=============================================== + +Yes. Adding shards does not affect the existing shards. Services are still available. diff --git a/umn/source/faqs/management_faqs/does_dds_support_read_write_splitting.rst b/umn/source/faqs/management_faqs/does_dds_support_read_write_splitting.rst new file mode 100644 index 0000000..94baf2c --- /dev/null +++ b/umn/source/faqs/management_faqs/does_dds_support_read_write_splitting.rst @@ -0,0 +1,8 @@ +:original_name: dds_faq_0010.html + +.. _dds_faq_0010: + +Does DDS Support Read/Write Splitting? +====================================== + +Yes. DDS can perform write operations only on the primary node in a replica set. You can configure DDS to perform read operations on the secondary node to split read and write operations. diff --git a/umn/source/faqs/management_faqs/index.rst b/umn/source/faqs/management_faqs/index.rst new file mode 100644 index 0000000..790115a --- /dev/null +++ b/umn/source/faqs/management_faqs/index.rst @@ -0,0 +1,24 @@ +:original_name: dds_faq_0102.html + +.. _dds_faq_0102: + +Management FAQs +=============== + +- :ref:`What Should I Do If My Query Is Slow? ` +- :ref:`What Is the Time Delay for Primary/Secondary Synchronization in a Replica Set? ` +- :ref:`Why Is Data Missing from My Database? ` +- :ref:`Will My Backups Be Deleted If I Delete My Cloud Account? ` +- :ref:`Are My DDS DB Instances Available When Scaling? ` +- :ref:`Does DDS Support Read/Write Splitting? ` + +.. toctree:: + :maxdepth: 1 + :hidden: + + what_should_i_do_if_my_query_is_slow + what_is_the_time_delay_for_primary_secondary_synchronization_in_a_replica_set + why_is_data_missing_from_my_database + will_my_backups_be_deleted_if_i_delete_my_cloud_account + are_my_dds_db_instances_available_when_scaling + does_dds_support_read_write_splitting diff --git a/umn/source/faqs/management_faqs/what_is_the_time_delay_for_primary_secondary_synchronization_in_a_replica_set.rst b/umn/source/faqs/management_faqs/what_is_the_time_delay_for_primary_secondary_synchronization_in_a_replica_set.rst new file mode 100644 index 0000000..9e1a7d9 --- /dev/null +++ b/umn/source/faqs/management_faqs/what_is_the_time_delay_for_primary_secondary_synchronization_in_a_replica_set.rst @@ -0,0 +1,17 @@ +:original_name: dds_faq_0006.html + +.. _dds_faq_0006: + +What Is the Time Delay for Primary/Secondary Synchronization in a Replica Set? +============================================================================== + +The delay for primary/secondary synchronization cannot be calculated using a formula. The delay is affected by the following factors: + +#. Network communication status +#. Transaction pressure on the primary node, that is, transactions per second (TPS) of the primary node +#. Transaction size executed by the primary node, that is, the duration of a transaction execution +#. Load of the secondary node + +If the primary node bears heavy pressure within a period and executes a large number of transactions per second, the synchronization to the secondary node is delayed. + +You can view **Delay Between Primary and Secondary Nodes** of the secondary node on the Cloud Eye console to know the synchronization delay. diff --git a/umn/source/faqs/management_faqs/what_should_i_do_if_my_query_is_slow.rst b/umn/source/faqs/management_faqs/what_should_i_do_if_my_query_is_slow.rst new file mode 100644 index 0000000..c18ede2 --- /dev/null +++ b/umn/source/faqs/management_faqs/what_should_i_do_if_my_query_is_slow.rst @@ -0,0 +1,12 @@ +:original_name: dds_faq_0005.html + +.. _dds_faq_0005: + +What Should I Do If My Query Is Slow? +===================================== + +- You can view the slow query logs to check whether any slowly executed SQL queries exist and view the performance characteristics of queries (if any) to locate the cause of slow queries. + + For details on DDS log queries, see section :ref:`Slow Query Log `. + +- You can also view CPU usage metrics of DDS DB instances to facilitate problem locating. For details, see section :ref:`Viewing DDS Metrics `. diff --git a/umn/source/faqs/management_faqs/why_is_data_missing_from_my_database.rst b/umn/source/faqs/management_faqs/why_is_data_missing_from_my_database.rst new file mode 100644 index 0000000..b4918e7 --- /dev/null +++ b/umn/source/faqs/management_faqs/why_is_data_missing_from_my_database.rst @@ -0,0 +1,13 @@ +:original_name: dds_faq_0007.html + +.. _dds_faq_0007: + +Why Is Data Missing from My Database? +===================================== + +DDS does not delete or perform any operations on any user data. If this problem occurs, check whether a misoperation has been performed. Restore the data using backup files, if necessary. + +Solution: + +- Use the DDS restoration function to restore data. For details, see section :ref:`Restoring a Cluster Instance from a Backup `. +- Import backups to DDS. For details, see section :ref:`Migrating Data `. diff --git a/umn/source/faqs/management_faqs/will_my_backups_be_deleted_if_i_delete_my_cloud_account.rst b/umn/source/faqs/management_faqs/will_my_backups_be_deleted_if_i_delete_my_cloud_account.rst new file mode 100644 index 0000000..6f7f922 --- /dev/null +++ b/umn/source/faqs/management_faqs/will_my_backups_be_deleted_if_i_delete_my_cloud_account.rst @@ -0,0 +1,8 @@ +:original_name: dds_faq_0008.html + +.. _dds_faq_0008: + +Will My Backups Be Deleted If I Delete My Cloud Account? +======================================================== + +If your cloud account is deleted, both your automated and manual backups are deleted. diff --git a/umn/source/faqs/network_and_security_faqs/do_i_need_to_use_dds_in_a_vpc.rst b/umn/source/faqs/network_and_security_faqs/do_i_need_to_use_dds_in_a_vpc.rst new file mode 100644 index 0000000..2bd4382 --- /dev/null +++ b/umn/source/faqs/network_and_security_faqs/do_i_need_to_use_dds_in_a_vpc.rst @@ -0,0 +1,12 @@ +:original_name: dds_faq_0022.html + +.. _dds_faq_0022: + +Do I Need to Use DDS in a VPC? +============================== + +A VPC allows you to create virtual network environment in a private and isolated network to control the private IP address range, subnets, route tables, and network gateways. The VPC also allows you to define the virtual network topology and network configuration to make the network similar to the traditional IP network you are operating in the data center. + +You may need to use DDS in the VPC in the following cases: + +You want to run Internet-oriented web applications and retain the backend server that the public cannot access. To do so, you can create an ECS and a DDS DB instance in the same VPC, allocate a public IP address for the ECS, and deploy a web server on the ECS. diff --git a/umn/source/faqs/network_and_security_faqs/how_do_i_ensure_the_security_of_dds_in_a_vpc.rst b/umn/source/faqs/network_and_security_faqs/how_do_i_ensure_the_security_of_dds_in_a_vpc.rst new file mode 100644 index 0000000..106b505 --- /dev/null +++ b/umn/source/faqs/network_and_security_faqs/how_do_i_ensure_the_security_of_dds_in_a_vpc.rst @@ -0,0 +1,8 @@ +:original_name: dds_faq_0023.html + +.. _dds_faq_0023: + +How Do I Ensure the Security of DDS in a VPC? +============================================= + +The VPC security group helps ensure the security of DDS in a VPC. In addition, ACL can be used to allow or reject I/O network traffic for each subnet. Use the internal security infrastructure (including the network firewall, intrusion detection, and protection system) to monitor all IPsec VPN connection-based input and output network traffic for VPC. diff --git a/umn/source/faqs/network_and_security_faqs/index.rst b/umn/source/faqs/network_and_security_faqs/index.rst new file mode 100644 index 0000000..6db1dd9 --- /dev/null +++ b/umn/source/faqs/network_and_security_faqs/index.rst @@ -0,0 +1,18 @@ +:original_name: dds_faq_0110.html + +.. _dds_faq_0110: + +Network and Security FAQs +========================= + +- :ref:`What Security Protection Policies Does DDS Have? ` +- :ref:`Do I Need to Use DDS in a VPC? ` +- :ref:`How Do I Ensure the Security of DDS in a VPC? ` + +.. toctree:: + :maxdepth: 1 + :hidden: + + what_security_protection_policies_does_dds_have + do_i_need_to_use_dds_in_a_vpc + how_do_i_ensure_the_security_of_dds_in_a_vpc diff --git a/umn/source/faqs/network_and_security_faqs/what_security_protection_policies_does_dds_have.rst b/umn/source/faqs/network_and_security_faqs/what_security_protection_policies_does_dds_have.rst new file mode 100644 index 0000000..4bf12b8 --- /dev/null +++ b/umn/source/faqs/network_and_security_faqs/what_security_protection_policies_does_dds_have.rst @@ -0,0 +1,8 @@ +:original_name: dds_faq_0021.html + +.. _dds_faq_0021: + +What Security Protection Policies Does DDS Have? +================================================ + +DDS allows you to set the VPC which DDS DB instances belong to, ensuring that the DDS DB instances are isolated from other services. In addition, the IAM service is provided, achieving access control over DDS resources. diff --git a/umn/source/faqs/parameter_and_metric_faqs/index.rst b/umn/source/faqs/parameter_and_metric_faqs/index.rst new file mode 100644 index 0000000..2ed68ea --- /dev/null +++ b/umn/source/faqs/parameter_and_metric_faqs/index.rst @@ -0,0 +1,14 @@ +:original_name: dds_faq_0108.html + +.. _dds_faq_0108: + +Parameter and Metric FAQs +========================= + +- :ref:`What DB Instance Monitoring Metrics Do I Need to Pay Attention To? ` + +.. toctree:: + :maxdepth: 1 + :hidden: + + what_db_instance_monitoring_metrics_do_i_need_to_pay_attention_to diff --git a/umn/source/faqs/parameter_and_metric_faqs/what_db_instance_monitoring_metrics_do_i_need_to_pay_attention_to.rst b/umn/source/faqs/parameter_and_metric_faqs/what_db_instance_monitoring_metrics_do_i_need_to_pay_attention_to.rst new file mode 100644 index 0000000..123a096 --- /dev/null +++ b/umn/source/faqs/parameter_and_metric_faqs/what_db_instance_monitoring_metrics_do_i_need_to_pay_attention_to.rst @@ -0,0 +1,27 @@ +:original_name: dds_faq_0019.html + +.. _dds_faq_0019: + +What DB Instance Monitoring Metrics Do I Need to Pay Attention To? +================================================================== + +You need to focus on the CPU, memory, and storage space usage. + +You can configure DDS to report alarms as needed. If an alarm is reported, you can take proper measures to clear it. + +**Configuration examples:** + +- Configure DDS to report alarms to Cloud Eye if CPU utilization reaching or exceeding a certain value (90% for example) for multiple times (3 for example) within a period of time (5 minutes for example). +- Configure DDS to report alarms to Cloud Eye if its memory utilization reaches or exceeds a specific value (for example, 90%) multiple times (for example, 4 times) within a set period (for example, 5 minutes). +- Configure DDS to report alarms to Cloud Eye if its storage utilization reaches or exceeds a specific value (for example, 85%) multiple times (for example, 5 times) within a set period (for example, 5 minutes). + +.. note:: + + For details on Cloud Eye alarm configuration, see "Alarm Rule Management" in *Cloud Eye Service User Guide*. + +**Measures:** + +If a storage usage alarm is reported, perform either of the following operations: + +- Check the storage space consumption and see whether any space can be freed up by deleting data from DB instances or dumping the data to another system. +- Scale up the storage space. For details, see section :ref:`Scaling Up Storage Space `. diff --git a/umn/source/faqs/storage_faqs/how_do_i_back_up_dds_to_ecs.rst b/umn/source/faqs/storage_faqs/how_do_i_back_up_dds_to_ecs.rst new file mode 100644 index 0000000..07d93c2 --- /dev/null +++ b/umn/source/faqs/storage_faqs/how_do_i_back_up_dds_to_ecs.rst @@ -0,0 +1,8 @@ +:original_name: dds_faq_0025.html + +.. _dds_faq_0025: + +How Do I Back Up DDS to ECS? +============================ + +You can store DDS backup data on the ECS using mongoexport. However, you are advised not to store database backups on ECSs. You are advised to use the DDS backup function to store backups to a professional storage object, such as the OBS, to ensure high data reliability and service assurance. diff --git a/umn/source/faqs/storage_faqs/how_long_does_dds_store_backup_data_for.rst b/umn/source/faqs/storage_faqs/how_long_does_dds_store_backup_data_for.rst new file mode 100644 index 0000000..d8d6058 --- /dev/null +++ b/umn/source/faqs/storage_faqs/how_long_does_dds_store_backup_data_for.rst @@ -0,0 +1,8 @@ +:original_name: dds_faq_0026.html + +.. _dds_faq_0026: + +How Long Does DDS Store Backup Data For? +======================================== + +The automated backup retention period is 7 days by default. You can set a backup retention period from 1 to 732 days. There is no limit on the manual backup retention period. You can delete manual backup files as needed. diff --git a/umn/source/faqs/storage_faqs/index.rst b/umn/source/faqs/storage_faqs/index.rst new file mode 100644 index 0000000..4c0bb5b --- /dev/null +++ b/umn/source/faqs/storage_faqs/index.rst @@ -0,0 +1,26 @@ +:original_name: dds_faq_0109.html + +.. _dds_faq_0109: + +Storage FAQs +============ + +- :ref:`How Do I Back Up DDS to ECS? ` +- :ref:`How Long Does DDS Store Backup Data For? ` +- :ref:`What Is the DDS DB Instance Storage Configuration? ` +- :ref:`What Should I Do If My Data Exceeds the Database Storage Space of a DDS DB Instance? ` +- :ref:`Which Items Occupy the Storage Space on My Purchased DDS DB Instances? ` +- :ref:`What Overhead Does the Storage Space Have After I Applied for a DDS DB Instance? ` +- :ref:`Which Types of Logs and Files Occupy DDS DB Instance Storage Space? ` + +.. toctree:: + :maxdepth: 1 + :hidden: + + how_do_i_back_up_dds_to_ecs + how_long_does_dds_store_backup_data_for + what_is_the_dds_db_instance_storage_configuration + what_should_i_do_if_my_data_exceeds_the_database_storage_space_of_a_dds_db_instance + which_items_occupy_the_storage_space_on_my_purchased_dds_db_instances + what_overhead_does_the_storage_space_have_after_i_applied_for_a_dds_db_instance + which_types_of_logs_and_files_occupy_dds_db_instance_storage_space diff --git a/umn/source/faqs/storage_faqs/what_is_the_dds_db_instance_storage_configuration.rst b/umn/source/faqs/storage_faqs/what_is_the_dds_db_instance_storage_configuration.rst new file mode 100644 index 0000000..d7d7693 --- /dev/null +++ b/umn/source/faqs/storage_faqs/what_is_the_dds_db_instance_storage_configuration.rst @@ -0,0 +1,10 @@ +:original_name: dds_faq_0028.html + +.. _dds_faq_0028: + +What Is the DDS DB Instance Storage Configuration? +================================================== + +The EVS is used for data storage of DDS DB instances. For details on the EVS, see *Elastic Volume Service User Guide*. + +The DDS DB instance backup data is stored in the OBS and does not occupy the storage space you purchased. For details on the DDS DB instance storage configuration, see the *Object Storage Service User Guide*. diff --git a/umn/source/faqs/storage_faqs/what_overhead_does_the_storage_space_have_after_i_applied_for_a_dds_db_instance.rst b/umn/source/faqs/storage_faqs/what_overhead_does_the_storage_space_have_after_i_applied_for_a_dds_db_instance.rst new file mode 100644 index 0000000..f59f3d2 --- /dev/null +++ b/umn/source/faqs/storage_faqs/what_overhead_does_the_storage_space_have_after_i_applied_for_a_dds_db_instance.rst @@ -0,0 +1,8 @@ +:original_name: dds_faq_0031.html + +.. _dds_faq_0031: + +What Overhead Does the Storage Space Have After I Applied for a DDS DB Instance? +================================================================================ + +The storage space you applied for will contain the system overhead required for inode, reserved block, and database operation. diff --git a/umn/source/faqs/storage_faqs/what_should_i_do_if_my_data_exceeds_the_database_storage_space_of_a_dds_db_instance.rst b/umn/source/faqs/storage_faqs/what_should_i_do_if_my_data_exceeds_the_database_storage_space_of_a_dds_db_instance.rst new file mode 100644 index 0000000..efb7e26 --- /dev/null +++ b/umn/source/faqs/storage_faqs/what_should_i_do_if_my_data_exceeds_the_database_storage_space_of_a_dds_db_instance.rst @@ -0,0 +1,11 @@ +:original_name: dds_faq_0029.html + +.. _dds_faq_0029: + +What Should I Do If My Data Exceeds the Database Storage Space of a DDS DB Instance? +==================================================================================== + +If the storage space required by your applications exceeds the allowed maximum space allocated to you, you can do either of the following: + +- Scale up storage space. +- Add shards for the DDS cluster instance of Community Edition. diff --git a/umn/source/faqs/storage_faqs/which_items_occupy_the_storage_space_on_my_purchased_dds_db_instances.rst b/umn/source/faqs/storage_faqs/which_items_occupy_the_storage_space_on_my_purchased_dds_db_instances.rst new file mode 100644 index 0000000..19cfd06 --- /dev/null +++ b/umn/source/faqs/storage_faqs/which_items_occupy_the_storage_space_on_my_purchased_dds_db_instances.rst @@ -0,0 +1,8 @@ +:original_name: dds_faq_0030.html + +.. _dds_faq_0030: + +Which Items Occupy the Storage Space on My Purchased DDS DB Instances? +====================================================================== + +Both your common data (excluding backup data) and data required for ensuring DB instance proper running occupy the storage space on your purchased DDS DB instances. To ensure DB instance proper running, system database data, rollback logs, and indexes are required. Logs generated by DDS also occupy the DB instance storage space. These files ensure that DB instances run stably. diff --git a/umn/source/faqs/storage_faqs/which_types_of_logs_and_files_occupy_dds_db_instance_storage_space.rst b/umn/source/faqs/storage_faqs/which_types_of_logs_and_files_occupy_dds_db_instance_storage_space.rst new file mode 100644 index 0000000..da39d46 --- /dev/null +++ b/umn/source/faqs/storage_faqs/which_types_of_logs_and_files_occupy_dds_db_instance_storage_space.rst @@ -0,0 +1,16 @@ +:original_name: dds_faq_0032.html + +.. _dds_faq_0032: + +Which Types of Logs and Files Occupy DDS DB Instance Storage Space? +=================================================================== + +Logs and files listed in the following table occupy storage space. + +============= =========================================== +Database Type File Type +============= =========================================== +DDS Log files: DDS log files +\ Data files: database content and index file +\ Other files: some DDS temporary files +============= =========================================== diff --git a/umn/source/faqs/which_commands_are_supported_or_restricted_by_dds.rst b/umn/source/faqs/which_commands_are_supported_or_restricted_by_dds.rst new file mode 100644 index 0000000..a72d322 --- /dev/null +++ b/umn/source/faqs/which_commands_are_supported_or_restricted_by_dds.rst @@ -0,0 +1,230 @@ +:original_name: dds_faq_0033.html + +.. _dds_faq_0033: + +Which Commands are Supported or Restricted by DDS? +================================================== + +The following tables list the commands supported and restricted by DDS. + +.. table:: **Table 1** Commands supported and restricted by DDS + + +------------------------------------+--------------------------+-------------------------+ + | Type | Supported Command | Restricted Command | + +====================================+==========================+=========================+ + | Aggregates Commands | aggregate | mapReduce | + | | | | + | | count | | + | | | | + | | distinct | | + | | | | + | | group | | + +------------------------------------+--------------------------+-------------------------+ + | Geospatial Commands | geoNear | geoSearch | + +------------------------------------+--------------------------+-------------------------+ + | Query and Write Operation Commands | find | getPrevError | + | | | | + | | insert | eval | + | | | | + | | update | parallelCollectionScan | + | | | | + | | delete | | + | | | | + | | findAndModify | | + | | | | + | | getMore | | + | | | | + | | getLastError | | + | | | | + | | resetError | | + +------------------------------------+--------------------------+-------------------------+ + | Query Plan Cache Commands | planCacheListFilters | ``-`` | + | | | | + | | planCacheSetFilter | | + | | | | + | | planCacheClearFilters | | + | | | | + | | planCacheListQueryShapes | | + | | | | + | | planCacheListPlans | | + | | | | + | | planCacheClear | | + +------------------------------------+--------------------------+-------------------------+ + | Authentication Commands | logout | authSchemaUpgrade | + | | | | + | | authenticate | copydbgetnonce | + | | | | + | | getnonce | | + +------------------------------------+--------------------------+-------------------------+ + | User Management Commands | createUser | ``-`` | + | | | | + | | updateUser | | + | | | | + | | dropUser | | + | | | | + | | dropAllUsersFromDatabase | | + | | | | + | | grantRolesToUser | | + | | | | + | | revokeRolesFromUser | | + | | | | + | | usersInfo | | + +------------------------------------+--------------------------+-------------------------+ + | Role Management Commands | invalidateUserCache | ``-`` | + | | | | + | | createRole | | + | | | | + | | updateRole | | + | | | | + | | dropRole | | + | | | | + | | dropAllRolesFromDatabase | | + | | | | + | | grantPrivilegesToRole | | + | | | | + | | revokePrivilegesFromRole | | + | | | | + | | grantRolesToRole | | + | | | | + | | revokeRolesFromRole | | + | | | | + | | rolesInfo | | + +------------------------------------+--------------------------+-------------------------+ + | Replication Commands | isMaster | replSetElect | + | | | | + | | | replSetUpdatePosition | + | | | | + | | | appendOplogNote | + | | | | + | | | replSetFreeze | + | | | | + | | | replSetGetStatus | + | | | | + | | | replSetInitiate | + | | | | + | | | replSetMaintenance | + | | | | + | | | replSetReconfig | + | | | | + | | | replSetStepDown | + | | | | + | | | replSetSyncFrom | + | | | | + | | | resync | + | | | | + | | | applyOps | + | | | | + | | | replSetGetConfig | + +------------------------------------+--------------------------+-------------------------+ + | Sharding Commands | enableSharding | flushRouterConfig | + | | | | + | | getShardVersion | addShard | + | | | | + | | mergeChunks | cleanupOrphaned | + | | | | + | | shardCollection | checkShardingIndex | + | | | | + | | split | listShards | + | | | | + | | splitChunk | removeShard | + | | | | + | | splitVector | getShardMap | + | | | | + | | moveChunk | setShardVersion | + | | | | + | | movePrimary | shardingState | + | | | | + | | isdbgrid | unsetSharding | + +------------------------------------+--------------------------+-------------------------+ + | Administration Commands | renameCollection | clone | + | | | | + | | dropDatabase | cloneCollection | + | | | | + | | listCollections | clean | + | | | | + | | drop | connPoolSync | + | | | | + | | create | compact | + | | | | + | | convertToCapped | setParameter | + | | | | + | | filemd5 | repairDatabase | + | | | | + | | createIndexes | repairCursor | + | | | | + | | listIndexes | touch | + | | | | + | | dropIndexes | shutdown | + | | | | + | | fsync | cloneCollectionAsCapped | + | | | | + | | connectionStatus | copydb | + | | | | + | | collMod | logRotate | + | | | | + | | reIndex | | + | | | | + | | getParameter | | + | | | | + | | currentOp | | + | | | | + | | killOp | | + +------------------------------------+--------------------------+-------------------------+ + | Diagnostic Commands | availableQueryOptions | connPoolStats | + | | | | + | | buildInfo | cursorInfo | + | | | | + | | collStats | dbHash | + | | | | + | | dataSize | diagLogging | + | | | | + | | dbStats | driverOIDTest | + | | | | + | | explain | getCmdLineOpts | + | | | | + | | features | getLog | + | | | | + | | listCommands | hostInfo | + | | | | + | | listDatabases | isSelf | + | | | | + | | ping | netstat | + | | | | + | | serverStatus | profile | + | | | | + | | whatsmyuri | shardConnPoolStats | + | | | | + | | | top | + | | | | + | | | validate | + +------------------------------------+--------------------------+-------------------------+ + | Internal Commands | ``-`` | handshake | + | | | | + | | | \_recvChunkAbort | + | | | | + | | | \_recvChunkCommit | + | | | | + | | | \_recvChunkStart | + | | | | + | | | \_recvChunkStatus | + | | | | + | | | \_replSetFresh | + | | | | + | | | mapreduce.shardedfinish | + | | | | + | | | \_transferMods | + | | | | + | | | replSetHeartbeat | + | | | | + | | | replSetGetRBID | + | | | | + | | | \_migrateClone | + | | | | + | | | replSetElect | + | | | | + | | | writeBacksQueued | + | | | | + | | | writebacklisten | + +------------------------------------+--------------------------+-------------------------+ + | System Events Auditing Commands | ``-`` | logApplicationMessage | + +------------------------------------+--------------------------+-------------------------+ diff --git a/umn/source/getting_started_with_clusters/connecting_to_a_cluster_instance/binding_and_unbinding_an_eip.rst b/umn/source/getting_started_with_clusters/connecting_to_a_cluster_instance/binding_and_unbinding_an_eip.rst new file mode 100644 index 0000000..d7d552c --- /dev/null +++ b/umn/source/getting_started_with_clusters/connecting_to_a_cluster_instance/binding_and_unbinding_an_eip.rst @@ -0,0 +1,62 @@ +:original_name: dds_02_0006.html + +.. _dds_02_0006: + +Binding and Unbinding an EIP +============================ + +.. _dds_02_0006__section055104935914: + +**Scenarios** +------------- + +You can access DDS through a private IP address or an EIP. The application scenario of the connection address is as follows: + +- Use a private IP address when: + + DDS provides a private IP address by default. + + Your applications are deployed on an ECS in a region where your cluster instance is located. + +- Use an EIP when: + + - Your applications are deployed on an ECS in a region separated from the region where your cluster instance is located. + - Your applications are deployed on another cloud platform. + +Precautions +----------- + +- Before accessing a database, you need to apply for an EIP on the VPC console. Then, add an inbound rule to allow the IP addresses or IP address ranges of ECSs. For details, see section :ref:`Setting a Security Group `. +- In the cluster instance, only mongos can be bound to an EIP. To change the EIP that has been bound to a node, you need to unbind it from the node first. + +.. _dds_02_0006__section0463161611514: + +Binding an EIP +-------------- + +#. On the **Instance Management** page, click the target cluster instance. + +#. In the navigation pane on the left, choose **Connections**. + +#. In the **Basic Information** area, locate the target mongos node and click **Bind EIP** in the **Operation** column. + +#. In the displayed dialog box, all EIPs in the unbound status are listed. Select the required EIP and click **OK**. If no available EIPs are displayed, click **View EIP** and create an EIP on the VPC console. + +#. In the **EIP** column on the **mongos** tab, view the EIP that is successfully bound. + + To unbind an EIP from the DB instance, see :ref:`Unbinding an EIP `. + +.. _dds_02_0006__section1139494151519: + +Unbinding an EIP +---------------- + +#. On the **Instance Management** page, click the target cluster instance. + +#. In the navigation pane on the left, choose **Connections**. + +#. In the **Basic Information** area, locate the target mongos node and click **Unbind EIP** in the **Operation** column. + +#. In the displayed dialog box, click **OK** to unbind the EIP. + + To bind an EIP to the DB instance again, see :ref:`Binding an EIP `. diff --git a/umn/source/getting_started_with_clusters/connecting_to_a_cluster_instance/connecting_to_a_db_instance_through_a_client.rst b/umn/source/getting_started_with_clusters/connecting_to_a_cluster_instance/connecting_to_a_db_instance_through_a_client.rst new file mode 100644 index 0000000..2d52914 --- /dev/null +++ b/umn/source/getting_started_with_clusters/connecting_to_a_cluster_instance/connecting_to_a_db_instance_through_a_client.rst @@ -0,0 +1,132 @@ +:original_name: en-us_topic_0044018334.html + +.. _en-us_topic_0044018334: + +Connecting to a DB Instance Through a Client +============================================ + +**Scenarios** +------------- + +This section guides you on how to connect to DB instances through a database client using a common connection or an SSL connection. You are advised to use SSL to encrypt connections to ensure data security. + +Based on the application scenario, you can determine whether to access a DB instance through an EIP. For details, see :ref:`Scenarios `. + +This section uses the Linux OS as an example to describe how to connect to a cluster instance. + +Restrictions +------------ + +For details about restrictions on connecting to a DB instance, see :ref:`Restrictions `. + +**Prerequisites** +----------------- + +#. An ECS or a device that can access DDS is ready for use. + + - To connect to a DDS DB instance from an ECS, you need to create and log in to the ECS. For details, see :ref:`How Can I Create and Log In to an ECS? ` + - To connect to a DB instance through an EIP: + + a. For details on how to bind an EIP, see section :ref:`Binding an EIP `. + b. Ensure that your local device can access the EIP that has been bound to the DB instance. + +#. A MongoDB client has been installed on the prepared ECS or the device. + + For details on how to install a MongoDB client, see section :ref:`How Can I Install a MongoDB Client? ` + +.. _en-us_topic_0044018334__section1640311061419: + +SSL Connection +-------------- + +#. On the **Instance Management** page, click the target DB instance. + +#. In the navigation pane on the left, choose **Connections**. + +#. In the **Basic Information** area, click |image1| next to the **SSL** field to download the root certificate. + +#. Upload the root certificate to the ECS that connects to the DB instance or save the root certificate to a local device that can access DDS. + + The following describes how to upload the certificate to a Linux and Window ECS: + + - In Linux, run the following command: + + **scp** ** **\ **@**\ **\ **:**\ ** + + .. note:: + + - **IDENTITY_FILE** indicates the directory where the root certificate locates. The file access permission is 600. + - **REMOTE_USER** indicates the ECS OS user. + - **REMOTE_ADDRESS** indicates the ECS address. + - **REMOTE_DIR** indicates the directory of the ECS to which the root certificate is uploaded. + + - In Windows, upload the root certificate using file transfer tools. + +#. Connect to the DB instance in the directory where the MongoDB client is located. + + The Linux OS is used as an example. + + **./mongo --host** <*DB_HOST*> **--port** <*DB_PORT*> **-u** <*DB_USER*> **-p** **--authenticationDatabase** **admin** **--ssl --sslCAFile** <*FILE_PATH*> + + Enter the database account password when prompted: + + .. code-block:: + + Enter password: + + .. note:: + + - A cluster instance uses the management IP address to generate SSL certificate. **--sslAllowInvalidHostnames** is needed for the SSL connection through an EIP. + - **DB_HOST** indicates the IP address of the remotely connected DB instance. Obtain the value from the **Private IP Address** column in the node list on the **Connections** page. If a device can access the DB instance through an EIP, set this parameter to the EIP displayed in **EIP** column in the node list on the **Connections** page. + - **DB_PORT** indicates the port number. Obtain the value from **Database Port** in the **Basic Information** area on the **Connections** page. + - **DB_USER** indicates the database account name. The default value is **rwuser**. + - **FILE_PATH** indicates the path where the root certificate is stored. + + Example: + + **./mongo --host 192.168.1.6 --port 8635 -u rwuser -p --authenticationDatabase admin --ssl --sslCAFile /tmp/ca.crt** + +#. Check the connection result. If the following information is displayed, the connection is successful. + + .. code-block:: + + mongos> + +.. _en-us_topic_0044018334__sfc3bfb212a8440799f49320d91fc096c: + +Common Connection +----------------- + +.. important:: + + To use the common connection mode, you need to disable the SSL connection. For details, see section :ref:`Disabling SSL `. + +#. Log in to the prepared ECS or the device that can access the document database. + +#. Connect to the DB instance in the directory where the MongoDB client is located. + + **./mongo --host** <*DB_HOST*> **--port** <*DB_PORT*> **-u** <*DB_USER*> **-p** **--authenticationDatabase** **admin** + + Enter the database account password when prompted: + + .. code-block:: + + Enter password: + + .. note:: + + - **DB_HOST** indicates the IP address of the remotely connected DB instance. Obtain the value from the **Private IP Address** column in the node list on the **Connections** page. If a device can access the DB instance through an EIP, set this parameter to the EIP displayed in **EIP** column in the node list on the **Connections** page. + - **DB_PORT** indicates the port number. Obtain the value from **Database Port** in the **Basic Information** area on the **Connections** page. + - **DB_USER** indicates the database account name. The default value is **rwuser**. + + Example: + + **./mongo --host 192.168.1.6 --port 8635 -u rwuser -p --authenticationDatabase admin** + +#. Check the connection result. If the following information is displayed, the connection is successful. + + .. code-block:: + + mongos> + +.. |image1| image:: /_static/images/en-us_image_0284275280.png diff --git a/umn/source/getting_started_with_clusters/connecting_to_a_cluster_instance/enabling_or_disabling_ssl.rst b/umn/source/getting_started_with_clusters/connecting_to_a_cluster_instance/enabling_or_disabling_ssl.rst new file mode 100644 index 0000000..e051918 --- /dev/null +++ b/umn/source/getting_started_with_clusters/connecting_to_a_cluster_instance/enabling_or_disabling_ssl.rst @@ -0,0 +1,51 @@ +:original_name: dds_02_0007.html + +.. _dds_02_0007: + +Enabling or Disabling SSL +========================= + +**Scenarios** +------------- + +DDS allows you to use SSL to encrypt connections to a DB instance to protect your data. + +- If SSL is enabled, you can connect to a database using SSL. For details, see :ref:`SSL Connection `. +- If SSL is disabled, you can connect to the database using a common connection. For details, see :ref:`Common Connection `. + +.. important:: + + Enabling or disabling SSL will cause DB instance restart. Exercise caution when you perform this operation. + +Enabling SSL +------------ + +#. On the **Instance Management** page, click the target DB instance. + +#. In the **DB Information** area on the **Basic Information** page, click |image1| to enable SSL in the **SSL** field. + + Alternatively, in the navigation pane on the left, choose **Connections**. In the **Basic Information** area, click |image2| next to the **SSL** field. + +#. In the displayed dialog box, click **Yes**. + +#. In the **Basic Information** area, view the modification result. + +.. _dds_02_0007__section10934168947: + +Disabling SSL +------------- + +#. On the **Instance Management** page, click the target DB instance. + +#. In the **DB Information** area on the **Basic Information** page, click |image3| to enable SSL in the **SSL** field. + + Alternatively, in the navigation pane on the left, choose **Connections**. In the **Basic Information** area, click |image4| next to the **SSL** field. + +#. In the displayed dialog box, click **Yes**. + +#. In the **Basic Information** area, view the modification result. + +.. |image1| image:: /_static/images/en-us_image_0271492125.png +.. |image2| image:: /_static/images/en-us_image_0269983210.png +.. |image3| image:: /_static/images/en-us_image_0271515223.png +.. |image4| image:: /_static/images/en-us_image_0271515222.png diff --git a/umn/source/getting_started_with_clusters/connecting_to_a_cluster_instance/index.rst b/umn/source/getting_started_with_clusters/connecting_to_a_cluster_instance/index.rst new file mode 100644 index 0000000..60d6635 --- /dev/null +++ b/umn/source/getting_started_with_clusters/connecting_to_a_cluster_instance/index.rst @@ -0,0 +1,18 @@ +:original_name: dds_02_0009.html + +.. _dds_02_0009: + +Connecting to a Cluster Instance +================================ + +- :ref:`Binding and Unbinding an EIP ` +- :ref:`Enabling or Disabling SSL ` +- :ref:`Connecting to a DB Instance Through a Client ` + +.. toctree:: + :maxdepth: 1 + :hidden: + + binding_and_unbinding_an_eip + enabling_or_disabling_ssl + connecting_to_a_db_instance_through_a_client diff --git a/umn/source/getting_started_with_clusters/creating_a_cluster_instance.rst b/umn/source/getting_started_with_clusters/creating_a_cluster_instance.rst new file mode 100644 index 0000000..7e2e896 --- /dev/null +++ b/umn/source/getting_started_with_clusters/creating_a_cluster_instance.rst @@ -0,0 +1,177 @@ +:original_name: dds_02_0008.html + +.. _dds_02_0008: + +Creating a Cluster Instance +=========================== + +**Scenarios** +------------- + +This section describes how to create a DDS cluster instance of Community Edition on the DDS management console. DDS allows you to tailor your computing resources and storage space to your business needs. + +You can use your account to create a maximum of 10 cluster instances. To create more cluster instances, click |image1| in the upper right corner of the management console. On the **Service Quota** page, click **Increase Quota** to apply for quotas. + +**Procedure** +------------- + +#. :ref:`Log in to the DDS console. ` +#. On the **Instance Management** page, click **Create** **DB Instance**. +#. On the displayed page, configure parameters about DB instance specifications. Then, click **Create Now**. + + .. table:: **Table 1** Basic information + + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Parameter | Description | + +===================================+===============================================================================================================================================================================================================================+ + | Region | A region where the tenant is located. It can be changed in the upper left corner. For details, see section :ref:`Regions and AZs `. | + | | | + | | .. note:: | + | | | + | | DB instances in different regions cannot communicate with each other through a private network, and you cannot change the region of a DB instance once it is created. Therefore, exercise caution when selecting a region. | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | DB Instance Name | The DB instance name can be 4 to 64 characters long. It must start with a letter and can contain only uppercase letters, lowercase letters, digits, hyphens (-), and underscores (_). | + | | | + | | After the DB instance is created, you can change the DB instance name. For details, see section :ref:`Modifying the DB Instance Name `. | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Database Type | Community Edition | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | DB Instance Type | Select **Cluster**. | + | | | + | | A cluster instance includes three types of nodes: mongos, shard, and config. shard and config use the three-node replica set architecture to ensure high availability. | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Compatible MongoDB Version | - 3.4 | + | | - 3.2 | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Storage Engine | WiredTiger | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | AZ | A physical region where resources use independent power supply and networks. AZs are physically isolated but interconnected through the internal network. For details, see section :ref:`Regions and AZs `. | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Disk Encryption | - **Disable**: Disable the encryption function. | + | | | + | | - **Enable**: Enable the encryption function. This feature improves data security but slightly affects read/write performance. | + | | | + | | **Key Name**: Select or create a private key, which is the tenant key. | + | | | + | | .. note:: | + | | | + | | - After a DB instance is created, the disk encryption status and the key cannot be changed. Backup data stored on OBS is not encrypted. | + | | - The key cannot be disabled or deleted when being used. Otherwise, the database becomes unavailable. | + | | - For details about how to create a key, see the "Creating a CMK" section in the *Key Management Service User Guide*. | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + .. table:: **Table 2** Specifications + + +-----------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Item | Description | + +===================================+============================================================================================================================================================================================================================================================================================+ + | mongos class | For details about the mongos CPU and memory, see section :ref:`DB Instance Specifications `. After a DB instance is created, you can change its CPU and memory. For details, see section :ref:`Changing the CPU or Memory of a Cluster DB Instance `. | + +-----------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | mongos quantity | The value ranges from 2 to 16. After a DB instance is created, you can add nodes. For details, see section :ref:`Adding Cluster Instance Nodes `. | + +-----------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | mongos parameter group | Parameters in a mongos parameter group can be applied to mongos nodes. After a DB instance is created, you can change the parameter group of a node. For a parameter group created by users, you can modify the parameters in the parameter group to bring out the best performance. | + | | | + | | For details, see :ref:`Parameter Group `. | + +-----------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | shard class | For details about the shard CPU and memory, see section :ref:`DB Instance Specifications `. After a DB instance is created, you can change its CPU and memory. For details, see section :ref:`Changing the CPU or Memory of a Cluster DB Instance `. | + +-----------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | shard storage type | Ultra-high I/O: uses the SSD disk type. | + +-----------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | shard storage space | The value ranges from 10 GB to 1,000 GB and must be a multiple of 10. After a DB instance is created, you can scale up its storage space. For details, see section :ref:`Scaling Up Storage Space `. | + +-----------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | shard quantity | shard stores user data but cannot be accessed directly by you. | + | | | + | | The value ranges from 2 to 16. After a DB instance is created, you can add nodes. For details, see section :ref:`Adding Cluster Instance Nodes `. | + +-----------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | shard parameter group | Parameters in a shard parameter group can be applied to shard nodes. After a DB instance is created, you can change the parameter group of a node. For a parameter group created by users, you can modify the parameters in the parameter group to bring out the best performance. | + | | | + | | For details, see :ref:`Parameter Group `. | + +-----------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | config class | config stores DB instance configurations but cannot be accessed directly by you. For details, see :ref:`DB Instance Specifications `. | + +-----------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | config storage type | Ultra-high I/O: uses the SSD disk type. | + +-----------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | config storage space | The storage space is 20 GB and cannot be scaled up. | + +-----------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | config parameter group | Parameters in a config parameter group can be applied to config nodes. After a DB instance is created, you can change the parameter group of a node. For a parameter group created by users, you can modify the parameters in the parameter group to bring out the best performance. | + | | | + | | For details, see :ref:`Parameter Group `. | + +-----------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + .. table:: **Table 3** Network + + +-----------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Parameter | Description | + +===================================+========================================================================================================================================================================================================================================================================================================================================================================+ + | VPC | The VPC to which a DB instance belongs isolates networks for different services. It allows user to manage and configure internal networks and change network configuration, simplifying network management. You need to create or select the required VPC. For details on how to create a VPC, see section "Creating a VPC" in the *Virtual Private Cloud User Guide*. | + +-----------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Subnet | A subnet provides dedicated network resources that are logically isolated from other networks, improving network security. After a DB instance is created, you can click the DB instance name and change the private IP address assigned by the subnet to the mongos node on the **Basic Information** page. | + | | | + | | .. note:: | + | | | + | | Changing the private IP address of a node will invalidate the previous private IP address. If an EIP is bound to the node, do not unbind the EIP during the change of the private IP address. After the change, the new private IP address is bound to the EIP. | + +-----------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Security Group | A security group controls access between DDS and other services for security. | + | | | + | | .. note:: | + | | | + | | Ensure that the security group rule you set allows clients to access DB instances. For example, select the TCP protocol with inbound direction, input the default port number **8635**, and enter a subnet IP address or select a security group that the DB instance belongs to. | + +-----------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | SSL | Secure Sockets Layer (SSL) certificates set up encrypted connections between clients and servers, preventing data from being tampered with or stolen during transmission. | + | | | + | | You can enable SSL to improve data security. After a DB instance is created, you can connect to it in SSL mode. For details, see :ref:`Connecting to a DB Instance Through a Client `. | + +-----------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + .. table:: **Table 4** Database configuration + + +-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Parameter | Description | + +===================================+=======================================================================================================================================================================================================================+ + | Administrator | The default account is **rwuser**. | + +-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Administrator Password | The password is a string of 8 to 32 characters. It must be a combination of uppercase letters, lowercase letters, digits, and special characters. You can also use the following special characters: ``~!@#%^*-_=+?`` | + | | | + | | The system cannot save you password. Keep the password secure. | + +-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Confirm Password | The value of this parameter must be the same as the **Administrator Password**. | + +-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + .. table:: **Table 5** Tag + + +-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Parameter | Description | + +===================================+===========================================================================================================================================================================================================+ + | Tags | Tags a DDS DB instance. This configuration is optional. Adding tags to DDS DB instances helps you better identify and manage them. Each DB instance can have up to 20 tags. | + | | | + | | A tag is composed of a key-value pair. | + | | | + | | - Key: Mandatory if the DB instance is going to be tagged | + | | | + | | - For each DB instance, each tag key is unique. | + | | - A tag key consists of a maximum of 36 characters. | + | | - The key can only consist of digits, letters, underscores (_), hyphens (-), and at sign (@). | + | | | + | | - Value: Optional if the DB instance is going to be tagged | + | | | + | | - The value consists of a maximum of 43 characters. | + | | - The value can only consist of digits, letters, underscores (_), hyphens (-), and at sign (@). | + | | | + | | After a DB instance is created, you can view its tag details on the **Tags** tab. In addition, you can add, modify, and delete tags for existing DB instances. For details, see :ref:`Tag `. | + +-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + .. note:: + + DB instance performance is determined by the configurations you set during its creation, including the node class and storage space. + +#. On the displayed page, confirm the DB instance information. + + - If you need to modify the specifications, click **Previous** to modify parameters. + - If you do not need to modify the specifications, click **Submit** to start the instance creation. + +#. After a DDS DB instance is created, you can view and manage it on the **Instance Management** page. + + - When a DB instance is being created, the status displayed in the **Status** column is **Creating**. This process takes about 15 minutes. After the creation is complete, the status changes to **Available**. + - DDS enables the automated backup policy by default. After a DB instance is created, you can modify or disable the automated backup policy. An automated full backup is immediately triggered after the creation of a DB instance. + - You can change the database port after the DB instance is created. DDS uses port 8635 by default, which is different from the default port numbers used by databases. To ensure database accessibility, you need to add the required security group rule. + +.. |image1| image:: /_static/images/en-us_image_0284275249.png diff --git a/umn/source/getting_started_with_clusters/index.rst b/umn/source/getting_started_with_clusters/index.rst new file mode 100644 index 0000000..c22e442 --- /dev/null +++ b/umn/source/getting_started_with_clusters/index.rst @@ -0,0 +1,22 @@ +:original_name: dds_02_cluster.html + +.. _dds_02_cluster: + +Getting Started with Clusters +============================= + +- :ref:`Service Process ` +- :ref:`Restrictions ` +- :ref:`Creating a Cluster Instance ` +- :ref:`Setting a Security Group ` +- :ref:`Connecting to a Cluster Instance ` + +.. toctree:: + :maxdepth: 1 + :hidden: + + service_process + restrictions + creating_a_cluster_instance + setting_a_security_group + connecting_to_a_cluster_instance/index diff --git a/umn/source/getting_started_with_clusters/restrictions.rst b/umn/source/getting_started_with_clusters/restrictions.rst new file mode 100644 index 0000000..1933e3c --- /dev/null +++ b/umn/source/getting_started_with_clusters/restrictions.rst @@ -0,0 +1,36 @@ +:original_name: dds_02_0002.html + +.. _dds_02_0002: + +Restrictions +============ + +To improve the stability and security of DB instances, there are some restrictions on the use of DDS. For details, see :ref:`Table 1 `. + +.. _dds_02_0002__table60364850123535: + +.. table:: **Table 1** Function restrictions + + +----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Operation | Restrictions | + +==============================================+======================================================================================================================================================================+ + | Connecting to a DB instance through a client | - To access a DDS DB instance which is not publicly accessible from an ECS, the instance must be in the same VPC subnet as the ECS. | + | | - By default, DDS cannot be accessed through an ECS in a different security group. You need to add an inbound rule to the DDS security group. | + | | - The default DDS port number is 8635. You can change it if you want to access DDS through another port. | + +----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Deployment | ECSs in which DB instances are deployed are not visible to you. Your applications can access the database only through an IP address and port. | + +----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Obtaining permissions of user **rwuser** | Only the **rwuser** user permissions are provided on the instance creation page. | + | | | + | | For details about the related commands, see :ref:`Which Commands are Supported or Restricted by DDS? ` | + +----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Setting database parameters | Most database parameters in the parameter groups you created can be modified. For details, see section :ref:`Editing a Parameter Group `. | + +----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Migrating data | You can use command line tools, including mongoexport and mongoimport, to migrate data. For details, see section :ref:`Migrating Data `. | + +----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Storage engine | The WiredTiger storage engine is supported. | + +----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Restarting a DB instance or a node | A DDS DB instance must be restarted on the DDS console. | + +----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Viewing DDS backup files | You can download and view the backup files on the DDS console. For details, see section :ref:`Downloading Backup Files `. | + +----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ diff --git a/umn/source/getting_started_with_clusters/service_process.rst b/umn/source/getting_started_with_clusters/service_process.rst new file mode 100644 index 0000000..17c6d1e --- /dev/null +++ b/umn/source/getting_started_with_clusters/service_process.rst @@ -0,0 +1,32 @@ +:original_name: dds_02_0003.html + +.. _dds_02_0003: + +Service Process +=============== + +This section describes how to create a cluster instance, set a security group, and connect to a cluster instance. + +Intended Audience +----------------- + +- Users who create the DDS DB instance for the first time. +- Users who need to perform the initial configuration after a DB instance is created. +- Users who want to know how to connect to the DDS DB instances. + +Process +------- + +The following describes the steps from creating a DB instance to using it. + + +.. figure:: /_static/images/en-us_image_0284274985.png + :alt: **Figure 1** Accessing DB instances from a public network + + **Figure 1** Accessing DB instances from a public network + + +.. figure:: /_static/images/en-us_image_0284275243.png + :alt: **Figure 2** Accessing DB instances from a private network + + **Figure 2** Accessing DB instances from a private network diff --git a/umn/source/getting_started_with_clusters/setting_a_security_group.rst b/umn/source/getting_started_with_clusters/setting_a_security_group.rst new file mode 100644 index 0000000..b4a5e11 --- /dev/null +++ b/umn/source/getting_started_with_clusters/setting_a_security_group.rst @@ -0,0 +1,63 @@ +:original_name: dds_02_0005.html + +.. _dds_02_0005: + +Setting a Security Group +======================== + +Scenarios +--------- + +This section guides you on how to add a security group rule to control access from and to DDS DB instances in a security group. + +Background Information +---------------------- + +You can access a DDS DB instance in either of the following ways: + +- Public network +- Internal network + +Precautions +----------- + +The default security group rule allows all outgoing data packets. ECSs and DDS DB instances can access each other in the same security group. After a security group is created, you can add security group rules to control the access from and to the DDS DB instances in the security group. + +By default, a tenant can create a maximum of 500 security group rules. An excessive number of security group rules increases the network latency of the first packet. It is recommended that you add a maximum of 50 rules for each security group. + +To access the DDS DB instances in a security group from external resources, create an inbound rule for the security group. + +**Procedure** +------------- + +#. Log in to the management console. +#. Click |image1| in the upper left corner and select a region and project. +#. Click **Service List**. Under **Network**, click **Virtual Private Cloud**. +#. In the navigation pane on the left, choose **Access Control** > **Security Groups**. +#. On the **Security Group** page, click the security group name. +#. On the **Inbound Rules** tab, click **Add Rule**. In the displayed **Add Inbound Rule** dialog box, set required parameters to add inbound rules. On the **Outbound Rules** tab, click **Add Rule**. In the displayed **Add Outbound Rule** dialog box, set required parameters to add outbound rules. +#. Add a security group rule as prompted. + + .. table:: **Table 1** Field description + + +-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+-----------------------+ + | Parameter | Description | Value Example | + +=======================+==================================================================================================================================================+=======================+ + | Protocol | Specifies the network protocol. Allows all traffic or supports user-defined protocols, TCP, UDP, ICMP, and SSH. | TCP | + +-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+-----------------------+ + | Port | Specifies the port allowing the access to ECSs or external devices. | 8635 | + +-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+-----------------------+ + | Source/Destination | Specifies the supported IP address and security group. | - 192.168.10.0/24 | + | | | - default | + | | - **IP address**: indicates that the security group rule takes effect in a specified IP address range. | | + | | | | + | | - xxx.xxx.xxx.xxx/32 (IPv4) | | + | | - xxx.xxx.xxx.0/24 (subnet) | | + | | - 0.0.0.0/0 (any IP address) | | + | | | | + | | - **Security group**: indicates that this rule allows all IP addresses of ECSs to access DDS DB instances in the same specified security group. | | + +-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+-----------------------+ + +#. Click **OK**. + +.. |image1| image:: /_static/images/en-us_image_0284275123.png diff --git a/umn/source/getting_started_with_replica_sets/connecting_to_a_replica_set_instance/binding_and_unbinding_an_eip.rst b/umn/source/getting_started_with_replica_sets/connecting_to_a_replica_set_instance/binding_and_unbinding_an_eip.rst new file mode 100644 index 0000000..30e5895 --- /dev/null +++ b/umn/source/getting_started_with_replica_sets/connecting_to_a_replica_set_instance/binding_and_unbinding_an_eip.rst @@ -0,0 +1,62 @@ +:original_name: dds_02_0015.html + +.. _dds_02_0015: + +Binding and Unbinding an EIP +============================ + +.. _dds_02_0015__section055104935914: + +**Scenarios** +------------- + +You can access DDS through a private IP address or an EIP. The application scenario of the connection address is as follows: + +- Use a private IP address when: + + DDS provides a private IP address by default. + + Your applications are deployed on an ECS in a region where your replica set instance is located. + +- Use an EIP when: + + - Your applications are deployed on an ECS in a region separated from the region where your replica set instance is located. + - Your applications are deployed on another cloud platform. + +Precautions +----------- + +- Before accessing a database, you need to apply for an EIP on the VPC console. Then, add an inbound rule to allow the IP addresses or IP address ranges of ECSs. For details, see section :ref:`Setting a Security Group `. +- In the replica set instance, only primary and secondary nodes can be bound to an EIP. To change the EIP that has been bound to a node, you need to unbind it from the node first. + +.. _dds_02_0015__section0350133891310: + +Binding an EIP +-------------- + +#. On the **Instance Management** page, click the target replica set instance. + +#. In the navigation pane on the left, choose **Connections**. + +#. In the **Basic Information** area, locate the target node and click **Bind EIP** in the **Operation** column. + +#. In the displayed dialog box, all EIPs in the unbound status are listed. Select the required EIP and click **OK**. If no available EIPs are displayed, click **View EIP** and create an EIP on the VPC console. + +#. In the **EIP** column, check that the EIP is successfully bound. + + To unbind an EIP from the DB instance, see :ref:`Unbinding an EIP `. + +.. _dds_02_0015__section142610351410: + +Unbinding an EIP +---------------- + +#. On the **Instance Management** page, click the replica set instance that has been bound with an EIP. + +#. In the navigation pane on the left, choose **Connections**. + +#. In the **Basic Information** area, locate the target node and click **Unbind EIP** in the **Operation** column. + +#. In the displayed dialog box, click **OK** to unbind the EIP. + + To bind an EIP to the DB instance again, see :ref:`Binding an EIP `. diff --git a/umn/source/getting_started_with_replica_sets/connecting_to_a_replica_set_instance/connecting_to_a_db_instance_through_a_client.rst b/umn/source/getting_started_with_replica_sets/connecting_to_a_replica_set_instance/connecting_to_a_db_instance_through_a_client.rst new file mode 100644 index 0000000..6661c7a --- /dev/null +++ b/umn/source/getting_started_with_replica_sets/connecting_to_a_replica_set_instance/connecting_to_a_db_instance_through_a_client.rst @@ -0,0 +1,150 @@ +:original_name: en-us_topic_0105284966.html + +.. _en-us_topic_0105284966: + +Connecting to a DB Instance Through a Client +============================================ + +**Scenarios** +------------- + +This section guides you on how to connect to DB instances through a database client using a common connection or an SSL connection. You are advised to use SSL to encrypt connections to ensure data security. + +Based on the application scenario, you can determine whether to access a DB instance through an EIP. For details, see :ref:`Scenarios `. + +You can directly perform operations on the primary and secondary nodes. Primary nodes are used for processing read and write requests. Secondary nodes replicate data from the primary and are used for processing read requests only. + +This section uses the Linux OS as an example to describe how to connect to a replica set instance. + +Restrictions +------------ + +For details about restrictions on connecting to a DB instance, see :ref:`Restrictions `. + +**Prerequisites** +----------------- + +#. An ECS or a device that can access DDS is ready for use. + + - To connect to a DDS DB instance from an ECS, you need to create and log in to the ECS. For details, see :ref:`How Can I Create and Log In to an ECS? ` + - To connect to a DB instance through an EIP: + + a. Bind an EIP to a DB instance node. For details, see section :ref:`Binding an EIP `. + b. Ensure that your local device can access the EIP that has been bound to the DB instance. + +#. A MongoDB client has been installed on the prepared ECS or the device. + + For details on how to install a MongoDB client, see :ref:`How Can I Install a MongoDB Client? ` + +.. _en-us_topic_0105284966__section3730754113815: + +SSL Connection +-------------- + +#. On the **Instance Management** page, click the target DB instance. + +#. In the navigation pane on the left, choose **Connections**. + +#. In the **Basic Information** area, click |image1| next to the **SSL** field to download the root certificate. + +#. Upload the root certificate to the ECS that connects to the DB instance or save the root certificate to a local device that can access DDS. + + The following describes how to upload the certificate to a Linux and Window ECS: + + - In Linux, run the following command: + + **scp** ** **\ **@**\ **\ **:**\ ** + + .. note:: + + - **IDENTITY_FILE** indicates the directory where the root certificate locates. The file access permission is 600. + - **REMOTE_USER** indicates the ECS OS user. + - **REMOTE_ADDRESS** indicates the ECS address. + - **REMOTE_DIR** indicates the directory of the ECS to which the root certificate is uploaded. + + - In Windows, upload the root certificate using file transfer tools. + +#. Connect to a DDS DB instance. + + The Linux OS is used as an example. + + **./mongo --host** <*DB_HOST*> **--port** <*DB_PORT*> **-u** <*DB_USER*> **-p** **--authenticationDatabase** **admin** **--ssl --sslCAFile** <*FILE_PATH*> **--sslAllowInvalidHostnames** + + Enter the database account password when prompted: + + .. code-block:: + + Enter password: + + .. note:: + + - A replica set instance uses the management IP address to generate SSL certificate. **--sslAllowInvalidHostnames** is needed for the SSL connection. + - **DB_HOST** indicates the IP address of the remotely connected DB instance. Obtain the value from the **Private IP Address** column in the node list on the **Connections** page. If a device can access the DB instance through an EIP, set this parameter to the EIP displayed in **EIP** column in the node list on the **Connections** page. + - **DB_PORT** indicates the port number. Obtain the value from **Database Port** in the **Basic Information** area on the **Connections** page. + - **DB_USER** indicates the database account name. The default value is **rwuser**. + - **FILE_PATH** indicates the path where the root certificate is stored. + + Example: + + **./mongo --host 192.168.1.6 --port 8635 -u rwuser -p --authenticationDatabase admin --ssl --sslCAFile /tmp/ca.crt** **--sslAllowInvalidHostnames** + +#. Check the connection result. If the following information is displayed, the connection is successful. + + - Result from connecting the primary node in a replica set: + + .. code-block:: + + replica:PRIMARY> + + - Result from connecting the secondary node in a replica set: + + .. code-block:: + + replica:SECONDARY> + +.. _en-us_topic_0105284966__en-us_topic_0085335422_sfc3bfb212a8440799f49320d91fc096c: + +Common Connection +----------------- + +.. important:: + + To use the common connection mode, you need to disable the SSL connection. For details, see section :ref:`Disabling SSL `. + +#. Log in to the prepared ECS or the device that can access the document database. + +#. Connect to a DDS DB instance. + + **./mongo --host** <*DB_HOST*> **--port** <*DB_PORT*> **-u** <*DB_USER*> **-p** **--authenticationDatabase** **admin** + + Enter the database account password when prompted: + + .. code-block:: + + Enter password: + + .. note:: + + - **DB_HOST** indicates the IP address of the remotely connected DB instance. Obtain the value from the **Private IP Address** column in the node list on the **Connections** page. If a device can access the DB instance through an EIP, set this parameter to the EIP displayed in **EIP** column in the node list on the **Connections** page. + - **DB_PORT** indicates the port number. Obtain the value from **Database Port** in the **Basic Information** area on the **Connections** page. + - **DB_USER** indicates the database account name. The default value is **rwuser**. + + Example: + + **./mongo --host 192.168.1.6 --port 8635 -u rwuser -p --authenticationDatabase admin** + +#. Check the connection result. If the following information is displayed, the connection is successful. + + - Result from connecting the primary node in a replica set: + + .. code-block:: + + replica:PRIMARY> + + - Result from connecting the secondary node in a replica set: + + .. code-block:: + + replica:SECONDARY> + +.. |image1| image:: /_static/images/en-us_image_0284275232.png diff --git a/umn/source/getting_started_with_replica_sets/connecting_to_a_replica_set_instance/enabling_or_disabling_ssl.rst b/umn/source/getting_started_with_replica_sets/connecting_to_a_replica_set_instance/enabling_or_disabling_ssl.rst new file mode 100644 index 0000000..bcdc9ba --- /dev/null +++ b/umn/source/getting_started_with_replica_sets/connecting_to_a_replica_set_instance/enabling_or_disabling_ssl.rst @@ -0,0 +1,41 @@ +:original_name: dds_02_0016.html + +.. _dds_02_0016: + +Enabling or Disabling SSL +========================= + +Scenarios +--------- + +DDS allows you to use SSL to encrypt connections to a DB instance to protect your data. + +- If SSL is enabled, you can connect to a database using SSL. For details, see :ref:`SSL Connection `. +- If SSL is disabled, you can connect to the database using a common connection. For details, see :ref:`Common Connection `. + +.. important:: + + Enabling or disabling SSL will cause DB instance restart. Exercise caution when you perform this operation. + +Enabling SSL +------------ + +#. On the **Instance Management** page, click the target replica set instance. +#. In the navigation pane on the left, choose **Connections**. +#. In the **Basic Information** area, click |image1| next to the **SSL** field. +#. In the displayed dialog box, click **Yes**. +#. In the **Basic Information** area, view the modification result. + +.. _dds_02_0016__section584914451250: + +Disabling SSL +------------- + +#. On the **Instance Management** page, click the target replica set instance. +#. In the navigation pane on the left, choose **Connections**. +#. In the **Basic Information** area, click |image2| next to the **SSL** field. +#. In the displayed dialog box, click **Yes**. +#. In the **Basic Information** area, view the modification result. + +.. |image1| image:: /_static/images/en-us_image_0284275089.png +.. |image2| image:: /_static/images/en-us_image_0284275146.png diff --git a/umn/source/getting_started_with_replica_sets/connecting_to_a_replica_set_instance/index.rst b/umn/source/getting_started_with_replica_sets/connecting_to_a_replica_set_instance/index.rst new file mode 100644 index 0000000..e6dfa62 --- /dev/null +++ b/umn/source/getting_started_with_replica_sets/connecting_to_a_replica_set_instance/index.rst @@ -0,0 +1,18 @@ +:original_name: dds_02_0014.html + +.. _dds_02_0014: + +Connecting to a Replica Set Instance +==================================== + +- :ref:`Binding and Unbinding an EIP ` +- :ref:`Enabling or Disabling SSL ` +- :ref:`Connecting to a DB Instance Through a Client ` + +.. toctree:: + :maxdepth: 1 + :hidden: + + binding_and_unbinding_an_eip + enabling_or_disabling_ssl + connecting_to_a_db_instance_through_a_client diff --git a/umn/source/getting_started_with_replica_sets/creating_a_replica_set_instance.rst b/umn/source/getting_started_with_replica_sets/creating_a_replica_set_instance.rst new file mode 100644 index 0000000..a432caf --- /dev/null +++ b/umn/source/getting_started_with_replica_sets/creating_a_replica_set_instance.rst @@ -0,0 +1,157 @@ +:original_name: dds_02_0012.html + +.. _dds_02_0012: + +Creating a Replica Set Instance +=============================== + +**Scenarios** +------------- + +This section describes how to create a DDS replica set instance on the DDS management console. DDS allows you to tailor your computing resources and storage space to your business needs. + +You can use your account to create a maximum of 50 replica set instances in total. To create more replica set instances, click |image1| in the upper right corner of the management console. On the **Service Quota** page, click **Increase Quota** to apply for quotas. + +**Procedure** +------------- + +#. :ref:`Log in to the DDS console. ` +#. On the **Instance Management** page, click **Create** **DB Instance**. +#. On the displayed page, configure parameters about DB instance specifications. Then, click **Create Now**. + + .. table:: **Table 1** Basic information + + +-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Parameter | Description | + +===================================+===============================================================================================================================================================================================================================================================================================================================================+ + | Region | A region where the tenant is located. It can be changed in the upper left corner. For details, see section :ref:`Regions and AZs `. | + | | | + | | .. note:: | + | | | + | | DB instances in different regions cannot communicate with each other through a private network, and you cannot change the region of a DB instance once it is created. Therefore, exercise caution when selecting a region. | + +-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | DB Instance Name | The DB instance name can be 4 to 64 characters long. It must start with a letter and can contain only uppercase letters, lowercase letters, digits, hyphens (-), and underscores (_). | + | | | + | | After the DB instance is created, you can change the DB instance name. For details, see section :ref:`Modifying the DB Instance Name `. | + +-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Database Type | Community Edition | + +-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | DB Instance Type | Select **Replica set**. | + | | | + | | A replica set consists of the primary node, secondary node, and hidden node. If a primary node goes down or becomes faulty, a secondary node is automatically assigned to the primary role and continues normal operation. If a secondary node is unavailable, a hidden node will take the role of the secondary to ensure high availability. | + +-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Compatible MongoDB Version | - 3.4 | + | | - 3.2 | + +-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Storage Engine | WiredTiger | + +-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | AZ | A physical region where resources use independent power supply and networks. AZs are physically isolated but interconnected through the internal network. For details, see section :ref:`Regions and AZs `. | + | | | + | | A replica set instance can be deployed in one AZ or three AZs only. If the replica set instance is deployed across three AZs, the primary, secondary, and hidden nodes are deployed in three AZs respectively for high availability. | + +-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Disk Encryption | - **Disable**: Disable the encryption function. | + | | | + | | - **Enable**: Enable the encryption function. This feature improves data security but slightly affects read/write performance. | + | | | + | | **Key Name**: Select or create a private key, which is the tenant key. | + | | | + | | .. note:: | + | | | + | | - After a DB instance is created, the disk encryption status and the key cannot be changed. Backup data stored on OBS is not encrypted. | + | | - The key cannot be disabled or deleted when being used. Otherwise, the database becomes unavailable. | + | | - For details about how to create a key, see the "Creating a CMK" section in the *Key Management Service User Guide*. | + +-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + .. table:: **Table 2** Specifications + + +---------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Parameter | Description | + +===============+=====================================================================================================================================================================================================================================================================================================+ + | Node Class | For details about the DB instance specifications, see section :ref:`DB Instance Specifications `. After a DB instance is created, you can change its CPU and memory. For details, see section :ref:`Changing the CPU or Memory of a Replica Set DB Instance `. | + +---------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Storage Type | Ultra-high I/O: uses the SSD disk type. | + +---------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Storage Space | Ranges from 10 GB to 2,000 GB. The value must be a multiple of 10. | + +---------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + .. table:: **Table 3** Network + + +-----------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Parameter | Description | + +===================================+========================================================================================================================================================================================================================================================================================================================================================================+ + | VPC | The VPC to which a DB instance belongs isolates networks for different services. It allows user to manage and configure internal networks and change network configuration, simplifying network management. You need to create or select the required VPC. For details on how to create a VPC, see section "Creating a VPC" in the *Virtual Private Cloud User Guide*. | + +-----------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Subnet | A subnet provides dedicated network resources that are logically isolated from other networks, improving network security. After a DB instance is created, you can click the DB instance name and change the private IP address assigned by the subnet to the node on the **Basic Information** page. | + | | | + | | .. note:: | + | | | + | | Changing the private IP address of a node will invalidate the previous private IP address. If an EIP is bound to the node, do not unbind the EIP during the change of the private IP address. After the change, the new private IP address is bound to the EIP. | + +-----------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Security Group | A security group controls access between DDS and other services for security. | + | | | + | | .. note:: | + | | | + | | Ensure that the security group rule you set allows clients to access DB instances. For example, select the TCP protocol with inbound direction, input the default port number **8635**, and enter a subnet IP address or select a security group that the DB instance belongs to. | + +-----------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | SSL | Secure Sockets Layer (SSL) certificates set up encrypted connections between clients and servers, preventing data from being tampered with or stolen during transmission. | + | | | + | | You can enable SSL to improve data security. After a DB instance is created, you can connect to it in SSL mode. For details, see :ref:`Connecting to a DB Instance Through a Client `. | + +-----------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + .. table:: **Table 4** Database configuration + + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Parameter | Description | + +===================================+=============================================================================================================================================================================================================================================================================================================+ + | Administrator | The default account is **rwuser**. | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Administrator Password | The password is a string of 8 to 32 characters. It must be a combination of uppercase letters, lowercase letters, digits, and special characters. You can also use the following special characters: ``~!@#%^*-_=+?`` | + | | | + | | The system cannot save you password. Keep the password secure. | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Confirm Password | The value of this parameter must be the same as the **Administrator Password**. | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Replica Set Parameter Group | The parameters in the replica set parameter group are applied to replica set instances. After a DB instance is created, you can change the parameter group of the instance. For a parameter group created by users, you can modify the parameters in the parameter group to bring out the best performance. | + | | | + | | For details, see :ref:`Parameter Group `. | + +-----------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + .. table:: **Table 5** Tag + + +-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Parameter | Description | + +===================================+===========================================================================================================================================================================================================+ + | Tags | Tags a DDS DB instance. This configuration is optional. Adding tags to DDS DB instances helps you better identify and manage them. Each DB instance can have up to 20 tags. | + | | | + | | A tag is composed of a key-value pair. | + | | | + | | - Key: Mandatory if the DB instance is going to be tagged | + | | | + | | - For each DB instance, each tag key is unique. | + | | - A tag key consists of a maximum of 36 characters. | + | | - The key can only consist of digits, letters, underscores (_), hyphens (-), and at sign (@). | + | | | + | | - Value: Optional if the DB instance is going to be tagged | + | | | + | | - The value consists of a maximum of 43 characters. | + | | - The value can only consist of digits, letters, underscores (_), hyphens (-), and at sign (@). | + | | | + | | After a DB instance is created, you can view its tag details on the **Tags** tab. In addition, you can add, modify, and delete tags for existing DB instances. For details, see :ref:`Tag `. | + +-----------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + + .. note:: + + The performance of your DB instance is determined by how you configure it during the creation. The hardware configuration items that can be selected include the class and storage space of the replica set. + +#. On the displayed page, confirm the DB instance information. + + - If you need to modify the specifications, click **Previous** to modify parameters. + - If you do not need to modify the specifications, click **Submit** to start the instance creation. + +#. After a DDS DB instance is created, you can view and manage it on the **Instance Management** page. + + - When a DB instance is being created, the status displayed in the **Status** column is **Creating**. This process takes about 15 minutes. After the creation is complete, the status changes to **Available**. + - DDS enables the automated backup policy by default. After a DB instance is created, you can modify or disable the automated backup policy. An automated full backup is immediately triggered after the creation of a DB instance. + - You can change the database port after the DB instance is created. DDS uses port 8635 by default, which is different from the default port numbers used by databases. To ensure database accessibility, you need to add the required security group rule. + +.. |image1| image:: /_static/images/en-us_image_0284275172.png diff --git a/umn/source/getting_started_with_replica_sets/index.rst b/umn/source/getting_started_with_replica_sets/index.rst new file mode 100644 index 0000000..8f646b2 --- /dev/null +++ b/umn/source/getting_started_with_replica_sets/index.rst @@ -0,0 +1,22 @@ +:original_name: dds_02_replica_set.html + +.. _dds_02_replica_set: + +Getting Started with Replica Sets +================================= + +- :ref:`Service Process ` +- :ref:`Restrictions ` +- :ref:`Creating a Replica Set Instance ` +- :ref:`Setting a Security Group ` +- :ref:`Connecting to a Replica Set Instance ` + +.. toctree:: + :maxdepth: 1 + :hidden: + + service_process + restrictions + creating_a_replica_set_instance + setting_a_security_group + connecting_to_a_replica_set_instance/index diff --git a/umn/source/getting_started_with_replica_sets/restrictions.rst b/umn/source/getting_started_with_replica_sets/restrictions.rst new file mode 100644 index 0000000..928e333 --- /dev/null +++ b/umn/source/getting_started_with_replica_sets/restrictions.rst @@ -0,0 +1,36 @@ +:original_name: dds_02_0011.html + +.. _dds_02_0011: + +Restrictions +============ + +To improve the stability and security of DB instances, there are some restrictions on the use of DDS. For details, see :ref:`Table 1 `. + +.. _dds_02_0011__en-us_topic_0105284934_table60364850123535: + +.. table:: **Table 1** Function restrictions + + +----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Operation | Restrictions | + +==============================================+======================================================================================================================================================================+ + | Connecting to a DB instance through a client | - To access a DDS DB instance which is not publicly accessible from an ECS, the instance must be in the same VPC subnet as the ECS. | + | | - By default, DDS cannot be accessed through an ECS in a different security group. You need to add an inbound rule to the DDS security group. | + | | - The default DDS port number is 8635. You can change it if you want to access DDS through another port. | + +----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Deployment | ECSs in which DB instances are deployed are not visible to you. Your applications can access the database only through an IP address and port. | + +----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Obtaining permissions of user **rwuser** | Only the **rwuser** user permissions are provided on the instance creation page. | + | | | + | | For details about the related commands, see :ref:`Which Commands are Supported or Restricted by DDS? ` | + +----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Setting database parameters | Most database parameters in the parameter groups you created can be modified. For details, see section :ref:`Editing a Parameter Group `. | + +----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Migrating data | You can use command line tools, including mongoexport and mongoimport, to migrate data. For details, see section :ref:`Migrating Data `. | + +----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Storage engine | Currently, DDS supports the WiredTiger storage engine only. | + +----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Restarting a DB instance or a node | A DDS DB instance must be restarted on the DDS console. | + +----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + | Viewing DDS backup files | You can download and view the backup files on the DDS console. For details, see section :ref:`Downloading Backup Files `. | + +----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------+ diff --git a/umn/source/getting_started_with_replica_sets/service_process.rst b/umn/source/getting_started_with_replica_sets/service_process.rst new file mode 100644 index 0000000..9cfa78a --- /dev/null +++ b/umn/source/getting_started_with_replica_sets/service_process.rst @@ -0,0 +1,33 @@ +:original_name: dds_02_0010.html + +.. _dds_02_0010: + +Service Process +=============== + +This section describes how to create a replica set instance, set a security group, and connect to a replica set instance. + +Intended Audience +----------------- + +- Users who create the DDS DB instance for the first time. +- Users who need to perform the initial configuration after a DB instance is created. +- Users who want to know how to connect to the DDS DB instances. + + +Service Process +--------------- + +The following describes the steps from creating a DB instance to using it. + + +.. figure:: /_static/images/en-us_image_0284274974.png + :alt: **Figure 1** Accessing DB instances from a public network + + **Figure 1** Accessing DB instances from a public network + + +.. figure:: /_static/images/en-us_image_0284275043.png + :alt: **Figure 2** Accessing DB instances from a private network + + **Figure 2** Accessing DB instances from a private network diff --git a/umn/source/getting_started_with_replica_sets/setting_a_security_group.rst b/umn/source/getting_started_with_replica_sets/setting_a_security_group.rst new file mode 100644 index 0000000..59f9ceb --- /dev/null +++ b/umn/source/getting_started_with_replica_sets/setting_a_security_group.rst @@ -0,0 +1,63 @@ +:original_name: dds_02_0013.html + +.. _dds_02_0013: + +Setting a Security Group +======================== + +**Scenarios** +------------- + +This section guides you on how to add a security group rule to control access from and to DDS DB instances in a security group. This document describes how to set security groups. + +Background Information +---------------------- + +You can access a DDS DB instance in either of the following ways: + +- Public network +- Internal network + +Precautions +----------- + +The default security group rule allows all outgoing data packets. ECSs and DDS DB instances can access each other in the same security group. After a security group is created, you can add security group rules to control the access from and to the DDS DB instances in the security group. + +By default, a tenant can create a maximum of 500 security group rules. An excessive number of security group rules increases the network latency of the first packet. It is recommended that you add a maximum of 50 rules for each security group. + +To access the DDS DB instances in a security group from external resources, create an inbound rule for the security group. + +**Procedure** +------------- + +#. Log in to the management console. +#. Click |image1| in the upper left corner and select a region and project. +#. Click **Service List**. Under **Network**, click **Virtual Private Cloud**. +#. In the navigation pane on the left, choose **Access Control** > **Security Groups**. +#. On the **Security Group** page, click the security group name. +#. On the **Inbound Rules** tab, click **Add Rule**. In the displayed **Add Inbound Rule** dialog box, set required parameters to add inbound rules. On the **Outbound Rules** tab, click **Add Rule**. In the displayed **Add Outbound Rule** dialog box, set required parameters to add outbound rules. +#. Add a security group rule as prompted. + + .. table:: **Table 1** Parameter description + + +-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+-----------------------+ + | Parameter | Description | Value Example | + +=======================+==================================================================================================================================================+=======================+ + | Protocol | Specifies the network protocol. Allows all traffic or supports user-defined protocols, TCP, UDP, ICMP, and SSH. | TCP | + +-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+-----------------------+ + | Port | Specifies the port allowing the access to ECSs or external devices. | 8635 | + +-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+-----------------------+ + | Source/Destination | Specifies the supported IP address and security group. | - 192.168.10.0/24 | + | | | - default | + | | - **IP address**: indicates that the security group rule takes effect in a specified IP address range. | | + | | | | + | | - xxx.xxx.xxx.xxx/32 (IPv4) | | + | | - xxx.xxx.xxx.0/24 (subnet) | | + | | - 0.0.0.0/0 (any IP address) | | + | | | | + | | - **Security group**: indicates that this rule allows all IP addresses of ECSs to access DDS DB instances in the same specified security group. | | + +-----------------------+--------------------------------------------------------------------------------------------------------------------------------------------------+-----------------------+ + +#. Click **OK**. + +.. |image1| image:: /_static/images/en-us_image_0284275018.png diff --git a/umn/source/glossary.rst b/umn/source/glossary.rst new file mode 100644 index 0000000..b09f812 --- /dev/null +++ b/umn/source/glossary.rst @@ -0,0 +1,8 @@ +:original_name: dds_glossary.html + +.. _dds_glossary: + +Glossary +======== + +For details about the glossaries in this document, see `Glossary `__. diff --git a/umn/source/index.rst b/umn/source/index.rst index b45963f..9dbfd98 100644 --- a/umn/source/index.rst +++ b/umn/source/index.rst @@ -2,3 +2,15 @@ Document Database Service - User Guide ====================================== +.. toctree:: + :maxdepth: 1 + + introduction/index + logging_in_to_the_dds_console + getting_started_with_clusters/index + getting_started_with_replica_sets/index + managing_dds_db_instances/index + monitoring/index + faqs/index + change_history + glossary diff --git a/umn/source/introduction/basic_concepts/cluster.rst b/umn/source/introduction/basic_concepts/cluster.rst new file mode 100644 index 0000000..eb85594 --- /dev/null +++ b/umn/source/introduction/basic_concepts/cluster.rst @@ -0,0 +1,39 @@ +:original_name: dds_01_0002.html + +.. _dds_01_0002: + +Cluster +======= + +DDS cluster instances consist of mongos, config, and shard nodes. The following diagram shows the node relationships. + + +.. figure:: /_static/images/en-us_image_0284275219.png + :alt: **Figure 1** Diagram of node relationships + + **Figure 1** Diagram of node relationships + +mongos +------ + +A mongos is a router for reading and writing data, providing a unified interface for accessing DB instances. + +- Each DB instance has 2 to 16 mongos. You can specify the quantity. +- A mongos reads configuration settings from configs and allocates read and write requests to shards. You can connect to a mongos directly. + +config +------ + +A config stores configuration settings for DB instances and consists of one replica set. + +- The availability of a config is the prerequisite to deploying a DB instance or modifying the instance information. +- You cannot connect to a config directly. + +shard +----- + +In the cluster instance, shards are used to store user data. + +- Each DB instance has 2 to 16 shards. You can specify the quantity. +- Each shard is deployed as a replica set to ensure data redundancy and high reliability. +- You cannot connect to a shard directly. diff --git a/umn/source/introduction/basic_concepts/database_parameter_group.rst b/umn/source/introduction/basic_concepts/database_parameter_group.rst new file mode 100644 index 0000000..b2bf9f1 --- /dev/null +++ b/umn/source/introduction/basic_concepts/database_parameter_group.rst @@ -0,0 +1,8 @@ +:original_name: dds_01_0005.html + +.. _dds_01_0005: + +Database Parameter Group +======================== + +A database parameter group is a collection of configuration parameters and values and can be applied to multiple DB instances. diff --git a/umn/source/introduction/basic_concepts/index.rst b/umn/source/introduction/basic_concepts/index.rst new file mode 100644 index 0000000..fe770a6 --- /dev/null +++ b/umn/source/introduction/basic_concepts/index.rst @@ -0,0 +1,18 @@ +:original_name: dds_01_0001.html + +.. _dds_01_0001: + +Basic Concepts +============== + +- :ref:`Cluster ` +- :ref:`Database Parameter Group ` +- :ref:`Regions and AZs ` + +.. toctree:: + :maxdepth: 1 + :hidden: + + cluster + database_parameter_group + regions_and_azs diff --git a/umn/source/introduction/basic_concepts/regions_and_azs.rst b/umn/source/introduction/basic_concepts/regions_and_azs.rst new file mode 100644 index 0000000..2b37a36 --- /dev/null +++ b/umn/source/introduction/basic_concepts/regions_and_azs.rst @@ -0,0 +1,14 @@ +:original_name: dds_01_0027.html + +.. _dds_01_0027: + +Regions and AZs +=============== + +A region is a geographic area in which resources used by DDS are located. + +Each region comprises one or more AZs and is completely isolated from other regions. AZs within the same region can communicate with one another through an internal network, while those in different regions cannot communicate with one another through an internal network. + +Public cloud data centers are deployed worldwide. DDS applies to different regions. Provisioning DDS to specific regions can better meet user requirements. For example, applications can be designed to better meet specific user requirements or comply with local laws and other demands. + +Each region contains many AZs where power and networks are physically isolated. AZs in the same region can communicate with each other over an intranet. Each AZ provides cost-effective and low-latency network connections that are unaffected by faults in other AZs. As a result, provisioning DDS in separate AZs protects your applications against local faults that occur in a single location. DDS supports the deployment of a replica set instance across three AZs. It means that the primary, secondary, and hidden nodes are deployed in three AZs for disaster recovery. diff --git a/umn/source/introduction/dds_db_instance/database_engine_and_version.rst b/umn/source/introduction/dds_db_instance/database_engine_and_version.rst new file mode 100644 index 0000000..daa5c46 --- /dev/null +++ b/umn/source/introduction/dds_db_instance/database_engine_and_version.rst @@ -0,0 +1,8 @@ +:original_name: dds_01_0014.html + +.. _dds_01_0014: + +Database Engine and Version +=========================== + +Currently, DDS is compatible with MongoDB 3.2 and 3.4 Community Edition and supports the WiredTiger storage engine, so you need to use a driver compatible with MongoDB 3.0 or later to access DDS. diff --git a/umn/source/introduction/dds_db_instance/database_status.rst b/umn/source/introduction/dds_db_instance/database_status.rst new file mode 100644 index 0000000..d8c1116 --- /dev/null +++ b/umn/source/introduction/dds_db_instance/database_status.rst @@ -0,0 +1,60 @@ +:original_name: dds_01_0026.html + +.. _dds_01_0026: + +Database Status +=============== + +DB Instance Status +------------------ + +.. table:: **Table 1** Status and description + + +-----------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+ + | Status | Description | + +=============================+===================================================================================================================================================+ + | Available | A DB instance is running properly. | + +-----------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+ + | Abnormal | A DB instance is faulty. | + +-----------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+ + | Creating | A DB instance is being created. | + +-----------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+ + | Creation failed | A DB instance fails to be created. | + +-----------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+ + | Restarting | A DB instance is being restarted because of a customer request or a modification that requires restarting it for the modification to take effect. | + +-----------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+ + | Switchover in progress | The primary and secondary nodes of a replica set instance are being switched. | + +-----------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+ + | Adding node | shards or mongos are being added to a DDS cluster instance. | + +-----------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+ + | Deleting node | The node that failed to be added is being deleted. | + +-----------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+ + | Scaling up | The storage space of instance nodes is being expanded. | + +-----------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+ + | Changing instance class | The CPU or memory of a DB instance is being changed. | + +-----------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+ + | Backing up | A backup file is being created. | + +-----------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+ + | Checking restoration | The backup of the current DB instance is being restored to a new DB instance. | + +-----------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+ + | Switching SSL | The SSL channel is being enabled or disabled. | + +-----------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+ + | Changing private IP address | The private IP address of a node is being changed. | + +-----------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+ + | Changing port | The DB instance port is being changed. | + +-----------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+ + | Changing a security group | The security group is being changed. | + +-----------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+ + +Parameter Group Status +---------------------- + +.. table:: **Table 2** Status and description + + +-----------------+-----------------------------------------------------------------------------------------------------------+ + | Status | Description | + +=================+===========================================================================================================+ + | In-Sync | A database parameter change has taken effect. | + +-----------------+-----------------------------------------------------------------------------------------------------------+ + | Pending restart | A database parameter is waiting for the DB instance to be restarted before its modification takes effect. | + +-----------------+-----------------------------------------------------------------------------------------------------------+ diff --git a/umn/source/introduction/dds_db_instance/db_instance_specifications.rst b/umn/source/introduction/dds_db_instance/db_instance_specifications.rst new file mode 100644 index 0000000..a2aacd7 --- /dev/null +++ b/umn/source/introduction/dds_db_instance/db_instance_specifications.rst @@ -0,0 +1,46 @@ +:original_name: dds_01_0024.html + +.. _dds_01_0024: + +DB Instance Specifications +========================== + +DB instance specifications are listed in the following table. + +.. note:: + + DB instance specifications vary depending on the actual environment. + +Cluster +------- + +For details about the cluster instance specifications, see :ref:`Table 1 ` and :ref:`Table 2 `. + +.. _dds_01_0024__table147993911564: + +.. table:: **Table 1** config specifications + + =============== =========== ========================== + Number of vCPUs Memory (GB) Max. Number of Connections + =============== =========== ========================== + 2 4 1000 + =============== =========== ========================== + +.. _dds_01_0024__table196721422132317: + +.. table:: **Table 2** shard and mongos specifications + + =============== =========== ========================== + Number of vCPUs Memory (GB) Max. Number of Connections + =============== =========== ========================== + 1 4 400 + 2 8 400 + 4 16 1000 + 8 32 4000 + 16 64 8000 + =============== =========== ========================== + +Replica Set +----------- + +The supported replica set specifications are the same as those of shard and mongos nodes. For details, see :ref:`Table 2 `. diff --git a/umn/source/introduction/dds_db_instance/index.rst b/umn/source/introduction/dds_db_instance/index.rst new file mode 100644 index 0000000..0107c01 --- /dev/null +++ b/umn/source/introduction/dds_db_instance/index.rst @@ -0,0 +1,18 @@ +:original_name: dds_01_0013.html + +.. _dds_01_0013: + +DDS DB Instance +=============== + +- :ref:`DB Instance Specifications ` +- :ref:`Database Engine and Version ` +- :ref:`Database Status ` + +.. toctree:: + :maxdepth: 1 + :hidden: + + db_instance_specifications + database_engine_and_version + database_status diff --git a/umn/source/introduction/index.rst b/umn/source/introduction/index.rst new file mode 100644 index 0000000..5ccf919 --- /dev/null +++ b/umn/source/introduction/index.rst @@ -0,0 +1,28 @@ +:original_name: en-us_topic_user_guide.html + +.. _en-us_topic_user_guide: + +Introduction +============ + +- :ref:`What Is DDS? ` +- :ref:`System Architecture ` +- :ref:`Basic Concepts ` +- :ref:`Product Advantages ` +- :ref:`DDS DB Instance ` +- :ref:`Typical Application Scenarios ` +- :ref:`Related Services ` +- :ref:`User Permissions ` + +.. toctree:: + :maxdepth: 1 + :hidden: + + what_is_dds + system_architecture/index + basic_concepts/index + product_advantages/index + dds_db_instance/index + typical_application_scenarios + related_services + user_permissions diff --git a/umn/source/introduction/product_advantages/ease_of_use.rst b/umn/source/introduction/product_advantages/ease_of_use.rst new file mode 100644 index 0000000..328b0cb --- /dev/null +++ b/umn/source/introduction/product_advantages/ease_of_use.rst @@ -0,0 +1,21 @@ +:original_name: dds_01_0010.html + +.. _dds_01_0010: + +Ease of Use +=========== + +Instant Availability +-------------------- + +You can create a DB instance on the management console and access DDS through an Elastic Cloud Server (ECS) to reduce the application response time. If you need to access a DB instance from your local devices, you can bind an elastic IP address (EIP) to the instance. + +High Compatibility +------------------ + +DDS is a document-oriented NoSQL database. It is fully compatible with MongoDB. + +Easy O&M +-------- + +You can easily perform restart, backup, and data recovery operations on instances using a graphical user interface (GUI) diff --git a/umn/source/introduction/product_advantages/high_reliability.rst b/umn/source/introduction/product_advantages/high_reliability.rst new file mode 100644 index 0000000..d5b6e78 --- /dev/null +++ b/umn/source/introduction/product_advantages/high_reliability.rst @@ -0,0 +1,30 @@ +:original_name: dds_01_0007.html + +.. _dds_01_0007: + +High Reliability +================ + +Failover +-------- + +The three-node replica set architecture of DDS ensures high service availability. + +In a replica set, both the primary and secondary nodes provide services. If a primary node goes down or becomes faulty, a secondary node is automatically assigned to the primary role and continues normal operation. If a secondary node is unavailable, a hidden node will take the role of the secondary to ensure high availability. + +Multi-Copy Redundancy +--------------------- + +config and shard use the three-node replica set HA architecture. Using this architecture, nodes are deployed on different servers and racks. + +Data Backups +------------ + +Data can be backed up automatically or manually. Automated backups execute full backups on DB instances. A manual backup is a full backup of DB instances initiated by users. These backups can be used to restore DB instances with a few clicks. + +Backups are stored in Object Storage Service (OBS), improving the data disaster recovery capabilities while reducing the needed storage space. When a DB instance is created, the automated backup policy is enabled by default. After the DB instance is created, an automated full backup is triggered instantly. The backup retention period is 7 days by default. You can set the backup retention period and modify the backup policy. In addition, you can initiate backup at any time according to your service requirements. Manual backups are saved until you manually delete them. + +Data Restore +------------ + +You can use backup data to restore instance data. Restored data is the same as the original data. diff --git a/umn/source/introduction/product_advantages/high_security.rst b/umn/source/introduction/product_advantages/high_security.rst new file mode 100644 index 0000000..21880eb --- /dev/null +++ b/umn/source/introduction/product_advantages/high_security.rst @@ -0,0 +1,37 @@ +:original_name: dds_01_0008.html + +.. _dds_01_0008: + +High Security +============= + +Network Isolation +----------------- + +DDS uses Virtual Private Clouds (VPCs) and network security groups to isolate your DB instances. VPCs allow you to configure IP address ranges that are allowed access to DDS. You can run your DB instances in a VPC to improve security. To further enhance database security, you can configure subnets and security groups to control access to DB instances. + +Access Control +-------------- + +VPC security groups can have rules that govern both inbound and outbound traffic of DB instances. + +Transmission Encryption +----------------------- + +DDS uses Secure Sockets Layer (SSL) to encrypt transmitted data. You can download a certificate authority (CA) from the DDS console and upload it for authentication when connecting to a database. + +Security Protection +------------------- + +DDS provides a multi-layer network protection against various malicious attacks. The protection system consists of VPCs, subnets, security groups, DDoS protection, and SSL. + +- VPC is used to isolate tenants and control access to databases. +- The SSL connection ensures data security and integrity. +- Security group rules restrict traffic to specific IP addresses and ports, securing connections between DDS and other services. + +Performance Monitoring +---------------------- + +DDS monitors instance performance, reducing O&M activities by as much as 60%. It provides real-time monitoring information about CPU utilization, disk usage, IOPS, and number of active connections, allowing you to check instance status at any time. + +In asynchronous disk scenarios, DDS provides excellent plugin performance and process memory databases. It also provides the secondary index function to meet dynamic query requirements. diff --git a/umn/source/introduction/product_advantages/index.rst b/umn/source/introduction/product_advantages/index.rst new file mode 100644 index 0000000..3fff802 --- /dev/null +++ b/umn/source/introduction/product_advantages/index.rst @@ -0,0 +1,20 @@ +:original_name: dds_01_0006.html + +.. _dds_01_0006: + +Product Advantages +================== + +- :ref:`High Reliability ` +- :ref:`High Security ` +- :ref:`Ease of Use ` +- :ref:`Scalability ` + +.. toctree:: + :maxdepth: 1 + :hidden: + + high_reliability + high_security + ease_of_use + scalability diff --git a/umn/source/introduction/product_advantages/scalability.rst b/umn/source/introduction/product_advantages/scalability.rst new file mode 100644 index 0000000..732079c --- /dev/null +++ b/umn/source/introduction/product_advantages/scalability.rst @@ -0,0 +1,16 @@ +:original_name: dds_01_0009.html + +.. _dds_01_0009: + +Scalability +=========== + +Elastic Scaling +--------------- + +DDS supports the cluster mode. You can select multiple mongos and shards. When your service changes or the current instance configuration cannot meet the application performance requirements, DDS allows you to scale up storage space of shards, or add new shards. During the expansion, your services will not be interrupted. + +On-demand Scaling +----------------- + +DDS supports the three-node replica set mode. You can scale up the storage space based on your service requirements and only pay for the resources you consumed. If the storage space of the current DB instance cannot meet your application requirements, you can expand the storage capacity. During the expansion, your services will not be interrupted. diff --git a/umn/source/introduction/related_services.rst b/umn/source/introduction/related_services.rst new file mode 100644 index 0000000..42e779c --- /dev/null +++ b/umn/source/introduction/related_services.rst @@ -0,0 +1,55 @@ +:original_name: dds_01_0016.html + +.. _dds_01_0016: + +Related Services +================ + +ECS +--- + +ECS provides DDS with elastic computing resources. DDS needs to apply for resources from ECS to build a running environment for DB instances. + +For more information, see the *Elastic Cloud Server User Guide*. + +EVS +--- + +Elastic Volume Service (EVS) provides DDS with elastic storage resources. DDS needs to apply for resources from EVS to build a running environment for DB instances. + +For more information, see the *Elastic Volume Service User Guide*. + +VPC +--- + +Virtual Private Cloud (VPC) provides DDS with elastic network resources and implements network isolation and access control for your DB instances. + +For more information, see the *Virtual Private Cloud User Guide*. + +OBS +--- + +OBS stores your DDS DB instance backup files. + +For more information, see the *Object Storage Service User Guide*. + +Cloud Eye +--------- + +Cloud Eye serves as a monitoring platform, monitoring DDS resources for you. Cloud Eye supports multiple alarm rules to ensure timely pre-warning and normal service running. + +For more information, see the *Cloud Eye User Guide*. + +IAM +--- + +Identity and Access Management (IAM) provides the permission management function for DDS. + +For more information, see the *Identity and Access Management User Guide*. + +CTS +--- + +Cloud Trace Service (CTS) records operations related to DDS, facilitating your further queries, audits, and retrievals. + +For more information, see the *Cloud Trace Service User Guide*. diff --git a/umn/source/introduction/system_architecture/cluster_architecture.rst b/umn/source/introduction/system_architecture/cluster_architecture.rst new file mode 100644 index 0000000..50fc416 --- /dev/null +++ b/umn/source/introduction/system_architecture/cluster_architecture.rst @@ -0,0 +1,23 @@ +:original_name: dds_01_0011.html + +.. _dds_01_0011: + +Cluster Architecture +==================== + +Each DDS cluster is an independent document database. A sharded cluster consists of mongos, config, and shard. + +Data read and write requests are forwarded by mongos. A mongos reads configuration settings from configs and allocates the read and write requests to shards, making it easy to cope with high concurrency scenarios. In addition, each config and shard is a replica set that provides high availability. The following figure shows the DDS cluster architecture. + + +.. figure:: /_static/images/en-us_image_0284274967.png + :alt: **Figure 1** Cluster architecture + + **Figure 1** Cluster architecture + +- Each mongos is a single node. To realize load balancing and automatic failover, you can provision multiple mongos. A single cluster supports 2 to 16 mongos. +- Each shard is a three-node replica set. A single cluster supports 2 to 16 shards. +- config is mandatory in a cluster instance. It stores instance configuration information and consists of one replica set. +- mongos and shards cannot be added using native commands but can be scaled out on the DDS console. +- You cannot connect to a config and shard. Data operations can only be delivered by connecting to mongos. +- Currently, a three-node replica set cannot be directly upgraded to a cluster. diff --git a/umn/source/introduction/system_architecture/index.rst b/umn/source/introduction/system_architecture/index.rst new file mode 100644 index 0000000..f38ca67 --- /dev/null +++ b/umn/source/introduction/system_architecture/index.rst @@ -0,0 +1,16 @@ +:original_name: dds_01_0021.html + +.. _dds_01_0021: + +System Architecture +=================== + +- :ref:`Cluster Architecture ` +- :ref:`Replica Set Architecture ` + +.. toctree:: + :maxdepth: 1 + :hidden: + + cluster_architecture + replica_set_architecture diff --git a/umn/source/introduction/system_architecture/replica_set_architecture.rst b/umn/source/introduction/system_architecture/replica_set_architecture.rst new file mode 100644 index 0000000..d72fa47 --- /dev/null +++ b/umn/source/introduction/system_architecture/replica_set_architecture.rst @@ -0,0 +1,31 @@ +:original_name: dds_01_0012.html + +.. _dds_01_0012: + +Replica Set Architecture +======================== + +A replica set consists of a set of mongod processes and provides a collection of data nodes to ensure data redundancy and reliability. + +.. note:: + + For details about the mongod process, visit https://docs.mongodb.com/v3.2/tutorial/manage-mongodb-processes/index.html. + +A replica set consists of three nodes: primary, secondary, and hidden. The three-node architecture is automatically set up, and the three nodes synchronize data with each other automatically to ensure data reliability. + +- The primary node is used to read and write requests. +- The secondary node is used to read requests. +- The hidden node is used to back up data. + +You can directly perform operations on the primary and secondary nodes. If a primary node goes down or becomes faulty, a secondary node is automatically assigned to the primary role and continues normal operation. If a secondary node is unavailable, a hidden node will take the role of the secondary to ensure high availability. The following figure shows the replica set architecture. + + +.. figure:: /_static/images/en-us_image_0284275085.png + :alt: **Figure 1** Replica set architecture + + **Figure 1** Replica set architecture + +- Supports multiple management and control tasks, such as creating instances, changing configurations, and backing up instances. The system flexibly controls and tracks tasks, and manages exceptions based on the operations delivered by users. +- Collects performance monitoring information about DB instances, including basic metrics, storage space, access requests, and the number of operations. +- Collects slow query logs and access control logs, recording DB instance running status. +- Backs up DB instance data and uploads it to OBS buckets. Currently, DDS supports automated and manual backup. Automated backups are kept for seven days by default. diff --git a/umn/source/introduction/typical_application_scenarios.rst b/umn/source/introduction/typical_application_scenarios.rst new file mode 100644 index 0000000..38419bf --- /dev/null +++ b/umn/source/introduction/typical_application_scenarios.rst @@ -0,0 +1,22 @@ +:original_name: dds_01_0015.html + +.. _dds_01_0015: + +Typical Application Scenarios +============================= + +- **Mobile Apps and Maps** + + DDS supports two-dimensional space indexes for mobile applications (Apps) and maps that have location query requests. In addition, the dynamic storage mode of DDS is suitable for storing heterogeneous data of multiple systems, meeting the requirements of this scenario. + +- **IoT** + + Internet of Things (IoT) applications generate terabytes of data and have high requirements on data write performance and low requirements on data read performance. DDS provides high write performance and shard-based DB instances to meet IoT requirements. + +- **CMS** + + Content management system (CMS) has a large amount of data and queries and the data is non-structured and diverse. DDS provides high performance Schema-free, GridFS, and shards to support CMS applications. + +- **Game Industry** + + DDS provides schema-free to meet ever-changing requirements in the gaming industry, shortening R&D periods and reducing R&D costs. diff --git a/umn/source/introduction/user_permissions.rst b/umn/source/introduction/user_permissions.rst new file mode 100644 index 0000000..174691a --- /dev/null +++ b/umn/source/introduction/user_permissions.rst @@ -0,0 +1,13 @@ +:original_name: dds_01_0017.html + +.. _dds_01_0017: + +User Permissions +================ + +DDS provides two types of user permissions by default: user management and resource management. + +- User management refers to the management of users, user groups, and user group rights. +- Resource management refers to the control operations that can be performed by users on cloud service resources. + +For details, see `Permissions `__. diff --git a/umn/source/introduction/what_is_dds.rst b/umn/source/introduction/what_is_dds.rst new file mode 100644 index 0000000..b93be38 --- /dev/null +++ b/umn/source/introduction/what_is_dds.rst @@ -0,0 +1,17 @@ +:original_name: en-us_topic_introduction.html + +.. _en-us_topic_introduction: + +What Is DDS? +============ + +Document Database Service (DDS) is compatible with MongoDB and is secure, highly available, reliable, scalable, and easy to use. It provides DB instance creation, scaling, redundancy, backup, restoration, monitoring, and alarm reporting functions with just a few clicks on the DDS console. + +DDS has the following characteristics: + +- Automatically sets up three-node replica set architecture. DDS supports fast deployment, high availability (HA) data storage, data redundancy, and failover support. +- Provides sharded cluster instances consisting of shard, mongos, and config, enabling you to easily enhance read and write performance and build a distributed DDS database system. +- Provides database backup and restoration functions on the DDS console. +- Provides performance metrics and sets alarms on any of the metrics to send you notification. You can quickly monitor instance status and identify issues at a glance. + +For details about the supported DB engines and versions, see :ref:`Database Engine and Version `. diff --git a/umn/source/logging_in_to_the_dds_console.rst b/umn/source/logging_in_to_the_dds_console.rst new file mode 100644 index 0000000..2017646 --- /dev/null +++ b/umn/source/logging_in_to_the_dds_console.rst @@ -0,0 +1,22 @@ +:original_name: dds_02_0043.html + +.. _dds_02_0043: + +Logging In to the DDS Console +============================= + +**Prerequisites** +----------------- + +You have registered an account. + +For the first time you use DDS, register an account at the official website. After the registration, your account has permissions to access the DDS service, as well as all other cloud services. + +Procedure +--------- + +#. Log in to the management console. +#. Click |image1| in the upper left corner and select a region and a project. +#. Click **Service List**. Under **Database**, click **Document Database Service** to go to the DDS console. + +.. |image1| image:: /_static/images/en-us_image_0284275118.png diff --git a/umn/source/managing_dds_db_instances/backup_and_restore/creating_a_manual_backup.rst b/umn/source/managing_dds_db_instances/backup_and_restore/creating_a_manual_backup.rst new file mode 100644 index 0000000..cea193f --- /dev/null +++ b/umn/source/managing_dds_db_instances/backup_and_restore/creating_a_manual_backup.rst @@ -0,0 +1,64 @@ +:original_name: dds_03_0007.html + +.. _dds_03_0007: + +Creating a Manual Backup +======================== + +**Scenarios** +------------- + +This section guides you on how to create a manual backup. Creating a backup for a DB instance helps ensure data can be restored if needed, ensuring data reliability. + +.. note:: + + When you delete a DB instance, its automated backups are also deleted but its manual backups are retained. + +Method 1 +-------- + +#. :ref:`Log in to the DDS console. ` +#. On the **Instance Management** page, locate an available DB instance and click **Create Backup** or choose **More** > **Create Backup**. +#. In the displayed dialog box, specify **Backup Name** and **Description** and click **OK**. + + - The manual backup name can be 4 to 64 characters long. It must start with a letter and can contain only uppercase letters, lowercase letters, digits, hyphens (-), and underscores (_). + - The description contains a maximum of 256 characters and cannot contain the carriage return character and the following special characters: >!<"&'= + +#. Check the result: + + - During the creation of a manual backup, you can query the backup status on the **Backup Management** or the **Backups & Restorations** page. The backup status is **Backing up**. The time it takes to complete the backup depends on the size of the job. + - If the manual backup is successfully created, the backup status is **Complete**. The manual backup type is **Manual** and the backup method is **Physical**. + +Method 2 +-------- + +#. :ref:`Log in to the DDS console. ` +#. In the navigation pane on the left, click **Backup Management**. +#. On the **Backup Management** page, click **Create Backup**. +#. In the displayed dialog box, specify **DB Instance Type**, **DB Instance Name**, **Backup Name** and **Description** and click **OK**. + + - Only DB instances in **Available** status can be manually backed up. + - The manual backup name can be 4 to 64 characters long. It must start with a letter and can contain only uppercase letters, lowercase letters, digits, hyphens (-), and underscores (_). + - The description contains a maximum of 256 characters and cannot contain the carriage return character and the following special characters: >!<"&'= + +#. Check the result: + + - During the creation of a manual backup, you can query the backup status on the **Backup Management** or the **Backups & Restorations** page. The backup status is **Backing up**. The time it takes to complete the backup depends on the size of the job. + - If the manual backup is successfully created, the backup status is **Complete**. The manual backup type is **Manual** and the backup method is **Physical**. + +Method 3 +-------- + +#. :ref:`Log in to the DDS console. ` +#. On the **Instance Management** page, click an available DB instance. +#. In the navigation pane on the left, click **Backups & Restorations**. +#. On the **Backups & Restorations** page, click **Create Backup**. +#. In the displayed dialog box, specify **Backup Name** and **Description** and click **OK**. + + - The manual backup name can be 4 to 64 characters long. It must start with a letter and can contain only uppercase letters, lowercase letters, digits, hyphens (-), and underscores (_). + - The description contains a maximum of 256 characters and cannot contain the carriage return character and the following special characters: >!<"&'= + +#. Check the result: + + - During the creation of a manual backup, you can query the backup status on the **Backup Management** or the **Backups & Restorations** page. The backup status is **Backing up**. The time it takes to complete the backup depends on the size of the job. + - If the manual backup is successfully created, the backup status is **Complete**. The manual backup type is **Manual** and the backup method is **Physical**. diff --git a/umn/source/managing_dds_db_instances/backup_and_restore/deleting_a_manual_backup.rst b/umn/source/managing_dds_db_instances/backup_and_restore/deleting_a_manual_backup.rst new file mode 100644 index 0000000..8746617 --- /dev/null +++ b/umn/source/managing_dds_db_instances/backup_and_restore/deleting_a_manual_backup.rst @@ -0,0 +1,43 @@ +:original_name: dds_03_0008.html + +.. _dds_03_0008: + +Deleting a Manual Backup +======================== + +**Scenarios** +------------- + +This section describes how to delete manual backups to release the storage space. + +.. important:: + + The deletion operation is irreversible. Exercise caution when performing this operation. + +Method 1 +-------- + +#. :ref:`Log in to the DDS console. ` + +#. On the **Instance Management** page, click the target DB instance. + +#. In the navigation pane on the left, click **Backups & Restorations**. + +#. On the **Backups & Restorations** page, locate the manual backup to be deleted and click **Delete**. + + Backups being used to recover instances cannot be deleted. + +#. In the displayed dialog box, click **Yes**. + +Method 2 +-------- + +#. :ref:`Log in to the DDS console. ` + +#. In the navigation pane on the left, click **Backup Management**. + +#. On the **Backup Management** page, click the **Clusters** or **Replica Sets** tab, locate the manual backup you want to delete and click **Delete** in the **Operation** column. + + Backups being used to recover instances cannot be deleted. + +#. In the displayed dialog box, click **Yes**. diff --git a/umn/source/managing_dds_db_instances/backup_and_restore/deleting_an_automated_backup.rst b/umn/source/managing_dds_db_instances/backup_and_restore/deleting_an_automated_backup.rst new file mode 100644 index 0000000..6ebe4c8 --- /dev/null +++ b/umn/source/managing_dds_db_instances/backup_and_restore/deleting_an_automated_backup.rst @@ -0,0 +1,45 @@ +:original_name: dds_03_0009.html + +.. _dds_03_0009: + +Deleting an Automated Backup +============================ + +**Scenarios** +------------- + +This section guides you on how to delete an automated backup. If the automated backup policy is disabled, DDS allows you to delete stored automated backups to release storage space. + +If the automated backup policy is enabled, DDS will delete automated backups as they expire. You cannot delete them manually. + +.. important:: + + The deletion operation is irreversible. Exercise caution when performing this operation. + +Method 1 +-------- + +#. :ref:`Log in to the DDS console. ` + +#. On the **Instance Management** page, click the target DB instance. + +#. In the navigation pane on the left, click **Backups & Restorations**. + +#. On the **Backups & Restorations** tab, locate the automated backup to be deleted and click **Delete**. + + Backups being used to recover instances cannot be deleted. + +#. In the displayed dialog box, click **Yes**. + +Method 2 +-------- + +#. :ref:`Log in to the DDS console. ` + +#. In the navigation pane on the left, click **Backup Management**. + +#. On the **Backup Management** page, click the **Clusters** or **Replica Sets** tab, locate the automated backup you want to delete and click **Delete** in the **Operation** column. + + Backups being used to recover instances cannot be deleted. + +#. In the displayed dialog box, click **Yes**. diff --git a/umn/source/managing_dds_db_instances/backup_and_restore/downloading_backup_files.rst b/umn/source/managing_dds_db_instances/backup_and_restore/downloading_backup_files.rst new file mode 100644 index 0000000..dd7db49 --- /dev/null +++ b/umn/source/managing_dds_db_instances/backup_and_restore/downloading_backup_files.rst @@ -0,0 +1,46 @@ +:original_name: en-us_topic_backup_download.html + +.. _en-us_topic_backup_download: + +Downloading Backup Files +======================== + +**Scenarios** +------------- + +This section describes how to download manual or automated backup files for local data backup or restoration. + +Procedure +--------- + +#. :ref:`Log in to the DDS console. ` + +#. In the navigation pane on the left, click **Backup Management**. + +#. On the **Backup Management** page, click the **Clusters** or **Replica Sets** tab, locate the available backup you want to download and click **Download** in the **Operation** column. + +#. Download `OBS Browser `__ and install it. + +#. Log in to the OBS Browser. + + For details on how to log in to OBS Browser, see section `Logging In to OBS Browser `__ in the *Object Storage Service User Guide*. + +#. Disable certificate verification on OBS Browser. + + For details on how to configure OBS Browser, see section `Configuring the System `__ in the *Object Storage Service User Guide*. + + .. note:: + + The OBS bucket names displayed on the **Download Backup File** page on the DDS console do not support certificate verification. Therefore, you need to disable OBS Browser certificate verification before adding external buckets and enable it after the backup files are downloaded. + +#. Add an external bucket. + + In the **Create Bucket** dialog box of OBS Browser, select **Add external bucket** and enter the bucket name displayed on **Download Backup File** of the DDS console. + + For details about how to add external buckets, see section `Adding External Buckets `__ in the *Object Storage Service User Guide*. + +#. Download the backup files. + + In the search box on the right of OBS Browser, enter the backup file name displayed on **Download Backup File** of the DDS console. + +#. After the backup file is downloaded, enable OBS Browser certificate verification. diff --git a/umn/source/managing_dds_db_instances/backup_and_restore/index.rst b/umn/source/managing_dds_db_instances/backup_and_restore/index.rst new file mode 100644 index 0000000..0d20963 --- /dev/null +++ b/umn/source/managing_dds_db_instances/backup_and_restore/index.rst @@ -0,0 +1,26 @@ +:original_name: dds_03_0006.html + +.. _dds_03_0006: + +Backup and Restore +================== + +- :ref:`Setting Automated Backup Policy ` +- :ref:`Creating a Manual Backup ` +- :ref:`Restoring a Cluster Instance from a Backup ` +- :ref:`Restoring a Replica Set Instance from a Backup ` +- :ref:`Downloading Backup Files ` +- :ref:`Deleting a Manual Backup ` +- :ref:`Deleting an Automated Backup ` + +.. toctree:: + :maxdepth: 1 + :hidden: + + setting_automated_backup_policy + creating_a_manual_backup + restoring_a_cluster_instance_from_a_backup + restoring_a_replica_set_instance_from_a_backup + downloading_backup_files + deleting_a_manual_backup + deleting_an_automated_backup diff --git a/umn/source/managing_dds_db_instances/backup_and_restore/restoring_a_cluster_instance_from_a_backup.rst b/umn/source/managing_dds_db_instances/backup_and_restore/restoring_a_cluster_instance_from_a_backup.rst new file mode 100644 index 0000000..5838697 --- /dev/null +++ b/umn/source/managing_dds_db_instances/backup_and_restore/restoring_a_cluster_instance_from_a_backup.rst @@ -0,0 +1,44 @@ +:original_name: dds_03_0042.html + +.. _dds_03_0042: + +Restoring a Cluster Instance from a Backup +========================================== + +**Scenarios** +------------- + +This section guides you on how to restore a DB instance from a backup. + +.. note:: + + Currently, DDS only supports restoring backups to a new DB instance. + +Method 1 +-------- + +#. :ref:`Log in to the DDS console. ` +#. On the **Instance Management** page, click the target cluster instance. +#. In the navigation pane on the left, click **Backups & Restorations**. +#. On the **Backups & Restorations** page, locate the target backup in the backup list and click **Restore** in the **Operation** column. In the displayed dialog box, click **OK**. +#. On the displayed page, create a DB instance using the same configurations as the backup. The new DB instance is independent from the original one. + + - You are recommended to deploy the restored DB instance in a different AZ to ensure that applications will not be adversely affected by the failure in any single AZ, improving data reliability. + - The database type, DB instance type, compatible MongoDB version, storage engine, storage type, and shard quantity must be the same as those of the original and cannot be changed. + - The quantity of mongos is 2 by default and ranges from 2 to 16. You can specify the quantity. + - The storage space is the same as that of the original instance by default. You can only increase the storage space. + - Other settings are the same as those of the original DB instance by default and can be modified. For details, see section :ref:`Creating a Cluster Instance `. + +Method 2 +-------- + +#. :ref:`Log in to the DDS console. ` +#. In the navigation pane on the left, click **Backup Management**. +#. On the **Backup Management** page, locate the backup to restore on the **Clusters** tab and click **Restore** in the **Operation** column. In the displayed dialog box, click **OK**. +#. On the displayed page, create a DB instance using the same configurations as the backup. The new DB instance is independent from the original one. + + - You are recommended to deploy the restored DB instance in a different AZ to ensure that applications will not be adversely affected by the failure in any single AZ, improving data reliability. + - The database type, DB instance type, compatible MongoDB version, storage engine, storage type, and shard quantity must be the same as those of the original and cannot be changed. + - The quantity of mongos is 2 by default and ranges from 2 to 16. You can specify the quantity. + - The storage space is the same as that of the original instance by default. You can only increase the storage space. + - Other settings are the same as those of the original DB instance by default and can be modified. For details, see section :ref:`Creating a Cluster Instance `. diff --git a/umn/source/managing_dds_db_instances/backup_and_restore/restoring_a_replica_set_instance_from_a_backup.rst b/umn/source/managing_dds_db_instances/backup_and_restore/restoring_a_replica_set_instance_from_a_backup.rst new file mode 100644 index 0000000..9ba0d76 --- /dev/null +++ b/umn/source/managing_dds_db_instances/backup_and_restore/restoring_a_replica_set_instance_from_a_backup.rst @@ -0,0 +1,42 @@ +:original_name: dds_03_0043.html + +.. _dds_03_0043: + +Restoring a Replica Set Instance from a Backup +============================================== + +**Scenarios** +------------- + +This section guides you on how to restore a replica set instance from a backup. + +.. note:: + + Currently, DDS only supports restoring backups to a new DB instance. + +Method 1 +-------- + +#. :ref:`Log in to the DDS console. ` +#. On the **Instance Management** page, click the target replica set instance. +#. In the navigation pane on the left, click **Backups & Restorations**. +#. On the **Backups & Restorations** page, locate the target backup in the backup list and click **Restore** in the **Operation** column. In the displayed dialog box, click **OK**. +#. On the displayed page, create a DB instance using the same configurations as the backup. The new DB instance is independent from the original one. + + - You are recommended to deploy the restored DB instance in a different AZ to ensure that applications will not be adversely affected by the failure in any single AZ, improving data reliability. + - The database type, DB instance type, compatible MongoDB version, storage engine, and storage type must be the same as those of the original and cannot be changed. + - The storage space is the same as that of the original instance by default. You can only increase the storage space. + - Other settings are the same as those of the original DB instance by default and can be modified. For details, see section :ref:`Creating a Replica Set Instance `. + +Method 2 +-------- + +#. :ref:`Log in to the DDS console. ` +#. In the navigation pane on the left, click **Backup Management**. +#. On the **Backup Management** page, click the **Replica Sets** tab, locate the backup to restore, and click **Restore** in the **Operation** column. In the displayed dialog box, click **OK**. +#. On the displayed page, create a DB instance using the same configurations as the backup. The new DB instance is independent from the original one. + + - You are recommended to deploy the restored DB instance in a different AZ to ensure that applications will not be adversely affected by the failure in any single AZ, improving data reliability. + - The database type, DB instance type, compatible MongoDB version, storage engine, and storage type must be the same as those of the original and cannot be changed. + - The storage space is the same as that of the original instance by default. You can only increase the storage space. + - Other settings are the same as those of the original DB instance by default and can be modified. For details, see section :ref:`Creating a Replica Set Instance `. diff --git a/umn/source/managing_dds_db_instances/backup_and_restore/setting_automated_backup_policy.rst b/umn/source/managing_dds_db_instances/backup_and_restore/setting_automated_backup_policy.rst new file mode 100644 index 0000000..d39fb18 --- /dev/null +++ b/umn/source/managing_dds_db_instances/backup_and_restore/setting_automated_backup_policy.rst @@ -0,0 +1,79 @@ +:original_name: en-us_topic_backup_restore.html + +.. _en-us_topic_backup_restore: + +Setting Automated Backup Policy +=============================== + +**Scenarios** +------------- + +DDS backs up data automatically based on the automated backup policy you set. You are advised to regularly back up data in your database. If the database becomes faulty or data is damaged, you can restore it with the backup, ensuring data reliability. + +.. important:: + + - DDS checks existing automated backup files. If the retention period of a file exceeds the backup retention period you set, DDS will delete the file. + - After the backup policy is modified, an automated backup will be triggered based on the new backup policy. The retention period of the previously generated automated backups remains unchanged. + +- Backup files are stored in OBS buckets. +- When a DB instance is created, DDS enables the automated backup policy by default. The default settings of the parameters are as follows. You can modify them after a DB instance is created. + + - Backups are retained for 7 days by default. + - The time window is in UTC by default. + - Data is backed up every day by default. + +Enabling or Modifying an Automated Backup Policy +------------------------------------------------ + +#. :ref:`Log in to the DDS console. ` + +#. On the **Instance Management** page, click the target DB instance. + +#. In the navigation pane on the left, click **Backups & Restorations**. + +#. On the **Backups & Restorations** page, click **Modify Backup Policy**. If you want to enable the automated backup policy, click |image1|. + + Retention period refers to the number of days that data is kept. You can increase the retention period to improve data reliability. + + The backup retention period can range from 1 to 732 days, with a time window of one hour. The backup cycle varies according to the retention period you have set. + + - If you set the retention period to 1 to 6 days, data is automatically backed up each day of the week. + - If you set the retention period to 7 to 732 days, you must select at least one day of the week for the backup cycle. + +#. Click **OK** to save the modification. + +#. View the backup result. + + - If the automated backup policy is enabled, an automated full backup is immediately triggered. The time it takes to complete the backup depends on the size of the job. + - If the automated backup policy is modified, an automated full backup is randomly triggered during the time window you set. The time it takes to complete the backup depends on the size of the job. + - During the creation of an automated backup, you can query the backup status on the **Backup Management** page or the **Backups & Restorations** tab. The backup status is **Backing up**. + - In the upper right corner of the backup list, click |image2| to refresh the list. The backup status changes to **Complete**. The backup type is **Automated** and the backup method is **Physical**. + +Disabling an Automated Backup Policy +------------------------------------ + +.. important:: + + Observe the following constraints when disabling the automated backup policy: + + - Your data cannot be backed up. + - If you choose to delete all the existing automated backup when disabling the automated backup policy, related restoration or download operations will fail. + +#. :ref:`Log in to the DDS console. ` + +#. On the **Instance Management** page, click the target DB instance. + +#. In the navigation pane on the left, click **Backups & Restorations**. + +#. On the **Backups & Restorations** page, click **Modify Backup Policy**. On the displayed page, click |image3| to disable the automated backup policy. + + You can determine whether to delete all automated backup files: + + - If you do not select **Delete automated backups**, all backup files within the retention period will be retained. You can manually delete them. For details, see section :ref:`Deleting an Automated Backup `. + - If you select **Delete automated backups**, all backup files within the retention period will be deleted. + +#. Click **OK**. + +.. |image1| image:: /_static/images/en-us_image_0284275158.png +.. |image2| image:: /_static/images/en-us_image_0284275185.png +.. |image3| image:: /_static/images/en-us_image_0284274973.png diff --git a/umn/source/managing_dds_db_instances/changing_db_instance_classes/changing_the_cpu_or_memory_of_a_cluster_db_instance.rst b/umn/source/managing_dds_db_instances/changing_db_instance_classes/changing_the_cpu_or_memory_of_a_cluster_db_instance.rst new file mode 100644 index 0000000..fe5b1db --- /dev/null +++ b/umn/source/managing_dds_db_instances/changing_db_instance_classes/changing_the_cpu_or_memory_of_a_cluster_db_instance.rst @@ -0,0 +1,46 @@ +:original_name: en-us_topic_0104472218.html + +.. _en-us_topic_0104472218: + +Changing the CPU or Memory of a Cluster DB Instance +=================================================== + +Scenarios +--------- + +This section guides you on how to change the CPU or memory of a cluster instance. + +.. note:: + + - A DB instance cannot be deleted when you are changing its CPU or memory. + - Instances can be both scaled up and down. + - Services will be interrupted for 5 to 10 minutes when you change DB instance CPU and memory. You are advised to perform this operation during off-peak hours. + +Changing mongos +--------------- + +#. :ref:`Log in to the DDS console. ` +#. On the **Instance Management** page, click the target cluster instance. +#. In the **Node Information** area on the **Basic Information** page, click the **mongos** tab, locate the target mongos, and click **Change Instance Class** in the **Operation** column. +#. On the displayed page, modify required parameters and click **Submit**. +#. View the DB instance CPU or memory modification result. + + - When the CPU or memory of a DB instance is being changed, the status displayed in the **Status** column is **Changing instance class**. This process takes about 10 minutes. + - In the upper right corner of the DB instance list, click |image1| to refresh the list. The instance status changes to **Available**. + - In the **Node Information** area on the **Basic Information** page, click the **mongos** tab and check whether the scaling up is successful. + +Changing shard +-------------- + +#. :ref:`Log in to the DDS console. ` +#. On the **Instance Management** page, click the target cluster instance. +#. In the **Node Information** area on the **Basic Information** page, click the **shard** tab, locate the target shard, and click **Change Instance Class** in the **Operation** column. +#. On the displayed page, modify required parameters and click **Submit**. +#. View the DB instance CPU or memory modification result. + + - When the CPU or memory of a DB instance is being changed, the status displayed in the **Status** column is **Changing instance class**. This process takes about 25 to 30 minutes. + - In the upper right corner of the DB instance list, click |image2| to refresh the list. The instance status changes to **Available**. + - Go to the **Basic Information** page of the cluster instance you scaled up, click the **shard** tab in the **Node Information** area, and check whether the scaling up is successful. + +.. |image1| image:: /_static/images/en-us_image_0284275046.png +.. |image2| image:: /_static/images/en-us_image_0284275046.png diff --git a/umn/source/managing_dds_db_instances/changing_db_instance_classes/changing_the_cpu_or_memory_of_a_replica_set_db_instance.rst b/umn/source/managing_dds_db_instances/changing_db_instance_classes/changing_the_cpu_or_memory_of_a_replica_set_db_instance.rst new file mode 100644 index 0000000..beec0f5 --- /dev/null +++ b/umn/source/managing_dds_db_instances/changing_db_instance_classes/changing_the_cpu_or_memory_of_a_replica_set_db_instance.rst @@ -0,0 +1,31 @@ +:original_name: en-us_topic_0104721795.html + +.. _en-us_topic_0104721795: + +Changing the CPU or Memory of a Replica Set DB Instance +======================================================= + +**Scenarios** +------------- + +This section guides you on how to change the CPU or memory of your replica set instance. + +.. note:: + + - A DB instance cannot be deleted when you are changing its CPU or memory. + - Instances can be both scaled up and down. + - Services will be interrupted for 5 to 10 minutes when you change DB instance CPU and memory. You are advised to perform this operation during off-peak hours. + +Procedure +--------- + +#. :ref:`Log in to the DDS console. ` +#. On the **Instance Management** page, locate the target replica set instance and choose **Change Instance Class** in the **Operation** column. +#. On the displayed page, modify required parameters and click **Submit**. +#. View the DB instance CPU or memory modification result. + + - When the CPU or memory of a DB instance is being changed, the status displayed in the **Status** column is **Changing instance class**. This process takes about 25 to 30 minutes. + - In the upper right corner of the DB instance list, click |image1| to refresh the list. The instance status changes to **Available**. + - Go to the **Basic Information** page of the replica set instance you scaled up and check whether the scaling up is successful in the **DB Information** area. + +.. |image1| image:: /_static/images/en-us_image_0284275046.png diff --git a/umn/source/managing_dds_db_instances/changing_db_instance_classes/index.rst b/umn/source/managing_dds_db_instances/changing_db_instance_classes/index.rst new file mode 100644 index 0000000..b32f4e1 --- /dev/null +++ b/umn/source/managing_dds_db_instances/changing_db_instance_classes/index.rst @@ -0,0 +1,16 @@ +:original_name: dds_08_0001.html + +.. _dds_08_0001: + +Changing DB Instance Classes +============================ + +- :ref:`Changing the CPU or Memory of a Cluster DB Instance ` +- :ref:`Changing the CPU or Memory of a Replica Set DB Instance ` + +.. toctree:: + :maxdepth: 1 + :hidden: + + changing_the_cpu_or_memory_of_a_cluster_db_instance + changing_the_cpu_or_memory_of_a_replica_set_db_instance diff --git a/umn/source/managing_dds_db_instances/db_instance_operations/deleting_a_db_instance.rst b/umn/source/managing_dds_db_instances/db_instance_operations/deleting_a_db_instance.rst new file mode 100644 index 0000000..72959bd --- /dev/null +++ b/umn/source/managing_dds_db_instances/db_instance_operations/deleting_a_db_instance.rst @@ -0,0 +1,27 @@ +:original_name: dds_03_0004.html + +.. _dds_03_0004: + +Deleting a DB instance +====================== + +**Scenarios** +------------- + +This section guides you on how to delete a DB instance no longer used to release resources. You can delete the following types of DB instances: + +- Cluster instance +- Replica set instance + +.. important:: + + - After you delete an instance, all nodes in the instance are also deleted. + - After you delete the DB instance, all data in it and all automated backups are automatically deleted and cannot be restored. Exercise caution when performing this operation. + - By default, all manual backups are retained in DDS. You can use a backup to restore a deleted instance. + +**Procedure** +------------- + +#. :ref:`Log in to the DDS console. ` +#. On the **Instance Management** page, locate the target DB instance and choose **More** > **Delete** in the **Operation** column. +#. In the displayed dialog box, click **Yes**. diff --git a/umn/source/managing_dds_db_instances/db_instance_operations/exporting_db_instance_information.rst b/umn/source/managing_dds_db_instances/db_instance_operations/exporting_db_instance_information.rst new file mode 100644 index 0000000..dd6f198 --- /dev/null +++ b/umn/source/managing_dds_db_instances/db_instance_operations/exporting_db_instance_information.rst @@ -0,0 +1,31 @@ +:original_name: dds_03_0051.html + +.. _dds_03_0051: + +Exporting DB Instance Information +================================= + +**Scenarios** +------------- + +This section guides you on how to export DB instance information for analysis. + + +Exporting DB Instance Information +--------------------------------- + +#. :ref:`Log in to the DDS console. ` +#. On the **Instance Management** page, click |image1| in the upper right corner of the instance list. +#. In the pop-up box, select the desired items and click **OK**. +#. View the .xls file exported to your local PC. + +Export the specified instance on the current page. +-------------------------------------------------- + +#. :ref:`Log in to the DDS console. ` +#. On the **Instance Management** page, click |image2| in the upper right corner of the instance list. +#. In the pop-up box, select the desired items and click **OK**. +#. View the .xls file exported to your local PC. + +.. |image1| image:: /_static/images/en-us_image_0284275079.png +.. |image2| image:: /_static/images/en-us_image_0284275307.png diff --git a/umn/source/managing_dds_db_instances/db_instance_operations/index.rst b/umn/source/managing_dds_db_instances/db_instance_operations/index.rst new file mode 100644 index 0000000..007d8c1 --- /dev/null +++ b/umn/source/managing_dds_db_instances/db_instance_operations/index.rst @@ -0,0 +1,22 @@ +:original_name: dds_03_0002.html + +.. _dds_03_0002: + +DB Instance Operations +====================== + +- :ref:`Modifying the DB Instance Name ` +- :ref:`Exporting DB Instance Information ` +- :ref:`Manually Switching the Primary and Secondary Nodes of a Replica Set ` +- :ref:`Restarting a DB Instance or a Node ` +- :ref:`Deleting a DB instance ` + +.. toctree:: + :maxdepth: 1 + :hidden: + + modifying_the_db_instance_name + exporting_db_instance_information + manually_switching_the_primary_and_secondary_nodes_of_a_replica_set + restarting_a_db_instance_or_a_node + deleting_a_db_instance diff --git a/umn/source/managing_dds_db_instances/db_instance_operations/manually_switching_the_primary_and_secondary_nodes_of_a_replica_set.rst b/umn/source/managing_dds_db_instances/db_instance_operations/manually_switching_the_primary_and_secondary_nodes_of_a_replica_set.rst new file mode 100644 index 0000000..0909854 --- /dev/null +++ b/umn/source/managing_dds_db_instances/db_instance_operations/manually_switching_the_primary_and_secondary_nodes_of_a_replica_set.rst @@ -0,0 +1,30 @@ +:original_name: dds_03_0050.html + +.. _dds_03_0050: + +Manually Switching the Primary and Secondary Nodes of a Replica Set +=================================================================== + +**Scenarios** +------------- + +A replica set consists of the primary node, secondary node, and hidden node. Primary and secondary nodes allow access from external services by providing IP addresses. Hidden nodes are only used for backing up data. When a primary node becomes faulty, the system automatically selects a new primary node to ensure high availability. In addition, DDS supports the primary/secondary switchover so you can perform switchovers in scenarios such as disaster recovery. + +.. note:: + + - You can perform a switchover when the DB instance status is **Available**, and **Changing a security group**. + - Services may be interrupted during the switchover. Ensure that your client supports reconnection. + - The longer the delay for primary/secondary synchronization, the more time is needed for a primary/secondary switchover. Therefore, if the primary to secondary synchronization delay exceeds 300s, the primary/secondary switchover is not allowed. For details about the delay for the primary/secondary synchronization, see :ref:`What Is the Time Delay for Primary/Secondary Synchronization in a Replica Set? ` + +Procedure +--------- + +#. :ref:`Log in to the DDS console. ` +#. On the **Instance Management** page, click the target replica set instance. +#. In the **Node Information** area on the **Basic Information** page, click **Switch**. +#. In the displayed dialog box, click **Yes**. +#. Check the result. + + - During the switchover process, the DB instance status changes to **Switchover in progress**. After the switchover is complete, the status is restored to **Available**. + - In the **Node Information** area, you can view the switchover result. + - After the switchover, the previous primary node becomes the secondary node. You need to reconnect to the primary node. For details, see :ref:`Connecting to a DB Instance Through a Client `. diff --git a/umn/source/managing_dds_db_instances/db_instance_operations/modifying_the_db_instance_name.rst b/umn/source/managing_dds_db_instances/db_instance_operations/modifying_the_db_instance_name.rst new file mode 100644 index 0000000..e88eac2 --- /dev/null +++ b/umn/source/managing_dds_db_instances/db_instance_operations/modifying_the_db_instance_name.rst @@ -0,0 +1,39 @@ +:original_name: dds_03_0075.html + +.. _dds_03_0075: + +Modifying the DB Instance Name +============================== + +**Scenarios** +------------- + +This section guides you on how to modify the DB instance name to identify different DB instances. + +Method 1 +-------- + +#. :ref:`Log in to the DDS console. ` +#. On the **Instance Management** page, click |image1| next to the specified DB instance name. + + - If you want to submit the change, click **OK**. The DB instance name can be 4 to 64 characters long. It must start with a letter and can contain only uppercase letters, lowercase letters, digits, hyphens (-), and underscores (_). + - If you want to cancel the change, click **Cancel**. + +#. View the change result on the **Instance Management** page. + +Method 2 +-------- + +#. :ref:`Log in to the DDS console. ` +#. On the **Instance Management** page, click the target DB instance. +#. In the **DB Information** area on the **Basic Information** page, click |image2| in the **DB Instance Name** field to change the instance name. + + - If you want to submit the change, click |image3|. The DB instance name can be 4 to 64 characters long. It must start with a letter and can contain only uppercase letters, lowercase letters, digits, hyphens (-), and underscores (_). + - If you want to cancel the change, click |image4|. + +#. View the modification result. + +.. |image1| image:: /_static/images/en-us_image_0284275220.png +.. |image2| image:: /_static/images/en-us_image_0284275009.png +.. |image3| image:: /_static/images/en-us_image_0284275286.png +.. |image4| image:: /_static/images/en-us_image_0284274981.png diff --git a/umn/source/managing_dds_db_instances/db_instance_operations/restarting_a_db_instance_or_a_node.rst b/umn/source/managing_dds_db_instances/db_instance_operations/restarting_a_db_instance_or_a_node.rst new file mode 100644 index 0000000..c2836d1 --- /dev/null +++ b/umn/source/managing_dds_db_instances/db_instance_operations/restarting_a_db_instance_or_a_node.rst @@ -0,0 +1,49 @@ +:original_name: dds_03_0003.html + +.. _dds_03_0003: + +Restarting a DB Instance or a Node +================================== + +**Scenarios** +------------- + +You may need to restart a DB instance for maintenance purposes. After modifying some parameters, you must restart the DB instance for the modifications to take effect on the management console. + +You can restart a DB instance only when its status is **Available**. + +.. important:: + + - After you restart a DB instance, services will be interrupted. Exercise caution when performing this operation. + - If you restart a DB instance, all nodes in the instance will be restarted. + +Restarting a DB Instance +------------------------ + +#. :ref:`Log in to the DDS console. ` + +#. On the **Instance Management** page, locate the target DB instance and choose **More** > **Restart** in the **Operation** column. + + Alternatively, click the target DB instance. On the displayed **Basic Information** page, click **Restart** in the upper right corner of the page. + +#. In the displayed dialog box, click **Yes**. + +#. View the restart status. + + a. On the **Instance Management** page, the instance status is **Restarting**. + b. On the **Basic Information** page, all nodes of the cluster instance cannot be restarted. + +Restarting a Node (Cluster) +--------------------------- + +#. :ref:`Log in to the DDS console. ` + +#. On the **Instance Management** page, click the target cluster instance. + +#. In the **Node Information** area on the **Basic Information** page, click **mongos**, **shard**, or **config**, locate the target node, and click **Restart**. + +#. In the displayed dialog box, click **Yes**. + +#. View the node status. + + When one node status is **Restarting**, other nodes of the instance cannot be restarted. diff --git a/umn/source/managing_dds_db_instances/index.rst b/umn/source/managing_dds_db_instances/index.rst new file mode 100644 index 0000000..1c3663f --- /dev/null +++ b/umn/source/managing_dds_db_instances/index.rst @@ -0,0 +1,32 @@ +:original_name: dds_03_0001.html + +.. _dds_03_0001: + +Managing DDS DB Instances +========================= + +- :ref:`DB Instance Operations ` +- :ref:`Managing Database Accounts ` +- :ref:`Migrating Data ` +- :ref:`Backup and Restore ` +- :ref:`Parameter Group ` +- :ref:`Storage ` +- :ref:`Changing DB Instance Classes ` +- :ref:`Security ` +- :ref:`Tag ` +- :ref:`Task Center ` + +.. toctree:: + :maxdepth: 1 + :hidden: + + db_instance_operations/index + managing_database_accounts + migrating_data + backup_and_restore/index + parameter_group/index + storage/index + changing_db_instance_classes/index + security/index + tag + task_center diff --git a/umn/source/managing_dds_db_instances/managing_database_accounts.rst b/umn/source/managing_dds_db_instances/managing_database_accounts.rst new file mode 100644 index 0000000..31891c5 --- /dev/null +++ b/umn/source/managing_dds_db_instances/managing_database_accounts.rst @@ -0,0 +1,105 @@ +:original_name: dds_03_0057.html + +.. _dds_03_0057: + +Managing Database Accounts +========================== + +Scenarios +--------- + +This section guides you through how to create a database account and change the account password to manage the instances you created. + +.. note:: + + When creating a database account for a specified DB instance, you are advised to enable the SSL connection to improve data security. + +**Prerequisites** +----------------- + +A DDS DB instance has been connected. + +- For details on how to connect to a cluster instance, see :ref:`Connecting to a DB Instance Through a Client `. +- For details on how to connect to a replica set instance, see :ref:`Connecting to a DB Instance Through a Client `. + +Account Description +------------------- + +To provide management services for DDS DB instances, users **root**, **monitor**, and **backup** are created when you create a DDS DB instance. Attempting to delete, rename, change the passwords, or change privileges for these accounts will result in errors. + +You can change the password of the database administrator **rwuser** and any accounts you create. + +Setting Password Strength for Database Accounts +----------------------------------------------- + +- The administrator password must meet the following password policy: + + - 8 to 32 characters in length + - A combination of uppercase letters, lowercase letters, digits, and special characters: ``~!@#%^*-_=+?`` + +- The DDS instance database uses comprehensive password security policies. The password of a DDS instance database account must meet the following conditions: + + - 8 to 32 characters in length + - A combination of uppercase letters, lowercase letters, digits, and special characters: ``~!@#%^*-_=+?`` + +When you create a DB instance, the system automatically checks your password strength. You can change the password as user **rwuser**. For security reasons, you are advised to set up a strong password. + +Creating an Account +------------------- + +#. Run the following command to select the admin database: + + **use admin** + +#. Run the following command to create a database account (**user1** as an example): + + **db.createUser({user: "user1", pwd: "**\ *Test_12345*\ **", passwordDigestor:"server", roles:[{role: "root", db: "admin"}]})** + + - **server**: indicates that the password is encrypted on the server. + - **Test_12345**: indicates the example new password. The password must be 8 to 32 characters in length and contain uppercase letters, lowercase letters, digits, and special characters, such as ``~@#%-_!*+=^?`` + - **roles** restricts the rights of the account. If an empty array is specified, the account does not have any permission. + +#. Check the result: + + The account is successfully created if the following information is displayed: + + .. code-block:: + + Successfully added user: { + "user" : "user1", + "passwordDigestor" : "server", + "roles" : [ + { + "role" : "root", + "db" : "admin" + } + ] + } + +Changing a Password +------------------- + +#. Run the following command to select the admin database: + + **use admin** + +#. Uses user **user1** as an example. Run the following command to change its password: + + **db.updateUser("user1", {passwordDigestor:"server",pwd:"newPasswd12#"})** + + - **server**: indicates that the password is encrypted on the server. + - **newPasswd12#**: indicates the example new password. The password must be 8 to 32 characters in length and contain uppercase letters, lowercase letters, digits, and special characters, such as ``~@#%-_!*+=^?`` + +#. Check the setting result. The password is successfully changed if the following information is displayed: + + - Cluster + + .. code-block:: + + mongos> + + - Replica set + + .. code-block:: + + replica:PRIMARY> diff --git a/umn/source/managing_dds_db_instances/migrating_data.rst b/umn/source/managing_dds_db_instances/migrating_data.rst new file mode 100644 index 0000000..81b2bc6 --- /dev/null +++ b/umn/source/managing_dds_db_instances/migrating_data.rst @@ -0,0 +1,129 @@ +:original_name: dds_03_0052.html + +.. _dds_03_0052: + +Migrating Data +============== + +**Scenarios** +------------- + +DDS supports access through EIPs by enabling public accessibility. You can also access a database through an ECS in the private network. + +Before migrating data from a MongoDB database to DDS, transfer data to a .json file using the mongoexport tool. This section guides you on how to import the data from the JSON files to DDS using the mongoimport tool on the ECS or the device that can access DDS. + +**Preparations** +---------------- + +#. An ECS or a device that can access DDS is ready for use. + + - To connect to a DDS DB instance from an ECS, you need to create and log in to the ECS. For details, see :ref:`How Can I Create and Log In to an ECS? ` + - To bind an EIP to a DB instance: + + a. Bind an EIP to a node in the DB instance. For details about how to bind an EIP to a node, see "Binding and Unbinding an EIP" in section "Cluster" or "Replica Set". + b. Ensure that your local device can access the EIP that has been bound to the DB instance. + +#. A migration tool has been installed on the prepared ECS or the device. + + For details on how to install the migration tool, see :ref:`How Can I Install a MongoDB Client? ` + + .. note:: + + The MongoDB client provides the mongoexport and mongoimport tools. + +Exporting Data +-------------- + +#. Log in to the ECS or the device that can access DDS. + +#. Use the mongoexport tool to transfer data from the source database to a .json file. + + The SSL connection is used as an example. If you select a common connection, delete **--ssl --sslAllowInvalidCertificates** from the following command. + + ./**mongoexport** **--host** ** **--\ port** ** **--\ ssl** **--sslAllowInvalidCertificates** **--type json** **--authenticationDatabase** * **-u** ** **--db** <*DB_NAME*> **--collection** <*DB_COLLECTION*> **--out** <*DB_PATH*> + + - **DB_ADDRESS** indicates the database address. + - **DB_PORT** indicates the database port. + - **AUTH_DB** indicates the database for storing DB_USER information. Generally, this value is **admin**. + - **DB_USER** indicates the database user. + - **DB_NAME** indicates the name of the database from which data will be exported. + - **DB_COLLECTION** indicates the collection of the database from which data will be exported. + - **DB_PATH** indicates the path where the .json file is located. + + Enter the database administrator password when prompted: + + .. code-block:: + + Enter password: + + The following is an example. After the command is executed, the **exportfile.json** file will be generated: + + **./mongoexport --host 192.168.1.21 --port 8635 --ssl --sslAllowInvalidCertificates --type json --authenticationDatabase admin -u rwuser --db test02 --collection Test --out /tmp/mongodb/export/exportfile.json** + +#. Check the result. + + If information similar to the following is displayed, the data is successfully exported. **x** indicates the number of exported data records. + + .. code-block:: + + exported x records + +#. Compress the exported .json file. + + **gzip exportfile.json** + + Compressing the file helps reduce the time needed to transmit all the data. The compressed file is **exportfile.json.gz**. + +Importing Data +-------------- + +#. Log in to the ECS or the device that can access DDS. + +#. Upload the data to be imported to the ECS or the device that can access DDS. + + Select an uploading method based on the OS you are using. In Linux, for example, run the following command: + + scp ** **\ @\ **:** + + - **IDENTITY_FILE** indicates the directory where the **exportfile.json.gz** file is located. The file access permission is 600. + - **REMOTE_USER** indicates the ECS OS user. + - **REMOTE_ADDRESS** indicates the ECS address. + - **REMOTE_DIR** indicates the directory of the ECS to which the **exportfile.json.gz** file is uploaded. + + In Windows, upload **exportfile.json.gz** to the ECS using file transfer tools. + +#. Decompress the package. + + **gzip** **-d** *exportfile.json.gz* + +#. Import the JSON file to the DDS database. + + The SSL connection is used as an example. If you select a common connection, delete **--ssl --sslAllowInvalidCertificates** from the following command. + + ./**mongoimport --host** <*DB_ADDRESS*> **--port** <*DB_PORT*> **--ssl --sslAllowInvalidCertificates --type json --authenticationDatabase** <*AUTH_DB*> **-u** <*DB_USER*> **--db** <*DB_NAME*> **--collection** <*DB_COLLECTION*> **--file** <*DB_PATH*> + + - **DB_ADDRESS** indicates the DB instance IP address. + - **DB_PORT** indicates the database port. + - **AUTH_DB** indicates the database that authenticates DB_USER. Generally, this value is **admin**. + - **DB_USER** indicates the account name of the database administrator. + - **DB_NAME** indicates the name of the database to which data will be imported. + - **DB_COLLECTION** indicates the collection of the database to which data will be imported. + - **DB_PATH** indicates the path where the .json file is located. + + Enter the database administrator password when prompted: + + .. code-block:: + + Enter password: + + The following is an example: + + **./mongoimport --host 192.168.1.21 --port 8635 --ssl --sslAllowInvalidCertificates --type json --authenticationDatabase admin -u rwuser --db test02 --collection Test --file /tmp/mongodb/export/exportfile.json** + +#. Check the result. + + If information similar to the following is displayed, the data is successfully imported. **x** indicates the number of imported data records. + + .. code-block:: + + imported x records diff --git a/umn/source/managing_dds_db_instances/parameter_group/changing_a_parameter_group_description.rst b/umn/source/managing_dds_db_instances/parameter_group/changing_a_parameter_group_description.rst new file mode 100644 index 0000000..2e35cd7 --- /dev/null +++ b/umn/source/managing_dds_db_instances/parameter_group/changing_a_parameter_group_description.rst @@ -0,0 +1,25 @@ +:original_name: dds_03_0044.html + +.. _dds_03_0044: + +Changing a Parameter Group Description +====================================== + +.. note:: + + The description of a default parameter group cannot be modified. + +Procedure +--------- + +#. :ref:`Log in to the DDS console. ` +#. In the navigation pane on the left, click **Parameter Group Management**. +#. On the **Parameter Group Management** page, select the **Clusters** or **Replica Sets** tab, locate the parameter group you created and click |image1| in the **Description** column. +#. Enter new description information. The parameter group description contains a maximum of 256 characters and cannot contain the carriage return character and the following special characters: >!<"&'= + + - If you want to submit the change, click |image2|. After the modification is successful, you can view the new description in the **Description** column of the parameter group list. + - If you want to cancel the change, click |image3|. + +.. |image1| image:: /_static/images/en-us_image_0284274989.png +.. |image2| image:: /_static/images/en-us_image_0284275120.png +.. |image3| image:: /_static/images/en-us_image_0284275038.png diff --git a/umn/source/managing_dds_db_instances/parameter_group/changing_associated_parameter_group.rst b/umn/source/managing_dds_db_instances/parameter_group/changing_associated_parameter_group.rst new file mode 100644 index 0000000..aa84e39 --- /dev/null +++ b/umn/source/managing_dds_db_instances/parameter_group/changing_associated_parameter_group.rst @@ -0,0 +1,40 @@ +:original_name: dds_03_0014.html + +.. _dds_03_0014: + +Changing Associated Parameter Group +=================================== + +**Scenarios** +------------- + +After a DB instance is created, you can change the parameter group associated with the DB instance to achieve optimal performance. The parameter group associated with the DB instance cannot be changed in any of the following cases: + +- A DB instance is being restarted. +- A backup file is being created. +- Cluster instance nodes are being added. +- The storage space is being expanded. +- The instance class is being changed. +- An SSL connection is being enabled or disabled. +- The port is being changed. + +Cluster +------- + +#. :ref:`Log in to the DDS console. ` +#. On the **Instance Management** page, click the target cluster instance. +#. In the **Node Information** area on the **Basic Information** page, click **mongos**, **shard**, or **config**, locate the target node, and click **Change Parameter Group**. +#. On the displayed dialog box, select the parameter group to be modified and click **OK**. + + - If the static parameter value is changed in the new parameter group, restart the instance for the modification to take effect. + - If no parameter groups are available for **New Parameter Group**, create a parameter group. For details, see section :ref:`Creating a Parameter Group `. + +Replica Set +----------- + +#. :ref:`Log in to the DDS console. ` +#. On the **Instance Management** page, locate the target replica set instance, and choose **More** > **Change Parameter Group** in the **Operation** column. +#. On the displayed dialog box, select the parameter group to be modified and click **OK**. + + - If the static parameter value is changed in the new parameter group, restart the instance for the modification to take effect. + - If no parameter groups are available for **New Parameter Group**, create a parameter group. For details, see section :ref:`Creating a Parameter Group `. diff --git a/umn/source/managing_dds_db_instances/parameter_group/comparing_two_parameter_groups.rst b/umn/source/managing_dds_db_instances/parameter_group/comparing_two_parameter_groups.rst new file mode 100644 index 0000000..2036656 --- /dev/null +++ b/umn/source/managing_dds_db_instances/parameter_group/comparing_two_parameter_groups.rst @@ -0,0 +1,24 @@ +:original_name: dds_03_0012.html + +.. _dds_03_0012: + +Comparing Two Parameter Groups +============================== + +**Scenarios** +------------- + +This section guides you on how to compare two parameter groups of the same node type and DB engine version to know their current settings. + +**Procedure** +------------- + +#. :ref:`Log in to the DDS console. ` + +#. In the navigation pane on the left, click **Parameter Group Management**. + +#. On the **Parameter Group Management** page, select the **Clusters** or **Replica Sets** tab and locate the parameter group you created and click **Compare** in the **Operation** column. + +#. In the displayed **Compare Parameter Group** dialog box, select a parameter group for **Group2** and click **OK**. + + If the settings of the two parameter groups are different, the parameter names and values of group 1 and group 2 parameter groups are displayed. If the settings are the same, no data is displayed. diff --git a/umn/source/managing_dds_db_instances/parameter_group/creating_a_parameter_group.rst b/umn/source/managing_dds_db_instances/parameter_group/creating_a_parameter_group.rst new file mode 100644 index 0000000..9075040 --- /dev/null +++ b/umn/source/managing_dds_db_instances/parameter_group/creating_a_parameter_group.rst @@ -0,0 +1,43 @@ +:original_name: en-us_topic_parameter_group.html + +.. _en-us_topic_parameter_group: + +Creating a Parameter Group +========================== + +**Scenarios** +------------- + +DB parameter groups act as a container for engine configuration values that are applied to one or more DB instances. This section guides you on how to create a parameter group to manage your DB instance configurations. + +.. note:: + + - DDS does not share parameter group quotas with RDS. + - Each account can create up to 100 DDS parameter groups for the cluster and replica set instances to share. + +Cluster +------- + +#. :ref:`Log in to the DDS console. ` +#. In the navigation pane on the left, click **Parameter Group Management**. +#. On the **Parameter Group Management** page, click **Create Parameter Group**. +#. Select a DB engine version from the **DB Engine Version** drop-down list, **Cluster** for **DB Instance Type**, specify **Node Type**, **Parameter Group Name**, and **Description**, and then click **OK**. + + - **Node Type**: specifies the node type that this parameter group will apply to. For example, to create a parameter group applying to config, select **config**. + - **Parameter Group Name**: specifies the parameter group name, which is a string of 1 to 64 characters composed of only letters (case-sensitive), digits, hyphens (-), underscores (_), and periods (.). + - **Description**: contains a maximum of 256 characters and cannot contain the carriage return character and the following special characters: >!<"&'= + +#. On the **Parameter Group Management** page, view and manage parameter groups on the **Clusters** tab. + +Replica Set +----------- + +#. :ref:`Log in to the DDS console. ` +#. In the navigation pane on the left, click **Parameter Group Management**. +#. On the **Parameter Group Management** page, click **Create Parameter Group**. +#. Select a DB engine version from the **DB Engine Version** drop-down list, **Replica set** for **DB Instance Type**, specify **Parameter Group Name** and **Description**, and then click **OK**. + + - **Parameter Group Name**: specifies the parameter group name, which is a string of 1 to 64 characters composed of only letters (case-sensitive), digits, hyphens (-), underscores (_), and periods (.). + - **Description**: contains a maximum of 256 characters and cannot contain the carriage return character and the following special characters: >!<"&'= + +#. On the **Parameter Group Management** page, view and manage parameter groups on the **Replica Sets** tab. diff --git a/umn/source/managing_dds_db_instances/parameter_group/deleting_a_parameter_group.rst b/umn/source/managing_dds_db_instances/parameter_group/deleting_a_parameter_group.rst new file mode 100644 index 0000000..7e6337f --- /dev/null +++ b/umn/source/managing_dds_db_instances/parameter_group/deleting_a_parameter_group.rst @@ -0,0 +1,26 @@ +:original_name: dds_03_0016.html + +.. _dds_03_0016: + +Deleting a Parameter Group +========================== + +**Scenarios** +------------- + +This section guides you on how to delete a parameter group. The following parameter groups cannot be deleted. + +- Default parameter groups +- Parameter groups associated with DB instances + +.. important:: + + Deleted parameter groups cannot be restored. Exercise caution when performing this operation. + +Procedure +--------- + +#. :ref:`Log in to the DDS console. ` +#. In the navigation pane on the left, click **Parameter Group Management**. +#. On the **Parameter Group Management** page, select the **Clusters** or **Replica Sets** tab, locate the parameter group you want to delete and choose **More** > **Delete** in the **Operation** column. +#. In the displayed dialog box, click **Yes**. diff --git a/umn/source/managing_dds_db_instances/parameter_group/editing_a_parameter_group.rst b/umn/source/managing_dds_db_instances/parameter_group/editing_a_parameter_group.rst new file mode 100644 index 0000000..1c6ddd0 --- /dev/null +++ b/umn/source/managing_dds_db_instances/parameter_group/editing_a_parameter_group.rst @@ -0,0 +1,43 @@ +:original_name: en-us_topic_configuration.html + +.. _en-us_topic_configuration: + +Editing a Parameter Group +========================= + +**Scenarios** +------------- + +This section guides you on how to edit parameters in the parameter groups that you have created to meet your service requirements and achieve optimal performance. + +.. note:: + + Default parameter groups are unchangeable. You can only view them by clicking their names. If inappropriate settings of user-created parameter groups lead to a database reboot failure, you can refer to the settings of the default parameter groups to reset them. + +Procedure +--------- + +#. :ref:`Log in to the DDS console. ` + +#. In the navigation pane on the left, click **Parameter Group Management**. + +#. On the **Parameter Group Management** page, select the **Clusters** or **Replica Sets** tab and click the parameter group you created. + +#. Modify the required parameters. + + Related parameters are described as follows: + + - For details on parameter descriptions, visit `MongoDB official website `__. + - The default value of the **net.maxIncomingConnections** parameter varies according to DB instance specifications. Therefore, this parameter is set to **default** before being specified. + + Possible operations are as follows: + + - If you want to save the modifications, click **Save**. + - If you want to cancel the modifications, click **Cancel**. + - If you want to preview the modifications, click **Preview**. + + .. note:: + + For details on the description of parameter group status, see section :ref:`Database Status `. + + After modifying a parameter, you need to view the associated instance status in the instance list. If **Pending restart** is displayed, you need to restart the instance for the modification to take effect. diff --git a/umn/source/managing_dds_db_instances/parameter_group/index.rst b/umn/source/managing_dds_db_instances/parameter_group/index.rst new file mode 100644 index 0000000..23a9460 --- /dev/null +++ b/umn/source/managing_dds_db_instances/parameter_group/index.rst @@ -0,0 +1,28 @@ +:original_name: dds_03_0010.html + +.. _dds_03_0010: + +Parameter Group +=============== + +- :ref:`Creating a Parameter Group ` +- :ref:`Editing a Parameter Group ` +- :ref:`Comparing Two Parameter Groups ` +- :ref:`Replicating a Parameter Group ` +- :ref:`Changing Associated Parameter Group ` +- :ref:`Resetting a Parameter Group ` +- :ref:`Changing a Parameter Group Description ` +- :ref:`Deleting a Parameter Group ` + +.. toctree:: + :maxdepth: 1 + :hidden: + + creating_a_parameter_group + editing_a_parameter_group + comparing_two_parameter_groups + replicating_a_parameter_group + changing_associated_parameter_group + resetting_a_parameter_group + changing_a_parameter_group_description + deleting_a_parameter_group diff --git a/umn/source/managing_dds_db_instances/parameter_group/replicating_a_parameter_group.rst b/umn/source/managing_dds_db_instances/parameter_group/replicating_a_parameter_group.rst new file mode 100644 index 0000000..bf18430 --- /dev/null +++ b/umn/source/managing_dds_db_instances/parameter_group/replicating_a_parameter_group.rst @@ -0,0 +1,24 @@ +:original_name: dds_03_0013.html + +.. _dds_03_0013: + +Replicating a Parameter Group +============================= + +**Scenarios** +------------- + +This section guides you on how to replicate a parameter group you created and assign it a name different from that of original group. + +Procedure +--------- + +#. :ref:`Log in to the DDS console. ` +#. In the navigation pane on the left, click **Parameter Group Management**. +#. On the **Parameter Group Management** page, select the **Clusters** or **Replica Sets** tab, locate the parameter group you want to replicate and click **Replicate** in the **Operation** column. +#. Enter the new parameter group name and description and click **OK**. + + - **Parameter Group Name**: specifies the parameter group name, which is a string of 1 to 64 characters composed of only letters (case-sensitive), digits, hyphens (-), underscores (_), and periods (.). + - **Description**: contains a maximum of 256 characters and cannot contain the carriage return character and the following special characters: >!<"&'= + +#. After the creation is complete, you can manage the parameter group in the parameter group list on the corresponding tab. diff --git a/umn/source/managing_dds_db_instances/parameter_group/resetting_a_parameter_group.rst b/umn/source/managing_dds_db_instances/parameter_group/resetting_a_parameter_group.rst new file mode 100644 index 0000000..00efe08 --- /dev/null +++ b/umn/source/managing_dds_db_instances/parameter_group/resetting_a_parameter_group.rst @@ -0,0 +1,23 @@ +:original_name: dds_03_0015.html + +.. _dds_03_0015: + +Resetting a Parameter Group +=========================== + +**Scenarios** +------------- + +This section guides you on how to reset all parameters in a parameter group you create to the default settings as needed. + +.. important:: + + Resetting the parameter group will restore the default values. Exercise caution when performing this operation. + +Procedure +--------- + +#. :ref:`Log in to the DDS console. ` +#. In the navigation pane on the left, click **Parameter Group Management**. +#. On the **Parameter Group Management** page, select the **Clusters** or **Replica Sets** tab, locate the parameter group you want to reset and choose **More** > **Reset** in the **Operation** column. +#. In the displayed dialog box, click **Yes**. diff --git a/umn/source/managing_dds_db_instances/security/changing_a_security_group.rst b/umn/source/managing_dds_db_instances/security/changing_a_security_group.rst new file mode 100644 index 0000000..79a127b --- /dev/null +++ b/umn/source/managing_dds_db_instances/security/changing_a_security_group.rst @@ -0,0 +1,31 @@ +:original_name: en-us_topic_change_security_group.html + +.. _en-us_topic_change_security_group: + +Changing a Security Group +========================= + +**Scenarios** +------------- + +This section guides you on how to change the security group of a DB instance. If any of the following operations is in progress, do not change the security group: + +- Adding nodes +- Migrating data + +Procedure +--------- + +#. :ref:`Log in to the DDS console. ` +#. On the **Instance Management** page, click the target DB instance. +#. In the navigation pane on the left, choose **Connections**. +#. In the **Security Group** area, click |image1| to select the security group to which the DB instance belongs. + + - If you want to submit the change, click |image2|. This process takes about 1 to 3 minutes. + - If you want to cancel the change, click |image3|. + +#. View the modification result. + +.. |image1| image:: /_static/images/en-us_image_0284275300.png +.. |image2| image:: /_static/images/en-us_image_0284275122.png +.. |image3| image:: /_static/images/en-us_image_0284275119.png diff --git a/umn/source/managing_dds_db_instances/security/changing_the_database_port.rst b/umn/source/managing_dds_db_instances/security/changing_the_database_port.rst new file mode 100644 index 0000000..bf0bd95 --- /dev/null +++ b/umn/source/managing_dds_db_instances/security/changing_the_database_port.rst @@ -0,0 +1,39 @@ +:original_name: en-us_topic_change_database_port.html + +.. _en-us_topic_change_database_port: + +Changing the Database Port +========================== + +**Scenarios** +------------- + +This section guides you on how to modify the database port to ensure system security. The database port cannot be changed when the instance is in any of the following statuses: + +- Restarting +- Adding nodes +- Switching SSL +- Changing instance class +- Deleting node + +Procedure +--------- + +#. :ref:`Log in to the DDS console. ` + +#. On the **Instance Management** page, click the target DB instance. + +#. In the navigation pane on the left, choose **Connections**. + +#. In the **Basic Information** area, click |image1| to right of the **Database Port** field to modify the database port. + + The database port range is 2100 to 9500. + + - If you want to submit the change, click |image2|. This process takes about 1 to 5 minutes. + - If you want to cancel the change, click |image3|. + +#. View the modification result. + +.. |image1| image:: /_static/images/en-us_image_0284275296.png +.. |image2| image:: /_static/images/en-us_image_0284274943.png +.. |image3| image:: /_static/images/en-us_image_0284275268.png diff --git a/umn/source/managing_dds_db_instances/security/index.rst b/umn/source/managing_dds_db_instances/security/index.rst new file mode 100644 index 0000000..59a0834 --- /dev/null +++ b/umn/source/managing_dds_db_instances/security/index.rst @@ -0,0 +1,18 @@ +:original_name: dds_03_0019.html + +.. _dds_03_0019: + +Security +======== + +- :ref:`Resetting the Administrator Password ` +- :ref:`Changing the Database Port ` +- :ref:`Changing a Security Group ` + +.. toctree:: + :maxdepth: 1 + :hidden: + + resetting_the_administrator_password + changing_the_database_port + changing_a_security_group diff --git a/umn/source/managing_dds_db_instances/security/resetting_the_administrator_password.rst b/umn/source/managing_dds_db_instances/security/resetting_the_administrator_password.rst new file mode 100644 index 0000000..9d8f07b --- /dev/null +++ b/umn/source/managing_dds_db_instances/security/resetting_the_administrator_password.rst @@ -0,0 +1,42 @@ +:original_name: en-us_topic_reset_password.html + +.. _en-us_topic_reset_password: + +Resetting the Administrator Password +==================================== + +**Scenarios** +------------- + +You are advised to change administrator passwords periodically to prevent password cracking, ensuring system security. You cannot reset the administrator password under the following circumstances: + +- Restarting +- Adding node +- Switching SSL +- Changing port +- Changing instance class +- Deleting node + +Method 1 +-------- + +#. :ref:`Log in to the DDS console. ` + +#. On the **Instance Management** page, locate the target DB instance and choose **More** > **Reset Password** in the **Operation** column. + +#. Enter and confirm the new administrator password and click **OK**. + + The password is a string of 8 to 32 characters. It must be a combination of uppercase letters, lowercase letters, digits, and special characters. You can also use the following special characters: ``~!@#%^*-_=+?`` + +Method 2 +-------- + +#. :ref:`Log in to the DDS console. ` + +#. On the **Instance Management** page, click the target DB instance. + +#. In the **DB Information** area on the **Basic Information** page, click **Reset Password** to the right of the **Administrator** field. + +#. Enter and confirm the new administrator password and click **OK**. + + The password is a string of 8 to 32 characters. It must be a combination of uppercase letters, lowercase letters, digits, and special characters. You can also use the following special characters: ``~!@#%^*-_=+?`` diff --git a/umn/source/managing_dds_db_instances/storage/adding_cluster_instance_nodes.rst b/umn/source/managing_dds_db_instances/storage/adding_cluster_instance_nodes.rst new file mode 100644 index 0000000..97970b8 --- /dev/null +++ b/umn/source/managing_dds_db_instances/storage/adding_cluster_instance_nodes.rst @@ -0,0 +1,57 @@ +:original_name: en-us_topic_increase_nodes.html + +.. _en-us_topic_increase_nodes: + +Adding Cluster Instance Nodes +============================= + +**Scenarios** +------------- + +This section guides you on how to add nodes to a DB instance. + +.. note:: + + - You can add nodes when the instance status is **Available**, **Deleting backup**, or **Checking restoration**. + - A DB instance cannot be deleted when one or more nodes are being added. + +Add mongos +---------- + +#. :ref:`Log in to the DDS console. ` + +#. On the **Instance Management** page, click the target cluster instance. + +#. On the **mongos** tab in the **Node Information** area, click **Add mongos**. + +#. On the displayed page, specify **Node Class**, **mongos Quantity**, and **Parameter Group**. Then, click **Submit**. + + A cluster instance of Community Edition supports a maximum of 16 mongos nodes. + +#. View the result of adding nodes. + + - This process takes about 10 to 15 minutes. The status of the DB instance in the instance list is **Adding node**. + - In the upper right corner of the DB instance list, click |image1| to refresh the list. The instance status changes to **Available**. + - On the **mongos** tab in the **Node Information** area, view the information about the node you added. + - If the mongos fail to be added, you can revert them in batches or delete them one by one. For details, see section :ref:`Reverting Cluster Instance Nodes `. + +Add shard +--------- + +#. :ref:`Log in to the DDS console. ` +#. On the **Instance Management** page, click the target cluster instance. +#. On the **shard** tab in the **Node Information** area, click **Add shard**. +#. On the displayed page, specify **Node Class**, **Storage Space**, **shard Quantity**, and **Parameter Group**. Then, click **Submit**. + + - The storage space you applied for will contain the system overhead required for inode, reserved block, and database operation. The storage space must be an integer multiple of 10. + - A cluster instance of Community Edition supports a maximum of 16 shard nodes. + +#. View the result of adding nodes. + + - This process takes about 10 to 15 minutes. The status of the DB instance in the instance list is **Adding node**. + - In the upper right corner of the DB instance list, click |image2| to refresh the list. The instance status changes to **Available**. + - On the **shard** tab in the **Node Information** area, view the information about the node you added. + - If the shards fail to be added, you can revert them in batches or delete them one by one. For details, see section :ref:`Reverting Cluster Instance Nodes `. + +.. |image1| image:: /_static/images/en-us_image_0284275075.png +.. |image2| image:: /_static/images/en-us_image_0284275075.png diff --git a/umn/source/managing_dds_db_instances/storage/index.rst b/umn/source/managing_dds_db_instances/storage/index.rst new file mode 100644 index 0000000..5077a7f --- /dev/null +++ b/umn/source/managing_dds_db_instances/storage/index.rst @@ -0,0 +1,18 @@ +:original_name: dds_03_0017.html + +.. _dds_03_0017: + +Storage +======= + +- :ref:`Adding Cluster Instance Nodes ` +- :ref:`Reverting Cluster Instance Nodes ` +- :ref:`Scaling Up Storage Space ` + +.. toctree:: + :maxdepth: 1 + :hidden: + + adding_cluster_instance_nodes + reverting_cluster_instance_nodes + scaling_up_storage_space diff --git a/umn/source/managing_dds_db_instances/storage/reverting_cluster_instance_nodes.rst b/umn/source/managing_dds_db_instances/storage/reverting_cluster_instance_nodes.rst new file mode 100644 index 0000000..2a69474 --- /dev/null +++ b/umn/source/managing_dds_db_instances/storage/reverting_cluster_instance_nodes.rst @@ -0,0 +1,35 @@ +:original_name: dds_03_0018.html + +.. _dds_03_0018: + +Reverting Cluster Instance Nodes +================================ + +Scenarios +--------- + +This section guides you on how to revert nodes that fail to be added. + +Reverting Nodes in Batches +-------------------------- + +#. :ref:`Log in to the DDS console. ` + +#. On the **Instance Management** page, locate the cluster instance to which nodes fail to be added and choose **More** > **Revert** in the **Operation** column. + +#. In the displayed dialog box, click **Yes**. + + During reversal, the node status is **Deleting node**. This process takes about 1 to 3 minutes. + +Deleting a Single Node +---------------------- + +#. :ref:`Log in to the DDS console. ` + +#. On the **Instance Management** page, click the target cluster instance to which the node fails to be added. + +#. In the **Node Information** area on the **Basic Information** tab, click the **mongos** or **shard** tab, locate the mongos or shard that fail to be added, and choose **More** > **Delete**. + +#. In the displayed dialog box, click **Yes**. + + During deletion, the node status is **Deleting node**. This process takes about 1 to 3 minutes. diff --git a/umn/source/managing_dds_db_instances/storage/scaling_up_storage_space.rst b/umn/source/managing_dds_db_instances/storage/scaling_up_storage_space.rst new file mode 100644 index 0000000..9169ca8 --- /dev/null +++ b/umn/source/managing_dds_db_instances/storage/scaling_up_storage_space.rst @@ -0,0 +1,58 @@ +:original_name: en-us_topic_increase_storage.html + +.. _en-us_topic_increase_storage: + +Scaling Up Storage Space +======================== + +**Scenarios** +------------- + +This section guides you on how to scale up the storage space of a DB instance to suit your service requirements. + +.. note:: + + - You can scale up a DB instance a maximum of eight times. + - You cannot scale up a DB instance in **Creating**, **Changing instance class**, **Adding node**, or **Deleting node** status. + - You cannot scale down storage space. + - If you scale up a DB instance with disks encrypted, the expanded storage space will be encrypted using the original encryption key. + - You cannot scale up the storage space of a config for the cluster instances. + +Cluster +------- + +#. :ref:`Log in to the DDS console. ` + +#. On the **Instance Management** page, click the target cluster instance. + +#. In the **Node Information** area on the **Basic Information** page, click the **shard** tab, locate the target shard, and click **Scale Storage Space** in the **Operation** column. + +#. On the displayed page, specify the desired storage space, and click **Submit**. + + You must add a minimum of 10 GB each time you scale up, and only multiples of 10 GB are allowed. The maximum amount of storage space is 1,000 GB. + +#. Check the scaling-up result. + + - This process takes about 3 to 5 minutes. The status of the DB instance in the instance list is **Scaling up**. + - In the upper right corner of the DB instance list, click |image1| to refresh the list. The instance status changes to **Available**. + - In the **Node Information** area on the **Basic Information** page, click the **shard** tab and check whether the scaling up is successful. + +Replica Set +----------- + +#. :ref:`Log in to the DDS console. ` + +#. On the **Instance Management** page, locate the target replica set instance and click **Scale Storage Space** in the **Operation** column. + +#. On the displayed page, specify the desired storage space, and click **Submit**. + + You must add a minimum of 10 GB each time you scale up, and only multiples of 10 GB are allowed. The maximum amount of storage space is 2,000 GB. + +#. Check the scaling-up result. + + - This process takes about 3 to 5 minutes. The status of the DB instance in the instance list is **Scaling up**. + - In the upper right corner of the DB instance list, click |image2| to refresh the list. The instance status changes to **Available**. + - In the **Storage Space** area on the **Basic Information** page, check whether the scaling up is successful. + +.. |image1| image:: /_static/images/en-us_image_0284275046.png +.. |image2| image:: /_static/images/en-us_image_0284275173.png diff --git a/umn/source/managing_dds_db_instances/tag.rst b/umn/source/managing_dds_db_instances/tag.rst new file mode 100644 index 0000000..42f7300 --- /dev/null +++ b/umn/source/managing_dds_db_instances/tag.rst @@ -0,0 +1,67 @@ +:original_name: dds_03_0023.html + +.. _dds_03_0023: + +Tag +=== + +**Scenarios** +------------- + +Tag Management Service (TMS) enables you to use tags on the management console to manage resources. TMS works with other cloud services to manage tags. TMS manages tags globally and other cloud services manage their own tags. + +Adding tags to DDS DB instances helps you better identify and manage them. A DB instance can be tagged during or after it is created. + +- You are advised to set predefined tags on the TMS console. +- A tag consists of a key and value. You can add only one value for each key. For details about the naming rules of tag keys and tag values, see :ref:`Table 1 `. +- Each DB instance can have up to 20 tags. + +.. _dds_03_0023__table197401426182516: + +.. table:: **Table 1** Naming rules + + +-----------------------+--------------------------------------------------------------------------------------------------+-----------------------+ + | Parameter | Requirement | Example | + +=======================+==================================================================================================+=======================+ + | Tag key | - Cannot be left blank. | Organization | + | | - For each DB instance, each tag key is unique. | | + | | - Consists of a maximum of 36 characters. | | + | | - The key can only consist of digits, letters, underscores (_), hyphens (-), and at sign (@). | | + +-----------------------+--------------------------------------------------------------------------------------------------+-----------------------+ + | Tag value | - Can be empty. | dds_01 | + | | - Consists of a maximum of 43 characters. | | + | | - The value can only consist of digits, letters, underscores (_), hyphens (-), and at sign (@). | | + +-----------------------+--------------------------------------------------------------------------------------------------+-----------------------+ + +Adding a Tag +------------ + +#. :ref:`Log in to the DDS console. ` +#. On the **Instance Management** page, click the target DB instance. +#. In the navigation pane on the left, click **Tags**. +#. On the **Tags** page, click **Add Tag**. In the displayed dialog box, enter a tag key and value, and click **OK**. +#. View and manage tags on the **Tags** page. + +Editing a Tag +------------- + +#. :ref:`Log in to the DDS console. ` + +#. On the **Instance Management** page, click the target DB instance. + +#. In the navigation pane on the left, click **Tags**. + +#. On the **Tags** page, locate the tag to be edited and click **Edit** in the **Operation** column. In the displayed dialog box, change the tag value and click **OK**. + + Only the tag value can be edited when editing a tag. + +#. View and manage tags on the **Tags** page. + +Deleting a Tag +-------------- + +#. :ref:`Log in to the DDS console. ` +#. On the **Instance Management** page, click the target DB instance. +#. In the navigation pane on the left, click **Tags**. +#. On the **Tags** page, locate the tag to be deleted and click **Delete** in the **Operation** column. In the displayed dialog box, click **Yes**. +#. After a tag has been deleted, it will not be displayed on the **Tags** page. diff --git a/umn/source/managing_dds_db_instances/task_center.rst b/umn/source/managing_dds_db_instances/task_center.rst new file mode 100644 index 0000000..9bd5049 --- /dev/null +++ b/umn/source/managing_dds_db_instances/task_center.rst @@ -0,0 +1,37 @@ +:original_name: dds_03_0040.html + +.. _dds_03_0040: + +Task Center +=========== + +**Scenarios** +------------- + +This section describes how to view the progress and result of asynchronous tasks on the **Task Center** page. + +Currently, only the following tasks can be viewed: + +- Creating a cluster instance +- Creating a replica set instance +- Scaling up the storage space for a shard node of a cluster instance +- Scaling up the storage space of a replica set instance + +.. note:: + + Tasks that fail to be executed will be retained for seven days by default. + +Procedure +--------- + +#. :ref:`Log in to the DDS console. ` + +#. In the navigation pane on the left, click **Task Center**. + +#. On the **Task Center** page, locate the target task and click |image1| to expand its details. + + To identify the target task, you can use the task name and DB instance name/ID or select task status or types in the drop-down list in the upper right corner. + +#. View the execution progress and result of the task. + +.. |image1| image:: /_static/images/en-us_image_0284274979.png diff --git a/umn/source/monitoring/error_log.rst b/umn/source/monitoring/error_log.rst new file mode 100644 index 0000000..470afef --- /dev/null +++ b/umn/source/monitoring/error_log.rst @@ -0,0 +1,27 @@ +:original_name: en-us_topic_error_log.html + +.. _en-us_topic_error_log: + +Error Log +========= + +DDS log management allows you to view database-level logs, including warning- and error-level logs generated during database running, which help you analyze system problems. + +Procedure +--------- + +#. :ref:`Log in to the DDS console. ` +#. On the **Instance Management** page, click the target DB instance. +#. In the navigation pane on the left, click **Error Logs**. +#. On the displayed page, click **Error Logs**. Then, view the log details. + + - Log records of different node types of a cluster instance in batches + + - If you select **All nodes**, the logs of all nodes in the cluster instance are displayed. + - If you select **All mongos**, the logs of all mongos in the cluster instance are displayed. + - If you select **All shards**, the logs of all shards in the cluster instance are displayed. + - If you select **All configs**, the logs of all configs in the cluster instance are displayed. + + - Log records of all nodes of a replica set instance + - Log records of a node in different time periods + - Time, levels, and descriptions of the logs diff --git a/umn/source/monitoring/index.rst b/umn/source/monitoring/index.rst new file mode 100644 index 0000000..e598bd6 --- /dev/null +++ b/umn/source/monitoring/index.rst @@ -0,0 +1,20 @@ +:original_name: dds_03_0024.html + +.. _dds_03_0024: + +Monitoring +========== + +- :ref:`Interconnected with Cloud Eye ` +- :ref:`Interconnecting with CTS ` +- :ref:`Error Log ` +- :ref:`Slow Query Log ` + +.. toctree:: + :maxdepth: 1 + :hidden: + + interconnected_with_cloud_eye/index + interconnecting_with_cts/index + error_log + slow_query_log diff --git a/umn/source/monitoring/interconnected_with_cloud_eye/dds_metrics.rst b/umn/source/monitoring/interconnected_with_cloud_eye/dds_metrics.rst new file mode 100644 index 0000000..10bd0cc --- /dev/null +++ b/umn/source/monitoring/interconnected_with_cloud_eye/dds_metrics.rst @@ -0,0 +1,205 @@ +:original_name: dds_03_0026.html + +.. _dds_03_0026: + +DDS Metrics +=========== + +Cluster +------- + +- :ref:`Table 1 ` lists the DB instance monitoring metrics. + + .. _dds_03_0026__table40856249142242: + + .. table:: **Table 1** DB instance monitoring metrics + + ======================================= ======= + Metrics Unit + ======================================= ======= + COMMAND Statements per Second Count/s + DELETE Statements per Second Count/s + INSERT Statements per Second Count/s + QUERY Statements per Second Count/s + UPDATE Statements per Second Count/s + GETMORE Statements per Second Count/s + Chunks of Shard 1 Count + Chunks of Shard 2 Count + Chunks of Shard 3 Count + Chunks of Shard 4 Count + Chunks of Shard 5 Count + Chunks of Shard 6 Count + Chunks of Shard 7 Count + Chunks of Shard 8 Count + Chunks of Shard 9 Count + Chunks of Shard 10 Count + Chunks of Shard 11 Count + Chunks of Shard 12 Count + Active Instance Connections Count + Chunk Migration Failures in Last 24 hrs Count + ======================================= ======= + +- The monitoring metrics of the primary nodes in the config's and shard's replica sets are as follows: + + - :ref:`Table 2 ` lists the ECS monitoring metrics. + + - + + .. _dds_03_0026__table884454374119: + + .. table:: **Table 2** ECS monitoring metrics + + =========================== ======= + Metrics Unit + =========================== ======= + CPU Usage Percent + Memory Usage Percent + Network Output Throughput bytes/s + Network Input Throughput bytes/s + Disk Utilization Percent + IOPS Count/s + Disk Read Throughput bytes/s + Disk Write Throughput bytes/s + Average Time per Disk Read s + Average Time per Disk Write s + Total Disk Size GB + Disk Usage GB + =========================== ======= + + - :ref:`Table 3 ` lists database metrics. + + .. _dds_03_0026__table58063690142242: + + .. table:: **Table 3** Database metrics + + ================================================ ======= + Metrics Unit + ================================================ ======= + COMMAND Statements per Second Count/s + DELETE Statements per Second Count/s + INSERT Statements per Second Count/s + QUERY Statements per Second Count/s + UPDATE Statements per Second Count/s + GETMORE Statements per Second Count/s + Active Connections Count + Resident Memory MB + Virtual Memory MB + Regular Asserts per Second Count/s + Warning Asserts per Second Count/s + Message Asserts per Second Count/s + User Asserts per Second Count/s + Number of Operations Queued Waiting for the Lock Count + Operations Queued Waiting for a Read Lock Count + Operations Queued Waiting for a Write Lock Count + Page Faults Count + Slow Queries Count + Maintained Cursors Count + Timeout Cursors Count + Bytes in WiredTiger Cache MB + Tracked Dirty Bytes in WiredTiger Cache MB + Bytes Written Into Cache per Second bytes/s + Bytes Written From Cache per Second bytes/s + Oplog Window h + Oplog Growth Rate MB/h + ================================================ ======= + +- The monitoring metrics of the secondary or hidden nodes in the config's and shard's replica sets are as follows: + + - The ECS monitoring metrics are the same as those of the primary nodes in the config's and shard's replica sets. For details, see :ref:`Table 2 `. + + - :ref:`Table 4 ` lists database metrics. + + .. _dds_03_0026__table44287116142242: + + .. table:: **Table 4** Database metrics + + ========================================== ======= + Metrics Unit + ========================================== ======= + COMMAND Statements per Second Count/s + DELETE Statements per Second Count/s + INSERT Statements per Second Count/s + QUERY Statements per Second Count/s + UPDATE Statements per Second Count/s + GETMORE Statements per Second Count/s + Active Node Connections Count + Resident Memory MB + Virtual Memory MB + Regular Asserts per Second Count/s + Warning Asserts per Second Count/s + Message Asserts per Second Count/s + User Asserts per Second Count/s + Operations Queued Waiting for a Lock Count + Operations Queued Waiting for a Read Lock Count + Operations Queued Waiting for a Write Lock Count + Page Faults Count + Slow Queries Count + Maintained Cursors Count + Timeout Cursors Count + Bytes in WiredTiger Cache MB + Tracked Dirty Bytes in WiredTiger Cache MB + Bytes Written Into Cache per Second bytes/s + Bytes Written From Cache per Second bytes/s + Replication Headroom s + Replication Lag s + Replicated COMMAND Statements per Second Count/s + Replicated UPDATE Statements per Second Count/s + Replicated DELETE Statements per Second Count/s + Replicated INSERT Statements per Second Count/s + ========================================== ======= + +- mongos metrics are as follows: + + - :ref:`Table 5 ` lists the ECS monitoring metrics. + + - + + .. _dds_03_0026__table1066175075416: + + .. table:: **Table 5** ECS monitoring metrics + + ========================= ======= + Metrics Unit + ========================= ======= + CPU Usage Percent + Memory Usage Percent + Network Output Throughput bytes/s + Network Input Throughput bytes/s + ========================= ======= + + - :ref:`Table 6 ` lists database metrics. + + .. _dds_03_0026__table22601657142329: + + .. table:: **Table 6** Database metrics + + ============================= ======= + Metrics Unit + ============================= ======= + COMMAND Statements per Second Count/s + DELETE Statements per Second Count/s + INSERT Statements per Second Count/s + QUERY Statements per Second Count/s + UPDATE Statements per Second Count/s + GETMORE Statements per Second Count/s + Active Node Connections Count + Resident Memory MB + Virtual Memory MB + Regular Asserts per Second Count/s + Warning Asserts per Second Count/s + Message Asserts per Second Count/s + User Asserts per Second Count/s + ============================= ======= + +Replica Set +----------- + +- Monitoring metrics of the primary node + + - :ref:`Table 2 ` lists the ECS monitoring metrics. + - :ref:`Table 3 ` lists database metrics. + +- Monitoring metrics of the secondary or hidden node + + - :ref:`Table 2 ` lists the ECS monitoring metrics. + - :ref:`Table 4 ` lists database metrics. diff --git a/umn/source/monitoring/interconnected_with_cloud_eye/index.rst b/umn/source/monitoring/interconnected_with_cloud_eye/index.rst new file mode 100644 index 0000000..365d65f --- /dev/null +++ b/umn/source/monitoring/interconnected_with_cloud_eye/index.rst @@ -0,0 +1,18 @@ +:original_name: dds_03_0025.html + +.. _dds_03_0025: + +Interconnected with Cloud Eye +============================= + +- :ref:`DDS Metrics ` +- :ref:`Setting Alarm Rules ` +- :ref:`Viewing DDS Metrics ` + +.. toctree:: + :maxdepth: 1 + :hidden: + + dds_metrics + setting_alarm_rules + viewing_dds_metrics diff --git a/umn/source/monitoring/interconnected_with_cloud_eye/setting_alarm_rules.rst b/umn/source/monitoring/interconnected_with_cloud_eye/setting_alarm_rules.rst new file mode 100644 index 0000000..be1053a --- /dev/null +++ b/umn/source/monitoring/interconnected_with_cloud_eye/setting_alarm_rules.rst @@ -0,0 +1,36 @@ +:original_name: dds_03_0027.html + +.. _dds_03_0027: + +Setting Alarm Rules +=================== + +Scenarios +--------- + +You can set DDS alarm rules to customize the monitored objects and notification policies. Then, you can learn DDS running status in a timely manner. + +The DDS alarm rules include alarm rule name, instance, metric, threshold, monitoring interval and whether to send notification. This section describes how to set DDS alarm rules. + +.. note:: + + For more information about DDS alarm rules, see *Cloud Eye User Guide*. + +Procedure +--------- + +#. Log in to the management console. + +#. Under **Management & Deployment**, click **Cloud Eye**. + +#. In the navigation pane on the left, choose **Alarm Management** > **Alarm Rules**. + +#. On the **Alarm Rules** page, click **Create Alarm Rule** to create an alarm rule, or modify an existing alarm rule. + + The following operations use the modification of an existing alarm rule as an example. + + Locate the alarm rule to be modified and choose **More** > **Modify**. + + Click **OK**. + +#. After the alarm rule is set, the system automatically notifies you when an alarm is triggered. diff --git a/umn/source/monitoring/interconnected_with_cloud_eye/viewing_dds_metrics.rst b/umn/source/monitoring/interconnected_with_cloud_eye/viewing_dds_metrics.rst new file mode 100644 index 0000000..1e2a61a --- /dev/null +++ b/umn/source/monitoring/interconnected_with_cloud_eye/viewing_dds_metrics.rst @@ -0,0 +1,48 @@ +:original_name: dds_03_0078.html + +.. _dds_03_0078: + +Viewing DDS Metrics +=================== + +Scenarios +--------- + +Cloud Eye monitors DDS running statuses. You can obtain the monitoring metrics of DDS on the management console. + +Monitored data requires a period of time for transmission and display. The status of DDS displayed on the Cloud Eye page is the status obtained 5 to 10 minutes before. You can view the monitored data of a newly created DB instance 5 to 10 minutes later. + +**Prerequisites** +----------------- + +- The DDS DB instance is running properly. + + Cloud Eye does not display the metrics of a faulty or deleted DB instance or node. You can view the monitoring information only after the instance is restarted or recovered. + +.. note:: + + Cloud Eye will delete a DDS DB instance or node that becomes faulty for 24 hours from the monitoring list and will not monitor it any more. However, you need to manually clear its alarm rules. + +- The DB instance has been properly running for at least 10 minutes. + + For a newly created DB instance, you need to wait for a while before viewing the monitoring metrics. + +Procedure +--------- + +#. Log in to the management console. + +#. Click |image1| in the upper left corner and select a region and a project. + +#. Under **Management & Deployment**, click **Cloud Eye**. + +#. In the navigation pane on the left, choose **Cloud Service Monitoring** > **Document Database Service**. + +#. On the displayed page, locate the target instance and click **View Metric** in the **Operation** column. + +#. In the DDS monitoring area, you can select a duration to view the monitoring data. + + You can view the monitoring data of DDS in the recent 1 hour, 3 hours, or 12 hours. To view the monitoring curve of a longer time range, click |image2| to enlarge the graph. + +.. |image1| image:: /_static/images/en-us_image_0284275156.png +.. |image2| image:: /_static/images/en-us_image_0284275295.png diff --git a/umn/source/monitoring/interconnecting_with_cts/index.rst b/umn/source/monitoring/interconnecting_with_cts/index.rst new file mode 100644 index 0000000..7ce6480 --- /dev/null +++ b/umn/source/monitoring/interconnecting_with_cts/index.rst @@ -0,0 +1,16 @@ +:original_name: dds_03_0028.html + +.. _dds_03_0028: + +Interconnecting with CTS +======================== + +- :ref:`Key Operations Recorded by CTS ` +- :ref:`Querying Traces ` + +.. toctree:: + :maxdepth: 1 + :hidden: + + key_operations_recorded_by_cts + querying_traces diff --git a/umn/source/monitoring/interconnecting_with_cts/key_operations_recorded_by_cts.rst b/umn/source/monitoring/interconnecting_with_cts/key_operations_recorded_by_cts.rst new file mode 100644 index 0000000..7d59232 --- /dev/null +++ b/umn/source/monitoring/interconnecting_with_cts/key_operations_recorded_by_cts.rst @@ -0,0 +1,70 @@ +:original_name: dds_03_0029.html + +.. _dds_03_0029: + +Key Operations Recorded by CTS +============================== + +With CTS, you can record operations associated with DDS for later query, audit, and backtrack operations. + +.. table:: **Table 1** Key operations on DDS + + +--------------------------------------+----------------+--------------------------+ + | Operation | Resource | Trace Name | + +======================================+================+==========================+ + | Restoring data to a new DB instance | instance | ddsRestoreToNewInstance | + +--------------------------------------+----------------+--------------------------+ + | Creating a DB instance | instance | ddsCreateInstance | + +--------------------------------------+----------------+--------------------------+ + | Deleting a DB instance | instance | ddsDeleteInstance | + +--------------------------------------+----------------+--------------------------+ + | Restarting a DB instance | instance | ddsRestartInstance | + +--------------------------------------+----------------+--------------------------+ + | Scaling up a DB instance | instance | ddsGrowInstance | + +--------------------------------------+----------------+--------------------------+ + | Scaling up storage space | instance | ddsExtendInstanceVolume | + +--------------------------------------+----------------+--------------------------+ + | Resetting the database password | instance | ddsResetPassword | + +--------------------------------------+----------------+--------------------------+ + | Renaming a DB instance | instance | ddsRenameInstance | + +--------------------------------------+----------------+--------------------------+ + | Switching SSL | instance | ddsSwitchSsl | + +--------------------------------------+----------------+--------------------------+ + | Modifying a DB instance port | instance | ddsModifyInstancePort | + +--------------------------------------+----------------+--------------------------+ + | Creating a backup | backup | ddsCreateBackup | + +--------------------------------------+----------------+--------------------------+ + | Deleting a backup | backup | ddsDeleteBackup | + +--------------------------------------+----------------+--------------------------+ + | Setting a backup policy | backup | ddsSetBackupPolicy | + +--------------------------------------+----------------+--------------------------+ + | Applying a parameter group | parameterGroup | ddsApplyConfigurations | + +--------------------------------------+----------------+--------------------------+ + | Replicating a parameter group | parameterGroup | ddsCopyConfigurations | + +--------------------------------------+----------------+--------------------------+ + | Resetting a parameter group | parameterGroup | ddsResetConfigurations | + +--------------------------------------+----------------+--------------------------+ + | Creating a parameter group | parameterGroup | ddsCreateConfigurations | + +--------------------------------------+----------------+--------------------------+ + | Deleting a parameter group | parameterGroup | ddsDeleteConfigurations | + +--------------------------------------+----------------+--------------------------+ + | Updating a parameter group | parameterGroup | ddsUpdateConfigurations | + +--------------------------------------+----------------+--------------------------+ + | Binding an EIP | instance | ddsBindIP | + +--------------------------------------+----------------+--------------------------+ + | Unbinding an EIP | instance | ddsUnbindIP | + +--------------------------------------+----------------+--------------------------+ + | Adding a tag | tag | ddsAddTag | + +--------------------------------------+----------------+--------------------------+ + | Deleting a tag | tag | ddsDeleteTag | + +--------------------------------------+----------------+--------------------------+ + | Editing a tag | tag | ddsModifyTag | + +--------------------------------------+----------------+--------------------------+ + | Deleting an instance tag | tag | ddsDeleteInstanceTag | + +--------------------------------------+----------------+--------------------------+ + | Adding an instance tag | tag | ddsAddInstanceTag | + +--------------------------------------+----------------+--------------------------+ + | Rolling back upon scaling-up failure | instance | ddsDeleteExtendedDdsNode | + +--------------------------------------+----------------+--------------------------+ + | Changing DB instance classes | instance | ddsResizeInstance | + +--------------------------------------+----------------+--------------------------+ diff --git a/umn/source/monitoring/interconnecting_with_cts/querying_traces.rst b/umn/source/monitoring/interconnecting_with_cts/querying_traces.rst new file mode 100644 index 0000000..2ed2b3c --- /dev/null +++ b/umn/source/monitoring/interconnecting_with_cts/querying_traces.rst @@ -0,0 +1,44 @@ +:original_name: dds_03_0032.html + +.. _dds_03_0032: + +Querying Traces +=============== + +Scenarios +--------- + +After CTS is enabled, the tracker starts recording operations on cloud resources. Operation records for the last 7 days are stored on the CTS console. + +This section describes how to query operation records for the last 7 days on the CTS console. + +Procedure +--------- + +#. Log in to the management console. +#. Click |image1| in the upper left corner and select a region and a project. +#. Click **Service List**. Under **Management & Deployment**, click **Cloud Trace Service**. +#. Choose **Trace List** in the navigation pane on the left. +#. Specify the filters used for querying traces. The following four filters are available: + + - **Trace Source**, **Resource Type**, **Search By**, and **Operator** + + Select the filter from the drop-down list. + + When you select **Trace name** for **Search By**, you also need to select a specific trace name. + + When you select **Resource ID** for **Search By**, you also need to select or enter a specific resource ID. + + When you select **Resource name** for **Search By**, you also need to select or enter a specific resource name. + + - **Operator**: Select a specific operator (a user rather than tenant). + + - **Trace Status**: Available options include **All trace statuses**, **normal**, **warning**, and **incident**. You can only select one of them. + + - Start time and end time: You can specify the time period for query traces. + +#. Click |image2| on the left of the record to be queried to extend its details. +#. Locate a trace and click **View Trace** in the **Operation** column. + +.. |image1| image:: /_static/images/en-us_image_0284275156.png +.. |image2| image:: /_static/images/en-us_image_0284275259.png diff --git a/umn/source/monitoring/slow_query_log.rst b/umn/source/monitoring/slow_query_log.rst new file mode 100644 index 0000000..77bec44 --- /dev/null +++ b/umn/source/monitoring/slow_query_log.rst @@ -0,0 +1,29 @@ +:original_name: en-us_topic_slow_query_log.html + +.. _en-us_topic_slow_query_log: + +Slow Query Log +============== + +Slow query logs record statements whose execution period exceeds the value of **slowms** (100 ms by default), allowing you identify and optimize slowly executed statements. + +Procedure +--------- + +#. :ref:`Log in to the DDS console. ` +#. On the **Instance Management** page, click the target DB instance. +#. In the navigation pane on the left, click **Slow Query Logs**. +#. On the displayed page, click **Slow Query Logs**. Then, view the log details. + + - Log records of all shards of a cluster instance + - Log records of all nodes of a replica set instance + - Log records of a node in different time periods + - Statements of the following level + + - All statement type + - INSERT + - QUERY + - UPDATE + - REMOVE + - GETMORE + - COMMAND