前提
部署PostgreSQL数据库:作为he3fs的元数据库。
部署redis服务:用来储存数据页与wal的链表关系,目前访问redis的url需要指定为“redis://:VlJi7uBV@127.0.0.1:6379/0”。
2、部署存储服务He3FS
2.1 安装客户端
- 克隆源码
git clone https://gitee.com/he3db/he3fs.git
- 进入源代码目录
cd he3fs- 在master分支下执行编译
make
编译好的he3fs二进制程序位于当前目录,然后把该文件放到/usr/local/bin目录下。
2.2 以单机模式运行
- 创建文件系统
创建文件系统使用客户端提供的format命令,格式为:
he3fs format --trash-days 0 [command options] META-URL NAME目前he3fs的META-URL仅支持PostgreSQL
- 挂载文件系统
挂载文件系统使用客户端提供的mount命令,格式为:
he3fs mount --redis-meta=redis://:VlJi7uBV@127.0.0.1:6379/0 --enable-clean --he3data=dirname [command options] MEAT-URL MOUNTPOINThe3fs在juicefs参数的基础上,mount的时候增加了三个参数选项:
--redis-meta:表示存储数据页与wal链表关系的redis库连接串。 --enable-clean:表示允许该he3fs的客户端清理redis中的链表关系。 --he3data: 表示推进节点的数据目录的相对路径,默认值是data。
3、部署计算服务He3PG
目前仅支持he3pg的主节点与推进节点部署在同一台机器,并且部署he3pg时需要以非root用户部署。
3.1 安装
Requirements
he3pg与PostgreSQL的编译要求是相同的
克隆源码
useradd postgres su - postgres git clone https://gitee.com/he3db/he3pg.git
- 进入源代码目录
cd he3pg- 在master分支下执行编译
./configure
make
make install3.2 配置主机环境变量
例:在执行configure命令时,设置--prefix参数为/home/postgres/psql14,则设置以下参数:
export LD_LIBRARY_PATH=/home/postgres/psql14/lib export PGHOME=/home/postgres/psql14 export PATH=$PGHOME/bin:/home/postgres:$PATH
3.3 初始化数据
在第二步部署存储服务时,以挂载文件系统时指定的挂载点为/data/jfspg为例
mkdir ~/he3data rm -rf ~/he3data/* initdb -D /data/jfspg/pg //子目录pg为he3fs mount中--he3data配置的目录 cd /data/jfspg/ rsync -av --exclude pg/base --exclude pg/global --exclude pg/pg_wal --exclude pg/pg_tblspc pg ~/he3data //拷贝非共享数据给主目录 cd initdata cp -r pushconf/* /data/jfspg/pg/ //拷贝推进配置到共享存储目录,用于启动推进节点 cp -r masterconf/* ~/he3data/pg/ //拷贝主配置数据到本地主库数据目录,用于启动主节点 ln -sf /data/jfspg/pg/base ~/he3data/pg/base ln -sf /data/jfspg/pg/global ~/he3data/pg/global ln -sf /data/jfspg/pg/pg_wal ~/he3data/pg/pg_wal ln -sf /data/jfspg/pg/pg_tblspc ~/he3data/pg/pg_tblspc //主节点与推进节点共享base、global、pg_wal、pg_tblspc这四个目录
3.4 启动主节点
pg_ctl start -D ~/he3data/pg psql -p15432 //在主节点操作 create role repl with replication login password '123456'; //创建流复制用户,如果不创建推进无法启动
3.5 启动推进节点
pg_ctl start -D /data/jfspg/pg/ psql -p15431 //登录推进可以查看主操作的数据
He3DB百科:https://www.modb.pro/wiki/4689
文章来源:https://gitee.com/he3db/he3pg/blob/master/doc/he3db/deploy.md
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




