1、系统环境准备
本例系统OS版本采用CentOS Linux release 7.9.2009
1.1、关闭防火墙
systemctl stop firewalld.service systemctl disable firewalld.service
复制
1.2、关闭selinux
--永久关闭,需要重启操作系统 sed -i 's/^SELINUX=.*/SELINUX=disabled/' /etc/selinux/config cat /etc/selinux/config|grep ^SELINUX= --临时关闭 setenforce 0
复制
1.3、设置字符集参数为Unicode编码
--修改字符集 cat>> /etc/profile<<EOF export LANG=en_US.UTF-8 EOF --检查 cat /etc/profile | grep LANG
复制
1.4、设置时区和时间
ll /etc/localtime --如果是不Asia/Shanghai,则执行 rm -fr /etc/localtime ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
复制
1.5、关闭swap交换内存(可选)
关闭swap交换内存是为了保障数据库的访问性能,避免把数据库的缓冲区内存淘汰到磁盘上。 如果服务器内存比较小,内存过载时,可打开swap交换内存保障正常运行。
如需永久关闭swap,则修改/etc/fstab文件
swapoff -a
复制
1.6、关闭transparent_hugepage
关闭透明大页可以减少宿主机操作系统的开销,以便获得更稳定的性能。
--检测是否关闭 cat /sys/kernel/mm/transparent_hugepage/enabled vi /etc/default/grub --在GRUB_CMDLINE_LINUX行末尾添加transparent_hugepage=never GRUB_CMDLINE_LINUX="rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet transparent_hugepage=never" --重新生成grub配置文件 grub2-mkconfig -o /boot/grub2/grub.cfg --重启服务器生效
复制
1.7、安装软件包
软件类型 | 配置描述 |
---|---|
rdtscp指令集(x86) | 执行lscpu | grep rdtscp 命令查看是否支持rdtscp指令集。 |
bmi2指令集(CentOS) | 执行lscpu | grep bmi2 命令查看是否支持bmi2指令集。 |
工具 | Huawei JDK 1.8.0、psmisc、bzip2 |
Python | - openEuler:支持Python 3.7.X - CentOS:支持Python 3.6.X - 麒麟:支持Python 3.7.X 说明: python需要通过–enable-shared方式编译。 |
所需软件 | 建议版本 |
---|---|
libaio-devel | 建议版本:0.3.109-13 |
flex | 要求版本:2.5.31 以上 |
bison | 建议版本:2.7-4 |
ncurses-devel | 建议版本:5.9-13.20130511 |
glibc-devel | 建议版本:2.17-111 |
patch | 建议版本:2.7.1-10 |
redhat-lsb-core | 建议版本:4.1 |
readline-devel | 建议版本:7.0-13 |
libnsl(openEuler+x86环境中) | 建议版本:2.28-36 |
openSSH | 建议版本 :8.4p1 |
expect | 建议版本 :5.45.4 |
--检查软件依赖的包 rpm -qa libaio-devel flex bison ncurses-devel glibc-devel patch redhat-lsb-core readline-devel bzip2 python3 java-1.8.0-openjdk* openssh* psmisc expect --执行全部安装 yum install -y lksctp* yum install -y java-1.8.0-openjdk* psmisc bzip2 python3 python3-devel yum install -y libaio-devel flex bison ncurses-devel glibc-devel patch readline-devel redhat-lsb-core openssh expect
复制
2、安装过程
2.1、PTK在线安装
curl --proto '=https' --tlsv1.2 -sSf https://cdn-mogdb.enmotech.com/ptk/install.sh | sh source ~/.bash_profile ptk --version
复制
2.2、PTK配置文件准备
ptk template locale>config.yaml --PTK加密密码 ptk encrypt TEXT1
复制
最终一主一备使用如下配置文件:
# config.yaml global: cluster_name: mogdb_cluster1 user: omm group: omm base_dir: /opt/mogdb db_servers: - host: 192.168.31.60 db_port: 26000 role: primary ssh_option: port: 22 user: root password: pTk6ZGI5NzhmNDc8Qj1APUE9QkNtb3ZEOEU1WjNJUVFRSVRLVkREaERBcXlNa2JSNjJyRmlyanZzdDA4ZHc= - host: 192.168.31.61 db_port: 26000 role: standby ssh_option: port: 22 user: root password: pTk6ZGI5NzhmNDc8Qj1APUE9QkNtb3ZEOEU1WjNJUVFRSVRLVkREaERBcXlNa2JSNjJyRmlyanZzdDA4ZHc=
复制
2.3、检查系统环境
ptk chekos -f config.yaml --部分输出结果如下 # Check Results Item | Level ------------------------------------+---------- A1.Check_OS_Version | OK A2.Check_Kernel_Version | OK A3.Check_Unicode | OK A4.Check_TimeZone | OK A5.Check_Swap_Memory_Configure | Warning A6.Check_SysCtl_Parameter | Warning A7.Check_FileSystem_Configure | OK A8.Check_Disk_Configure | OK A9.Check_Logical_Block | OK A9.Check_BlockDev_Configure | Warning A10.Check_IO_Request | Warning A10.Check_Asynchronous_IO_Request | OK A10.Check_IO_Configure | OK A11.Check_Network_Configure | OK A12.Check_Time_Consistency | OK A13.Check_Firewall_Status | OK A14.Check_THP_Status | OK A15.Check_Dependent_Package | OK A16.Check_CPU_Instruction_Set | OK A17.Check_Port | OK A18.Check_Selinux | OK A19.Check_User_Ulimit | OK Total count 22, abnormal count 0, warning count 4
复制
2.4、执行安装
ptk install -f config.yaml --部分输出结果如下 cluste_name | host | user | port | status | message -----------------+---------------+------+-------+---------------+---------- mogdb_cluster1 | 192.168.31.60 | omm | 26000 | start_success | success | 192.168.31.61 | omm | 26000 | start_success | success
复制
2.5、安装结果检查
[root@mogdb01 ~]# ptk ls cluster_name | id | addr | user | data_dir | db_version | create_time | comment -----------------+------+---------------------+------+-----------------+------------------------------+---------------------+---------- mogdb_cluster1 | 6001 | 192.168.31.60:26000 | omm | /opt/mogdb/data | MogDB 3.0.4 (build cc068866) | 2023-06-14T16:20:29 | | 6002 | 192.168.31.61:26000 | omm | /opt/mogdb/data | | | [root@mogdb01 ~]# [root@mogdb01 ~]# ptk cluster status -n mogdb_cluster1 --detail [ Cluster State ] cluster_name : mogdb_cluster1 cluster_state : Normal database_version : MogDB 3.0.4 (build cc068866) [ Datanode State ] cluster_name | id | ip | port | user | nodename | db_role | state | upstream -----------------+------+---------------+-------+------+----------+---------+--------+----------- mogdb_cluster1 | 6001 | 192.168.31.60 | 26000 | omm | dn_6001 | primary | Normal | - | 6002 | 192.168.31.61 | 26000 | omm | dn_6002 | standby | Normal | - [ DataNode Detail ] --------------- 192.168.31.60:26000(dn_6001) --------------- role : primary data_dir : /opt/mogdb/data az_name : AZ1 [Senders Info]: sender_pid : 7004 local_role : Primary peer_role : Standby peer_state : Normal state : Streaming sender_sent_location : 0/402FE40 sender_write_location : 0/402FE40 sender_flush_location : 0/402FE40 sender_replay_location : 0/402FE40 receiver_received_location : 0/402FE40 receiver_write_location : 0/402FE40 receiver_flush_location : 0/402FE40 receiver_replay_location : 0/402FE40 sync_percent : 100% sync_state : Sync sync_priority : 1 sync_most_available : On channel : 192.168.31.60:26001-->192.168.31.61:40776 --------------- 192.168.31.61:26000(dn_6002) --------------- role : standby data_dir : /opt/mogdb/data az_name : AZ1 [Receiver Info]: receiver_pid : 8266 local_role : Standby peer_role : Primary peer_state : Normal state : Normal sender_sent_location : 0/402FE40 sender_write_location : 0/402FE40 sender_flush_location : 0/402FE40 sender_replay_location : 0/402FE40 receiver_received_location : 0/402FE40 receiver_write_location : 0/402FE40 receiver_flush_location : 0/402FE40 receiver_replay_location : 0/402FE40 sync_percent,channel : 100% [root@mogdb01 ~]#
复制
订阅号:DongDB手记
墨天轮:https://www.modb.pro/u/231198
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。