Meet OceanBase AI Database, the unified database for operational data, real-time analytics, and AI. Explore ->

Meet OceanBase AI Database, the unified database for operational data, real-time analytics, and AI. Explore ->

OceanBase logo

OceanBase

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

Product Overview
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

OceanBase

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

Product Overview
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 Deployer

V4.3.0Community Edition

  • What is obd
  • Quick Start
    • Install obd
    • Quick deployment of OceanBase Database
    • Quickly deploy OCP
  • obd Command
    • Quick deployment commands
    • Cluster commands
    • Command groups
    • Image and repository commands
    • Test command groups
    • Tool commands
    • obdiag commands
    • Binlog service commands
    • Hardware commands
    • License commands
    • Password commands
    • Telemetry commands
  • User Guide
    • Usage overview
    • Deploy through GUI
      • Overview
      • Pattern configuration rules
      • Deploy an OceanBase cluster
      • Deploy OCP
      • Deploy OMS
      • Change components
      • Upgrade OCP
      • Upgrade OMS
    • Deploy through CLI
      • Configuration file
      • Component deployment
        • Deploy an OceanBase cluster
        • Deploy seekdb
        • Deploy obconfigserver
        • Deploy OMS
        • Deploy OCP
        • Deploy Alertmanager
        • Deploy obbinlog
        • Deploy oblogproxy
      • Cluster management
        • Physical Standby Database
          • Create a standby tenant
          • Role switching and decoupling
          • Switch the synchronization mode between primary and standby tenants
        • seekdb primary/standby instance
          • Create a standby instance
          • Role switching and decoupling
        • Scale out and component changes
        • Performance test
        • Diagnose a cluster
        • Backup and restore
        • Add a GUI monitoring system to an existing cluster
      • Cluster management
        • Use OCP to take over an OceanBase cluster deployed by obd
        • Take over an OceanBase cluster
      • Component upgrade
        • Upgrade OceanBase Database
        • Upgrade ODP
        • Upgrade OMS
  • Upgrade obd
  • FAQ
  • Error codes
  • Release Notes
    • Version rules
    • V4.3
      • OceanBase Deploy V4.3.0
    • V4.2
      • OceanBase Deployment Tool V4.2.0
    • V4.1
      • OceanBase Deployer V4.1.0
    • V4.0
      • OceanBase Deployer V4.0.0
    • V3.6
      • OceanBase Deployer V3.6.0
    • V3.5
      • OceanBase Deployer V3.5.0
    • V3.4
      • OceanBase Deployer V3.4.0
    • V3.3
      • OceanBase Deployer V3.3.0
    • V3.2
      • OceanBase Deployer V3.2.2
      • OceanBase Deployer V3.2.1
      • OceanBase Deployer V3.2.0
    • V3.1
      • OceanBase Deployer V3.1.2
      • OceanBase Deployer V3.1.1
      • OceanBase Deployer V3.1.0
    • V3.0
      • OceanBase Deployer V3.0.1
      • OceanBase Deployer V3.0.0
    • V2.10
      • OceanBase Deployer V2.10.1
      • OceanBase Deployer V2.10.0
    • V2.9
      • OceanBase Deployer V2.9.2
      • OceanBase Deployer V2.9.1
      • OceanBase Deployer V2.9.0
    • V2.8
      • OceanBase Deployment Tool V2.8.0
    • V2.7
      • OceanBase Deployment Tool V2.7.0
    • V2.6
      • OceanBase Deployment Tool V2.6.2
      • OceanBase Deployment Tool V2.6.1
      • OceanBase Deployment Tool V2.6.0
    • V2.5
      • OceanBase Deployer V2.5.0
    • V2.4
      • OceanBase Deployer V2.4.0
    • V2.3
      • OceanBase Deployment Tool V2.3.1
      • OceanBase Deployer V2.3.0
    • V2.2
      • OceanBase Deployment Tool V2.2.0
    • V2.1
      • OceanBase Deployer V2.1.1
      • OceanBase Deployment Tool V2.1.0
    • V2.0
      • OceanBase Deployment Tool V2.0.1
      • OceanBase Deployment Tool V2.0.0
    • V1.6
      • OceanBase Deployer V1.6.2
      • OceanBase Deployer V1.6.1
      • OceanBase Deployer V1.6.0
    • V1.5
      • OceanBase Deployer V1.5.0
    • V1.4
      • OceanBase Deployer V1.4.0
    • V1.3
      • OceanBase Deployer V1.3.3
      • OceanBase Deployer V1.3.2
      • OceanBase Deployer V1.3.0
    • V1.2
      • OceanBase Deployer V1.2.1
      • OceanBase Deployer V1.2.0
  • Interactive deployment of OceanBase Database Community Edition
  • Deploy a Community Edition cluster using the obd graphical interface
  • Deploy a Community Edition cluster by using an obd configuration file

Download PDF

What is obdInstall obdQuick deployment of OceanBase DatabaseQuickly deploy OCPQuick deployment commandsCluster commandsCommand groupsImage and repository commandsTest command groupsTool commandsobdiag commandsBinlog service commandsHardware commandsLicense commandsPassword commandsTelemetry commandsUsage overviewOverviewPattern configuration rulesDeploy an OceanBase clusterDeploy OCPDeploy OMSChange componentsUpgrade OCPUpgrade OMSConfiguration fileUpgrade obdFAQError codesVersion rulesOceanBase Deploy V4.3.0OceanBase Deployment Tool V4.2.0OceanBase Deployer V4.1.0OceanBase Deployer V4.0.0OceanBase Deployer V3.6.0OceanBase Deployer V3.5.0OceanBase Deployer V3.4.0OceanBase Deployer V3.3.0OceanBase Deployer V3.2.2OceanBase Deployer V3.2.1OceanBase Deployer V3.2.0OceanBase Deployer V3.1.2OceanBase Deployer V3.1.1OceanBase Deployer V3.1.0OceanBase Deployer V3.0.1OceanBase Deployer V3.0.0OceanBase Deployer V2.10.1OceanBase Deployer V2.10.0OceanBase Deployer V2.9.2OceanBase Deployer V2.9.1OceanBase Deployer V2.9.0OceanBase Deployment Tool V2.8.0OceanBase Deployment Tool V2.7.0OceanBase Deployment Tool V2.6.2OceanBase Deployment Tool V2.6.1OceanBase Deployment Tool V2.6.0OceanBase Deployer V2.5.0OceanBase Deployer V2.4.0OceanBase Deployment Tool V2.3.1OceanBase Deployer V2.3.0OceanBase Deployment Tool V2.2.0OceanBase Deployer V2.1.1OceanBase Deployment Tool V2.1.0OceanBase Deployment Tool V2.0.1OceanBase Deployment Tool V2.0.0OceanBase Deployer V1.6.2OceanBase Deployer V1.6.1OceanBase Deployer V1.6.0OceanBase Deployer V1.5.0OceanBase Deployer V1.4.0OceanBase Deployer V1.3.3OceanBase Deployer V1.3.2OceanBase Deployer V1.3.0OceanBase Deployer V1.2.1OceanBase Deployer V1.2.0Interactive deployment of OceanBase Database Community EditionDeploy a Community Edition cluster using the obd graphical interfaceDeploy a Community Edition cluster by using an obd configuration file
OceanBase logo

The Unified Distributed Database for the AI Era.

Follow Us
Products
OceanBase CloudOceanBase EnterpriseOceanBase Community EditionOceanBase seekdb
Resources
DocsBlogWhite PaperLive DemosTraining & CertificationTicket
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 Deployer
  3. V4.3.0
iconOceanBase Deployer
V 4.3.0Community Edition
Databases
  • OceanBase Database
  • OceanBase Cloud
  • OceanBase Tugraph
  • Interactive Tutorials
  • OceanBase Best Practices
Tools
  • OceanBase Cloud Platform
  • OceanBase Migration Service
  • OceanBase Developer Center
  • OceanBase Migration Assessment
  • OceanBase Admin Tool
  • OceanBase Loader and Dumper
  • OceanBase Deployer
  • Kubernetes operator for OceanBase
  • OceanBase Diagnostic Tool
  • OceanBase Binlog Service
Connectors and Middleware
  • OceanBase Database Proxy
  • Embedded SQL in C for OceanBase
  • OceanBase Call Interface
  • OceanBase Connector/C
  • OceanBase Connector/J
  • OceanBase Connector/ODBC
  • OceanBase Connector/NET
Community Edition
  • V 4.3.0
  • V 3.2.1
  • V 3.2.0
  • V 3.1.0
  • V 3.0.0
  • V 2.10.1
  • V 2.10.0
  • V 2.9.0
  • V 2.8.0
  • V 2.7.0
  • V 2.6.0
  • V 2.5.0
  • V 2.4.0
  • V 2.3.1
  • V 2.3.0
  • V 2.2.0
  • V 2.1.0
  • V 2.0.0
  • V 1.6.1

Configuration file

Last Updated:2026-06-30 14:40:58  Updated
Share
What is on this page
Glossary
Get a configuration file
Configuration file format
Configuration item description

folded

Share

This topic describes the configuration files of OceanBase Database and the parameters in the configuration files.

Glossary

  • obd

    OceanBase Deployer, a tool for installing and deploying OceanBase Database. For more information, see OceanBase Deployer.

  • OceanBase Database

  • seekdb
  • ODP
  • OBAgent

    OBAgent is a monitoring and data collection framework for OceanBase Database. It supports both push and pull data collection modes to meet different application scenarios.

  • OCP

    OceanBase Cloud Platform (OCP) is an enterprise-level management platform tailored for OceanBase clusters. It is compatible with all mainstream versions of OceanBase Database. OCP provides graphical management capabilities for OceanBase Database, including full lifecycle management of databases and related resources, monitoring and alerts, performance diagnostics, fault recovery, backup and restore, and more. It aims to help customers manage OceanBase Database more efficiently and reduce IT operation and maintenance costs and user learning costs. For more information, see OceanBase Cloud Platform.

  • OMS

  • MaaS

    OceanBase MaaS (Model-as-a-Service) is a unified management platform for deploying and managing large models locally. It supports the loading, running, testing, and monitoring of mainstream open-source large models, providing stable, efficient, and observable model services for enterprise users.

  • PowerRAG

    OceanBase PowerRAG deeply integrates vector retrieval capabilities with RAG technology, serving as the core for developing and running enterprise-level AI applications. PowerRAG supports the full lifecycle of intelligent agent workflows, from data access to model integration and business deployment. It provides accurate document retrieval capabilities through preconfigured document parsing strategies and advanced recall strategies. It also supports delivering industry-specific solutions through plugins and templates.

  • obconfigserver

    OceanBase Configserver, which provides metadata registration, storage, and query services for OceanBase Database. For more information, see ob-configserver.

  • Prometheus

    Prometheus is an open-source service monitoring system and time series database. It provides a general data model and fast data collection, storage, and query interfaces. For more information, see Prometheus.

  • Grafana

    Grafana is an open-source data visualization tool that can visualize various metrics from data sources to provide a more intuitive understanding of system operation status and performance metrics. For more information, see Grafana.

  • Alertmanager

    Alertmanager is an open-source alert management tool that handles alerts from monitoring systems like Prometheus. It provides features such as alert deduplication, grouping, routing, and muting. For more information, see Prometheus.

  • obbinlog

    OceanBase Binlog service collects transaction logs from OceanBase Database and converts them into MySQL Binlog, primarily used for real-time data subscription scenarios. For more information, see OceanBase Binlog service.

  • oblogproxy

    OceanBase's incremental log proxy service that connects to OceanBase and reads incremental logs, providing change data capture (CDC) capabilities to downstream services. For more information, see OceanBase Log Proxy Service.

    Note

    oblogproxy was renamed to obbinlog starting from V4.0.1.

Get a configuration file

OceanBase Database provides a sample configuration file for you to deploy a cluster. You can modify the sample configuration file based on your actual resources.

  • If you installed obd by downloading it directly, you can view the sample configuration file provided by obd in the /usr/obd/example directory.

  • If you installed obd by decompressing the all-in-one installation package, you can view the sample configuration file provided by obd in the ~/.oceanbase-all-in-one/obd/usr/obd/example directory.

  • You can also view the sample configuration file provided by obd in the GitHub repository of obd.

Note

The configuration files are divided into two modes: the mini mode and the professional mode. The configuration items in the two modes are basically the same, but the specifications are slightly different. You can choose the mode based on your actual resources.

  • Mini mode: This mode is suitable for personal devices with at least 8 GB of memory. The names of the configuration files in this mode contain the mini or min identifier.

  • Professional mode: This mode is suitable for high-end ECS instances or physical servers with at least 16 CPU cores and 64 GB of memory.

The following table describes the commonly used configuration files when you deploy OceanBase Database.

Configuration file
Description
Components included
mini-local-example.yaml/local-example.yaml Sample configuration file for local single-node deployment. You do not need to configure user information. You can deploy an OceanBase Database instance on a single local node. OceanBase Database
mini-single-example.yaml/single-example.yaml Sample configuration file for single-node deployment. You need to configure user information. You can deploy an OceanBase Database instance on any node. OceanBase Database
mini-single-with-obproxy-example.yaml/single-with-obproxy-example.yaml Sample configuration file for single-node deployment with ODP. OceanBase Database, ODP
mini-distributed-example.yaml/distributed-example.yaml Sample configuration file for distributed deployment. OceanBase Database
mini-distributed-with-obproxy-example.yaml/distributed-with-obproxy-example.yaml Sample configuration file for distributed deployment with ODP. OceanBase Database, ODP
default-components-min.yaml/default-components.yaml Sample configuration file for distributed deployment with ODP. OceanBase Database, ODP, OBAgent
all-components-min.yaml/all-components.yaml Sample configuration file for distributed deployment of all components. OceanBase Database, ODP, OBAgent, obconfigserver, oblogproxy, Prometheus, and Grafana

In addition to the configuration files described in the preceding table, the example directory stores different configuration files in different folders to meet various scenarios. The following table describes the folders.

  • alertmanager: The configuration files in this folder are for deploying Alertmanager. You can use these configuration files to deploy Alertmanager separately or together with OceanBase Database, ODP, OBAgent, Prometheus, and Alertmanager.

  • autodeploy: The configuration files in this folder are for the obd cluster autodeploy command. You only need to modify the IP address and directory in the configuration file. obd will automatically generate the maximum specifications of the complete configuration based on the resources of the target machine and deploy and start the cluster.

  • grafana: The configuration files in this folder are for deploying Grafana. You can use these configuration files to deploy Grafana separately or together with Prometheus.

  • maas: The configuration files in this folder are for deploying MaaS. You can deploy MaaS separately based on the provided configuration files.

  • obagent: The configuration files in this folder are for deploying OBAgent. You can choose the configuration file corresponding to the OBAgent version you want to deploy and deploy OBAgent.

  • obbinlog-ce: The configuration files in this folder are for deploying the Binlog service. You can use these configuration files to deploy the Binlog service separately or together with OceanBase Database, ODP, obbinlog, and obconfigserver.

  • ob-configserver: The configuration files in this folder are for deploying obconfigserver. You can use these configuration files to deploy obconfigserver separately or together with OceanBase Database, ODP, and obconfigserver.

  • oblogproxy: The configuration files in this folder are for deploying oblogproxy. You can use these configuration files to deploy oblogproxy separately or together with OceanBase Database, ODP, obconfigserver, and oblogproxy.

  • obproxy: The configuration files in this folder are for deploying ODP. You can use these configuration files to deploy ODP separately or together with OceanBase Database.

  • oceanbase-3.x: The configuration files in this folder are for OceanBase Database of the 3.x version.

  • ocp: The configuration files in this folder are for deploying OCP. You can use these configuration files to deploy OCP separately or together with OceanBase Database and ODP.

  • oms: The configuration files in this folder are for deploying OMS. You can deploy OMS separately based on the provided configuration files.

  • powerrag: The configuration files in this folder are for deploying PowerRAG. You can deploy PowerRAG separately based on the provided configuration files.

  • prometheus: The configuration files in this folder are for deploying Prometheus. You can use these configuration files to deploy Prometheus separately or together with OceanBase Database and OBAgent.

  • scale_out: The configuration files in this folder are for the scale-out and component change features. You can execute the corresponding commands to scale out components or add or remove components based on the configuration files. For more information, see Scale out and change components.

    Note

    The scale_out directory provides configuration file examples for only some components. Currently, obd supports the addition of all components except obbinlog-ce, oms, seekdb, maas, and powerrag, and the scaling out of all components except oblogproxy, obbinlog-ce, oms, seekdb, maas, and powerrag.

  • seekdb: The configuration file examples in this directory are provided for deploying seekdb. You can deploy seekdb based on the provided configuration file examples.

Configuration file format

The configuration files in OceanBase Database have a fixed format. This topic explains the meanings of different modules in the configuration file.

# Only need to configure when remote login is required
# user:   # ssh login configuration
#   username: your username
#   password: your password if needed
#   key_file: your ssh-key file path if needed
#   port: your ssh port, default 22
#   timeout: ssh connection timeout (second), default 30
oceanbase-ce:  # component name, the content under this module is the configuration for the component
  servers:  # list of nodes
    - name: server1  # The name is optional. If not specified, the node name is the same as the IP address. Here, the node name is server1.
      # Please do not use the hostname. Only the IP address is supported.
      ip: 10.10.10.1
    - name: server2
      ip: 10.10.10.2
    - name: server3
      ip: 10.10.10.3
  global:  # global configuration. If the same configuration is specified for multiple nodes, you can specify it here.
           # If a node has the same configuration as the global configuration, the node's configuration takes precedence.
    devname: eth0
    ......
    # Omitted for brevity.
  # In this example, multiple OceanBase processes are deployed on a single node. Therefore, different processes use different ports.
  # If you deploy an OceanBase cluster on multiple nodes, you can set the same port and path for all nodes.
  server1:  # node configuration. Here, the configuration is for server1, which is the server with the IP address 10.10.10.1. The node configuration has the highest priority.
    mysql_port: 2881 # The external port for OceanBase Database. The default value is 2881.
    rpc_port: 2882 # The internal port for OceanBase Database. The default value is 2882.
    #  The working directory for OceanBase Database. OceanBase Database is started under this directory. This is a required field.
    home_path: /home/admin/observer
    zone: zone1
  server2:  # node configuration. Here, the configuration is for server2, which is the server with the IP address 10.10.10.2.
    mysql_port: 2881 # The external port for OceanBase Database. The default value is 2881.
    rpc_port: 2882 # The internal port for OceanBase Database. The default value is 2882.
    #  The working directory for OceanBase Database. OceanBase Database is started under this directory. This is a required field.
    home_path: /home/admin/observer
    zone: zone2
  server3:   # node configuration. Here, the configuration is for server3, which is the server with the IP address 10.10.10.3.
    mysql_port: 2881 # The external port for OceanBase Database. The default value is 2881.
    rpc_port: 2882 # The internal port for OceanBase Database. The default value is 2882.
    #  The working directory for OceanBase Database. OceanBase Database is started under this directory. This is a required field.
    home_path: /home/admin/observer
    zone: zone3

The following table describes the modules.

Module
Description
user Configures user information. We recommend that you use the admin user. The following table describes the configuration items under this module:
  • username specifies the deployment username. obd uses this user to log in to the target server for deployment. Ensure that this user has write permissions for all directories specified in the configuration file.
  • password and key_file are used to verify the user. You can specify only one of them.
Notice
After you configure the key path, if your key does not require a password, comment on or delete the password parameter. Otherwise, the password parameter will be considered as the key password, which may cause the verification to fail.
oceanbase-ce The component name. The content under this module is the configuration for the component.
servers The node information. For each server, you must specify the - name: server name (line break) ip: server IP format. You can specify multiple servers in this format. The server names must be unique.
Alternatively, you can use the - <ip> (line break) - <ip> format to specify multiple servers. In this case, the - <ip> format is equivalent to - name: server IP (line break) ip: server IP.
global The configuration under this module is the global configuration. If the same configuration is specified for multiple nodes, you can specify it here. If a node has the same configuration as the global configuration, the node's configuration takes precedence.
server1 The configuration under this module is the node configuration. Here, server1 is used as an example. You need to modify the name to the name specified in the servers module. This indicates the server with the IP address 10.10.10.1.
Notice
The node configuration has the highest priority.

Configuration item description

This topic describes the configuration items of the components in the configuration file.

OceanBase Database
seekdb
ODP
OBAgent
OCP
OMS
MaaS
PowerRAG
obconfigserver
Prometheus
Grafana
Alertmanager
obbinlog
oblogproxy

This topic uses the example/distributed-with-obproxy-example.yaml file as an example to describe the configuration items of the oceanbase-ce component. For more information about how to deploy OceanBase Database by using a configuration file, see Deploy OceanBase Database in standalone mode.

oceanbase-ce:
  # version: 4.2.0.0
  # package_hash: 1cbd1fde8c6d7695015265da09738478c97e0e2f908fca6745dc9cc531860e74
  # tag: dev
  servers:
    - name: server1
      # Please don't use hostname, only IP can be supported
      ip: 10.10.10.1
    - name: server2
      ip: 10.10.10.2
    - name: server3
      ip: 10.10.10.3
  global:
    # Please set devname as the network adaptor's name whose ip is  in the setting of severs.
    # if set severs as "127.0.0.1", please set devname as "lo"
    # if current ip is 192.168.1.10, and the ip's network adaptor's name is "eth0", please use "eth0"
    # devname: eth0
    # if current hardware's memory capacity is smaller than 50G, please use the setting of "mini-single-example.yaml" and do a small adjustment.
    memory_limit: 64G # The maximum running memory for an observer
    # The reserved system memory. system_memory is reserved for general tenants. The default value is 30G.
    system_memory: 30G
    datafile_size: 192G # Size of the data file. 
    datafile_next: 200G # the auto extend step. Please enter an capacity, such as 2G
    datafile_maxsize: 1T # the auto extend max size. Please enter an capacity, such as 20G
    log_disk_size: 192G # The size of disk space used by the clog files.
    scenario: htap
    production_mode: true
    enable_syslog_wf: false # Print system logs whose levels are higher than WARNING to a separate log file. The default value is true.
    max_syslog_file_count: 4 # The maximum number of reserved log files before enabling auto recycling. The default value is 0.
    # observer cluster name, consistent with obproxy's cluster_name
    appname: obcluster
    enable_auto_start: true
    install_utils: true
    root_password: ****** # root user password
    proxyro_password: ****** # proxyro user password, consistent with obproxy's observer_sys_password, can be empty
    # ocp_agent_monitor_username: ocp_monitor
    # ocp_agent_monitor_password: ****** # The password for obagent monitor user
  # In this example , support multiple ob process in single node, so different process use different ports.
  # If deploy ob cluster in multiple nodes, the port and path setting can be same. 
  server1:
    # local_ip: 10.10.10.1
    mysql_port: 2881 # External port for OceanBase Database. The default value is 2881. DO NOT change this value after the cluster is started.
    rpc_port: 2882 # Internal port for OceanBase Database. The default value is 2882. DO NOT change this value after the cluster is started.
    obshell_port: 2886 # Operation and maintenance port for OceanBase Database.
    # The working directory for OceanBase Database. OceanBase Database is started under this directory. This is a required field.
    home_path: /home/admin/observer
    # The directory for data storage. The default value is $home_path/store.
    # data_dir: /data
    # The directory for clog, ilog, and slog. The default value is the same as the data_dir value.
    # redo_dir: /redo
    zone: zone1
  server2:
    # local_ip: 10.10.10.2
    mysql_port: 2881 # External port for OceanBase Database. The default value is 2881. DO NOT change this value after the cluster is started.
    rpc_port: 2882 # Internal port for OceanBase Database. The default value is 2882. DO NOT change this value after the cluster is started.
    zone_region: hangzhou
    zone_idc: idc1
    #  The working directory for OceanBase Database. OceanBase Database is started under this directory. This is a required field.
    home_path: /home/admin/observer
    # The directory for data storage. The default value is $home_path/store.
    # data_dir: /data
    # The directory for clog, ilog, and slog. The default value is the same as the data_dir value.
    # redo_dir: /redo
    zone: zone2
  server3:
    # local_ip: 10.10.10.3
    mysql_port: 2881 # External port for OceanBase Database. The default value is 2881. DO NOT change this value after the cluster is started.
    rpc_port: 2882 # Internal port for OceanBase Database. The default value is 2882. DO NOT change this value after the cluster is started.
    #  The working directory for OceanBase Database. OceanBase Database is started under this directory. This is a required field.
    home_path: /home/admin/observer
    # The directory for data storage. The default value is $home_path/store.
    # data_dir: /data
    # The directory for clog, ilog, and slog. The default value is the same as the data_dir value.
    # redo_dir: /redo
    zone: zone3

The following table describes the configuration items that you need to pay attention to. For more information, see OceanBase Database configuration items.

Parameter
Required
Default value
Description
version Optional The latest version. The version of the component to be deployed. This parameter is usually not required.
package_hash Optional The latest version. The hash of the component to be deployed. This parameter is usually not required.
tag Optional N/A The tag of the component to be deployed. This parameter is usually not required. When you set a tag for the OceanBase Database installation package that you compile yourself, you can use the tag to specify.
servers Required N/A For each server, use - name: server name (press Enter) ip: server IP address to specify. Specify the server multiple times if multiple servers are required. The server names cannot be repeated.
If the server IP addresses are unique, you can also use - <ip> (press Enter) - <ip> to specify. In this case, - <ip> is equivalent to - name: server IP address (press Enter) ip: server IP address.
devname Optional N/A The network card corresponding to the IP address specified in servers. You can run the ip addr command to view the IP address and network card correspondence.

Note

Since OceanBase Database V4.2.0, we do not recommend that you configure this parameter.

| system_memory | Optional | 0M | The amount of system memory reserved. The value of this parameter will occupy the memory specified by memory_limit. If this parameter is not specified, OceanBase Database will adaptively determine the value. |

| scenario | Optional |

  • When you run the obd demo command to deploy, the default value is express_oltp.
  • When you deploy by using other commands, the default value is htap.
| The workload type of the cluster. If this parameter is not specified, an interactive option will be provided for you to select the workload type. Valid values:
  • express_oltp: suitable for workloads such as trade and payment core systems and high-throughput internet applications. These workloads have no foreign key constraints, stored procedures, long transactions, large transactions, complex joins, or complex subqueries.
  • complex_oltp: suitable for workloads such as banking and insurance systems. These workloads usually have complex joins, complex correlated subqueries, batch jobs written in PL, long transactions, and large transactions. Parallel execution is sometimes used for queries that run for a short time.
  • olap: suitable for real-time data warehouse analysis scenarios.
  • htap: suitable for hybrid OLAP and OLTP workloads. This workload is usually used to obtain real-time insights from active operational data, fraud detection, and personalized recommendations.
  • kv: suitable for key-value workloads and wide-column workloads similar to HBase. These workloads usually have very high throughput and are sensitive to latency.

Notice

This parameter is supported only when the version of OceanBase Database to be deployed is V4.2.5 or later.

| | production_mode | Required | true | Specifies whether to set the cluster to production mode. The default value is true, which indicates that the cluster is in production mode. When you set this parameter to production mode, the value of memory_limit must be no less than 16G, and the value of __min_full_resource_pool_memory (the minimum memory limit of a resource pool) must be no less than 2147483648. | | enable_syslog_wf | Optional | true | Specifies whether to print system logs of WARN and higher levels to a separate log file. | | max_syslog_file_count | Optional | 0 | The maximum number of log files that can be retained before they are recycled. A value of 0 indicates that no automatic cleanup is performed. | | appname | Optional | The deployment name | The name of the OceanBase cluster. If this parameter is not specified, the default value is the deployment name specified in the deployment command (deploy name). | | enable_auto_start | Optional | false | Specifies whether to enable the automatic start feature of the observer process. If this parameter is set to true, the observer process will be automatically started when the OBServer node restarts.

Note

Make sure that the deployment environment is not a container and that the deployment user has sudo privileges when you configure this parameter.

| | install_utils | Optional | false | Specifies whether to install the oceanbase-ce-utils package. After you install the oceanbase-ce-utils package, you can view the directories of OceanBase Utils (such as ob_admin, ob_error, and oblogminer) in the bin directory of the OceanBase cluster installation directory. When you set this parameter to true, you cannot set this parameter to false by using the obd cluster edit-config command. In other words, you cannot uninstall the oceanbase-ce-utils package by using obd commands. | | mysql_port | Required | 2881 | The port number of the SQL service protocol. The value ranges from [1025, 65535]. The default value is 2881. | | rpc_port | Required | 2882 | The port number of the remote access protocol. This is the RPC communication port between the observer process and the processes of other nodes. The value ranges from [1025, 65535]. The default value is 2882. | | obshell_port | Required | 2886 | The port number of the OceanBase Database O&M service. The value ranges from [1025, 65535]. The default value is 2886. | | zone_region | Optional | default_region | The region of a single zone. | | zone_idc | Optional | default_idc | The IDC of a single zone. | | home_path | Required | N/A | The installation path of OceanBase Database. | | data_dir | Optional | $home_path/store | The directory where SSTables and other data are stored. We recommend that you configure this parameter to an independent disk. | | redo_dir | Optional | The same as data_dir by default. | When you deploy OceanBase Database of V3.x, this parameter specifies the directories of clog, ilog, and slog. When you deploy OceanBase Database of V4.x, this parameter specifies the directories of clog and slog. By default, this parameter is the same as data_dir. We recommend that you configure this parameter to an independent disk. | | root_password | Optional |
  • Empty in versions earlier than obd V2.1.0
  • A random string in obd V2.1.0 and later
| The password of the super administrator (root@sys) of the OceanBase cluster. We recommend that you set a complex password. When you use obd V2.1.0 or later, a random string will be automatically generated if this parameter is not specified. After the deployment is completed, you can run the obd cluster edit-config command to view the corresponding parameter in the configuration file to obtain the password. | | proxyro_password | Optional |
  • Empty in versions earlier than obd V2.1.0
  • A random string in obd V2.1.0 and later
| The password of the proxyro account (proxyro@sys) used to connect to the OceanBase cluster. After you configure this parameter, a proxyro user will be created in the sys tenant of OceanBase Database. When you use obd V2.1.0 or later, a random string will be automatically generated if this parameter is not specified. After the deployment is completed, you can run the obd cluster edit-config command to view the corresponding parameter in the configuration file to obtain the password. | | ocp_agent_monitor_username | Optional | ocp_monitor | The username of the user used to collect monitoring data of OceanBase Database. After you configure this parameter, a user with the same name will be created in the sys tenant of OceanBase Database. | | ocp_agent_monitor_password | Optional |
  • Empty in versions earlier than obd V2.1.0
  • A random string in obd V2.1.0 and later
| The password of the user used to collect monitoring data of OceanBase Database. When you use obd V2.1.0 or later, if you deploy OceanBase Database and OBAgent at the same time, a random string will be automatically generated if this parameter is not specified. After the deployment is completed, you can run the obd cluster edit-config command to view the corresponding parameter in the configuration file to obtain the password. | | zone | Required | zone1 | The name of the zone where the OBServer node is located. |

This topic uses the example/seekdb/seekdb-single-example.yaml file as an example to describe the configuration items that you must configure when you deploy seekdb. For more information about how to deploy seekdb by using a configuration file, see Deploy seekdb by using a configuration file in Deploy seekdb.

seekdb:
  servers:
    - 10.10.10.1
  global:
    home_path: /root/seekdb # Working directory; SeekDB runs under this path (required).
    data_dir: /data/seekdb/store # Data directory for SSTable and related data.
    redo_dir: /data/seekdb/redo # Redo / clog directory; ensure enough free space (see log_disk_size).
    mysql_port: 2881
    obshell_port: 2886
    memory_limit: 1G # Soft / hard memory limits; use capacity units such as 1G, 8G.
    memory_hard_limit: 4G
    # datafile_size: 16G  # Size of the data file.
    # datafile_next_size: 2G  # Size of the next data file.
    datafile_maxsize: 20G # Upper bound for data file auto-extend.
    cpu_count: 8
    max_syslog_file_count: 2
    log_disk_size: 2G # Redo log disk quota; for primary/standby, interactive install uses about 3 * memory_limit.
    enable_auto_start: false # Whether to register systemd auto-start (true/false).
    production_mode: false  # Dev-like deployment; set to true for production-style tuning.
    # root_password: ''

    # --- Optional: RPC / replication (primary or standby). Uncomment and adjust as needed. ---
    # For primary: expose RPC for standbys (also set rpc_port).
    # enable_rpc_service: true
    # rpc_port: 2882
    # When non-zero, redo recycling triggers when usage exceeds this percentage of log_disk_size (suggested ~80 in some setups).
    # log_disk_utilization_threshold: 80

The following table lists the configuration items that you must pay attention to. For more information, see seekdb configuration items.

Configuration item
Required
Default value
Description
servers Yes N/A Specify each server in the following format: - name: server name (Enter) ip: server IP address. If multiple servers are specified, this format must be repeated for each server. The server name must be unique.
If the server IP addresses are unique, you can also specify them in the following format: - <ip> (Enter) - <ip>. In this case, - <ip> is equivalent to - name: server IP address (Enter) ip: server IP address.
home_path Yes N/A The installation path of seekdb.
data_dir No $home_path/store The directory for storing SSTables. We recommend that you configure a dedicated disk for this directory.
redo_dir No Same as data_dir by default The path of the transaction log disk. We recommend that you configure a dedicated disk for this directory and ensure that the disk space is sufficient (log_disk_size is set).
mysql_port Yes 2881 The port number of the SQL service protocol. Valid values: [1025, 65535]. Default value: 2881.
rpc_port Yes 2882 The port number of the remote access protocol. Valid values: [1025, 65535]. Default value: 2882. This port is used for data synchronization between the primary instance and the standby instance of seekdb.
obshell_port Yes 2886 The port number of the O&M service of the seekdb instance. Valid values: [1025, 65535]. Default value: 2886.
memory_limit No 1G The memory size of the seekdb instance.
memory_hard_limit No 4G The hard limit of the memory of the seekdb instance. If the value is 0, the hard limit is 90% of the system memory.
datafile_size No N/A The initial space of the data disk. If this parameter is not specified, the value is determined based on the logic of the seekdb instance.
datafile_next_size No N/A The expansion step size of the data disk. If this parameter is not specified, the value is determined based on the logic of the seekdb instance.
datafile_maxsize No 20G The maximum available space of the disk, which is used to set the automatic expansion.
cpu_count No N/A The total number of CPUs available to the seekdb instance. If this parameter is set to 0, the system automatically detects the number of CPUs.
max_syslog_file_count No 2 The maximum number of log files that can be retained before they are recycled. If the value is 0, the system does not automatically recycle the log files.
log_disk_size No max(1/2 * memory_limit , 2G) The maximum available space of the disk for clog files. Ensure that the path specified by redo_dir has sufficient disk space.
root_password No A random string The password of the root user of the seekdb instance. We recommend that you set a complex password. If this parameter is not specified, a random string is generated. After the instance is deployed, you can run the obd cluster edit-config command to view the corresponding configuration item in the configuration file and obtain the password.
enable_auto_start No false Specifies whether to enable the auto-start feature of the seekdb process. If this parameter is set to true, the seekdb process is automatically started when the seekdb node is restarted.

Note

Make sure that the deployment environment is not a container and that the deployment user has the sudo permission when you configure this parameter.

production_mode Yes true Specifies whether to set the instance to be deployed to the production mode. The default value is true, which indicates the production mode.
enable_rpc_service No false Specifies whether to enable the RPC service. To deploy a standby instance for the current seekdb instance, set this parameter to true.
log_disk_utilization_threshold No 0 The percentage of the log_disk_size used. The default value is 0, which indicates that the system recycles the redo logs as soon as possible. We recommend that you set the value to 80. If the utilization exceeds this threshold, the system triggers redo log recycling.

Here, we use the example/obproxy/obproxy-only-example.yaml file as an example to introduce the configuration items to be aware of when deploying ODP.

obproxy-ce:
  servers:
    - 10.10.10.4
  global:
    listen_port: 2883 # External port. The default value is 2883.
    prometheus_listen_port: 2884 # The Prometheus port. The default value is 2884.
    rpc_listen_port: 2885
    enable_obproxy_rpc_service: true
    home_path: /home/admin/obproxy
    # oceanbase root server list
    # format: ip:mysql_port;ip:mysql_port. When a depends exists, obd gets this value from the oceanbase-ce of the depends.
    rs_list: 10.10.10.1:2881;10.10.10.2:2881;10.10.10.3:2881
    # obproxy_config_server_url: http://10.10.10.1:9999/services?Action=GetObProxyConfig
    enable_cluster_checkout: false
    # observer cluster name, consistent with oceanbase-ce's appname. When a depends exists, obd gets this value from the oceanbase-ce of the depends.
    cluster_name: obcluster
    client_session_id_version: 2 #This parameter is used to specify whether to use the new logic to generate the client session ID. The parameter type is integer. The value range is [1, 2] and the default value is 2 (use the new logic).
    proxy_id: 5 #This parameter is used to set the ID for an ODP. The parameter type is integer. The default value is 0 and the value range is [0, 8191].
    skip_proxy_sys_private_check: true
    enable_strict_kernel_release: false
    obproxy_sys_password: ***** # obproxy sys user password, can be empty. When a depends exists, obd gets this value from the oceanbase-ce of the depends.
    observer_sys_password: ***** # proxyro user password, consistent with oceanbase-ce's proxyro_password, can be empty. When a depends exists, obd gets this value from the oceanbase-ce of the depends.

The following table lists the configuration items you need to pay attention to. For more information, see ODP configuration items.

Configuration item
Required
Default value
Description
servers Required N/A Each server must be specified with - name: server name (press Enter) ip: server IP address. You can specify multiple servers by repeating this format. The server names must be unique.
If the server IP addresses are unique, you can also specify them in the - <ip> (press Enter) - <ip> format. In this case, the - <ip> format is equivalent to - name: server IP address (press Enter) ip: server IP address.
listen_port Required 2883 The listening port of ODP. Default value: 2883.
prometheus_listen_port Required 2884 The listening port of ODP for Prometheus. Default value: 2884.
rpc_listen_port Optional 2885 The listening port of the RPC service of ODP. Default value: 2885.

Note

This configuration item takes effect only when you deploy ODP V4.3.0 or later and set enable_obproxy_rpc_service to true.

enable_obproxy_rpc_service Optional true Specifies whether to enable the RPC service of ODP. The default value true indicates that the RPC service is enabled. The value false indicates that the RPC service is disabled. In this case, the rpc_listen_port configuration item will not take effect.

Note

  • This configuration item takes effect only when you deploy ODP V4.3.0 or later.

  • If you do not specify this configuration item, its default value will be set to false after you upgrade ODP.
home_path Required N/A The installation path of ODP.
rs_list Optional N/A The list of OBServer nodes in the OceanBase cluster, in the ip:mysql_port;ip:mysql_port format. If you use the rs_list configuration item to deploy ODP, it can only proxy the specified cluster.

Notice

rs_list and obproxy_config_server_url are mutually exclusive. You can specify only one of them. If you specify rs_list, you do not need to specify obproxy_config_server_url.

obproxy_config_server_url Optional N/A The URL of obconfigserver. After you specify this parameter, ODP can proxy all clusters registered in obconfigserver. If you do not deploy obconfigserver and do not configure the ob-configserver component, you can also use the rs_list parameter.
enable_cluster_checkout Optional true Specifies whether to check the cluster name. If this parameter is set to true, ODP will send the cluster name to the OBServer node during login for verification.
cluster_name Optional N/A The name of the OceanBase cluster that ODP can proxy. If there are dependencies, obd will obtain this value from the oceanbase-ce dependency.
client_session_id_version Optional 2 Specifies whether to use the new Client Session ID generation logic. The value can be set to 1 or 2. If set to 2, the new Client Session ID generation logic will be used.

Note

obd supports configuring the client_session_id_version parameter in the configuration file starting from V2.7.0.

proxy_id Optional 0 Specifies the ID of ODP to ensure that the Client Session IDs generated by different ODP instances do not conflict. The value range of the proxy_id parameter depends on the value of the client_session_id_version parameter. The value range of the proxy_id parameter is as follows:
  • If the value of the client_session_id_version parameter is 1, the value range of the proxy_id parameter is [0,255].
  • If the value of the client_session_id_version parameter is 2, the value range of the proxy_id parameter is [0,8191].

Note

obd supports configuring the proxy_id parameter in the configuration file starting from V2.7.0.

enable_strict_kernel_release Required false Specifies whether to check the OS kernel. If set to true, ODP supports only Red Hat 5u, 6u, and 7u. If set to false, the Linux kernel version is not checked, and ODP may be unstable.
obproxy_sys_password Optional
  • Empty for obd versions earlier than V2.1.0
  • Random string for obd V2.1.0 and later
The password of the ODP administrator account (root@proxysys). If you use obd V2.1.0 or later, a random string will be automatically generated if this parameter is not specified. You can view the password in the configuration file after deployment by using the obd cluster edit-config command.
observer_sys_password Optional The same as proxyro_password when OceanBase Database is deployed together. For standalone deployment, the value depends on the obd version:
  • Empty for obd versions earlier than V2.1.0
  • Random string for obd V2.1.0 and later
The password of the account (proxyro@sys) used by ODP to connect to the OceanBase cluster. The password must be the same as the value of proxyro_password in OceanBase Database. If they are different, ODP cannot connect to OceanBase Database after the cluster is deployed.

Here, we use the example/obagent/obagent-only-example.yaml file as an example to introduce the configuration items to be aware of when deploying OBAgent.

obagent:
  servers:
    - name: server1
      # Please don't use hostname, only IP can be supported
      ip: 10.10.10.1
    - name: server2
      ip: 10.10.10.2
    - name: server3
      ip: 10.10.10.3
  global:
    # The working directory for obagent. obagent is started under this directory. This is a required field.
    home_path: /home/admin/obagent
    # The port of monitor agent. The default port number is 8088.
    monagent_http_port: 8088
    # The port of manager agent. The default port number is 8089.
    mgragent_http_port: 8089
    # Log path. The default value is log/monagent.log.
    log_path: log/monagent.log
    # The log level of manager agent.
    mgragent_log_level: info
    # The total size of manager agent.Log size is measured in Megabytes. The default value is 30M.
    mgragent_log_max_size: 30
    # Expiration time for manager agent logs. The default value is 30 days.
    mgragent_log_max_days: 30
    # The maximum number for manager agent log files. The default value is 15.
    mgragent_log_max_backups: 15
    # The log level of monitor agent.
    monagent_log_level: info
    # The total size of monitor agent.Log size is measured in Megabytes. The default value is 200M.
    monagent_log_max_size: 200
    # Expiration time for monitor agent logs. The default value is 30 days.
    monagent_log_max_days: 30
    # The maximum number for monitor agent log files. The default value is 15.
    monagent_log_max_backups: 15
    # Username for HTTP authentication. The default value is admin.
    http_basic_auth_user: admin
    # Password for HTTP authentication. The default value is a random password.
    # http_basic_auth_password: ******
    monitor_user: ocp_monitor
    # Monitor password for OceanBase Database. The default value is empty. When a depends exists, obd gets this value from the oceanbase-ce of the depends. The value is the same as the ocp_agent_monitor_password in oceanbase-ce.
    monitor_password: 
    # The SQL port for observer. The default value is 2881. When a depends exists, obd gets this value from the oceanbase-ce of the depends. The value is the same as the mysql_port in oceanbase-ce.
    sql_port: 2881
    # The RPC port for observer. The default value is 2882. When a depends exists, obd gets this value from the oceanbase-ce of the depends. The value is the same as the rpc_port in oceanbase-ce.
    rpc_port: 2882
    # Cluster name for OceanBase Database. When a depends exists, obd gets this value from the oceanbase-ce of the depends. The value is the same as the appname in oceanbase-ce.
    cluster_name: obcluster
    # Cluster ID for OceanBase Database. When a depends exists, obd gets this value from the oceanbase-ce of the depends. The value is the same as the cluster_id in oceanbase-ce.
    cluster_id: 1
    # The redo dir for Oceanbase Database. When a depends exists, obd gets this value from the oceanbase-ce of the depends. The value is the same as the redo_dir in oceanbase-ce.
    ob_log_path: /home/admin/observer/store
    # The data dir for Oceanbase Database. When a depends exists, obd gets this value from the oceanbase-ce of the depends. The value is the same as the data_dir in oceanbase-ce.
    ob_data_path: /home/admin/observer/store
    # The work directory for Oceanbase Database. When a depends exists, obd gets this value from the oceanbase-ce of the depends. The value is the same as the home_path in oceanbase-ce.
    ob_install_path: /home/admin/observer
    # The log path for Oceanbase Database. When a depends exists, obd gets this value from the oceanbase-ce of the depends. The value is the same as the {home_path}/log in oceanbase-ce.
    observer_log_path: /home/admin/observer/log
    # Monitor status for OceanBase Database.  Active is to enable. Inactive is to disable. The default value is active. When you deploy an cluster automatically, obd decides whether to enable this parameter based on depends.
    ob_monitor_status: active
  server1:
    # Zone name for your observer. The default value is zone1. When a depends exists, obd gets this value from the oceanbase-ce of the depends. The value is the same as the zone name in oceanbase-ce.
    zone_name: zone1
  server2:
    # Zone name for your observer. The default value is zone1. When a depends exists, obd gets this value from the oceanbase-ce of the depends. The value is the same as the zone name in oceanbase-ce.
    zone_name: zone2
  server3:
    # Zone name for your observer. The default value is zone1. When a depends exists, obd gets this value from the oceanbase-ce of the depends. The value is the same as the zone name in oceanbase-ce.
    zone_name: zone3

You need to pay attention to the following configuration items. For more information, see OBAgent configuration items.

Configuration Item
Required
Default Value
Description
servers Yes N/A Each server needs to be specified with - name: server name (line break) ip: server IP. If multiple servers are specified, they need to be specified multiple times. The server name must be unique.
If the server IPs are unique, you can also specify them with - <ip> (line break) - <ip>. In this case, - <ip> is equivalent to - name: server IP (line break) ip: server IP.
Caution
When you use OBAgent to monitor OceanBase Database, the servers configuration must be consistent with that of OceanBase Database.
home_path Yes N/A The working directory of the component.
monagent_http_port Yes 8088 The HTTP port for OBAgent monitoring.
mgragent_http_port Yes 8089 The HTTP port for OBAgent management.
log_path Yes log/monagent.log The log path.
mgragent_log_level No N/A The log level of ob_mgragent.
mgragent_log_max_size No 30 The size of the ob_mgragent log file, in MB.
mgragent_log_max_days No 30 The maximum number of days for which the ob_mgragent log file is retained.
mgragent_log_max_backups No 15 The maximum number of backups for the ob_mgragent log file.
monagent_log_level No info The log level of ob_monagent.
monagent_log_max_size No 200 The size of the ob_monagent log file, in MB.
monagent_log_max_days No 30 The maximum number of days for which the ob_monagent log file is retained.
monagent_log_max_backups No 15 The maximum number of backups for the ob_monagent log file.
http_basic_auth_user Yes admin The username for HTTP service authentication.
http_basic_auth_password No A random string The password for HTTP service authentication. In custom scenarios, the password must be at least one character in length and can contain digits (0~9), uppercase letters (A~Z), lowercase letters (a~z), and special characters (~^*{}[]_-+). If this parameter is not configured, obd generates a random string. After the deployment is completed, you can run the obd cluster edit-config command to view the password in the configuration file.
monitor_user No ocp_monitor The username for data collection of OceanBase Database monitoring. After you configure this parameter, a user with the same name is created in the sys tenant of OceanBase Database. If you deploy OceanBase Database and configure the oceanbase-ce component at the same time, the system uses the value of the ocp_agent_monitor_username parameter for deployment.
monitor_password No Empty The password for data collection of OceanBase Database monitoring. If you deploy OceanBase Database and configure the oceanbase-ce component at the same time, the system uses the value of the ocp_agent_monitor_password parameter for deployment.
sql_port No 2881 The SQL port of the OBServer node. The value must be the same as that of the mysql_port parameter in OceanBase Database.
rpc_port No 2882 The RPC port of the OBServer node. The value must be the same as that of the rpc_port parameter in OceanBase Database.
cluster_name No obcluster The name of the OceanBase cluster. The value must be the same as that of the appname parameter in the oceanbase-ce component.
cluster_id No 1 The ID of the OceanBase cluster. The value must be the same as that of the cluster_id parameter in the oceanbase-ce component.
ob_log_path No N/A The path of the log disk of the OBServer node. The value must be the same as that of the redo_dir parameter in the oceanbase-ce component.
ob_data_path No N/A The path of the data disk of the OBServer node. The value must be the same as that of the data_dir parameter in the oceanbase-ce component.
ob_install_path No N/A The installation directory of the OBServer node. The value must be the same as that of the home_path parameter in the oceanbase-ce component.
observer_log_path No N/A The log path under the installation directory of the OBServer node. The value must be the same as that of {home_path}/log in the oceanbase-ce component.
ob_monitor_status Yes active The status of OceanBase monitoring. active indicates that the monitoring is enabled, and inactive indicates that the monitoring is disabled.
zone_name No zone1 The name of the zone where the OBServer node is located.

This example uses the example/ocp-server/ocp-only-example.yaml file to describe the configuration items that you need to pay attention to when you deploy OCP. We recommend that you deploy OCP on the obd GUI. For more information, see Deploy OCP on the GUI.

ocp-server-ce:
  servers:
    - 10.10.10.1
  global:
    home_path: /home/admin/ocp
    memory_size: 8G
    port: 8080
    soft_dir: /home/admin/ocp/software # Directory used to store packages
    log_dir: /home/admin/ocp/logs # Directory used to temporary store downloaded logs
    # admin_password: ****** # Password of ocp's admin user
    jdbc_url: jdbc:oceanbase://10.10.10.1:2881/meta_database # Jdbc url of meta obcluster
    jdbc_username: root@sys
    jdbc_password: ********
    # ocp_site_url: http://10.10.10.1:8080
    # OCP meta tenant definition, including tenant name, cpu and memory
    ocp_meta_tenant:
      tenant_name: ocp_meta
      max_cpu: 2.0
      memory_size: 2G
    ocp_meta_username: root # User to use under ocp meta tenant
    ocp_meta_password: ****** # Password used to connect to ocp meta tenant
    ocp_meta_db: meta_database # Database used to store ocp meta data
    # OCP monitor tenant definition, including tenant name, cpu and memory
    ocp_monitor_tenant:
      tenant_name: ocp_monitor
      max_cpu: 2.0
      memory_size: 2G
    ocp_monitor_username: root # User to use under ocp monitor tenant
    ocp_monitor_password: ****** # Password used to connect to ocp meta tenant
    ocp_monitor_db: monitor_database # Database used to store ocp meta data

You need to pay attention to the following configuration items. For more information, see OCP configuration items.

Note

  • Redeployment will clear the data in the cluster. If you want to modify the configuration items whose Effective Method is Redeployment, back up the data first.

  • If you deploy OCP by using the distributed-with-obproxy-and-ocp-example.yaml configuration file, obd obtains the information about the OCP metadata database from the configuration of the OceanBase Database component. In this case, the configuration of the jdbc_xxx parameters will fail.

Parameter
Required
Default value
Effective method
Description
servers Yes None Redeploy Specify each server in the format of - name: server name (press Enter) ip: server IP address. If multiple servers are specified, repeat the specification. The server names must be unique.
If the server IP addresses are unique, you can also specify them in the format of - <ip> (press Enter) - <ip>. In this case, the format of - <ip> is equivalent to - name: server IP address (press Enter) ip: server IP address.
home_path Yes None Redeploy The working directory of the component.
memory_size No 2G Restart the process The size of memory used by the ocp-server process.
port Yes 8080 Restart the process The listening port of the OCP service.
soft_dir No ~/ocp-server/lib Redeploy The directory where software packages such as OBProxy and OBAgent are stored in OCP.
log_dir No $home_path/log Redeploy The log storage directory of OCP.
admin_password Yes A random string Restart the process The login password of the OCP administrator account.
jdbc_url No None Restart the process The JDBC connection string of the OCP metadata database.
jdbc_username No None Restart the process The login username of the OCP metadata database, in the format of user_name@tenant_name. When OCP is deployed independently, it must be set to root@sys.

Note

When OCP is deployed independently, this parameter is required.

jdbc_password No None Restart the process The login password of the OCP metadata database.
ocp_site_url No None Restart the process The URL for accessing the OCP website. The URL must start with http or https, contain the VIP address, domain name, or port, and not end with a slash (/). If this parameter is not configured, the URL for accessing OCP is generated based on the server IP address (servers) and port (port) specified in the configuration file.
ocp_meta_tenant Yes tenant_name: meta_tenant
max_cpu: 1
memory_size: 2147483648
Redeploy The information of the OCP metadata tenant. obd will create the metadata tenant for OCP based on the configuration here.
  • tenant_name: the name of the OCP metadata tenant.
  • max_cpu: the maximum number of CPU cores allocated to the OCP metadata tenant.
  • memory_size: the size of memory allocated to the OCP metadata tenant.
ocp_meta_username No meta Restart the process The username for connecting to the OCP metadata tenant.
ocp_meta_password Yes
  • When OCP is deployed independently, the default value is oceanbase.
  • When OCP is deployed based on OceanBase Database, the default value is a random string.
Restart the process The password corresponding to the username specified by ocp_meta_username.
ocp_meta_db No meta_database Redeploy The name of the database where OCP metadata is stored.
ocp_monitor_tenant Yes tenant_name: monitor_tenant
max_cpu: 1
memory_size: 2147483648
Redeploy The information of the OCP monitoring data tenant. obd will create the monitoring data tenant for OCP based on the configuration here.
  • tenant_name: the name of the OCP monitoring data tenant.
  • max_cpu: the maximum number of CPU cores allocated to the OCP monitoring data tenant.
  • memory_size: the size of memory allocated to the OCP monitoring data tenant.
ocp_monitor_username No monitor_user Restart the process The username for connecting to the OCP monitoring data tenant.
ocp_monitor_password Yes
  • When OCP is deployed independently, the default value is oceanbase.
  • When OCP is deployed based on OceanBase Database, the default value is a random string.
Restart the process The password corresponding to the username specified by ocp_monitor_username.
ocp_monitor_db No monitor_database Redeploy The name of the database where OCP monitoring data is stored.

This topic uses the example/oms/oms-only-example.yaml file as an example to describe the parameters to be configured when you deploy OMS. We recommend that you deploy OMS by using the obd GUI. For more information, see Deploy OMS by using the GUI.

oms:
  type: docker # Deployment type, use docker for containerized deployment
  image_name: reg.docker.alibaba-inc.com/oceanbase/oms # Docker image name for OMS
  tag: feature_4.2.11_ce # Docker image tag
  servers:
    - 127.0.0.1 # Server IP address, please don't use hostname, only IP can be supported
    - 10.10.10.1 # Server IP address
    - 10.10.10.2 # Server IP address
  global:
    oms_meta_host: "10.10.10.1" # OMS meta database host address
    oms_meta_password: "" # Password for OMS meta database user
    oms_meta_port: 2881 # Port number for OMS meta database connection
    oms_meta_user: root # Username for OMS meta database connection
#    drc_cm_heartbeat_db: oms_hdb # Heartbeat database name
#    drc_cm_db: "oms_cm" # DRC cluster manager database name
#    drc_rm_db: "oms_rm" # DRC resource manager database name
#    tsdb_password: "" # Password for time series database
#    tsdb_service: "INFLUXDB" # Type of time series database service
#    tsdb_url: "10.10.10.1:8086" # URL for time series database connection
#    tsdb_username: "admin" # Username for time series database
#    ghana_server_port: 8090 # Port for ghana server
#    nginx_server_port: 8089 # Port for nginx server
#    cm_server_port: 8088 # Port for cluster manager server
#    supervisor_server_port: 9000 # Port for supervisor server
#    sshd_server_port: 2023 # Port for SSH daemon server
    mount_path: /data/1/oms # Mount path for OMS data storage
    regions:
      - cm_location: 1 # Cluster manager location identifier
        cm_is_default: true # Whether this is the default region
        cm_region: hz # Region identifier (e.g., hz for Hangzhou)
        cm_region_cn: Hangzhou # Region name in Chinese
        cm_url: 10.10.10.1:8089 #vip # Cluster manager URL, can be VIP address
        cm_nodes:
          - 127.0.0.1, # Cluster manager node IP address
          - 10.10.10.1 # Cluster manager node IP address
      - cm_location: 1 # Cluster manager location identifier
        cm_is_default: false # Whether this is the default region
        cm_region: bj # Region identifier (e.g., bj for Beijing)
        cm_region_cn: Beijing # Region name in Chinese
        cm_url: 10.10.10.2:8088 # Cluster manager URL
        cm_nodes:
          - 10.10.10.2 # Cluster manager node IP address
#    settings:
#      xxxxxx: "xxxxx" # Custom settings for OMS configuration

The following table lists the OMS configuration items that you need to pay attention to. For more information, see OMS configuration items.

Note

  • Re-deploying OMS will clear the data in the cluster. Before you modify the configuration items whose Effective method after modification is set to Re-deploy, make sure to back up the data.

Parameter
Required
Default value
Effective method after modification
Description
type Yes rpm Not supported Specifies the type of the component. Valid values: rpm and docker. When you deploy OMS, you must set the value to docker.
image_name Yes N/A Not supported Specifies the name of the Docker image required for deployment. You can run the docker images command to view the name in the REPOSITORY column.
tag No N/A Not supported Specifies the tag of the component to be deployed. You can run the docker images command to view the tag in the TAG column.
servers Yes N/A Redeployment Each server must be specified in the format of - name: server name (line break) ip: server IP address. You can specify multiple servers. The server names must be unique.
If the server IP addresses are unique, you can also specify multiple servers in the format of - <ip> (line break) - <ip>. In this case, the format of - <ip> is equivalent to - name: server IP address (line break) ip: server IP address.
oms_meta_host Yes N/A Restart the process The IP address of the metadata database, which can be MySQL or OceanBase Database Community Edition.
oms_meta_password Yes N/A Restart the process The password of the metadata database.
oms_meta_port Yes N/A Restart the process The port number for connecting to the metadata database.
oms_meta_user Yes N/A Restart the process The name of the user for connecting to the metadata database.
drc_cm_heartbeat_db Yes N/A Not supported The name of the heartbeat database of the cluster management service. When you deploy OMS, obd creates the corresponding database in MetaDB based on the configuration.
drc_cm_db Yes N/A Not supported The name of the metadata database of the cluster management service. When you deploy OMS, obd creates the corresponding database in MetaDB based on the configuration.
drc_rm_db Yes N/A Not supported The name of the database of the management console. When you deploy OMS, obd creates the corresponding database in MetaDB based on the configuration.
tsdb_password No N/A Restart the process The password of the time series database. If you want to configure a time series database, you must set this parameter based on your environment.
tsdb_service No N/A Restart the process The type of the time series database. At present, only INFLUXDB is supported.
tsdb_url No N/A Restart the process The IP address of the server where InfluxDB is deployed. If you want to configure a time series database, you must set this parameter based on your environment.
tsdb_username No N/A Restart the process The username of the time series database. If you want to configure a time series database, you must set this parameter based on your environment.
After you deploy a time series database, you must manually create a user for the time series database and specify the username and password.
ghana_server_port Yes 8090 Restart the process The port number of the GHANA service. Valid value: [1025, 65535].
nginx_server_port Yes 8089 Restart the process The port number of the Nginx service. Valid value: [1025, 65535].
cm_server_port Yes 8088 Restart the process The port number of the CM service. Valid value: [1025, 65535].
supervisor_server_port Yes 9000 Restart the process The port number of the Supervisor service. Valid value: [1025, 65535].
sshd_server_port Yes 2023 Restart the process The port number of the sshd service. Valid value: [1025, 65535].
mount_path Yes N/A Not supported The storage path of OMS data. The directory must have at least 500 GB of available storage space.
regions Yes N/A Restart the process The list of OMS regions.
regions.cm_location Yes N/A Not supported The region code. Valid value: [0, 127]. Each region has a unique code. You can select a code.
regions.cm_is_default Yes N/A Restart the process Indicates whether to use the default OMS Community Edition cluster management service. If OMS is deployed in a single region, you must set this parameter to true.
regions.cm_region No N/A Not supported The region, for example, cn-jiangsu. This parameter is required in multi-node mode.

Notice

If you use MSHA of Alibaba Cloud in a disaster recovery active-active scenario, use the region information of Alibaba Cloud as cm_region.

regions.cm_region_cn No N/A Not supported The Chinese name of the region. For example, Jiangsu.
regions.cm_url Yes N/A Restart the process The address for accessing the OMS cluster management service. You can specify only the IP address and port number. When you deploy OMS, obd automatically adds http:// to the beginning of the URL. If the URL prefix is https://, you must specify the complete URL, for example, https://xx.xx.xx.xx:8088. If no VIP is deployed, the port number must be consistent with the value of cm_server_port.

Note

When you deploy OMS in single-node mode, you can set this parameter to the IP address of the current OMS server. We recommend that you do not use http://127.0.0.1:8088.

regions.cm_nodes Yes N/A Not supported The list of IP addresses of the servers where the OMS Community Edition cluster management service is deployed.
settings No N/A Restart the process The parameters that need to be passed to OMS.

The following example describes the parameters that you need to configure when you deploy MaaS. The example is based on the example/maas/maas-only-example.yaml file.

maas:
  type: docker # Deployment type, use docker for containerized deployment
  image_name: harbor.oceanbase-dev.com/obmaas/ob-maas-backend # Docker image name for MAAS BACKEND
  tag: v1.2.0 # Docker image tag
  servers:
    - 127.0.0.1 # Server IP address, please don't use hostname, only IP can be supported
  global:
    data_dir: /data # Data directory for MAAS BACKEND
    prometheus_port: 9090 # Prometheus port for MAAS BACKEND
    port: 8001 # MAAS BACKEND port

The following table lists the parameters that you need to configure. For more information, see MaaS parameters.

Parameter
Required
Default value
Description
type Yes rpm The type of the component. Valid values: rpm and docker. You must specify docker when you deploy MaaS.
image_name Yes N/A The name of the Docker image required for deployment. You can run the docker images command to view the name in the REPOSITORY column.
tag Yes N/A The tag of the component to be deployed. You can run the docker images command to view the tag in the TAG column.
servers Yes N/A You must specify the information of each server in the - name: server name (press Enter) ip: server IP format. You can also specify the information in the - <ip> format. In this case, the - <ip> format is equivalent to - name: server IP (press Enter) ip: server IP.

Note

MaaS supports only local single-node deployment.

data_dir No N/A The data directory of the backend of MaaS.
prometheus_port No 9090 The port of the backend of MaaS for Prometheus.
port No 8001 The port of the backend of MaaS.

This topic uses the example/powerrag/powerrag-example.yaml file as an example to describe the parameters to be noted when you deploy PowerRAG.

powerrag:
  depends:
    - oceanbase-standalone
  type: dockers
  version: v1.3.0
  servers:
    - 10.10.10.1
  global:
    #pkgs_path: /data/1/powerrag/powerrag-v1.3.0.x86_64
    home_path: /home/admin/powerrag
    volume_mount: /home/admin/powerrag-volume
    compose_project: group1
    enable_gpu: false
    ob_tenant_name: powerrag
    ob_tenant_password: ******
    cache_scheme: mysql
    expose_powerrag_api_port: 2801

The following table describes the parameters to be noted when you deploy PowerRAG. For more information, see PowerRAG parameters.

Parameter
Required
Default value
Description
depends Yes N/A The deployment of PowerRAG depends on OceanBase Database Standalone. When you deploy PowerRAG, you must configure the information of OceanBase Database Standalone and PowerRAG in the same configuration file and specify the dependency of oceanbase-standalone in the powerrag section by using the depends parameter.
type Yes rpm The type of the component. Valid values: rpm and docker. You must specify docker when you deploy PowerRAG.
version No The latest version The version of the component to be deployed. Usually, you do not need to specify this parameter.
servers Yes N/A You must specify the information of each server in the - name: server name (press Enter) ip: server IP format. You can also specify the information in the - <ip> format. In this case, the - <ip> format is equivalent to - name: server IP (press Enter) ip: server IP.

Note

PowerRAG supports only local single-node deployment. The IP address cannot be 127.0.0.1.

pkgs_path No N/A The directory to which PowerRAG is decompressed.
home_path Yes N/A The installation path of PowerRAG.
volume_mount No ~/.powerrag/volumes The common prefix for mounting the application data or log directory in the container.
compose_project No group1 The name of the Docker Compose project. If you want to start multiple groups of PowerRAG services on one server, you must configure this parameter to distinguish the groups.
enable_gpu No false Specifies whether to enable GPU optimization.
ob_tenant_name No powerrag obd automatically creates a tenant with the same name in OceanBase Database based on the configuration.
ob_tenant_password No A random string The password of the administrator user (root) of the tenant specified by ob_tenant_name.
cache_scheme No mysql The type of the cache data storage. At present, only mysql is supported.
expose_powerrag_api_port No 2801 The port of the PowerRAG API, which is mapped to the external Docker Compose environment for external access to PowerRAG.

This topic uses the example/ob-configserver/ob-configserver-only-example.yaml file as an example to describe the parameters to be noted when you deploy obconfigserver. For more information about the deployment process, see Deploy obconfigserver by using the CLI.

ob-configserver:
  servers:
    - 127.0.0.1
  global:
    listen_port: 8080 # The port of ob-configserver web
    # server_ip: 0.0.0.0 # Listen to the ob-configserver server IP. When you want to listen to the specified IP address,use it.
    home_path: /home/admin/ob-configserver  # The working directory for prometheus. ob-configserver is started under this directory. This is a required field.
    ## log config
    # log_level: info # Log printing level of ob-configserver. The default value is `info`
    # log_maxsize: 30 # The total size of manager ob-configserver.Log size is measured in Megabytes.The default value is 30
    # log_maxage: 7 # The days of manager expired ob-configserver.Log retention days. The default value is 7
    # log_maxbackups: 10  #The number of manager expired ob-configserver.Log. The default value is 10
    # log_localtime: true #  Switch of ob-configserver.Log naming with localtime. The default value is true
    # log_compress: true # Compress ob-configserver.Log switch. The default value is true

    ## vip config, configserver will generate url with vip_address and port and return it to the client
    ## do not use some random value that can't be connected
    # vip_address: "10.10.10.1"
    # vip_port: 8080
    ## storage config
    # storage:
      ## database type, support sqlite3 or mysql
      ## sqlite3 Usage:
      # database_type: sqlite3
      # connection_url: "/home/admin/ob-configserver/.data.db?cache=shared&_fk=1" # connection_url can be empty When database_type used sqlite3

      ## mysql Usage:
      # database_type: mysql
      # connection_url: "user:password@tcp(ip:port)/metadb?parseTime=true"

The following table describes the parameters to be noted when you deploy obconfigserver. For more information, see obconfigserver parameters.

Parameter
Required
Default value
Description
servers Required N/A Each server must be specified with - name: server identifier (line break) ip: server IP address. Repeat this for multiple servers, ensuring the server identifiers are unique.
If the server IP addresses are unique, you can also specify them in the format - <ip> (line break) - <ip>. In this case, - <ip> is equivalent to - name: server IP address (line break) ip: server IP address.
listen_port Required 8080 The port on which the obconfigserver service listens.
server_ip Required 0.0.0.0 The IP address for accessing the service. Only the specified IP address is listened to. If you have a whitelist requirement, you can modify this parameter.
home_path Required N/A The working directory for the component.
log_level Required info The log level of obconfigserver. By default, it is set to INFO. The log levels of obconfigserver, from low to high, are Debug (debug), Info (information), Warn (warning), Error (error), and Fatal (fatal).
log_maxsize Required 30 The size of obconfigserver logs in MB. The default value is 30.
log_maxage Required 7 The maximum retention period for obconfigserver logs in days. The default value is 7 days.
log_maxbackups Required 10 The maximum number of expired logs that can be retained.
log_localtime Required true Specifies whether to use local time to name logs. The default value is true.
log_compress Required true Specifies whether to enable log compression. The default value is true.
vip_address Optional N/A The IP address of the VIP. This parameter is required only when you use a VIP.
vip_port Optional N/A The port number of the VIP. This parameter is required only when you use a VIP.
database_type Required sqlite3 The type of the metadata database. Valid values: mysql and sqlite3. If you set this parameter to mysql, you can choose to use either a MySQL database or an OceanBase database as the metadata database for obconfigserver.
connection_url Optional $home_path/.data.db?cache=shared&_fk=1 The path of the metadata database. If database_type is set to mysql, this parameter is required. If database_type is set to sqlite3, the default value is used if this parameter is not specified. If you specify this parameter, you must provide an absolute path.

This example uses the example/prometheus/prometheus-only-example.yaml file to introduce the configuration parameters to pay attention to when you deploy Prometheus. For more information about how to deploy Prometheus by using a configuration file, see Add a white-screen monitoring solution to an existing cluster.

prometheus:
  servers:
    - 10.10.10.4
  global:
    # The working directory for prometheus. prometheus is started under this directory. This is a required field.
    home_path: /home/admin/prometheus
    address: 0.0.0.0  # The ip address to bind to. Along with port, corresponds to the `web.listen-address` parameter.
    port: 9090 # The http port to use. Along with address, corresponds to the `web.listen-address` parameter.
    enable_lifecycle: true # Enable shutdown and reload via HTTP request. Corresponds to the `web.enable-lifecycle` parameter.
    data_dir: /home/admin/prometheus/data # Base path for metrics storage. Corresponds to the `storage.tsdb.path` parameter.
    # basic_auth_users:  # Usernames and passwords that have full access to the web server via basic authentication. Corresponds to the `basic_auth_users` parameter.
    #   <username>: <password>  # The format of `basic_auth_users` : the key is the user name and the value is the password.
    # web_config: # Content of Prometheus web service config file. The format is consistent with the file. However, `basic_auth_users` cannot be set in it. Please set `basic_auth_users` above if needed. Corresponds to the `web.config.file` parameter.
    #   tls_server_config:
    #     # Certificate and key files for server to use to authenticate to client.
    #     cert_file: <filename>
    #     key_file: <filename>
    config: # Configuration of the Prometheus service. The format is consistent with the Prometheus config file. Corresponds to the `config.file` parameter.
      rule_files:
        - rules/*rules.yaml
      scrape_configs:
        - job_name: prometheus
          metrics_path: /metrics
          scheme: http
          static_configs:
            - targets:
                - localhost:9090
        - job_name: node
          basic_auth:
            username: ********
            password: ********
          metrics_path: /metrics/node/host
          scheme: http
          file_sd_configs:  # Set the targets to be collected by reading local files. The example is to collect targets corresponding to all yaml files in the 'targets' directory under $home_path.
            - files:
              - 'targets/*.yaml'
        - job_name: ob_basic
          basic_auth:
            username: ********
            password: ********
          metrics_path: /metrics/ob/basic
          scheme: http
          file_sd_configs:
            - files:
              - 'targets/*.yaml'
        - job_name: ob_extra
          basic_auth:
            username: ********
            password: ********
          metrics_path: /metrics/ob/extra
          scheme: http
          file_sd_configs:
            - files:
              - 'targets/*.yaml'
        - job_name: agent
          basic_auth:
            username: **********
            password: ********
          metrics_path: /metrics/stat
          scheme: http
          file_sd_configs:
            - files:
              - 'targets/*.yaml'
    # additional_parameters: # Additional parameters for Prometheus service, among which `web.listen-address`, `web.enable-lifecycle`, `storage.tsdb.path`, `config.file` and `web.config.file` cannot be set. Please set them in the corresponding configuration above if needed.
    # - log.level: debug

The following table lists the configuration parameters that you need to pay attention to. For more information, see Prometheus configuration parameters.

Parameter
Required
Default value
Description
servers Required N/A Each server must be specified with - name: server identifier (line break) ip: server IP address. Repeat this for multiple servers, ensuring the server identifiers are unique.
If the server IP addresses are unique, you can also specify them in the format - <ip> (line break) - <ip>. In this case, - <ip> is equivalent to - name: server IP address (line break) ip: server IP address.
home_path Required N/A The working directory for the component.
address Required 0.0.0.0 The listening address of Prometheus.
port Required 9090 The listening port of Prometheus.
enable_lifecycle Required true Specifies whether to enable the feature that allows you to close and reload the service by using HTTP requests.
data_dir Optional N/A The base path for storing metrics.
basic_auth_users Optional N/A The authentication information of the Prometheus Web service. The key is the username and the value is the password.
web_config Optional N/A The configuration of the Prometheus Web service. You can configure the certificate and key files for client authentication under this parameter.
config Optional N/A The configuration of Prometheus. The format is consistent with that of the Prometheus configuration file. This parameter corresponds to the config.file parameter.
additional_parameters Optional N/A The startup parameters of Prometheus.

This example uses the example/grafana/grafana-only-example.yaml file to introduce the configuration parameters to pay attention to when you deploy Grafana. For more information about how to deploy Grafana by using a configuration file, see Add a white-screen monitoring solution to an existing cluster.

grafana:
  servers:
    - 10.10.10.4
  global:
    home_path: /home/admin/grafana
    login_password: ******** # Grafana login password.
    data_dir: # Path to where grafana can store temp files, sessions, and the sqlite3 db (if that is used).$data_dir can be empty. The default value is $home_path/data.
    logs_dir: # Directory where grafana can store logs, can be empty. The default value is $data_dir/log.
    plugins_dir: # Directory where grafana will automatically scan and look for plugins, can be empty. The default value is $data_dir/plugins.
    provisioning_dir: # folder that contains provisioning config files that grafana will apply on startup and while running, can be empty. The default value is $home_path/conf/provisioning.
    temp_data_lifetime: 24h # How long temporary images in data directory should be kept. Supported modifiers h (hours), m (minutes), Use 0 to never clean up temporary files, can be empty. The default value is 24h.
    log_max_days: 7 # Expired days of log file(delete after max days), can be empty. The default value is 7.
    # domain: # The public facing domain name used to access grafana from a browser, can be empty. The default value is $server.ip.
    # port: # The http port to use, can be empty. The default value is 3000.
    # # list of datasources to insert/update depending on what's available in the database, can be empty.
    # # For more parameter settings, please refer to https://grafana.com/docs/grafana/latest/administration/provisioning/#datasources
    # datasources:
    #   name: # name of the datasource. Required and should not be 'OB-Prometheus'
    #   type: # datasource type. Required
    #   access: # access mode. direct or proxy. Required
    #   url: # the url of datasource
    # list of dashboards providers that load dashboards into Grafana from the local filesystem, can be empty.
    # For more information, please refer to https://grafana.com/docs/grafana/latest/administration/provisioning/#dashboards
    # providers:
    #   name: # an unique provider name. Required and should not be 'OceanBase Metrics'
    #   type: # provider type. Default to 'file'
    #   options:
    #     path: # path to dashboard files on disk. Required when using the 'file' type
    # # customize your Grafana instance by adding/modifying the custom configuration as follows   
    # # for more information, please refer to https://grafana.com/docs/grafana/latest/setup-grafana/configure-grafana/#configure-grafana
    # # Here, setting parameters is required for format conversion.
    # # For example, if the original grafana configuration format is
    # #
    # # [section1.section2]
    # # key1 = value1
    # # key2 = value2
    # #
    # # Then when writing the configuration below, you need to write it as
    # #
    # # section1:
    # #   section2:
    # #     key1: value1
    # #     key2: value2
    # #
    # # Here we only list one item, because there are more than 500 items. Please add them according to your own needs.
    # customize_config:
    #   # original grafana configuration format is 
    #   # [server] 
    #   # protocol = http
    #   server:
    #     protocol: http  

The following table lists the configuration parameters that you need to pay attention to. For more information, see Grafana configuration parameters.

Configuration item
Required
Default value
Description
servers Yes N/A Specify the machines with - name: machine identifier (line break) ip: machine IP. If multiple machines are specified, repeat this format. The machine identifiers must be unique.
If the machine IPs are unique, you can also use - <ip> (line break) - <ip> to specify the machines. In this case, - <ip> is equivalent to - name: machine IP (line break) ip: machine IP.
home_path Yes N/A The working directory of the component.
login_password Yes
  • Empty for versions earlier than obd V2.1.0
  • Random string for obd V2.1.0 and later
The login password of Grafana. You can run the obd cluster edit-config command after deployment to view the password in the configuration file.
data_dir No $home_path/data The path used by Grafana to store SQLite3, temporary files, and sessions.
logs_dir No $data_dir/log The directory used by Grafana to store logs.
plugins_dir No $data_dir/plugins The directory where Grafana automatically scans and finds plugins.
provisioning_dir No $home_path/conf/provisioning The folder containing configuration files that Grafana applies when it starts and runs.
temp_data_lifetime No 24h The retention period of temporary images in the data directory of Grafana. Supported units: h (hour) and m (minute). If the value is set to 0, temporary files will never be cleared.
log_max_days No 7 The threshold of the number of days for which logs are retained. After the logs are retained for the specified number of days, they are deleted.

This section uses the example/alertmanager-only-example.yaml file as an example to describe the configuration items to be noted when you deploy Alertmanager. We recommend that you deploy Alertmanager on the obd GUI. For more information, see Deploy an OceanBase cluster.

alertmanager:
  servers:
    - 192.168.1.5
  global:
    home_path: /home/admin/alertmanager
#    log_dir: /home/admin/alertmanager/log # alertManager log storage directory
#    data_retention: 120h #alertmanager how long to keep data form, corresponds to the `data.retention` parameter.
#    address: 0.0.0.0  # The ip address to bind to. Along with port, corresponds to the `web.listen-address` parameter.
#    port: 9093 # The http port to use. Along with address, corresponds to the `web.listen-address` parameter.
#    data_dir: /home/admin/alertmanager/data # Base path for data storage. Corresponds to the `storage.path` parameter.
#    basic_auth_users:  # Usernames and passwords that have full access to the web server via basic authentication. Corresponds to the `web.config.fil` parameter.
#      <username>: <password>  # The format of `basic_auth_users` : the key is the user name and the value is the password.
#    web_config: # Content of alertmanager web service config file. The format is consistent with the file. However, `basic_auth_users` cannot be set in it. Please set `basic_auth_users` above if needed. Corresponds to the `web.config.file` parameter.
#       tls_server_config:
#         # Certificate and key files for server to use to authenticate to client.
#         cert_file: <filename>
#         key_file: <filename>
#    receivers: #one or more notification list
#      - test #User-defined notification name
#      - test2
#    alertmanager_config: # This field is a user-defined alertmanager configuration and conflicts with receivers
#      route:
#        group_by: [ 'alertname' ]
#        group_wait: 30s
#        group_interval: 5m
#        repeat_interval: 1h
#        receiver: 'yourname'
#        receivers:
#          - name: 'yourname'
#            webhook_configs:
#              - url: 'http://127.0.0.1:5001/'
#    additional_parameters: #Additional parameters for Alertmanager service, among which `web.listen-address`, `web.enable-lifecycle`, `storage.tsdb.path`, `config.file` and `web.config.file` cannot be set. Please set them in the corresponding configuration above if needed.
#      - log.level: debug

#  test: # The same as the name of the receivers configured by the user
#    receiver_type: webhook # alrtmanager notification type
#    webhook_url: http://localhost:6766
#  test2: # The same as the name of the receivers configured by the user
#    receiver_type: email
#    to: "to email"
#    from: "from email"
#    smarthost: "smtp.xx.com:xxx"
#    auth_username: "email name"
#    auth_password: xxx
#    require_tls: true
#    send_resolved: true

The following table describes the configuration items that you need to pay attention to. For more information, see Alertmanager configuration items.

Configuration item
Required
Default value
Description
servers Yes N/A Specify the machines on which the component is deployed. Currently, you can specify only one machine when you deploy Alertmanager. You can use the - name: machine identifier (line break) ip: machine IP format to specify the machine. You can also use the - <ip> (line break) - <ip> format to specify the machines. In this case, - <ip> is equivalent to - name: machine IP (line break) ip: machine IP.
home_path Yes N/A The working directory of the component.
log_dir No ${home_path}/log The directory for storing logs.
data_dir No ${home_path}/data The directory for storing data. This parameter corresponds to the storage.path parameter in the native Alertmanager configuration.
receivers No N/A The list of receivers. You can customize the receiver names. After you configure the receiver names, you need to configure the receiver types and corresponding information for the receiver names. For more information, see receivers.

Note

If you do not configure the alertmanager_config parameter, this parameter is required. In other words, you must configure either the receivers parameter or the alertmanager_config parameter, but not both. Otherwise, an error will be returned.

address No 0.0.0.0 The IP address for accessing the Alertmanager web page.
port No 9093 The port for listening to Alertmanager.
data_retention No 120h The retention period of data forms. Data forms exceeding the retention period will be deleted. This parameter corresponds to the data.retention parameter in the native Alertmanager configuration.
basic_auth_users No admin: *****
Here, admin is the username, and ***** is a randomly generated password
The username and password for accessing the web server. You can configure the username and password in the <username>: <password> format. This parameter corresponds to the web.config.fil parameter in the native Alertmanager configuration.
web_config No N/A The authentication-related configuration. You can configure the certificate and key files for client authentication in this configuration. This parameter corresponds to the web.config.file parameter in the native Alertmanager configuration.
alertmanager_config No N/A The custom alertmanager configuration. This parameter is fully compatible with the native Alertmanager configuration items.

Note

If you do not configure the receivers parameter, this parameter is required. In other words, you must configure either the receivers parameter or the alertmanager_config parameter, but not both. Otherwise, an error will be returned.

additional_parameters No N/A Additional startup parameters. You can use this parameter to configure the startup parameters. You can configure a key-value pair (Key-Value) or a string.

receivers

After you configure the notification list in receivers, you need to configure the receiving information based on the receiving type. The receiving type can be set to the following options:

  • discord: Sends alerts to a Discord server. For more information, see discord_config.
  • email: Sends email notifications through the SMTP protocol. For more information, see email_config.
  • msteams: Sends alerts to Microsoft Teams (classic version). For more information, see msteams_config.
  • msteamsv2: Sends alerts to Microsoft Teams (v2 version). For more information, see msteamsv2_config.
  • jira: Automatically creates an alert as a Jira issue. For more information, see jira_config.
  • opsgenie: Sends alerts through Opsgenie (supports automatic assignment and on-call scheduling). For more information, see opsgenie_config.
  • pagerduty: Sends alerts through PagerDuty (supports emergency contact assignment). For more information, see pagerduty_config.
  • pushover: Sends mobile notifications through Pushover (supports iOS/Android). For more information, see pushover_config.
  • rocketchat: Sends alerts to Rocket.Chat. For more information, see rocketchat_config.
  • slack: Sends alerts through a provided webhook or bot token. For more information, see slack_config.
  • sns: Sends alerts through AWS SNS (supports SMS, email, Lambda, etc.). For more information, see sns_config.
  • telegram: Sends alerts through Telegram. For more information, see telegram_config.
  • victorops: Sends alerts through VictorOps (now known as Splunk On-Call). For more information, see victorops_config.
  • webex: Sends alerts to Cisco Webex. For more information, see webex_config.
  • webhook: Custom webhook interface (most flexible option). For more information, see webhook_config.
  • wechat: Sends alerts through Enterprise WeChat. For more information, see wechat_config.

The required fields for each receiving type are described below:

Receiver type
Field name
Default value
Description
discord webhook_url None The URL of the Discord webhook. This field is mutually exclusive with webhook_url_file. Only one of the two can be configured.
webhook_url_file None The file path of the Discord webhook URL. If this field is configured, the URL will be read from the file. This field is mutually exclusive with webhook_url. Only one of the two can be configured.
email to None The recipient's email address. A comma-separated list of RFC 5322-compliant email addresses is allowed.
from None The sender's email address.
smarthost None The SMTP host for sending emails, including the port number.
auth_username None The SMTP authentication username. SMTP authentication is performed using CRAM-MD5, LOGIN, or PLAIN.
auth_password None The SMTP authentication password. This field is mutually exclusive with auth_password_file. Only one of the two can be configured.
auth_password_file None The file path of the SMTP authentication password. If this field is configured, the password will be read from the file. This field is mutually exclusive with auth_password. Only one of the two can be configured.
msteams webhook_url None The URL of the Microsoft Teams webhook. This field is mutually exclusive with webhook_url_file. Only one of the two can be configured.
webhook_url_file None The file path of the Microsoft Teams webhook URL. If this field is configured, the URL will be read from the file. This field is mutually exclusive with webhook_url. Only one of the two can be configured.
msteamsv2 webhook_url None The URL of the incoming webhook. This field is mutually exclusive with webhook_url_file. Only one of the two can be configured.
webhook_url_file None The file path of the incoming webhook URL. If this field is configured, the URL will be read from the file. This field is mutually exclusive with webhook_url. Only one of the two can be configured.
jira api_url None The URL of the Jira instance, including the complete API path.
project None The identifier of the Jira project.
opsgenie api_key None The API key used to communicate with the Opsgenie API. This field is mutually exclusive with api_key_file. Only one of the two can be configured.
api_key_file None The file path of the API key used to communicate with the Opsgenie API. If this field is configured, the key will be read from the file. This field is mutually exclusive with api_key. Only one of the two can be configured.
api_url https://api.opsgenie.com/ The target host address for the Opsgenie API request.
pagerduty routing_key None The PagerDuty routing key. This field is required only when using the PagerDuty integration type Events API v2. If configured, this field is mutually exclusive with routing_key_file. Only one of the two can be configured.
routing_key_file None The file path of the PagerDuty routing key. This field is required only when using the PagerDuty integration type Events API v2. If configured, this field is mutually exclusive with routing_key. Only one of the two can be configured.
service_key None The PagerDuty service key. This field is required only when using the PagerDuty integration type Prometheus. If configured, this field is mutually exclusive with service_key_file. Only one of the two can be configured.
service_key_file None The file path of the PagerDuty service key. This field is required only when using the PagerDuty integration type Prometheus. If configured, this field is mutually exclusive with service_key. Only one of the two can be configured.
url https://events.pagerduty.com/v2/enqueue The target URL for the API request.
pushover user_key None The recipient's user key. This field is mutually exclusive with user_key_file. Only one of the two can be configured.
user_key_file None The file path of the recipient's user key. If this field is configured, the key will be read from the file. This field is mutually exclusive with user_key. Only one of the two can be configured.
token None The API token of the registered application. This field is mutually exclusive with token_file. Only one of the two can be configured.
token_file None The file path of the API token of the registered application. If this field is configured, the token will be read from the file. This field is mutually exclusive with token. Only one of the two can be configured.
rocketchat token None The sender's token. This field is mutually exclusive with token_file. Only one of the two can be configured.
token_file None The file path of the sender's token. If this field is configured, the token will be read from the file. This field is mutually exclusive with token. Only one of the two can be configured.
token_id None The sender's token ID. This field is mutually exclusive with token_id_file. Only one of the two can be configured.
token_id_file None The file path of the sender's token ID. If this field is configured, the token ID will be read from the file. This field is mutually exclusive with token_id. Only one of the two can be configured.
slack api_url None Depending on the scenario, the following two cases apply:
  • If alerts are sent via an incoming webhook, configure the webhook URL here. This field is mutually exclusive with api_url_file. Only one of the two can be configured.
  • If alerts are sent using a bot token, configure this field as https://slack.com/api/chat.postMessage. The bot token must be set as the authorization credential in http_config, and the channel must contain the name or ID of the channel to which notifications are to be sent.
api_url_file None If alerts are sent via an incoming webhook, configure the webhook URL file path here. If this field is configured, the URL will be read from the file. This field is mutually exclusive with api_url. Only one of the two can be configured.
http_config None If alerts are sent using a bot token, the bot token must be set as the authorization credential in http_config.
channel None If alerts are sent using a bot token, the channel must contain the name or ID of the channel to which notifications are to be sent.
sns topic_arn None The Amazon Resource Name (ARN) of the SNS topic. The format is: arn:aws:sns:us-east-2:698519295917:my-topic. If this value is not specified, either phone_number or target_arn must be specified.
phone_number None The phone number (in E.164 format) for sending SMS messages. If this value is not specified, either topic_arn or target_arn must be specified.
target_arn None The Amazon Resource Name (ARN) of the mobile platform endpoint (for mobile push notifications). If this value is not specified, either topic_arn or phone_number must be specified.
telegram bot_token None The Telegram bot token. This field is mutually exclusive with bot_token_file. Only one of the two can be configured.
bot_token_file None The file path of the Telegram bot token. If this field is configured, the token will be read from the file. This field is mutually exclusive with bot_token. Only one of the two can be configured.
chat_id None The chat ID to which the message is sent.
victorops api_key None The API key used to communicate with the VictorOps API. This field is mutually exclusive with api_key_file. Only one of the two can be configured.
api_key_file None The file path of the API key used to communicate with the VictorOps API. This field is mutually exclusive with api_key. Only one of the two can be configured.
routing_key None The key used to map alerts to teams.
webhook url None The endpoint to which an HTTP POST request is sent. This field is mutually exclusive with url_file. Only one of the two can be configured.
url_file None The file path of the endpoint to which an HTTP POST request is sent. If this field is configured, the endpoint will be read from the file. This field is mutually exclusive with url. Only one of the two can be configured.
wechat api_secret None The API key used to communicate with the WeChat API.
corp_id None The company ID used for authentication.
webex room_id None The ID of the Webex Teams room to which the message is sent.

This topic uses the example/obbinlog-ce/obbinlog-ce-only-example.yaml file as an example to describe the configuration items to be aware of when deploying obbinlog. For more information about the deployment process, see Deploy the Binlog service.

obbinlog-ce:
  version: 4.0.1
  servers:
    - name: server1
      ip: 10.10.10.1
    - name: server2
      ip: 10.10.10.2
  global:
    home_path: /home/admin/obbinlog
    service_port: 2983   # External port. The default value is 2983.
    prometheus_port: 2984 # The Prometheus port. The default value is 2984.
    meta_host: 10.10.10.1   # meta support ob/mysql
    meta_port: 2881
    meta_username: root@binlog # need tenant exist, if db is mysql, use root or other
    meta_password: ******
    meta_db: test
    # init_schema: true   # init meta db, default true

The following table lists the configuration items that you need to pay attention to. For more information about the configuration items, see obbinlog configuration items.

Configuration item
Required
Default value
Description
version Optional The latest version in the image library The version of the component to be deployed. Generally, you do not need to specify this parameter.
servers Required N/A For each server, use - name: server name (press Enter) ip: server IP to specify the server. You can also use - <ip> to specify the server. In this case, - <ip> is equivalent to - name: server IP (press Enter) ip: server IP.
home_path Required N/A The installation path of obbinlog.
service_port Required 2983 The listening port of the Binlog service.
prometheus_port Required 2984 The listening port of the Prometheus component of the Binlog service.
meta_host
  • Required if a meta database already exists.
  • Optional if OceanBase Database is used as the meta database.
N/A The IP address of the meta database of the Binlog service.

Note

You can use OceanBase Database or MySQL Database as the meta database.

meta_port
  • Required if a meta database already exists.
  • Optional if OceanBase Database is used as the meta database.
N/A The listening port of the meta database of the Binlog service.
meta_username
  • Required if a meta database already exists.
  • Optional if OceanBase Database is used as the meta database.
N/A The username of the meta database of the Binlog service. Make sure that the specified user exists in the meta database.
meta_password
  • Required if a meta database already exists.
  • Optional if OceanBase Database is used as the meta database.
N/A The password of the meta_username user.
meta_db
  • Required if a meta database already exists.
  • Optional if OceanBase Database is used as the meta database.
N/A The name of the database to be used in the meta database of the Binlog service. Make sure that the specified database exists in the meta database.
init_schema Optional true Specifies whether to initialize the meta database. Initializing the meta database creates the required tables in the meta database. For more information, see Metadata in the official documentation of OceanBase Binlog service.

This topic uses the example/oblogproxy/oblogproxy-only-example.yaml file as an example to describe the configuration items to be aware of when deploying oblogproxy. For more information about the deployment process, see Deploy oblogproxy by using the command line.

oblogproxy:
  version: 2.0.0
  servers:
    - 192.168.1.1
  global:
    home_path: /home/admin/oblogproxy
    service_port: 2983   # External port. The default value is 2983.
    ob_sys_username: ""  # A user under the sys tenant of oceanbase-ce, oblogproxy communicates with oceanbase-ce using this user.,default ''
    ob_sys_password: ""  # ob_sys_username`s password, default ''
    #binlog_dir: /home/admin/oblogproxy/run   # The directory for binlog file. The default value is $home_path/run.
    #binlog_mode: true  # enable binlog mode, default true

The following table lists the configuration items that you need to pay attention to. For more information about the configuration items, see oblogproxy configuration items.

Configuration item
Required
Default value
Description
version Optional The latest version The version of the component to be deployed. Generally, you do not need to specify this parameter.
servers Required N/A For each server, use - name: server name (press Enter) ip: server IP to specify the server. You can also use - <ip> to specify the server. In this case, - <ip> is equivalent to - name: server IP (press Enter) ip: server IP.
home_path Required N/A The installation path of oblogproxy.
service_port Required 2983 The listening port of the oblogproxy service.
ob_sys_username Optional N/A The username of the user that communicates with OceanBase Database. The user must be a user in the sys tenant. You need to create the user in advance. In this parameter, you need to specify only the user name, not the cluster name or tenant name.
ob_sys_password Optional N/A The password of the user specified in the ob_sys_username parameter. The password must be consistent with that of the corresponding user in OceanBase Database.
binlog_dir Optional $home_path/run The root path of the Binlog service. You must specify an absolute path.
binlog_mode Optional true Specifies whether to enable the Binlog mode.

For more information about other oblogproxy-related configuration items, see Configuration file in the official documentation of OceanBase Log Proxy Service. Note the following points:

  • When you deploy oblogproxy by using obd, the binlog_dir parameter in obd corresponds to the binlog_log_bin_basename parameter of oblogproxy.

  • When you deploy oblogproxy by using obd, the default value of the binlog_mode parameter is true.

  • When you deploy oblogproxy by using obd, the ob_sys_username and ob_sys_password parameters must be specified as plain text.

Previous topic

Upgrade OMS
Last

Next topic

Deploy an OceanBase cluster
Next
What is on this page
Glossary
Get a configuration file
Configuration file format
Configuration item description