目錄
1.當前部署情況
2.單Zone多OBServer模式
3.多Zone多OBServer模式
3.1 集群規劃
3.2 安裝OBServer程序
3.3 新增Zone
3.4 啟動Zone
3.5 向Zone新增OBserver節點
3.6重復3.2~3.5新增其他Zone
4.擴充資源
? ? ?OceanBase 數據庫為單機分布式一體化架構,支持單機在線轉分布式部署。當數據庫集群部署在一個機房(Zone)的多臺服務器(OBServer)時,實現服務器級別容災。當集群的服務器在一個地區的多個機房中時,能夠實現機房級別容災。當集群的服務器在多個地區的多個機房中時,能夠實現地區級別容災。
????????OceanBase 數據庫采用基于無共享(Shared-Nothing)的多副本架構,讓整個系統沒有任何單點故障,保證系統的持續可用。OceanBase 支持單機(單機房部署 OceanBase 集群)、機房(同城多機房部署 OceanBase 集群。機房以下統稱:IDC)、城市(多城市部署 OceanBase 集群)級別的高可用和容災,可以進行單機房、雙機房、兩地三中心、三地五中心部署,且支持部署仲裁服務來降低成本。
1.當前部署情況
? ? ? ? 當前部署模式是單機房單節點模式,單機部署參考OceanBase:02-單機部署(生產環境)-CSDN博客實現。目前是單Zone單OBServer模式。
? ? ? ? 本案例采用單Zone多OBServer模式和多Zone多OBServer模式兩種方式實現分布式擴容。
2.單Zone多OBServer模式
OceanBase:OBServer節點管理-CSDN博客參考這篇文章中的新增節點操作即可完成擴容。
3.多Zone多OBServer模式
3.1 集群規劃
角色 | 機器 | 備注 |
---|---|---|
OBD | 192.168.1.219 | 安裝在中控機上的自動化部署軟件 |
OBServer? | 192.168.1.219 192.168.1.220(新增) 192.168.1.225(新增) | 192.168.1.219(zone1) 192.168.1.220(zone2) 192.168.1.225(zone3) |
3.2 安裝OBServer程序
a)創建數據目錄
創建數據目錄和日志目錄
mkdir -p /oceanbase/data
mkdir -p /oceanbase/redo
mkdir -p /ocenabase/data/slog
mkdir -p /oceanbase/data/sstable
#創建日志目錄軟連接
ln -s /oceanbase/redo /ocenabase/data/clog
#創建配置文件目錄
mkdir -p /home/admin/oceanbase/etc2
mkdir -p /home/admin/oceanbase/etc3
b)OceanBase 運行時所依賴的部分三方動態庫
#默認安裝在/home/admin/oceanbase目錄下,需要先創建該目錄,否則按照不成功。?
sudo rpm -ivh oceanbase-ce-libs-4.1.0.0-100000202023040520.el7.x86_64.rpm
c)安裝 OceanBase 數據庫的 RPM 包
sudo rpm -ivh oceanbase-ce-4.1.0.0-100000202023040520.el7.x86_64.rpm
d)啟動節點 observer 進程
/home/admin/oceanbase/bin/observer ?-p 2881 -P 2882 -z zone2 -n obcluster -c 1 -d /oceanbase/data -i ens192 -o "memory_limit=6G,system_memory=1G,datafile_size=20G,log_disk_size=15G,cpu_count=8,enable_syslog_wf=False,enable_syslog_recycle=True,max_syslog_file_count=4,config_additional_dir=/home/admin/oceanbase/etc3;/home/admin/oceanbase/etc2"
? ? ? ? 啟動腳本可在已運行OBServer節點服務器上通過 ps aux|observer命令查看其他節點的運行參數,各參數說明請參考官方文檔:https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000000218350
?
3.3 新增Zone
登錄集群,新增zone
ALTER SYSTEM ADD ZONE zone2;
?
3.4 啟動Zone
ALTER SYSTEM START ZONE zone2;
?
3.5 向Zone新增OBserver節點
?ALTER SYSTEM ADD SERVER '192.168.1.220:2882' ZONE 'zone2';
?
3.6重復3.2~3.5新增其他Zone
4.擴充資源
修改資源池的?ZONE_LIST,
將新增加的 Zone 添加進租戶的資源池中。
ALTER RESOURCE POOL sys_pool ZONE_LIST=('zone1','zone2');
完成擴容后,可以將資源分配給用戶租戶。