近些年國產(chǎn)數(shù)據(jù)庫迎來了跨越式發(fā)展,大家對國產(chǎn)數(shù)據(jù)庫的關(guān)注度也越來越高。筆者近期正好研究阿里oceanbase數(shù)據(jù)庫,整理ob的安裝部署操作步驟,分享給大家。
服務(wù)器類型 | 數(shù)量 | 功能最低配置 |
OCP管控服務(wù)器 | 1臺 | 32C,128G,1.5TB 存儲 |
OceanBase計算服務(wù)器 | 3臺 | 32C,128G,1.2TB 存儲 |
文件名 | 說明 |
t-oceanbase-antman-1.3.6-1919351.alios7.x86_64.rpm | OTA(OceanBase自動化步驟工具) |
OBP173_20200603_1923.tar.gz | OBProxy鏡像文件,只給OCP用,放在/root/t-oceanbase-antman下 |
OB2251_x86_20200827_2038.tar | OB數(shù)據(jù)庫鏡像文件,只給OCP做元數(shù)據(jù)用,放在/root/t-oceanbase-antman/下 |
oceanbase-2.2.73-20201117154111.el7.x86_64.rpm | OceanBase 軟件RPM包文件 |
obproxy-1.7.6.2-1903614.el7.x86_64.rpm | OBProxy 軟件RPM包文件 |
obclient-1.1.8-20200408152115.el7.alios7.x86_64.rpm | OceanBase客戶端RPM包 |
dbcat-1.1.6-SNAPSHOT (1).tar.gz | 用于異構(gòu)數(shù)據(jù)庫表結(jié)構(gòu)轉(zhuǎn)換 |
2.4.3-1905047.tar.gz | OCP2.4.3版本的docker鏡像放在/root/t-oceanbase-antman/下 |
oceanbase-client-1.1.1.jar | OceanBase Java連接驅(qū)動,支持Oracle和MySQL實(shí)例 |
實(shí)驗(yàn)架構(gòu)
主機(jī) | 主機(jī)名 | IP地址 |
OCP | ocpserver | 192.168.3.2 |
observer1 | ob4 | 192.168.3.3 |
observer2 | ob5 | 192.168.3.4 |
observer3 | ob6 | 192.168.3.5 |
OCP主機(jī)磁盤分配方案建議
載點(diǎn) | 大小(GB) | 用途 | 磁盤格式 |
/home | 100 | 各組件運(yùn)行日志盤 | 建議ext4 |
/data/log1 | 200 (內(nèi)存大小的3倍) | OCP元數(shù)據(jù)庫OB日志盤 | 建議ext4 |
/data/1 | 100(取決于所需存儲的數(shù)據(jù)大小) | OCP元數(shù)據(jù)庫OB數(shù)據(jù)盤 | 建議ext4 |
/docker | 200 | docker根目錄 | 建議ext4 |
總計 | 600+其它系統(tǒng)空間,總數(shù)650+G |
Observer主機(jī)磁盤分配方案建議
載點(diǎn) | 大小(GB) | 用途 | 磁盤格式 |
/home | 100 | 建議ext4 | |
/data/log1 | 500G(無剛性需求,看保留日志要求) | OCP元數(shù)據(jù)庫OB日志盤 | 建議ext4 |
/data/1 | 1TB(取決于存儲的數(shù)據(jù)大小,現(xiàn)階段在安裝過程中有一個檢查要求/data/1必須大于100G,并且必須是一個獨(dú)立的掛載點(diǎn)) | OCP元數(shù)據(jù)庫OB數(shù)據(jù)盤 | 建議ext4 |
總計 | 1.6 TB+其它系統(tǒng)空間,總數(shù) 約2TB |
hostnamectl set-hostname ocpserver hostnamectl set-hostname ob4 hostnamectl set-hostname ob5 hostnamectl set-hostname ob6 配置/etc/hosts文件 ocpserver 192.168.3.2 ob4 192.168.3.3 ob5 192.168.3.4 ob6 192.168.3.5 |
4.2 所有主機(jī)關(guān)閉防火墻與selinux
1) 關(guān)閉防火墻,并開機(jī)禁用 systemctl stop firewalld.service systemctl disable firewalld.service systemctl status firewalld.service 2) 禁用selinux sed -i s@SELINUX=enforcing@SELINUX=disabled@g /etc/selinux/config grep "^SELINUX=" /etc/selinux/config 3) 重啟 reboot 4) 檢查 systemctl status firewalld.service iptables -L getenforce |
4.3 所有主機(jī)配置NTP
vi /etc/ntp.conf 注釋文件中的以下4行 #server 0.centos.pool.ntp.org iburst #server 1.centos.pool.ntp.org iburst #server 2.centos.pool.ntp.org iburst #server 3.centos.pool.ntp.org iburst 在末行添加NTP服務(wù)器IP地址,我這里是本地NTP服務(wù)器,就使用OCP主機(jī)最為時鐘源 server 192.168.3.2 重啟NTP服務(wù),預(yù)計5~10分鐘就會同步,可手動拉同步 systemctl restart ntpd.service ntpq -p --檢查時間誤差 clockdiff 192.168.3.3 clockdiff 192.168.3.4 clockdiff 192.168.3.5 |
4.4 允許root SSH
vi /etc/ssh/sshd_config 注釋 #PermitRootLogin no systemctl restart sshd.service |
4.5 關(guān)閉numa
判斷系統(tǒng)是否開啟了numa 功能 grep -i numa /var/log/dmesg --關(guān)閉numa vi /etc/default/grub [root@ob6 clonescripts]# vi /etc/default/grub GRUB_TIMEOUT=5 GRUB_DISTRIBUTOR="$(sed s, release .*$,,g /etc/system-release)" GRUB_DEFAULT=saved GRUB_DISABLE_SUBMENU=true GRUB_TERMINAL_OUTPUT="console" GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=vg0/lv_root rd.lvm.lv=vg0/lv_swap rhgb quiet numa=off elevator=deadline numa=off" GRUB_DISABLE_RECOVERY="true" --重建grub 配置文件 grub2-mkconfig -o /boot/grub2/grub.cfg --重啟操作系統(tǒng) reboot |
所有節(jié)點(diǎn)需要部署OTA
rpm –ivht-oceanbase-antman-1.3.6-1919351.alios7.x86_64.rpm
安裝完成后會在/root下創(chuàng)建一個t-oceanbase-antman目錄
把安裝包移動到/root/t-oceanbase-antman目錄下
--只在OCP節(jié)點(diǎn)執(zhí)行
mvOB2251_x86_20200827_2038.tarOBP173_20200603_1923.tar.gz 2.4.3-1905047.tar.gz/root/t-oceanbase-antman/
5.2 為每臺主機(jī)都添加admin用戶
cd/root/t-oceanbase-antman/clonescripts
./clone.sh–h 獲取幫助
各個選項(xiàng)后面都有自己的解釋
./clone.sh–u 添加admin用戶
默認(rèn)密碼是admin, 建議立刻修改
chownadmin:admin –R /data/1
chownadmin:admin –R /data/log1
5.4 對每臺服務(wù)器的操作系統(tǒng)內(nèi)核進(jìn)行設(shè)置
--OCP主機(jī),注意-r指定角色
cd/root/t-oceanbase-antman/clonescripts
./clone.sh-r ocp –c
其實(shí)也可以直接修改該目錄下的clone.conf文件里面的角色定義machineRole=ocp選項(xiàng)。
--OB主機(jī)
cd/root/t-oceanbase-antman/clonescripts
./clone.sh-r ob -c
5.5 安裝依賴包
提前配置好yum或者epel源
--OCP主機(jī),注意-r指定角色
cd/root/t-oceanbase-antman/clonescripts
./clone.sh-r ocp –m
--OB主機(jī)
cd/root/t-oceanbase-antman/clonescripts
./clone.sh-r ob –m
5.6 在OCP服務(wù)器安裝docker
cd/root/t-oceanbase-antman/clonescripts
./clone.sh–i
5.7 部署前環(huán)境檢查
統(tǒng)一檢查腳本
cd/root/t-oceanbase-antman/clonescripts
./clone.sh–t
也可以使用如下檢查方法:
shprecheck.sh -m ocp ocp主機(jī)使用
shprecheck.sh –m ob ob主機(jī)使用
關(guān)注failed項(xiàng),處理好后繼續(xù)檢查,直到所有的檢查項(xiàng)都通過。
OCP有單節(jié)點(diǎn)和三節(jié)點(diǎn)兩種部署模式,這里的環(huán)境使用單節(jié)點(diǎn)模式。
cd/root/t-oceanbase-antman
bashinit_obcluster_conf.sh
填寫正確OCP服務(wù)器的ip、root和admin用戶的密碼。單節(jié)點(diǎn)的負(fù)載均衡模式是 none
其實(shí)就是在/root/t-oceanbase-antman目錄下生成了一個obcluster.conf文件。
說明:
也可以直接去拷貝obcluster.conf的配置模板文件
cd/root/t-oceanbase-antman
cp/root/t-oceanbase-antman/config/obcluster.conf.template.
mvobcluster.conf.template obcluster.conf
編輯好如下標(biāo)紅需要填寫的選項(xiàng):
## obcluster.conf ## SINGLE_OCP_MODE=TRUE ################################ 根據(jù)環(huán)境必須修改 / MUST CHANGE ACCORDING ENVIRONMENT ################################ ############ 填寫機(jī)器IP和root/admin密碼 / Edit Machine IP and Password Of root/admin ############ ZONE1_RS_IP=192.168.3.2 OBSERVER01_ROOTPASS=root_password OBSERVER01_ADMINPASS=admin_password SSH_PORT=22 ############ 填寫負(fù)載均衡配置 / Edit Configuration of Load Balance ############ # lb_mode: dns/f5/none, default: dns for 3 ocp, none for 1 ocp lb_mode=none ###### 選擇dns模式,請?zhí)顚慏NS基本配置 / Edit Configuration of DNS When Using DNS LB ###### DNS_ZONE_NAME=oceanbase.com OCP_DNS_VPORT=80 ob_dns_docker_image_package=ob_dns.tar.gz ob_dns_image_REPO=reg.docker.alibaba-inc.com/antman/ob_dns ob_dns_image_TAG=OBDNS_x86_20200927_1617 ###### 選擇f5模式,請?zhí)顚慒5等外部負(fù)載均衡配置 / Edit Configuration of F5 When Using External LB ###### OBPROXY_F5_VIP=xxx.xxx.xxx.xxx OBPROXY_F5_VPORT=3306 OCP_F5_VIP=xxx.xxx.xxx.xxx OCP_F5_VPORT=80 ############ 根據(jù)服務(wù)器CPU、內(nèi)存設(shè)置容器資源編排 / Allocate Container Resources According To Server ############ OB_docker_cpus=32 OB_docker_memory=128G OCP_docker_cpus=16 OCP_docker_memory=32G OBProxy_docker_cpus=8 OBProxy_docker_memory=10G ############ 填寫OCP各組件容器的版本信息 / Edit Docker Image, Repo And Tag of OCP Components ############ # OB docker docker_image_package=OB2251_x86_20200827_2038.tar OB_image_REPO=reg.docker.alibaba-inc.com/antman/ob-docker OB_image_TAG=OB2251_x86_20200827_2038 # OCP docker ocp_docker_image_package=2.4.3-1905047.tar.gz OCP_image_REPO=reg.docker.alibaba-inc.com/oceanbase/ocp-all-in-one OCP_image_TAG=2.4.3-1905047 # OBPROXY docker obproxy_docker_image_package=OBP173_20200603_1923.tar.gz obproxy_image_REPO=reg.docker.alibaba-inc.com/antman/obproxy obproxy_image_TAG=OBP173_20200603_1923 ############ 如果準(zhǔn)備部署OMS,請?zhí)顚慜MS基本配置 / Edit Configuration Of OMS When Deploying OMS ############ OMS_IP=xxx.xxx.xxx.xxx oms_docker_image_package=oms.feature_1.3.2.202005152240.tar.gz oms_image_REPO=acs-reg.alipay.com/oceanbase/oms-all-in-one oms_image_TAG=feature_1.3.2 ############ 如果準(zhǔn)備部署ODC,請?zhí)顚慜DC基本配置 / Edit Configuration Of ODC When Deploying ODC ############ odc_docker_image_package=odc220.tar.gz ODC_image_REPO=acs-reg.alipay.com/oceanbase/obodc ODC_image_TAG=2.2.0 ######################################################################################################################## ################################ ADVANCED SETTINGS / 基本不用修改 ################################ ############ OB、OBPROXY、OCP 高級配置,基本不用修改 / OB, OBPROXY, OCP ADVANCED SETTINGS ############ ###### 自動配置,無需修改 / AUTO-CONFIGURATION ###### OBPROXY_VIP=xxx.xxx.xxx.xxx OBPROXY_VPORT=3306 OCP_VIP=xxx.xxx.xxx.xxx OCP_VPORT=80 ###### 自動配置,無需修改 / AUTO-CONFIGURATION ###### OBSERVER01_HOSTNAME=OCP_META_SERVER_1 ZONE1_NAME=META_OB_ZONE_1 ##there must be more than half zone within same region ZONE1_REGION=OCP_META_REGION MYSQL_PORT=2881 RPC_PORT=2882 OCP_VERSION=xxx # for observer docker ###### TODO 是否去掉 ###### physical_data_dir=/data/1 physical_log_dir=/data/log1 docker_data_dir=/data/1 docker_log_dir=/data/log1 # for install observer rpm and start observer process obcluster_name=obcluster cluster_id=100000 datafile_disk_percentage=90 # for backup nfs info BACKUP_ENABLE=FALSE physical_backup_dir=/obbackup docker_backup_dir=/obbackup # for ocp docker OCP_PORT=8080 OCP_container_name=ocp OCP_METADB_USERNAME=root@ocp_meta OCP_MONITORDB_USERNAME=root@ocp_monitor OCP_OBPROXYDB_USERNAME=root@obproxy OCP_METADB_DBNAME=ocp OCP_MONITOR_DBNAME=ocp_monitor IDC_ROOM=am171 DEFAULT_REGION=HANGZHOU # for ob dns & nginx OCP_OBPROXY_DNS_NAME=ocp-obproxy OCP_DNS_NAME=ocp ob_dns_container_name=ob_dns DNS_MASTER_IP=$ZONE1_RS_IP DNS_THIRD_IP=$ZONE3_RS_IP NGINX_MASTER_IP=$ZONE1_RS_IP NGINX_PORT=85 # obproxy and paramters OBPROXY_PORT=2883 obproxy_container_name=obproxy OBPROXY_APP_NAME_ARG=AntObproxy OBPROXY_CONFIG_SERVER_URL="http://${OCP_VIP}:${OCP_VPORT}/services?Action=GetObProxyConfig&User_ID=admin&UID=alibaba" ############ OMS 高級配置,基本不用修改 / OMS ADVANCED SETTINGS ############ OMS_PORT=8088 OMS_METADB_USER=root OMS_METADB_TENANT=oms_tenant OMS_METADB_DBNAME=oms_meta oms_container_name=oms oms_docker_cpus=12 oms_docker_memory=24G ############ ODC 高級配置,基本不用修改 / ODC ADVANCED SETTINGS ############ ODC_PORT=8989 ODC_METADB_USER=root ODC_METADB_TENANT=odc_meta ODC_METADB_DBNAME=odc odc_container_name=odc odc_docker_cpus=4 odc_docker_memory=8G ######################################################################################################################## |
主要是OCP的IP地址,root密碼,admin用戶的密碼,還有OB、OCP、OBProxy對應(yīng)的docker文件已經(jīng)docker的TAG(如果不知道TAG,可以使用dockerload –i xxx.tar)查看
6.2 開始安裝OCP
先獲取一下幫助
/root/t-oceanbase-antman
./install.sh–h
可以看到OCP 的安裝需要8 steps 。
下面執(zhí)行OCP 安裝
#./install.sh -i 1-8 <-------執(zhí)行1-8 步
如果中間失敗,可以根據(jù)提示解決問題,然后再次從失敗的step再次執(zhí)行。
(如果要回退或卸載OCP,使用./install.sh -c 1-X )
建議一步一步來
./install.sh-i 1
./install.sh-i 2
./install.sh-i 3 (這一步需要點(diǎn)時間)
..........
./install.sh-i 8
安裝過程中要注意日志是否有報錯,看到最后如下信息,說明整個過程安裝成功
6.3 部署后檢查
OCP的訪問地址:http://
admin用戶初始化密碼root
打開 ocp的web 管理頁面后,就有一個集群和 3個租戶存在。
首先添加主機(jī),將 3臺 oceanbase服務(wù)器主機(jī)添加進(jìn)來。
這里可以設(shè)置服務(wù)器型號,機(jī)型—>新增機(jī)型(observer)所在機(jī)房—>新增機(jī)房(hankou)和區(qū)域(wuhan)等。
這里是不支持中文的。
注意:
這里的admin的初始密碼是在各observer配置文件
/root/t-oceanbase-antman/clonescripts/clone.conf里面的。
將三個observer服務(wù)器全部加進(jìn)來,直到狀態(tài)變?yōu)榭臻e。可以點(diǎn)擊任務(wù)按鈕,觀看進(jìn)度。
創(chuàng)建 OB集群,按照要求的填寫好相應(yīng)信息。
密碼需要設(shè)置復(fù)雜一點(diǎn),或者使用隨機(jī)生成,密碼需要記住,后面登錄維護(hù)會使用到該密碼。
OB版本上傳完成。
創(chuàng)建集群的時候設(shè)置primary zone的優(yōu)先級,這里設(shè)置的是zone1:zone2:zone3
確認(rèn)好之后點(diǎn)擊頁面的提交按鈕
等待狀態(tài)變?yōu)榭臻e狀態(tài)。
新建集群,這里OB的版本是要上傳的。
手動填寫集群名稱,隨機(jī)生成密碼(要記住),和選擇OB版本
點(diǎn)擊提交
可以看到有個任務(wù)進(jìn)度和查看任務(wù)詳情,點(diǎn)擊查看任務(wù)詳情
子任務(wù)失敗了,可以點(diǎn)擊重試按鈕。
每一步都可以查看其安裝日志
集群初始化
等待任務(wù)完成之后,查看主機(jī)狀態(tài),為在線
搭建完成。
選擇集群,租戶名稱要自定義,新增Unit規(guī)格,范圍上下給一樣的。
管理員密碼選擇隨機(jī)生成,租戶這里是Oracle租戶,字符編碼是GBK,點(diǎn)擊提交
8.2 選擇租戶類型
點(diǎn)擊提交
租戶創(chuàng)建完成。
已有數(shù)據(jù),可以使用!
9.2 obclient連接測試
租戶創(chuàng)建完成。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/129970.html
docker部署OceanBase第一步 ob docker鏡像下載下載鏡像dockerpullobpilot/oceanbase-ce:latest第二步 容器創(chuàng)建新容器創(chuàng)建dockerrun-itd-m10G-p2881:2881-p2883:2883 –nameoceanbase-ceobpilot/oceanbase-ce:latest進(jìn)入容器[root@jeames~]#dockerex...
摘要:年月國產(chǎn)數(shù)據(jù)庫流行度排行榜前名連續(xù)三個月的分?jǐn)?shù)下跌讓名次下降一位,以分的總分來到榜單第三。國產(chǎn)數(shù)據(jù)庫流行度排行榜與趨勢變化本月分?jǐn)?shù)下跌,總分,位于榜單第五。 2021年10月國產(chǎn)數(shù)據(jù)庫流行度排行榜前15名 連續(xù)三個月的分?jǐn)?shù)下跌讓OceanBase名次下降一位,以424.83分的總分來到榜單第三。本月,OceanBase有幾個重要事件,如亮相2021中國國際服務(wù)貿(mào)易交流會,參與HICOO...
摘要:小螞蟻說相信大家對螞蟻金服自主研發(fā)的金融級分布式關(guān)系數(shù)據(jù)庫的故事不再陌生了。文末有彩蛋在普通硬件上提供極限性能的數(shù)據(jù)庫服務(wù)是完全自主研發(fā)的金融級分布式關(guān)系數(shù)據(jù)庫,從架構(gòu)上可以通過擴(kuò)展機(jī)器來解決集群服務(wù)能力的擴(kuò)展需求。 小螞蟻說:相信大家對螞蟻金服自主研發(fā)的金融級分布式關(guān)系數(shù)據(jù)庫OceanBase的故事不再陌生了。在剛剛過去的2018年天貓雙11中,成交額2135億再次創(chuàng)造了新紀(jì)錄,而支...
閱讀 1346·2023-01-11 13:20
閱讀 1684·2023-01-11 13:20
閱讀 1132·2023-01-11 13:20
閱讀 1858·2023-01-11 13:20
閱讀 4100·2023-01-11 13:20
閱讀 2704·2023-01-11 13:20
閱讀 1385·2023-01-11 13:20
閱讀 3597·2023-01-11 13:20