openEuler 22.03 安装 openGauss 5.0.2 部署手册

openEuler 22.03 安装 openGauss 5.0.2 部署手册

一、环境准备

1. 操作系统要求

  • 系统版本:openEuler 22.03 LTS (aarch64/x86_64)
  • 最小硬件配置
    • CPU:2核
    • 内存:4GB
    • 磁盘:50GB
    • 网络要求:192.168.2.100

2. 软件包准备

下载 openGauss 5.0.2 安装包:

wget https://opengauss.obs.cn-south-1.myhuaweicloud.com/5.0.2/openEuler/openGauss-5.0.2-openEuler-64bit-all.tar.gz

二、系统配置

1. 关闭防火墙和 SELinux

关闭防火墙并禁用:

systemctl stop firewalld
systemctl disable firewalld

禁用 SELinux:

sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
setenforce 0

2. 配置 YUM 源(ISO 本地源)

挂载 openEuler ISO:

mkdir -p /mnt/cdrom
mount -o loop openEuler-22.03-LTS-SP3-aarch64-dvd.iso /mnt/cdrom

配置 YUM 源:

cat > /etc/yum.repos.d/local.repo <<EOF
[local]
name=local
baseurl=file:///mnt/cdrom
enabled=1
gpgcheck=0
EOF

更新 YUM 缓存:

yum clean all && yum makecache

三、安装依赖包

安装所需依赖包:

yum install -y libaio-devel flex bison ncurses-devel glibc-devel patch \
readline-devel net-tools tar lrzsz gcc gcc-c++ make cmake openssl-devel \
python3-devel expect java-1.8.0-openjdk

四、系统参数优化

1. 内核参数配置

添加内核参数配置:

cat >> /etc/sysctl.conf <<EOF
kernel.sysrq=0
net.ipv4.ip_forward=0
net.ipv4.conf.all.send_redirects=0
net.ipv4.conf.default.send_redirects=0
net.ipv4.conf.all.accept_source_route=0
net.ipv4.conf.default.accept_source_route=0
net.ipv4.conf.all.accept_redirects=0
net.ipv4.conf.default.accept_redirects=0
net.ipv4.conf.all.secure_redirects=0
net.ipv4.conf.default.secure_redirects=0
net.ipv4.icmp_echo_ignore_broadcasts=1
net.ipv4.icmp_ignore_bogus_error_responses=1
net.ipv4.conf.all.rp_filter=1
net.ipv4.conf.default.rp_filter=1
net.ipv4.tcp_syncookies=1
kernel.dmesg_restrict=1
net.ipv6.conf.all.accept_redirects=0
net.ipv6.conf.default.accept_redirects=0

## add
net.ipv4.tcp_max_tw_buckets=10000 
net.ipv4.tcp_tw_reuse=1 
#net.ipv4.tcp_tw_recycle=1 
net.ipv4.tcp_keepalive_probes=9 
net.ipv4.tcp_keepalive_intvl=30 
net.ipv4.tcp_retries1=5 
net.ipv4.tcp_syn_retries=5 
net.ipv4.tcp_synack_retries=5 
net.ipv4.tcp_retries2=12 
net.ipv4.tcp_rmem=8192 250000 16777216 
vm.overcommit_memory=0 
net.ipv4.tcp_wmem=8192 250000 16777216 
net.core.wmem_max=21299200 
net.core.rmem_max=21299200
net.core.wmem_default=21299200 
net.core.rmem_default=21299200 
net.ipv4.tcp_syncookies=1 
net.ipv4.tcp_sack=1 
net.ipv4.tcp_timestamps=1 
fs.aio-max-nr=1048576 
fs.file-max=76724600 
kernel.sem=4096 2048000 32 32768
kernel.shmall=1048576 
kernel.shmmax=4294967296 
kernel.shmmni=8192 
net.core.netdev_max_backlog=65535 
net.core.somaxconn=65535 
net.ipv4.tcp_fin_timeout=60 
vm.swappiness=0 
net.ipv4.ip_local_port_range=26000 65535 
fs.nr_open=20480000
EOF

应用更改:

sysctl -p

2. 资源限制配置

更新资源限制:

cat >> /etc/security/limits.conf <<EOF
* soft stack 3072
* hard stack 3072
* soft nofile 100000
* hard nofile 100000
EOF

五、创建安装用户和目录

1. 创建用户组和用户

创建用户组和用户:

groupadd dbgrp -g 1000
useradd omm -u 1000 -g dbgrp
echo "Omm@1234" | passwd omm --stdin

2. 创建数据目录

创建数据和日志目录:

mkdir -p /data/{openGauss,backup,archive_wals,core_pattern} 
chmod 700 /data/{openGauss,backup,archive_wals,core_pattern} 
chown -R omm:dbgrp /data/{openGauss,backup,archive_wals,core_pattern} 
mkdir -p /opt/openGauss 
chown omm:dbgrp -R /opt/openGauss/ 
chmod 755 /opt/openGauss/

3. 修改资源限制

更新资源限制配置:

cat > /etc/security/limits.conf <<EOF
# add omm
omm soft nproc unlimited 
omm hard nproc unlimited 
omm soft nofile 102400 
omm hard nofile 102400 
omm soft stack unlimited 
omm hard stack unlimited 
omm soft core unlimited 
omm hard core unlimited 
omm soft memlock unlimited
EOF

4. core_pattern 设置

设置 core 文件生成路径:

echo "/data/core_pattern/core-%e-%p-%t" > /proc/sys/kernel/core_pattern

六、安装 openGauss

1. 解压安装包

解压安装包:

tar -zxvf openGauss-5.0.2-openEuler-64bit-all.tar.gz -C /opt/opengauss/

如有 OM 相关包,也需解压:

tar -zxvf openGauss-5.0.2-openEuler-64bit-om.tar.gz -C /opt/opengauss/

2. 生成配置文件

创建配置文件:

cat > /opt/opengauss/cluster_config.xml <<EOF
<?xml version="1.0" encoding="utf-8"?>
<ROOT>
  <CLUSTER>
    <PARAM name="clusterName" value="openGauss" />
    <PARAM name="nodeNames" value="ogserver"/>
    <PARAM name="gaussdbAppPath" value="/opt/openGauss/app" />
    <PARAM name="gaussdbLogPath" value="/var/log/omm" />
    <PARAM name="tmpMppdbPath" value="/opt/openGauss/tmp"/>
    <PARAM name="gaussdbToolPath" value="/opt/openGauss/install/om" />
    <PARAM name="corePath" value="/opt/openGauss/corefile"/>
    <PARAM name="backIp1s" value="192.168.2.100"/>
  </CLUSTER>
  <DEVICELIST>
    <DEVICE sn="ogserver">
      <PARAM name="name" value="ogserver"/>
      <PARAM name="azName" value="AZ1"/>
      <PARAM name="azPriority" value="1"/>
      <PARAM name="backIp1" value="192.168.2.100"/>
      <PARAM name="sshIp1" value="192.168.2.100"/>
      <!-- dn -->
      <PARAM name="dataNum" value="1"/>
      <PARAM name="dataPortBase" value="15400"/>
      <PARAM name="dataNode1" value="/data/openGauss"/>
      <PARAM name="dataNode1_syncNum" value="0"/>
    </DEVICE>
  </DEVICELIST>
</ROOT>
EOF

3. 执行预安装

执行预安装脚本:

cd /opt/opengauss/script/
./gs_preinstall -U omm -G dbgrp -X /opt/opengauss/cluster_config.xml

七、初始化数据库

切换到 omm 用户:

su - omm

初始化数据库:

cd /opt/opengauss/script/
./gs_install -X /opt/opengauss/cluster_config.xml

根据提示输入数据库密码(建议密码复杂度:大写字母+小写字母+数字+特殊字符)。

八、服务管理

1. 配置 systemd 服务

创建 systemd 服务文件:

cat > /etc/systemd/system/opengauss.service <<EOF
# 定义单元
[Unit]
Description=OpenGauss Database Server
After=syslog.target network.target
LimitNOFILE=1000000

# 定义服务
[Service]
Type=forking
User=omm
Group=dbgrp

Environment=GPHOME=/opt/openGauss/install/om
Environment=PGDATA=/data/openGauss
Environment=LD_LIBRARY_PATH=$GPHOME/lib:$LD_LIBRARY_PATH
Environment=GAUSSHOME=/opt/openGauss/app

ExecStart=/opt/openGauss/install/om/script/gs_om -t start
ExecStop=/opt/openGauss/install/om/script/gs_om -t stop
ExecReload=/opt/openGauss/install/om/script/gs_om -t restart

[Install]
WantedBy=multi-user.target
EOF

2. 启动服务

重新加载 systemd 配置并启动服务:

systemctl daemon-reload
systemctl enable opengauss.service
systemctl start opengauss.service
systemctl status opengauss.service

重启服务器(可选):

# reboot

检查数据库是否自动启动:

systemctl status opengauss.service

九、验证安装

1. 检查服务状态

检查 openGauss 服务状态:

systemctl status opengauss

2. 连接数据库

连接数据库:

su - omm
gsql -d postgres -p 15400

十、注意事项

  • 硬件要求:生产环境建议使用 SSD 磁盘,内存 ≥ 16GB。
  • 密码策略:默认密码有效期为 90 天,需定期修改。
  • 备份恢复:定期使用 gs_basebackup 进行物理备份。
  • 日志管理:监控 /opt/opengauss/log 目录下的日志。

常见问题处理

  • 安装时提示权限不足

    chown -R omm:dbgrp /opt/opengauss
    
  • 数据库无法启动

    tail -n 100 /opt/opengauss/log/postgresql-*.log
    
  • 端口冲突:修改 postgresql.conf 中的 port 参数并重启服务。

以上是在 openEuler 22.03 上安装 openGauss 5.0.2 的详细部署手册。请根据需要进行适当调整,并确保在生产环境中采取适当的安全和备份措施。

posted @ 2025-04-22 09:43  皇帽讲绿帽带法技巧  阅读(502)  评论(0)    收藏  举报