|PolarDB-O主备高可用部署及切换排雷指引
作者介绍
刘滨 ,
中国移动信息数据库运维专家 。 拥有Oracle OCP、OCM认证 , 曾多年在银行金融保险行业的一线运维 , 目前正在积极参与国产数据库的研究以及在移动场景下的推广等工作 。
一、安装前准备
1、环境规划
本文插图
2、软件目录
PGDATA=http://news.hoteastday.com/opt/polardb/data #数据库的本地盘目录
PGHOME=/usr/local/polardb_o_current #软件目录
PFSHOME=/usr/local/polarstore/pfsd #PFS家目录
PFSDIR=/sdb/data #PFS文件目录路径
3、安装介质
polardb-clustermanager-1.0.0-20200904155748.x86_64.rpm #集群管理安装包
PolarDB-O-0200-2.0.0-20201009151903.alios7.x86_64.rpm #数据库安装包
t-polarstore-pfsd-san-1.1.41-20200909132342.alios7.x86_64.rpm #PFS安装包
4、关闭透明大页
关闭透明大页 , 确保Hugepagesize=2048 kB:
cat /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=centos/root rd.lvm.lv=centos/swap rhgb quiet transparent_hugepage=never''
GRUB_DISABLE_RECOVERY=''true''
使配置生效
grub2-mkconfig -o /boot/grub2/grub.cfg
cat /sys/kernel/mm/transparent_hugepage/enabled
always madvise [never]
5、配置/etc/sysctl.conf
添加以下内容:
vm.dirty_expire_centisecs=3000
net.ipv4.tcp_synack_retries=2
net.core.rmem_default=262144
vm.dirty_background_bytes=409600000
net.core.wmem_default=262144
kernel.shmall=107374182
vm.mmap_min_addr=65536
vm.overcommit_ratio=90
kernel.shmmni=819200
net.core.rmem_max=4194304
vm.dirty_writeback_centisecs=100
fs.file-max=76724600
net.core.somaxconn=4096
fs.aio-max-nr=1048576
net.ipv4.tcp_max_tw_buckets=262144
vm.swappiness=0
fs.nr_open=20480000
net.ipv4.tcp_fin_timeout=5
net.ipv4.ip_local_port_range=40000 65535
net.ipv4.tcp_keepalive_probes=3
net.ipv4.tcp_mem=8388608 12582912 16777216
kernel.shmmax=274877906944
kernel.sem=4096 2147483647 2147483646 512000
net.ipv4.tcp_keepalive_intvl=20
net.ipv4.tcp_keepalive_time=60
vm.overcommit_memory=0
net.ipv4.tcp_syncookies=1
net.ipv4.tcp_max_syn_backlog=4096
net.ipv4.tcp_timestamps=1
net.ipv4.tcp_rmem=8192 87380 16777216
net.ipv4.tcp_wmem=8192 65536 16777216
net.core.wmem_max=4194304
vm.dirty_ratio=80
【|PolarDB-O主备高可用部署及切换排雷指引】net.core.netdev_max_backlog=10000
vm.zone_reclaim_mode=0
net.ipv4.tcp_tw_reuse=1
vm.nr_hugepages=0
vm.nr_overcommit_hugepages=1000000
sysctl -p使配置生效
6、创建polardb_limits
vi /etc/security/limits.d/polardb_limits.conf
* soft nofile 655360
* hard nofile 655360