作者:李强
Email:[email protected]
版本:1.0 2020-07-12 初稿
1.1 2020-08-24 增加卸载重装
1.2 2020-08-24 修改外接存储操作
openGauss官方网站:https://opengauss.org/zh
openGauss官方文档:https://opengauss.org/zh/docs/1.0.0/docs/Quickstart/Quickstart.html
openGauss的安装流程如上图所示,请参阅官方文档中的“安装准备、安装openGauss“等章节,完成安装过程。
硬件要求:
软件要求:
打开https://opengauss.org/zh/download.html 可以找到openGauss安装包的下载链接。
请注意openeuler_aarch64为ARM版本,必须使用ARM服务器和openEuler ARM版本的操作系统进行安装。 如果只有x86服务器,请下载centos_x86_64安装包,在CentOS 7.6操作系统上进行安装。
下载地址:
安装CentOS 7.6或者openEuler 20.3,并配置网络和存储。
设置主机名
# 设置主机名,单机使用gaussdb,集群使用gaussdb1,2… hostnamectl set-hostname gaussdb.sugon.com |
openEuler 20.3网络配置方法:
openEuler没有安装network服务,而是使用NetworkManager进行网络配置管理。
请使用nmcli命令进行网卡配置,或编辑/etc/sysconfig/network-scripts/ifcfg-*配置文件后,使用ifdown/ifup命令重启网卡。
nmcli con add type ethernet con-name ens192 ifname ens192 ip4 192.168.5.11/16 gw4 192.168.0.253 |
yum源配置:
有Internet网络时,可以添加外部yum源:
yum-config-manager --add-repo=http://mirrors.163.com/centos/7/os/x86_64/ rpm --import http://mirrors.163.com/centos/7/os/x86_64/RPM-GPG-KEY-CentOS-7 |
没有Internet网络时,可以添加DVD光盘为yum源。
mount /dev/sr0 /mnt/cdrom yum-config-manager --add-repo=file:///mnt/cdrom rpm --import /mnt/cdrom/RPM-GPG-KEY-openEuler |
openGauss需要安装以下软件包。
yum install -y bzip2 libaio-devel flex bison ncurses-devel glibc-devel patch |
也可以安装以下非必须工具,便于安装。
yum install -y net-tools tar lrzsz |
(1)关闭防火墙和SeLinux
systemctl disable firewalld.service systemctl stop firewalld.service sed -i 's/^SELINUX=.*/SELINUX=disabled/' /etc/selinux/config setenforce 0 |
(2)设置字符集参数
if [ "$LANG" != "en_US.UTF-8" ];then export LANG=en_US.UTF-8 echo export LANG=en_US.UTF-8 >> /etc/profile fi |
(3)检查设置时区
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime |
(4)关闭swap交换区
swapoff -a |
(5)检查设置网卡MTU值
ifconfig ifconfig ens192 mtu 8192 |
(6)设置root用户远程登录配置
sed -i 's/^Banner .*/Banner none/' /etc/selinux/config sed -i 's/^#PermitRootLogin .*/PermitRootLogin yes/' /etc/selinux/config sed -i 's/^PermitRootLogin no/PermitRootLogin yes/' /etc/selinux/config systemctl restart sshd |
(7)修改操作系统参数(可选)
有部分内核参数建议手动修改。
echo 5 > /proc/sys/net/ipv4/tcp_retries1 echo 5 > /proc/sys/net/ipv4/tcp_syn_retries echo 10 > /proc/sys/net/sctp/path_max_retrans echo 10 > /proc/sys/net/sctp/max_init_retransmits
echo net.ipv4.tcp_retries1 = 5 >>/etc/sysctl.conf echo net.ipv4.tcp_syn_retries = 5 >>/etc/sysctl.conf echo net.sctp.path_max_retrans = 10 >>/etc/sysctl.conf echo net.sctp.max_init_retransmits = 10 >>/etc/sysctl.conf |
(8)NTP配置(可选)
系统可能没有安装NTP时间同步服务,需要手动安装并开启。
yum install -y ntp systemctl start ntpd && systemctl enable ntpd |
无需手动创建,gs_install初始化安装环境时,会自动创建。
mkdir /opt/huawei chmod 777 /opt/huawei |
mkdir -p /opt/software/openGauss chmod 755 -R /opt/software cd /opt/software/openGauss
# rz 上传软件包 tar -zxvf openGauss-1.0.0-CentOS-64bit.tar.gz
# openEuler 安装包 # tar -zxvf openGauss-1.0.0-openEuler-64bit.tar.gz |
安装openGauss前需要创建XML文件。XML文件包含部署openGauss的服务器信息、安装路径、IP地址以及端口号等。用于告知openGauss如何部署。用户需根据不同场配置对应的XML文件。
因权限问题,在配置多节点集群时,最好将XML配置文件放在低权限限制路径,如/tmp,或者chmod手动修改各节点传输XML路径的权限。
vi /tmp/clusterconfig.xml |
单节点配置文件示例:
dbCluster" />
gaussdb.sugon.com" />
192.168.5.1"/>
gaussdb.sugon.com"/>
192.168.5.1"/>
192.168.5.1"/>
26000"/>
一主一备配置文件示例:
dbCluster" />
gaussdb1.sugon.com,gaussdb2.sugon.com" />
192.168.5.11,192.168.5.12"/>
gaussdb1.sugon.com"/>
gaussdb2.sugon.com,/opt/huawei/install/data/db1"/>
gaussdb2.sugon.com"/>
192.168.5.12"/>
192.168.5.12"/>
参数说明:
实例类型 |
参数 |
说明 |
整体信息 |
clusterName |
openGauss名称。 |
nodeNames |
openGauss中主机名称。 |
|
backIp1s |
主机在后端存储网络中的IP地址(内网IP)。所有openGauss主机使用后端存储网络通讯。 |
|
gaussdbAppPath |
openGauss程序安装目录。此目录应满足如下要求: |
|
gaussdbLogPath |
openGauss运行日志和操作日志存储目录。此目录应满足如下要求: |
|
tmpdbPath |
数据库临时文件存放目录。 |
|
gaussdbToolPath |
openGauss系统工具目录,主要用于存放互信工具等。此目录应满足如下要求: |
|
corePath |
openGauss core文件的指定目录。 |
|
clusterType |
openGauss类型,openGauss拓扑类型;可选字段。 |
(1)openEuler需修改脚本
# openEuler 需要执行以下操作,注释掉vm.min_free_kbytes=112640行 # sed -i 's/^sysctl -w vm.min_free_kbytes=112640/#&/' /etc/profile.d/performance.sh |
(2)配置LD_LIBRARY_PATH环境变量,否则密码验证会报错
export LD_LIBRARY_PATH=/opt/software/openGauss/script/gspylib/clib:$LD_LIBRARY_PATH |
(3)执行gs_preinstall初始化安装环境
cd /opt/software/openGauss/script ./gs_preinstall -U omm -G dbgrp -X /tmp/clusterconfig.xml |
su – omm gs_install -X /tmp/clusterconfig.xml |
gs_om -t status --detail |
gsql -d postgres -p 26000 =# ALTER ROLE omm IDENTIFIED BY 'New_Password' REPLACE ' Old_Password'; =# \q |
外接存储需要挂载到/opt/huawei/install/data/db1/pg_location目录上,新创建的表空间和数据库,会放在这个目录下。
请登录root用户,完成以下操作。
# 列出XStor的LUN lsscsi --size
# 创建文件系统 mkfs.xfs /dev/sdb
# 挂载磁盘并修改权限 mount /dev/sdb /opt/huawei/install/data/db1/pg_location chown omm:dbgrp /opt/huawei/install/data/db1/pg_location
#添加到fstab echo `blkid /dev/sdb|awk '{print $2}'` /opt/huawei/install/data/db1/pg_location xfs defaults,_netdev 0 0 >> /etc/fstab |
openGauss安装生成的目录,路径与XML配置文件中相同,XML文件未配置时使用默认路径。
序号 |
项目目录说明 |
目录 |
子目录 |
说明 |
1 |
openGauss安装目录 |
/opt/huawei/install/app |
bin |
存放数据库二进制文件的目录。 |
etc |
cgroup工具配置文件。 |
|||
include |
存放数据库运行所需要的头文件。 |
|||
lib |
存放数据库的库文件的目录。 |
|||
share |
存放数据库运行所需要的公共文件,如配置文件模板。 |
|||
2 |
openGauss数据目录 |
/opt/huawei/install/data |
data_dnxxx |
DBnode实例的数据目录,其中主实例的目录名为“data_dnxxx”,
备实例的为data_dnSxxx。xxx代表DBnode编号。 |
3 |
openGauss日志目录 |
/var/log/omm |
bin |
二进制程序的日志目录。 |
gs_profile |
数据库内核性能日志目录。 |
|||
om |
OM的日志目录。例如:
部分local脚本产生的日志,增删数据库节点接口的日志,gs_om接口的日志,前置接口的日志,节点替换接口的日志等。 |
|||
pg_audit |
数据库审计日志目录。 |
|||
pg_log |
数据库节点实例的运行日志目录。 |
|||
4 |
openGauss系统工具目录 |
/opt/huawei/install/om |
script |
用于openGauss用户进行openGauss管理的脚本文件。 |
sudo |
用于root用户进行openGauss管理的脚本文件。 |
|||
lib |
bin目录下的二进制文件依赖的库文件。 |
在主节点,登录omm用户,执行gs_uninstall脚本即可完成openGauss卸载。
su – omm gs_uninstall --delete-data |
重新安装openGauss时,建议先删除omm用户,规避检查报错。重新执行gs_preinstall脚本初始化时,会重建omm用户及配置。
userdel -r omm |