CentOS 7.9 安装 openGauss 2.1.0 之剥茧抽丝

CentOS 7.9 安装 openGauss 2.1.0 之剥茧抽丝

问天的天问 2021/12/23

本文是在参考官方的安装文档后,提取总结出的关键安装步骤。

1 基础环境安装

复制代码
# timedatectl set-timezone Asia/Shanghai
# hostnamectl set-hostname gauss01

# nmcli con mod enp0s3 ipv4.method manual ipv4.address ***.***.***.***31/24
# nmcli con mod enp0s3 ipv4.gateway ***.***.***.***
# nmcli con mod enp0s3 ipv4.dns ***.***.***.***
# nmcli con mod enp0s3 connection.autoconnect yes

2 Disable SElinux

复制代码
# sed -i 's@\(^SELINUX=\).*@\1disabled@g' /etc/selinux/config

3 Disable Firewall

复制代码
# systemctl disable firewalld

4 Disable Transparent HugePages

复制代码
# sed -i '/linux16.*$/s//& transparent_hugepage=never/g' /boot/grub2/grub.cfg

Reboot and Confirm
# cat /sys/kernel/mm/transparent_hugepage/enabled
always madvise [never]

5 文件句柄设置

复制代码
# cat >> /etc/security/limits.conf << EOF

*`echo -e "\t"`soft`echo -e "\t"`nofile`echo -e "\t"`1000000
*`echo -e "\t"`hard`echo -e "\t"`nofile`echo -e "\t"`1000000
EOF

6 网卡设置

在网卡配置文件中最后一行添加 MTU=8192

复制代码
# cat /etc/sysconfig/network-scripts/ifcfg-enp0s3
......
MTU=8192

7 修改默认版本号

复制代码
# cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)
修改为
CentOS Linux release 7.6.1810 (Core)

8 系统参数

在内核方面,官方给出的建议值基本上与系统 CentOS 7.9 的默认值相同,不相同的只有 4 项,如下:

  • net.ipv4.tcp_retries1
  • net.ipv4.tcp_syn_retries
  • net.ipv4.ip_local_port_range
  • vm.overcommit_ratio

根据实际情况判定是否需要修改。

9 安装 python

复制代码
# yum install -y python36

10 安装软件包

官方建议软件包

复制代码
# yum install -y libaio-devel flex bison ncurses-devel glibc-devel patch redhat-lsb readline-devel

个人建议软件包

复制代码
# yum install -y bzip2 net-tools lrzsz

11 关闭 RemoveIPC

CentOS 默认关闭,无需要配置。

12 创建组和用户

组和用户都可以不用提前创建,在安装时会自动创建。

13 解压安装包

复制代码
# mkdir -p /opt/software/openGauss
# chmod 755 -R /opt/software
# cd /opt/software/openGauss

上传源码 openGauss-2.1.0-CentOS-64bit-all.tar.gz 并解压
# tar -zxvf openGauss-2.1.0-CentOS-64bit-all.tar.gz
# tar -zxvf openGauss-2.1.0-CentOS-64bit-om.tar.gz

14 编辑配置脚本

复制代码
# cp script/gspylib/etc/conf/cluster_config_template.xml cluster_config.xml
# vi /opt/software/openGauss/cluster_config.xml
<?xml version="1.0" encoding="utf-8"?>
<ROOT>
<CLUSTER>
<PARAM name="clusterName" value="dbCluster" />
<PARAM name="nodeNames" value="gauss01"/>
<PARAM name="gaussdbAppPath" value="/opt/huawei/install/app" />
<PARAM name="gaussdbLogPath" value="/var/log/omm" />
<PARAM name="tmpMppdbPath" value="/opt/huawei/tmp"/>
<PARAM name="gaussdbToolPath" value="/opt/huawei/install/om" />
<PARAM name="corePath" value="/opt/huawei/corefile"/>
<PARAM name="backIp1s" value="***.***.***.***71"/>
</CLUSTER>

<DEVICELIST>
<DEVICE sn="node1_hostname">
<PARAM name="name" value="gauss01"/>
<PARAM name="azName" value="AZ1"/>
<PARAM name="azPriority" value="1"/>
<PARAM name="backIp1" value="***.***.***.***71"/>
<PARAM name="sshIp1" value="***.***.***.***71"/>
<!-- dn -->
<PARAM name="dataNum" value="1"/>
<PARAM name="dataPortBase" value="15400"/>
<PARAM name="dataNode1" value="/opt/huawei/install/data/dn1"/>
<PARAM name="dataNode1_syncNum" value="0"/>
</DEVICE>

</DEVICELIST>
</ROOT>

根据实际情况进行相应修改。

15 执行安装和初始化

以 root 用户安装,安装脚本自行创建 dbgrp 组和 omm 用户

复制代码
# cd script
# python3 gs_preinstall -U omm -G dbgrp -X /opt/software/openGauss/cluster_config.xml

以 omm 用户初始化数据库

复制代码
# chown -R omm:dbgrp /opt/software/openGauss
# su - omm
$ gs_install -X /opt/software/openGauss/cluster_config.xml

初始化成功后连接数据库

复制代码
$ gsql -d postgres -p 15400
gsql ((openGauss 2.1.0 build 590b0f8e) compiled at 2021-09-30 14:29:04 commit 0 last mr )
Non-SSL connection (SSL connection is recommended when requiring high-security)
Type "help" for help.

openGauss=#

其中,postgres 为需要连接的数据库名称,15400 为数据库节点的端口号,即 cluster_config.xml 配置文件中的 dataPortBase 的值。

16 卸载 openGauss

复制代码
# su - omm
$ gs_uninstall --delete-data
命令卸载并不全面,还需要手工删除,也可不经命令卸载直接手工删除。
# userdel -r omm
# groupdel dbgrp
# rm -rf /opt/software /opt/huawei
# rm -rf /var/log/omm
相关推荐
Larru-Sun4 分钟前
Nginx + Vue Router 基础:SPA History 部署、反向代理与请求分流
运维·vue.js·nginx
考虑考虑8 小时前
cmd局部设置java变量
运维·后端·自动化运维
生活爱好者!9 小时前
哇!影视新玩法!docker部署NEOWATCH NAS
运维·docker·容器
一技安身9 小时前
【信创】银河麒麟V10、统信UOS解压7Z文件
linux·运维·服务器
奔跑的架构师10 小时前
[A-50]ARMv9/v8-DVFS系统架构
linux·arm开发·架构·系统架构·arm
迷途呀10 小时前
CI/CD 自动化部署实践:让代码提交后自动上线
linux·运维·nginx·ci/cd·自动化
闲云自留地10 小时前
动手玩 Nova:Hypervisor、主机聚合、可用分区、虚拟机生命周期实操
运维·架构·openstack
赴生-10 小时前
Liunx 操作系统 进程概念(上)
linux
binqian11 小时前
【linux】OpenSSH升级文档
linux·运维·网络
吴声子夜歌11 小时前
Shell编程——if条件语句
linux·运维·shell