OceanBase logo

OceanBase

A unified distributed database ready for your transactional, analytical, and AI workloads.

DEPLOY YOUR WAY

OceanBase Cloud

The best way to deploy and scale OceanBase

OceanBase Enterprise

Run and manage OceanBase on your infra

TRY OPEN SOURCE

OceanBase Community Edition

The free, open-source distributed database

OceanBase seekdb

Open source AI native search database

Customer Stories

Real-world success stories from enterprises across diverse industries.

View All
BY USE CASES

Mission-Critical Transactions

Global & Multicloud Application

Elastic Scaling for Peak Traffic

Real-time Analytics

Active Geo-redundancy

Database Consolidation

Resources

Comprehensive knowledge hub for OceanBase.

Blog

Live Demos

Training & Certification

Documentation

Official technical guides, tutorials, API references, and manuals for all OceanBase products.

View All
PRODUCTS

OceanBase Cloud

OceanBase Database

Tools

Connectors and Middleware

QUICK START

OceanBase Cloud

OceanBase Database

BEST PRACTICES

Practical guides for utilizing OceanBase more effectively and conveniently

Company

Learn more about OceanBase – our company, partnerships, and trust and security initiatives.

About OceanBase

Partner

Trust Center

Contact Us

International - English
中国站 - 简体中文
日本 - 日本語
Sign In
Start on Cloud

A unified distributed database ready for your transactional, analytical, and AI workloads.

DEPLOY YOUR WAY

OceanBase Cloud

The best way to deploy and scale OceanBase

OceanBase Enterprise

Run and manage OceanBase on your infra

TRY OPEN SOURCE

OceanBase Community Edition

The free, open-source distributed database

OceanBase seekdb

Open source AI native search database

Customer Stories

Real-world success stories from enterprises across diverse industries.

View All
BY USE CASES

Mission-Critical Transactions

Global & Multicloud Application

Elastic Scaling for Peak Traffic

Real-time Analytics

Active Geo-redundancy

Database Consolidation

Comprehensive knowledge hub for OceanBase.

Blog

Live Demos

Training & Certification

Documentation

Official technical guides, tutorials, API references, and manuals for all OceanBase products.

View All
PRODUCTS
OceanBase CloudOceanBase Database
ToolsConnectors and Middleware
QUICK START
OceanBase CloudOceanBase Database
BEST PRACTICES

Practical guides for utilizing OceanBase more effectively and conveniently

Learn more about OceanBase – our company, partnerships, and trust and security initiatives.

About OceanBase

Partner

Trust Center

Contact Us

Start on Cloud
编组
All Products
    • Databases
    • iconOceanBase Database
    • iconOceanBase Cloud
    • iconOceanBase Tugraph
    • iconInteractive Tutorials
    • iconOceanBase Best Practices
    • Tools
    • iconOceanBase Cloud Platform
    • iconOceanBase Migration Service
    • iconOceanBase Developer Center
    • iconOceanBase Migration Assessment
    • iconOceanBase Admin Tool
    • iconOceanBase Loader and Dumper
    • iconOceanBase Deployer
    • iconKubernetes operator for OceanBase
    • iconOceanBase Diagnostic Tool
    • iconOceanBase Binlog Service
    • Connectors and Middleware
    • iconOceanBase Database Proxy
    • iconEmbedded SQL in C for OceanBase
    • iconOceanBase Call Interface
    • iconOceanBase Connector/C
    • iconOceanBase Connector/J
    • iconOceanBase Connector/ODBC
    • iconOceanBase Connector/NET
icon

OceanBase Migration Service

V4.2.10Community Edition

  • OMS Documentation
  • What's New
  • OMS Community Edition Introduction
    • What is OMS Community Edition?
    • Terms
    • OMS Community Edition HA
    • Architecture
      • Overview
      • Hierarchical functional system
      • Basic components
    • Limitations
  • Quick Start
    • Data migration process
    • Data synchronization process
  • Deploy OMS Community Edition
    • Deployment modes
    • System and network requirements
    • Memory and disk requirements
    • Prepare the environment
    • Deploy OMS Community Edition on a single node
    • Deploy OMS Community Edition on multiple nodes in a single region
    • Deploy OMS Community Edition on multiple nodes in multiple regions
    • Integrate the OIDC protocol into OMS Community Edition to implement SSO
    • Scale out deployment
    • Check the deployment
    • Deploy a time-series database (Optional)
  • OMS Community Edition console
    • Log in to the console of OMS Community Edition
    • Overview
    • User center
      • Configure user information
      • Change your logon password
      • Log off
  • Data migration
    • Overview
    • Migrate data from a MySQL database to OceanBase Database Community Edition
    • Migrate data from HBase to OBKV
    • Migrate incremental data from OBKV to HBase
    • Migrate data from a Milvus database to OceanBase Database Community Edition
    • Migrate data from a Redis database to an OBKV-Redis database
    • Migrate data between tenants of OceanBase Database Community Edition
    • Migrate data in active-active disaster recovery scenarios
    • Migrate data from a TiDB database to OceanBase Database Community Edition
    • Migrate data from a PostgreSQL database to OceanBase Database Community Edition
    • Migrate data from Hive to OceanBase Database Community Edition
    • Migrate data from an ElasticSearch database to OceanBase Database Community Edition
    • Migrate data from OceanBase Database Community Edition to an ElasticSearch database
    • Migrate data from a MongoDB database to OceanBase Database Community Edition
    • Migrate data from a Qdrant database to OceanBase Database Community Edition
    • Manage data migration tasks
      • View details of a data migration task
      • Change the name of a data migration task
      • View and modify migration objects
      • Manage computing platforms
      • Use tags to manage data migration tasks
      • Perform batch operations on data migration tasks
      • Download and import settings of migration objects
      • Start and pause a data migration task
      • Release and delete a data migration task
    • Features
      • DML filtering
      • DDL synchronization
      • Configure matching rules for migration objects
      • Wildcard rules
      • Rename a database table
      • Use SQL conditions to filter data
      • Create and update a heartbeat table
      • Schema migration mechanisms
      • Schema migration operations
      • Set an incremental synchronization timestamp
      • Direct load
    • Supported DDL operations in incremental migration and limits
      • DDL synchronization from MySQL database to OceanBase Community Edition
        • Overview of DDL synchronization from a MySQL database to a MySQL-compatible tenant of OceanBase Database
        • CREATE TABLE
          • Create a table
          • Create a column
          • Create an index or a constraint
          • Create partitions
        • Data type conversion
        • ALTER TABLE
          • Modify a table
          • Operations on columns
          • Operations on constraints and indexes
          • Operations on partitions
        • TRUNCATE TABLE
        • RENAME TABLE
        • DROP TABLE
        • CREATE INDEX
        • DROP INDEX
        • DDL incompatibilities between MySQL database and OceanBase Community Edition
          • Overview
          • Incompatibilities of the CREATE TABLE statement
            • Incompatibilities of CREATE TABLE
            • Column types that are supported to create indexes or constraints
          • Incompatibilities of the ALTER TABLE statement
            • Incompatibilities of ALTER TABLE
            • Change the type of a constrained column
            • Change the type of an unconstrained column
            • Change the length of a constrained column
            • Change the length of an unconstrained column
            • Delete a constrained column
          • Incompatibilities of DROP INDEX operations
      • Supported DDL operations in incremental migration between MySQL-compatible tenants of OceanBase Database
  • Data synchronization
    • Data synchronization overview
    • Create a task to synchronize data from OceanBase Database Community Edition to a Kafka instance
    • Create a task to synchronize data from OceanBase Database Community Edition to a RocketMQ instance
    • Manage data synchronization tasks
      • View details of a data synchronization task
      • Change the name of a data synchronization task
      • View and modify synchronization objects
      • Use tags to manage data synchronization tasks
      • Perform batch operations on data synchronization tasks
      • Download and import the settings of synchronization objects
      • Start and pause a data synchronization task
      • Release and delete a data synchronization task
    • Features
      • DML filtering
      • DDL synchronization
      • Configure matching rules for synchronization objects
      • Rename a topic
      • Use SQL conditions to filter data
      • Column filtering
      • Data format description
  • Create and manage data sources
    • Create data sources
      • Create an OceanBase-CE data source
      • Create a MySQL data source
      • Create a TiDB data source
      • Create a Kafka data source
      • Create a RocketMQ data source
      • Create a PostgreSQL data source
      • Create an HBase data source
      • Create a Qdrant data source
      • Create a Milvus data source
      • Create a Redis data source
      • Create a Hive data source
      • Create an ElasticSearch data source
      • Create a MongoDB data source
    • Manage data sources
      • View data source information
      • Copy a data source
      • Edit a data source
      • Delete a data source
      • Cache system views
    • Create a database user
    • User privileges
    • Enable binlogs for the MySQL database
  • OPS & Monitoring
    • O&M overview
    • Go to the overview page
    • Server
      • View server information
      • Update the quota
      • View server logs
    • Components
      • Store
        • Create a Store component
        • View details of a Store component
        • Update the configurations of a Store component
        • Start and pause a Store component
        • Delete a Store component
      • Incr-Sync
        • View details of an Incr-Sync component
        • Start and pause an Incr-Sync component
        • Migrate an Incr-Sync component
        • Update the configurations of an Incr-Sync component
        • Batch O&M
        • Delete an Incr-Sync component
      • Full-Import
        • View details of a Full-Import component
        • Pause a Full-Import component
        • Rerun and resume a Full-Import component
        • Update the configurations of a Full-Import component
        • Delete a Full-Import component
      • Full-Verification
        • View details of a Full-Verification component
        • Pause a Full-Verification component
        • Rerun and resume a Full-Verification component
        • Update the configurations of a Full-Verification component
        • Delete a Full-Verification component
      • Component parameters
        • Coordinator
        • Condition
        • Source Plugin
          • Overview
          • StoreSource
          • DataFlowSource
          • LogProxySource
          • KafkaSource (TiDB)
          • HBaseSource
          • HiveSource
          • ElasticSearchSource
          • MongoDBSource
        • Sink Plugin
          • Overview
          • JDBC-Sink
          • KafkaSink
          • DatahubSink
          • RocketMQSink
          • HBaseSink
          • HiveSink
        • Store parameters
          • Parameters of a MySQL store
          • Parameters of an OceanBase store
        • Parameters of the CM component
        • Parameters of the Supervisor component
        • Parameters of the Full-Verification component
    • O&M Task
      • View O&M tasks
      • Skip a task or subtask
      • Retry a task or subtask
  • System management
    • Permission Management
      • Overview
      • Manage users
      • Manage departments
    • Alert center
      • View task alerts
      • View system alerts
      • Manage alert settings
    • Associate with OCP
    • System parameters
      • Modify system parameters
      • Modify HA configurations
  • OMS Community Edition O&M
    • Manage OMS services
    • OMS logs
    • Component O&M
      • O&M operations for the Supervisor component
      • CLI-based O&M for the Connector component
      • O&M operations for the Store component
    • Component tuning
      • Incr-Sync or Full-Import tuning
    • Set throttling
  • Reference Guide
    • API Reference
      • Overview
      • CreateProject
      • StartProject
      • StopProject
      • ResumeProject
      • ReleaseProject
      • DeleteProject
      • ListProjects
      • DescribeProject
      • DescribeProjectSteps
      • DescribeProjectStepMetric
      • DescribeProjectProgress
      • DescribeProjectComponents
      • ListProjectFullVerifyResult
      • StartProjectsByLabel
      • StopProjectsByLabel
      • CreateMysqlDataSource
      • CreateMySQLMasterSlaveDataSource
      • CreateOceanBaseDataSource
      • ListDataSource
      • CreateLabel
      • ListAllLabels
      • ListFullVerifyInconsistenciesResult
      • ListFullVerifyCorrectionsResult
      • UpdateStore
      • UpdateFullImport
      • UpdateIncrSync
      • UpdateFullVerification
    • OMS error codes
    • Alert Reference
      • oms_host_down
      • oms_host_down_migrate_resource
      • oms_host_threshold
      • oms_migration_failed
      • oms_migration_delay
      • oms_sync_failed
      • oms_sync_status_inconsistent
      • oms_sync_delay
    • Telemetry parameters
  • Upgrade Guide
    • Overview
    • Upgrade in single-node deployment mode
    • Upgrade in multi-node deployment mode
    • Upgrade the CDC library
    • FAQ
  • FAQ
    • General O&M
      • How do I modify the resource quotas of an OMS container?
      • Clear files in the Store component
      • How do I troubleshoot the OMS server down issue?
      • Deploy InfluxDB for OMS
      • Increase the disk space of the OMS host
    • Task diagnostics
      • What do I do when a store does not have data of the timestamp requested by the downstream?
      • What do I do when OceanBase Store failed to access an OceanBase cluster through RPC?
    • OPS & monitoring
      • What are the alert rules?
    • Data synchronization
      • FAQ about synchronization to a message queue
        • What are the strategies for ensuring the message order in incremental data synchronization to Kafka
      • Performance troubleshooting and tuning for data synchronization from OceanBase Community Edition to Kafka
    • Data migration
      • Full migration
        • How do I query the ID of a checker?
        • How do I query log files of the Checker component of OMS?
        • How do I query the verification result files of the Checker component of OMS?
        • Garbled characters in the Latin1 character set
        • What do I do if the target table does not exist?
        • What can I do when the full migration failed due to LOB fields?
        • What do I do if garbled characters cannot be written into OceanBase Database V3.1.2?
      • Incremental synchronization
        • How do I skip DDL statements?
        • How do I update whitelists and blacklists?
        • What are the application scope and limits of ETL?
    • Logon and password
      • What do I do if my logon password is locked?
    • Installation and deployment
      • How do I upgrade Store?
      • What do I do when the "Failed to fetch" error is reported?
      • Change port numbers for components
      • Switching between the primary and standby OMS MetaDBs

Download PDF

OMS Documentation What's New What is OMS Community Edition? Terms OMS Community Edition HA Overview Hierarchical functional system Basic components Limitations Data migration process Data synchronization process Deployment modes System and network requirements Memory and disk requirements Prepare the environment Deploy OMS Community Edition on a single node Deploy OMS Community Edition on multiple nodes in a single region Deploy OMS Community Edition on multiple nodes in multiple regions Integrate the OIDC protocol into OMS Community Edition to implement SSO Scale out deployment Check the deployment Deploy a time-series database (Optional) Log in to the console of OMS Community Edition Overview Configure user information Change your logon password Log off Overview Migrate data from a MySQL database to OceanBase Database Community Edition Migrate data from HBase to OBKV Migrate incremental data from OBKV to HBase Migrate data from a Milvus database to OceanBase Database Community Edition Migrate data from a Redis database to an OBKV-Redis database Migrate data between tenants of OceanBase Database Community Edition Migrate data in active-active disaster recovery scenarios Migrate data from a TiDB database to OceanBase Database Community Edition Migrate data from a PostgreSQL database to OceanBase Database Community Edition Migrate data from Hive to OceanBase Database Community Edition Migrate data from an ElasticSearch database to OceanBase Database Community Edition Migrate data from OceanBase Database Community Edition to an ElasticSearch database Migrate data from a MongoDB database to OceanBase Database Community Edition Migrate data from a Qdrant database to OceanBase Database Community Edition View details of a data migration task Change the name of a data migration task View and modify migration objects Manage computing platforms Use tags to manage data migration tasks Perform batch operations on data migration tasks Download and import settings of migration objects Start and pause a data migration task Release and delete a data migration task DML filtering DDL synchronization Configure matching rules for migration objects Wildcard rules Rename a database table Use SQL conditions to filter data Create and update a heartbeat table Schema migration mechanisms Schema migration operations Set an incremental synchronization timestamp Direct load Supported DDL operations in incremental migration between MySQL-compatible tenants of OceanBase Database Data synchronization overview Create a task to synchronize data from OceanBase Database Community Edition to a Kafka instance Create a task to synchronize data from OceanBase Database Community Edition to a RocketMQ instance View details of a data synchronization task Change the name of a data synchronization task View and modify synchronization objects Use tags to manage data synchronization tasks Perform batch operations on data synchronization tasks Download and import the settings of synchronization objects Start and pause a data synchronization task Release and delete a data synchronization task DML filtering DDL synchronization Configure matching rules for synchronization objects Rename a topic Use SQL conditions to filter data Column filtering Data format description Create an OceanBase-CE data source Create a MySQL data source Create a TiDB data source Create a Kafka data source Create a RocketMQ data source Create a PostgreSQL data source Create an HBase data source Create a Qdrant data source Create a Milvus data source Create a Redis data source Create a Hive data source Create an ElasticSearch data source Create a MongoDB data source View data source information Copy a data source Edit a data source Delete a data source Cache system views Create a database user
OceanBase logo

The Unified Distributed Database for the AI Era.

Follow Us
Products
OceanBase CloudOceanBase EnterpriseOceanBase Community EditionOceanBase seekdb
Resources
DocsBlogLive DemosTraining & Certification
Company
About OceanBaseTrust CenterLegalPartnerContact Us
Follow Us

© OceanBase 2026. All rights reserved

Cloud Service AgreementPrivacy PolicySecurity
Contact Us
Document Feedback
  1. Documentation Center
  2. OceanBase Migration Service
  3. V4.2.10
iconOceanBase Migration Service
V 4.2.10Community Edition
Enterprise Edition
  • V 4.3.2
  • V 4.3.1
  • V 4.3.0
  • V 4.2.5
  • V 4.2.4
  • V 4.2.3
  • V 4.0.2
  • V 3.4.0
Community Edition
  • V 4.2.12
  • V 4.2.11
  • V 4.2.10
  • V 4.2.9
  • V 4.2.8
  • V 4.2.7
  • V 4.2.6
  • V 4.2.5
  • V 4.2.4
  • V 4.2.3
  • V 4.2.1
  • V 4.2.0
  • V 4.0.0
  • V 3.3.1

Scale out deployment

Last Updated:2026-04-14 07:36:11  Updated
share
What is on this page
Scale out from a single node to multiple nodes
The initial node has a VIP as the cm_url
The initial node has a physical host IP address as the cm_url
Scale out from a single region to multiple regions
Scale out multiple nodes in a single region
The initial environment has two nodes in a single region with a VIP as the cm_url
Procedure for scaling up

folded

share

This topic describes how to scale out from a single region, a single node, and multiple nodes in a single region.

Scale out from a single node to multiple nodes

You can scale out from a single node to multiple nodes in the following two scenarios:

  • The initial node has a VIP as the cm_url.

  • The initial node has a physical host IP address as the cm_url.

The initial node has a VIP as the cm_url

The specific steps are the same as those for the initial single-node deployment. For more information, see Deploy OMS Community Edition on a single node.

Notice

When you start the container, the value of -e OMS_HOST_IP must be the IP address of the current host.

Take the initial node's cm_nodes as xxx.xxx.xxx.1 and the scale-out node's cm_nodes as xxx.xxx.xxx.2 as an example. The config.yaml file is configured as follows.

# OMS Community Edition MetaDB information
oms_meta_host: ${oms_meta_host}
oms_meta_port: ${oms_meta_port}
oms_meta_user: ${oms_meta_user}
oms_meta_password: ${oms_meta_password}

# When you scale out from a single node to multiple nodes, make sure that the names of the following three databases are the same as those on the initial node.
drc_rm_db: ${drc_rm_db}
drc_cm_db: ${drc_cm_db}
drc_cm_heartbeat_db: ${drc_cm_heartbeat_db}

# OMS Community Edition cluster configuration
cm_url: http://VIP:8088
cm_location: ${cm_location}
cm_region: ${cm_region}
cm_region_cn: ${cm_region_cn}
cm_is_default: true
cm_nodes:
 - xxx.xxx.xxx.1
 - xxx.xxx.xxx.2

# Time series database configuration
# The default value is false. If you want to enable the metric reporting feature, set this parameter to true and remove the comment from the beginning of the line.
# tsdb_enabled: false
# If tsdb_enabled is set to true, remove the comment from the beginning of the line for the following parameters and set the values based on your actual situation.
# tsdb_service: 'INFLUXDB'
# tsdb_url: '${tsdb_url}'
# tsdb_username: ${tsdb_user}
# tsdb_password: ${tsdb_password}

The initial node has a physical host IP address as the cm_url

In this scenario, you need to perform database correction. The procedure is as follows.

Note

The tables to be corrected are location_cm, host, and resource_group in the drc_cm_db database, and cluster_info in the drc_rm_db database.

  1. Configure a virtual IP (VIP), a server load balancing (SLB) instance, or a domain name and bind all the IP addresses of the physical hosts in the current region.

    For example, bind the IP addresses xxx.xxx.xxx.1 and xxx.xxx.xxx.2 to the VIP.

  2. Stop the processes in the original container. Take the oms_330 container as an example.

    sudo docker exec -it oms_330 bash  
    supervisorctl stop all
    
  3. Take the drc_rm_db database and the cluster_info table as an example. Log in to the database and perform the following operations.

    1. Back up the data in the cluster_info table.

      select * from cluster_info;
      
    2. Delete the data in the cluster_info table.

      delete from cluster_info;
      
  4. Modify the configuration file in the oms_330 container.

    # /home/admin/conf/config.yaml is a fixed directory in the Docker container.
    sudo vi /home/admin/conf/config.yaml
    
    # Modify the cm_url address and add cm_nodes:
    cm_url: http://VIP:8088
    cm_nodes:
     - xxx.xxx.xxx.1
     - xxx.xxx.xxx.2
    
  5. Perform the initialization operation again.

    sudo sh /root/docker_init.sh
    

    After the initialization is completed, confirm whether the cm_url field in the cluster_info table is set to the VIP address.

  6. Copy the configuration file to another server and start the OMS Community Edition container.

    Notice

    • When you start the container, set the value of -e OMS_HOST_IP to the IP address of the current host.

    • Replace work.oceanbase-dev.com/obartifact-store/oms:${IMAGE_TAG} with the name of the image actually imported by using the docker load -i command.

    OMS_HOST_IP=xxx
    CONTAINER_NAME=oms_xxx
    IMAGE_TAG=feature_x.x.x-ce
    
    docker run -dit --net host \
    -v /data/config.yaml:/home/admin/conf/config.yaml \
    -v /data/oms/oms_logs:/home/admin/logs \
    -v /data/oms/oms_store:/home/ds/store \
    -v /data/oms/oms_run:/home/ds/run \
    # If you mount an HTTPS certificate for the OMS Community Edition container, set the following two parameters.
    -v /data/oms/https_crt:/etc/pki/nginx/oms_server.crt
    -v /data/oms/https_key:/etc/pki/nginx/oms_server.key
    -e OMS_HOST_IP=${OMS_HOST_IP} \
    --privileged=true \
    --pids-limit -1 \
    --ulimit nproc=65535:65535 \
    --name ${CONTAINER_NAME} \
    work.oceanbase-dev.com/obartifact-store/oms:${IMAGE_TAG}
    

Scale out from a single region to multiple regions

The procedure for scaling out from a single region to multiple regions is the same as the procedure for deploying OMS Community Edition on a single node, except that the drc_cm_heartbeat_db parameter in the config.yaml file must be different from the heartbeat database used by the initial OMS Community Edition node. You also need to modify the cm_url, cm_location, cm_region, cm_region_cn, cm_is_default, and cm_nodes parameters to the values for the new region.

  1. Log in to the OMS Community Edition deployment server.

  2. (Optional) Deploy a time-series database.

    If you want OMS Community Edition to collect and display monitoring data, deploy a time-series database. If you do not want OMS Community Edition to display monitoring data, skip this step. For more information, see Deploy a time-series database.

  3. Prepare the configuration file.

    Edit the OMS Community Edition startup configuration file in an appropriate directory. For example, you can create the configuration file at /root/config.yaml.

    Make sure to replace the required parameters with the actual values for the target environment. Take the example of scaling out the host xxx.xxx.xxx.xx1 in the Jiangsu region. The config.yaml file is configured as follows.

    Notice

    In the config.yaml file, a colon ( : ) must be followed by a space.

    # Information about the OMS MetaDB
    oms_meta_host: ${oms_meta_host}
    oms_meta_port: ${oms_meta_port}
    oms_meta_user: ${oms_meta_user}
    oms_meta_password: ${oms_meta_password}
    
    # The drc_rm_db and drc_cm_db parameters are the same as those of the initial node.
    drc_rm_db: ${drc_rm_db}
    drc_cm_db: ${drc_cm_db}
    # The drc_cm_heartbeat_db parameter must be different from the heartbeat database used by the initial node.
    drc_cm_heartbeat_db: ${drc_cm_heartbeat_db}
    
    # Information about the OMS Community Edition cluster
    # Specify the values for the new region.
    cm_url: http://xxx.xxx.xxx.1:8088
    cm_location: ${cm_location}
    cm_region: cn-jiangsu
    cm_region_cn: Jiangsu
    cm_is_default: true
    cm_nodes:
     - xxx.xxx.xxx.1
    
    # Information about the time-series database
    # The default value is false. If you want to enable the metrics reporting feature, set this parameter to true and remove the comment mark from the beginning of the line.
    # tsdb_enabled: false
    # If tsdb_enabled is set to true, remove the comment mark from the beginning of the following lines and specify the values of the parameters based on your actual situation.
    # tsdb_service: 'INFLUXDB'
    # tsdb_url: '${tsdb_url}'
    # tsdb_username: ${tsdb_user}
    # tsdb_password: ${tsdb_password}
    

    The following table describes the parameters.

    Parameter Description Required
    oms_meta_host The IP address of the MetaDB, which can be a MySQL or MySQL compatible mode of OceanBase Database. Yes
    oms_meta_port The port number of the MetaDB. Yes
    oms_meta_user The username of the MetaDB. Yes
    oms_meta_password The password of the MetaDB. <main id="notice"type='notice'>

    Notice

    The password of the MetaDB user cannot be empty, and it cannot contain special characters (including line breaks, spaces, and |"'`()=;/&[]{}).

    Yes
    drc_rm_db The name of the database of the management console. The value must be the same as that of the initial node. Yes
    drc_cm_db The name of the MetaDB of the cluster management service. The value must be the same as that of the initial node. Yes
    drc_cm_heartbeat_db The name of the heartbeat database of the cluster management service. The value must be different from the heartbeat database used by the initial node. Yes
    cm_url The URL of the OMS Community Edition cluster management service. For example, http://xxx.xxx.xxx.1:8088.
    Notice:
    In the case of a single-node deployment, the value is usually the IP address of the OMS Community Edition server.
    We recommend that you do not set the value to http://127.0.0.1:8088, because this address cannot be expanded to a multi-region, multi-node deployment.
    Yes
    cm_location The region code, which is an integer in the range [0,127]. Each region is identified by a number, which you select. Yes
    cm_region The region, for example, cn-jiangsu.
    Notice:
    If you use OMS Community Edition in a disaster recovery and dual-active scenario with Alibaba Cloud MSHA, use the Alibaba Cloud region information as the value of cm_region.
    No
    cm_region_cn The Chinese name of the region. For example, Jiangsu. No
    cm_nodes The IP address list of the OMS Community Edition cluster management service. In this example, the value is xxx.xxx.xxx.1. Yes
    cm_is_default Specifies whether the OMS Community Edition cluster management service is the default one.
    Notice:
    If multiple regions are involved, you can set only one region's cm_is_default parameter to true to identify the default OMS Community Edition cluster management service.
    No. Default value: true
    tsdb_enabled Specifies whether to enable the metrics reporting feature (monitoring capability), which can be true or false. No. Default value: false
    tsdb_service Specifies the type of the time-series database, which can be INFLUXDB or CERESDB. No. Default value: INFLUXDB
    tsdb_url The URL of the server that hosts InfluxDB. When tsdb_enabled is set to true, you must modify this parameter based on your actual situation. No
    tsdb_username The username of the time-series database. When tsdb_enabled is set to true, you must modify this parameter based on your actual situation. After you deploy the time-series database, you must manually create a time-series database user and specify the username and password. No
    tsdb_password The password of the time-series database. When tsdb_enabled is set to true, you must modify this parameter based on your actual situation. No
  4. Load the OMS Community Edition installation package to the local image repository of the Docker container.

    docker load -i <OMS Community Edition installation package>
    
  5. Run the following command to start the container.

    OMS Community Edition supports HTTP and HTTPS protocols for accessing the OMS Community Edition console. If you want to securely access OMS Community Edition, you can provide an HTTPS certificate and mount it to a specified directory in the container. If you want to access OMS Community Edition by using the HTTP protocol, you do not need to configure any certificate.

    OMS_HOST_IP=xxx
    CONTAINER_NAME=oms_xxx
    IMAGE_TAG=feature_x.x.x-ce
    
    docker run -dit --net host \
    -v /data/config.yaml:/home/admin/conf/config.yaml \
    -v /data/oms/oms_logs:/home/admin/logs \
    -v /data/oms/oms_store:/home/ds/store \
    -v /data/oms/oms_run:/home/ds/run \
    # If you mount an HTTPS certificate in the OMS Community Edition container, you must specify the following two parameters.
    -v /data/oms/https_crt:/etc/pki/nginx/oms_server.crt
    -v /data/oms/https_key:/etc/pki/nginx/oms_server.key
    -e OMS_HOST_IP=${OMS_HOST_IP} \
    --privileged=true \
    --pids-limit -1 \
    --ulimit nproc=65535:65535 \
    --name ${CONTAINER_NAME} \
    work.oceanbase-dev.com/obartifact-store/oms:${IMAGE_TAG}
    

    The following table describes the parameters.

    Parameter Description
    OMS_HOST_IP The IP address of the host.
    CONTAINER_NAME The name of the created container. The format is oms_xxx. Specify xxx based on the actual version.
    IMAGE_TAG After you load the OMS installation package to Docker, run the docker images command to obtain the [IMAGE ID] or [REPOSITORY:TAG] of the loaded image, which is the unique identifier of the loaded image named <OMS_IMAGE>.

    Notice

    Replace work.oceanbase-dev.com/obartifact-store/oms:${IMAGE_TAG} with the name of the image actually imported by executing the docker load -i command.

    /data/oms/oms_logs
    /data/oms/oms_store
    /data/oms/oms_run
    /data/oms/oms_logs, /data/oms/oms_store, and /data/oms/oms_run can be replaced with the created mount directories on your OMS Community Edition deployment server. These directories store log files generated during OMS Community Edition operation, log pull components, and synchronization components. The log files are persisted on the server.
    Notice:
    The mount directory must remain unchanged during subsequent OMS Community Edition re-deployments and upgrades.
    /home/admin/logs
    /home/ds/store
    /home/ds/run
    /home/admin/logs, /home/ds/store, and /home/ds/run are fixed directories in the container. The paths cannot be modified.
    /data/oms/https_crt (optional)
    /data/oms/https_key (optional)
    The mount path of the HTTPS certificate in the OMS Community Edition container. Replace the path based on your actual situation. If you mount an HTTPS certificate, the Nginx service in the OMS Community Edition container runs in HTTPS mode. You must access OMS Community Edition in HTTPS mode to use the console.
    privileged Grants extended permissions to the container.
    pids-limit Specifies the process limit for the container. -1 indicates no limit.
    ulimit nproc Specifies the maximum number of user processes.
  6. Enter the new container.

    docker exec -it  ${CONTAINER_NAME} bash  
    

    Notice

    CONTAINER_NAME is the name of the created container.

  7. In the root directory, run the metadata initialization command.

    bash /root/docker_init.sh
    

    After the command is executed, the initialization process proceeds as follows:

    1. Initialize data in the MetaDB.

    2. Generate configuration files for all components.

    3. Restart all components.

    4. Initialize resource tags and resource groups of OMS Community Edition.

    When you run the docker_init.sh script, pay attention to the command-line output. After the initialization is completed, the system will prompt you [End] All initialization steps completed successfully.

    Notice

    The initialization process takes 2 to 4 minutes. Please wait patiently and do not interrupt the process.

Scale out multiple nodes in a single region

The initial environment has two nodes in a single region with a VIP as the cm_url

This section describes how to scale out the deployment of OMS Community Edition V4.2.7-CE to multiple nodes in a single region by using the docker_remote_deploy.sh script.

  1. Pull the OMS Community Edition V4.2.7-CE image and obtain the deployment script from the loaded image.

    sudo docker pull <OMS_IMAGE>
    
    sudo docker run -d --net host --name oms-config-tool <OMS_IMAGE> bash && sudo docker cp oms-config-tool:/root/docker_remote_deploy.sh . && sudo docker rm -f oms-config-tool
    
  2. Run the deployment tool by using the deployment script.

    sudo sh docker_remote_deploy.sh -o <OMS container mount directory> -i <local IP address> -d <OMS_IMAGE>
    
  3. Complete the deployment of two nodes in a single region as prompted. For more information, see Deploy OMS in multiple nodes in a single region.

  4. After the initialization is completed, log in to the OMS Community Edition console to confirm.

Procedure for scaling up

The cm_url specified in the initial node configuration, http://xxx.xxx.xxx.1:1188, serves as the VIP, and the cm_nodes for the scale-out node is xxx.xxx.xxx.2. This describes the procedure for scaling out a single region to multiple nodes.

  1. Configure the VIP, SLB, or domain name, and bind the scale-out node.

  2. Copy a copy of the configuration file to the new node. In the config.yaml configuration file on the new node, add the IP address xxx.xxx.xxx.2 under the cm_nodes parameter.

  3. Run the command to start the container.

    OMS_HOST_IP=xxx.xxx.xxx.2
    CONTAINER_NAME=oms_xxx
    IMAGE_TAG=feature_x.x.x-ce
    
    docker run -dit --net host \
    -v /data/config.yaml:/home/admin/conf/config.yaml \
    -v /data/oms/oms_logs:/home/admin/logs \
    -v /data/oms/oms_store:/home/ds/store \
    -v /data/oms/oms_run:/home/ds/run \
    # If you want to mount an HTTPS certificate in the OMS container, you need to set the following two parameters:
    #-v /data/oms/https_crt:/etc/pki/nginx/oms_server.crt
    #-v /data/oms/https_key:/etc/pki/nginx/oms_server.key
    -e OMS_HOST_IP=${OMS_HOST_IP} \
    --privileged=true \
    --pids-limit -1 \
    --ulimit nproc=65535:65535 \
    --name ${CONTAINER_NAME} \
    work.oceanbase-dev.com/obartifact-store/oms:${IMAGE_TAG}
    

    Start parameter description

    Parameter Description
    OMS_HOST_IP The IP address of the host. This parameter must be specified as the IP address of the current scale-out host.
    CONTAINER_NAME The name of the container. It must start with oms. xxx represents the specific version.
    IMAGE_TAG After loading the OMS Community Edition installation package by using Docker, obtain the [IMAGE ID] or [REPOSITORY:TAG] for the corresponding image by using the docker images command. This unique identifier is stored in <OMS_IMAGE>.

    Notice

    Replace work.oceanbase-dev.com/obartifact-store/oms:${IMAGE_TAG} with the actual image name for the image to be imported by using the docker load -i command.

    /data/oms/oms_logs
    /data/oms/oms_store
    /data/oms/oms_run
    /data/oms/oms_logs, /data/oms/oms_store, and /data/oms/oms_run can be replaced with local mount directories created on the server where the OMS Community Edition is deployed. These directories store log files, data components, and synchronization files generated by the OMS Community Edition, and they are persisted on the server.
    Notice:
    Mount directory paths must remain unchanged during re-deployment or upgrades.
    /home/admin/logs
    /home/ds/store
    /home/ds/run
    /home/admin/logs, /home/ds/store, and /home/ds/run are fixed directories in the container. The paths cannot be modified.
    /data/oms/https_crt (optional)
    /data/oms/https_key (optional)
    The path where the HTTPS certificate is mounted in the OMS Community Edition container. If the HTTPS certificate is mounted, the Nginx service in the OMS Community Edition container runs in HTTPS mode. You must access OMS Community Edition in HTTPS mode to use the console service.
    privileged Grants extended permissions to the container.
    pids-limit Sets the maximum number of processes allowed within the container. A value of -1 indicates no limit.
    ulimit nproc The maximum number of user processes is configured.
  4. Enter the container.

    docker exec -it  ${CONTAINER_NAME} bash  
    
  5. Execute metadata initialization in the root directory.

    bash /root/docker_init.sh
    
  6. After the initialization step is completed, log in to the OMS Community Edition console to confirm.

Previous topic

Integrate the OIDC protocol into OMS Community Edition to implement SSO
Last

Next topic

Check the deployment
Next
What is on this page
Scale out from a single node to multiple nodes
The initial node has a VIP as the cm_url
The initial node has a physical host IP address as the cm_url
Scale out from a single region to multiple regions
Scale out multiple nodes in a single region
The initial environment has two nodes in a single region with a VIP as the cm_url
Procedure for scaling up