---
title: yaml配置文件示例
description: "yaml配置文件为部署OceanBase时用以指定OceanBase配置项的文件。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengdbs/ecosystemEnable/OceanBase/kunpengocenbase_04_0012.html
sourcePath: /source/zh/kunpengdbs/ecosystemEnable/OceanBase/kunpengocenbase_04_0012.html
indexId: 3c33386dc8b18e9c233893b5710882a5c31965b1a228c00f4a5273ab99eb292176
---
# yaml配置文件示例

yaml配置文件为部署OceanBase时用以指定OceanBase配置项的文件。

本文档提供如下两个场景下部署OceanBase的yaml配置文件示例，仅供参考。

请确保OBServer与OBProxy之间的延迟较低，以避免在启动集群时出现server之间或者server与Proxy之间连接失败的情况。


- 场景1：四台服务器，其中一台服务器上部署OBProxy，另外三台服务器上分别部署OBServer。部署OBServer的详细信息请参见《OceanBase部署指南》的  部署和启动OceanBase(https://www.hikunpeng.com/document/detail/zh/kunpengdbs/ecosystemEnable/OceanBase/kunpengocenbase_04_0010.html)
章节。yaml配置文件如下：

```
user:
username: XXX      # OBServer服务器的用户名，请根据实际情况自定义
password: XXX      # OBServer服务器的用户密码，请根据实际情况自定义
oceanbase-ce: # OBServer配置信息
servers:
- name: server1    # 服务器名称
ip: 192.168.0.216    # 服务器IP地址
- name: server2
ip: 192.168.0.214
- name: server3
ip: 192.168.0.212
global:    # 全局参数
memory_limit: 300G # OBServer可以占用的最大内存值
system_memory: 30G # 分配给系统默认租户的内存值
datafile_size: 300G # 数据文件最大容量
log_disk_size: 300G # 日志文件最大容量
enable_syslog_wf: false
enable_syslog_recycle: true
max_syslog_file_count: 4
skip_proxy_sys_private_check: true
enable_strict_kernel_release: false
cpu_count: 128  # OBServer可以占用的最多CPU数
server1: # 服务器列表
devname: enp5s0 # 网卡名称
mysql_port: 2881 # OceanBase外部端口
rpc_port: 2882 # OceanBase内部端口
home_path: /sata/1108    # OceanBase工作目录，请根据实际情况修改
data_dir: /sata/1102/data # 数据文件目录，请根据实际情况修改
redo_dir: /sata/1102/redo # 日志文件目录，请根据实际情况修改
zone: zone1
server2:
devname: enp5s0
mysql_port: 2881
rpc_port: 2882
home_path: /sata/1108
data_dir: /sata/1102/data
redo_dir: /sata/1102/redo
zone: zone2
server3:
devname: enp3s0
mysql_port: 2881
rpc_port: 2882
home_path: /sata/1108
data_dir: /sata/1102/data
redo_dir: /sata/1102/redo
zone: zone3
obproxy-ce: # OBProxy配置
depends:
- oceanbase-ce
servers:
- 192.168.0.210  # Proxy服务IP地址
global:
listen_port: 2883 # Proxy对外端口
prometheus_listen_port: 2884 # Proxy内部端口
home_path: /home/1108obproxy # Proxy工作目录，请根据实际情况修改
enable_cluster_checkout: false
enable_compression_protocol: false
skip_proxy_sys_private_check: true
enable_strict_kernel_release: false
```


- 场景2：四台服务器，其中一台服务器仅部署HAProxy（部署HAProxy的详细操作步骤请参见本文档下文的  部署HAProxy
），另外三台服务器分别部署OBServer和OBProxy。yaml配置文件如下：

```
user:
username: XXX      # OBServer服务器的用户名
password: XXX      # OBServer服务器的用户密码
oceanbase-ce: # OBServer配置信息
servers:
- name: server1    # 服务器名称
ip: 192.168.0.216    # 服务器IP地址
- name: server2
ip: 192.168.0.214
- name: server3
ip: 192.168.0.212
global:    # 全局参数
memory_limit: 300G # OBServer可以占用的最大内存值
system_memory: 30G # 分配给系统默认租户的内存值
datafile_size: 300G # 数据文件最大容量
log_disk_size: 300G # 日志文件最大容量
enable_syslog_wf: false
enable_syslog_recycle: true
max_syslog_file_count: 4
skip_proxy_sys_private_check: true
enable_strict_kernel_release: false
cpu_count: 128  # OBServer可以占用的最多CPU数
server1: # 服务器列表
devname: enp5s0 # 网卡名称
mysql_port: 2881 # OceanBase外部端口
rpc_port: 2882 # OceanBase内部端口
home_path: /sata/1108    # OceanBase工作目录，请根据实际情况修改
data_dir: /sata/1102/data # 数据文件目录，请根据实际情况修改
redo_dir: /sata/1102/redo # 日志文件目录，请根据实际情况修改
zone: zone1
server2:
devname: enp5s0
mysql_port: 2881
rpc_port: 2882
home_path: /sata/1108
data_dir: /sata/1102/data
redo_dir: /sata/1102/redo
zone: zone2
server3:
devname: enp3s0
mysql_port: 2881
rpc_port: 2882
home_path: /sata/1108
data_dir: /sata/1102/data
redo_dir: /sata/1102/redo
zone: zone3
obproxy-ce: # OBProxy配置
depends:
- oceanbase-ce
servers:
- name: server1 # Proxy服务名称
ip: 192.168.0.216 # Proxy服务IP地址
- name: server2
ip: 192.168.0.214
- name: server3
ip: 192.168.0.212
global:
listen_port: 2883 # Proxy对外端口
prometheus_listen_port: 2884  # Proxy内部端口
home_path: /home/1108obproxy # Proxy工作目录，请根据实际情况修改
enable_cluster_checkout: false
enable_compression_protocol: false
skip_proxy_sys_private_check: true
enable_strict_kernel_release: false
```


#### 部署HAProxy

场景2中涉及部署HAProxy，本节将提供部署HAProxy的详细操作步骤。在本例中，将以在IP地址为192.168.0.210的服务器上配置HAProxy为例进行说明。

1. 安装HAProxy。

```
yum install haproxy
```


2. 修改HAProxy配置文件。

  a. 打开文件。

```
vi /etc/haproxy/haproxy.cfg
```


  b. 按“i”进入编辑模式，将配置文件内容修改为如下信息：

```
global
log         127.0.0.1 local0
chroot      /var/lib/haproxy
pidfile     /var/run/haproxy.pid
user        root
group       root
daemon
maxconn     4000
nbthread    48
defaults
log                     global
retries                 3
timeout connect         2s
timeout client          30000s   # 客户端与HAProxy连接后，数据传输完毕，即非活动连接的超时时间。
timeout server          30000s   # 服务器端非活动连接的超时时间。
listen obcluster   # 配置database负载均衡
bind 0.0.0.0:80   # 浮动IP地址和侦听端口。
mode tcp    # HAProxy要使用第4层的传输层。
balance leastconn # 连接数最少的服务器优先接收连接。`leastconn`建议用于长会话服务，例如LDAP、SQL、TSE等，而不是短会话协议，如HTTP。该算法是动态的，对于启动慢的服务器，服务器权重会在运行中作调整。
server  obproxy-1 192.168.0.216:2883 check inter 2000 rise 2 fall 3 # 检测2883端口，检测频率为每2000ms一次。如果2次检测为成功，则认为服务器可用；如果3次检测为失败，则认为服务器不可用。
server  obproxy-2 192.168.0.214:2883 check inter 2000 rise 2 fall 3
server  obproxy-3 192.168.0.212:2883 check inter 2000 rise 2 fall 3
```


  c. 按“Esc”键，输入:wq!，按“Enter”保存并退出编辑。
3. 启动HAProxy服务。

```
service haproxy start
```


4. 查看HAProxy服务状态。

```
service haproxy status
```


  返回active (running)表示HAProxy服务启动成功。
