问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

开源数据库部署分享篇1—OpenGauss单节点部署手册流程

创作时间:
作者:
@小白创作中心

开源数据库部署分享篇1—OpenGauss单节点部署手册流程

引用
CSDN
1.
https://blog.csdn.net/weixin_49727236/article/details/144124551

本文将详细介绍如何在Linux系统上部署OpenGauss单节点数据库。从环境准备到最终的登录测试,每个步骤都经过精心设计,确保读者能够顺利完成部署。

一、环境初始化

1.1 环境要求(官网推荐要求)

介绍openGauss的软硬件环境要求。建议部署openGauss的各服务器具有等价的软硬件配置。

表1列出了openGauss服务器应具备的最低硬件要求。在实际产品中,硬件配置的规划需考虑数据规模及所期望的数据库响应速度。请根据实际情况进行规划。

题目
配置描述
内存
功能调试建议32GB以上。性能测试和商业部署时,单实例部署建议128GB以上。复杂的查询对内存的需求量比较高,在高并发场景下,可能出现内存不足。此时建议使用大内存的机器,或使用负载管理限制系统的并发。
CPU
功能调试最小1×8核,2.0GHz。性能测试和商业部署时,建议1×16核,2.0GHz。CPU超线程和非超线程两种模式都支持。说明:个人开发者最低配置2核4G,推荐配置4核8G。目前,openGauss仅支持ARM服务器和基于x86_64通用PC服务器的CPU。
硬盘
用于安装openGauss的硬盘需最少满足如下要求:至少1GB用于安装openGauss的应用程序。每个主机需大约300MB用于元数据存储。预留70%以上的磁盘剩余空间用于数据存储。建议系统盘配置为RAID1,数据盘配置为RAID5,且规划4组RAID5数据盘用于安装openGauss。有关RAID的配置方法在本手册中不做介绍。请参考硬件厂家的手册或互联网上的方法进行配置,其中Disk Cache Policy一项需要设置为Disabled,否则机器异常掉电后有数据丢失的风险。openGauss支持使用SSD盘作为数据库的主存储设备,支持SAS接口和NVME协议的SSD盘,以RAID的方式部署使用。
网络要求
300兆以上以太网。建议网卡设置为双网卡冗余bond。有关网卡冗余bond的配置方法在本手册中不做介绍。请参考硬件厂商的手册或互联网上的方法进行配置。

表2软件环境要求

软件类型
配置描述
Linux操作系统
ARM:openEuler 20.03LTS(推荐采用此操作系统)openEuler 22.03LTS麒麟V10Asianux 7.5x86:openEuler 20.03LTSopenEuler 22.03LTSCentOS 7.6Asianux 7.6说明:1、当前安装包只能在英文操作系统上安装使用;2、OM工具已经支持对基于openEuler/Centos等商业操作系统的安装使用,具体配置信息可以查看OM中的osid.conf文件。
Linux文件系统
剩余inode个数> 15亿(推荐)
工具
bzip2
Python
支持Python3.6+

表3软件依赖要求

所需软件
建议版本
libaio-devel
建议版本:0.3.109-13
readline-devel
建议版本:7.0-13
libnsl(openEuler+x86环境中)
建议版本:2.28-36

openGauss的软件依赖要求如表3所示。建议使用上述操作系统安装光盘或者源中,下列依赖软件的默认安装包,若不存在下列软件,可参看软件对应的建议版本。

1.2 环境检查

cat /etc/redhat-release

1.3 修改limits

cat>>/etc/security/limits.conf<<EOF
* hard nofile 65535
* soft nofile 65535
EOF

1.4 Python版本升级

Python版本如果是3.6.x,可跳过该步骤

--查看Python版本

python --version
Python 2.7.5
python3 --version
python3命令找不到

--采用yum方式安装操作系统自带的包管理器中的Python3

yum install python3

--再次查看Python版本

python --version
Python 2.7.5
python3 --version
Python 3.6.8

1.5 关闭SELINUX

sed -i "s/SELINUX=enforcing/SELINUX=disabled/" /etc/selinux/config

1.6 关闭RemodeIPC

cat>>/etc/systemd/logind.conf<<EOF
RemoveIPC=no
EOF
cat>>/usr/lib/systemd/system/systemd-logind.service<<EOF
RemoveIPC=no
EOF

--重新加载配置参数

systemctl daemon-reload
systemctl restart systemd-logind

--检查修改是否生效

loginctl show-session | grep RemoveIPC
systemctl show systemd-logind | grep RemoveIPC

1.7 设置开放防火墙端口或关闭防火墙,这里设置了开放端口

开启防火墙端口:

firewall-cmd --zone=public --add-port=5432/tcp --permanent

重新加载:

firewall-cmd --reload

查看开放的端口:

firewall-cmd --list-ports

注意:添加端口后,必须用命令firewall-cmd --reload重新加载一遍才会生效

1.8 修改内核参数

sysctl -w kernel.sem="250 85000 250 330"

说明:执行过程中会由于参数错误导致无法安装,需提前执行该脚本。

1.9 安装插件

yum install net-tools libaio-devel readline-devel

二、部署准备

2.1 创建用户组gauss、用户gauss,并设置密码gauss

groupadd gauss -g 400
useradd gauss -g 400 -u 400
echo "gauss"|passwd --stdin gauss

2.2 创建安装目录

mkdir -p /openGauss/Server /openGauss/data/single_node /install
chmod 755 -R /openGauss /install
chmod 700 -R /openGauss/data/single_node
chown -R gauss:gauss /openGauss /openGauss/data/single_node /install

2.3 上传安装包,使用gauss用户登录到openGauss包安装的主机,解压openGauss压缩包。

cd /install
tar -xvzf openGauss-6.0.0-RC1-CentOS-64bit-all.tar.gz
tar -jxf openGauss-6.0.0-RC1-CentOS-64bit.tar.bz2

2.4 假定解压包的路径为/install,进入解压后目录下的simpleInstall。

cd /install/simpleInstall

2.5 执行install.sh,脚本安装openGauss

sh install.sh -w "gauss@123" &&source ~/.bashrc

说明:

1、-w:初始化数据库密码(gs_initdb指定),因安全需要,此项必须设置。

2、-p:指定openGauss端口号,如不指定,默认为5432。

3、-h|--help:打印使用说明。

4、安装后,该数据库部署节点的名称为sgnode(gs_initdb指定)。

5、执行时,如果出现报错“the maximum number of SEMMNI is not correct, the current SEMMNI is xxx. Please check it.”,请使用有root权限的用户执行如下命令。

sysctl -w kernel.sem="250 85000 250 330"

6、安装后,数据库目录安装路径/openGauss/data/single_node,其中/install为解压包路径,/openGauss/data/single_node为新创建的数据库节点目录。

7、安装完成后,默认生成名称为postgres的数据库。第一次连接数据库时可以连接到此数据库。

2.6 安装执行完成后,出现success表示安装完成。

说明:,其中无法修改limit值,不允许的操作(默认设置fd可用大小超过系统设置,可以忽略该设置)

安装过程如下:

三、登录测试

登录:

gsql -d postgres -p5432-r
[gauss@OpenGaussNode1 simpleInstall]$ gsql -d postgres -p 5432 -r
gsql ((openGauss 6.0.0-RC1 build ed7f8e37) compiled at 2024-03-31 11:59:31 commit 0 last mr )
Non-SSL connection (SSL connection is recommended when requiring high-security)
Type "help" for help.
openGauss=#
openGauss=# select version();
version
------------------------------------------------------------------------------------------------------------
-----------------------------------------------
(openGauss 6.0.0-RC1 build ed7f8e37) compiled at 2024-03-31 11:59:31 commit 0 last mr on x86_64-unknown-l
inux-gnu, compiled by g++ (GCC) 10.3.0, 64-bit
(1 row)
openGauss=#

OpenGauss单机版部署完成

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号