TongRDS2214手动部署版指引(by lqw+sy)

news2024/12/21 19:17:51

文章目录

    • 前言
    • 准备工作
    • 单机版
    • 集群版
    • 哨兵版
    • 多个中心节点配置

前言

由于一些特殊原因(例如服务器没有联网,没有办法直接更新和下载unzip指令,从而导致控制台版本安装节点之后,会报file not found的错误,或者使用不了rds的控制台等等因素),有时需要用到手动部署来部署RDS,而RDS手动部署版对于刚接触的新手来说相对会比较麻烦,所以开一个帖子作为指引。

准备工作

1.安装jdk,配置好jdk环境变量。

2.准备好安装包和授权文件,其中TongRDS-2.2.1.4.MC.tar.gz为中心节点,TongRDS-2.2.1.4.Node.tar.gz为服务节点。
在这里插入图片描述
这两个安装包解压后,会得到以下两个目录。
在这里插入图片描述
其中pmemdb就是服务节点,pcenter就是中心节点。

3.确定用哪种模式的rds服务。本次涉及到三种模式的rds服务:单机版,集群版和哨兵版。

4.单机版只需要一个中心节点和一个服务节点(最低配置)。

5.集群版需要一个中心节点和一个分片(分片里至少两个服务节点,一个主节点一个从节点),可配置多个中心节点和多个分片,本次示范一个中心节点三个分片的配置。

6.哨兵版需要一个中心节点,一个哨兵节点和两个服务节点(最低配置),可配置多个中心节点和哨兵节点,服务节点,本次示范一个中心节点,三个哨兵节点三个服务节点,其中哨兵节点可以用服务节点进行配置。
7.如需配置密码和多个中心节点,会单独起一个章节来说,先尝试不设置密码和配置多个中心节点的情况下运行成功再去配置。

单机版

单机版需要一个中心节点和一个服务节点,其中TongRDS-2.2.1.4.MC.tar.gz为中心节点,TongRDS-2.2.1.4.Node.tar.gz为服务节点。

找一个目录解压以下两个安装包,一般解压后会得到以下两个目录:
在这里插入图片描述

tar -zvxf TongRDS-2.2.1.4.MC.tar.gz
tar -zvxf TongRDS-2.2.1.4.Node.tar.gz

其中pmemdb就是服务节点,pcenter就是中心节点。

将授权文件放入到pcenter下:
在这里插入图片描述

进入到pcenter里,修改中心节点配置文件(pcenter/etc/cluster.properties)
在这里插入图片描述

改成这样(需要检查对应服务器的6200端口是否被占用,是的话改成其他端口)
在这里插入图片描述
其中webservice.node0=服务器ip

WebService.type=default
WebService.nodes=1
WebService.node0=192.168.10.7:6200

检查一下pcenter/etc/sync.properties(单节点的话使用默认配置也行,主要是检查端口有没有冲突,默认用的6300)
在这里插入图片描述
修改pmemdb下的dynamic.xml配置文件,这里的port要跟上图pcenter/etc/sync.properties里的端口一致:
在这里插入图片描述
在这里插入图片描述
host为服务器ip,port建议用6300,除非端口占用。

检查一下pmemdb/etc/cfg.xml,看看里面的端口是否被占用(例如6379是redis连接端口),以及是否和pcenter的cluster.properties对应。

在这里插入图片描述
cluster.properties对应的部分:
在这里插入图片描述

pcenter/bin 下面是启动中心节点的脚本, StartCenter.sh 和 StopCenter.sh 为linux 下启停脚本(如果没有执行权限,可使用 chmod +x 命令赋执行权限,这两个脚本不能后台运行,所以建议接下来使用后台启动脚本)。
在这里插入图片描述

 sh RestartCenter.sh

启动服务节点使用 pmemdb/bin 目录下的 StartServer.sh 脚本,在 bin 目录下执行此脚本。因为使用中心节点管理授权问题,node 节点可以不单独引入自己的(这个脚本不能后台运行,所以建议接下来使用后台启动脚本)。

     sh RestartServer.sh
     

启动后,可以查看安装目录的logs下的日志文件,并且使用脚本连接上6379(redis连接端口,配置在pmemdb的cfg.xml下)
使用pmemdb/bin/Client.sh客户端连接,验证是否成功:

./Client.sh -p -r 6379

在这里插入图片描述

集群版

集群版跟其他版本最大的区别在于是否有分片(下图圈起来的就是分片,每个分片的第一个ip就是分片里的主节点)。
在这里插入图片描述

请解压好一个中心节点,六个服务节点(也就是一个pcenter,六个pmemdb)。
本次案例三台服务器ip分别为:192.168.10.9,192.168.10.29,192.168.10.30,其中192.168.10.9为中心节点安装目录。

如果多个服务节点在同一个目录,每解压一个pmemdb,改一下名字,不然会被之后解压的覆盖的。
在这里插入图片描述
pcenter放入授权。
在这里插入图片描述
检查一下pcenter/etc/sync.properties(使用默认配置也行,主要是检查端口有没有冲突,默认用的6300)
在这里插入图片描述

到pcenter的安装目录的etc目录,找到cluster.propeities,修改成这样
在这里插入图片描述

WebSession.type=cluster
WebSession.shards=3
WebSession.shard0.nodes=192.168.10.9:6200,192.168.10.9:6201
WebSession.shard0.slots=0-4999
WebSession.shard1.nodes=192.168.10.29:6202,192.168.10.29:6203
WebSession.shard1.slots=5000-10000
WebSession.shard2.nodes=192.168.10.30:6204,192.168.10.30:6205
WebSession.shard2.slots=10001-16383

WebSession.type配成cluster,意思是配置成集群,WebSession.shards意思是要用几个分片,这里配了三个分片,下面的就是每个分片里,用了哪几个节点。

留意一下,cluster.properties里面这个websession跟每个pmemdb/etc/cfg.xml里的一致:
在这里插入图片描述

三台服务器分别进入到/pmemdb1/etc和/pmemdb2/etc目录下,对cfg.xml里边的配置文件进行编辑,三台机器六个服务节点对应的端口号概不能冲突,修改内容参考之前修改的cluster.propeities和下面的参考配置:

10.9服务节点1(示范,redis连接端口6379):
在这里插入图片描述

10.9服务节点2(示范,redis连接端口6380):
在这里插入图片描述
其余服务器的根据上面的进行参考和配置就行,主要注意同一台服务器里端口别被占用。

配置完后,每一个pmemdb的etc下的dynamic.xml配置一下中心节点的信息(参考一下:pcenter/etc/sync.properties里的端口,ip就不要配localhost了,用回pcenter所在服务器的ip)
在这里插入图片描述
在这里插入图片描述
配置完后,启动一下pcenter和pmemdb。

pcenter/bin 下面是启动中心节点的脚本, StartCenter.sh 和 StopCenter.sh 为linux 下启停脚本(如果没有执行权限,可使用 chmod +x 命令赋执行权限,这两个脚本不能后台运行,所以建议接下来使用后台启动脚本)。
在这里插入图片描述

 sh RestartCenter.sh

启动服务节点使用 pmemdb/bin 目录下的 StartServer.sh 脚本,在 bin 目录下执行此脚本。因为使用中心节点管理授权问题,node 节点可以不单独引入自己的(这个脚本不能后台运行,所以建议接下来使用后台启动脚本)。

     sh RestartServer.sh
     

启动后,可以查看安装目录的logs下的日志文件,并且使用脚本连接上6379(redis连接端口,配置在pmemdb的cfg.xml下)
使用pmemdb/bin/Client.sh客户端连接,验证是否成功:

./Client.sh -p -r 6379

在这里插入图片描述

另外集群模式跟其他模式不同的在于,还可以使用cluster nodes查看节点信息,如下图所示:
在这里插入图片描述

哨兵版

本次示范使用ip地址10.222.12.77,10.222.12.105,10.222.12.161作为示范,使用一个中心节点,三个服务节点作为服务节点,另外再使用三个服务节点作为哨兵节点进行配置(也就是需要一个pcenter,6个pmemdb,为了方便区分,哨兵节点的pmemdb会改名为pmemdb_shaobing)。

在这里插入图片描述

pcenter放入授权。
在这里插入图片描述
检查一下pcenter/etc/sync.properties(使用默认配置也行,主要是检查端口有没有冲突,默认用的6300)
在这里插入图片描述

到pcenter的安装目录的etc目录,找到cluster.propeities,修改成这样(其中77是主节点)

WebSession.type=sentinel
WebSession.nodes=3
WebSession.node0=10.222.12.77:6200
WebSession.node1=10.222.12.105:6200
WebSession.node2=10.222.12.161:6200

轮到pmemdb,每个pmemdb/etc/的cfg.xml都需检查以下两项内容(要和cluster.properties一致):
在这里插入图片描述

下图是cluster.properties的对应位置:
在这里插入图片描述
然后轮到每个pmemdb/etc/下的dynamic.xml(参考cluster.properties来配,其中center下配的是中心节点,endpoint下是cluster.properties里配的,要一致)

<?xml version="1.0" encoding="UTF-8"?>

<Server>
  <Center>
    <Password>454d51192b1704c60e19734ce6b38203</Password>
    <EndPoint>
      <Host>10.222.12.77</Host>
      <Port>6300</Port>
    </EndPoint>
  </Center>
  <Synchronize>
    <EndPoint>
      <Host>10.222.12.77</Host>
      <Port>6200</Port>
    </EndPoint>
    <EndPoint>
      <Host>10.222.12.105</Host>
      <Port>6200</Port>
    </EndPoint>
    <EndPoint>
      <Host>10.222.12.161</Host>
      <Port>6200</Port>
    </EndPoint>
  </Synchronize>
</Server>

之后是每个pmemdb_shaobing/etc/下的sentinel.xml

<?xml version="1.0" encoding="UTF-8"?>
<Server>
    <Common>
        <JmxUrl>localhost:29074</JmxUrl>
        <MasterPolicy>node</MasterPolicy>
    </Common>
    <Log>
        <!-- nothing, error, warn, info, debug, dump. >
        <    error is the default                      -->
        <Level>warn</Level>
    </Log>
    <Listen>
        <Port>26379</Port>
        <Threads>4</Threads>
        <!-- 0: telnet; 1: SSL; 2: password; 3: SSL + password. -->
        <Secure>0</Secure>
         <!-- <IsPlainPassword>true</IsPlainPassword>
-->

        <!--        <Password>454d?51192b1704c60e19734ce6b38203</Password>-->
       <!-- <Password>123</Password>
-->
    </Listen>
     <Center>
        <Password>454d51192b1704c60e19734ce6b38203</Password>
            <EndPoint>
                <Host>10.222.12.77</Host>
                <Port>6300</Port>
            </EndPoint>
    </Center>
      <Sentinels>
            <Sentinel>
                <Host>10.222.12.77</Host>
                <Port>26380</Port>
            </Sentinel>
            <Sentinel>
                <Host>10.222.12.105</Host>
                <Port>26379</Port>	
            </Sentinel>
            <Sentinel>
                <Host>10.222.12.161</Host>
                <Port>26379</Port>
            </Sentinel>
    </Sentinels>
    <Services>
        <WebSession>
            <!-- 0: telnet; 1: SSL; 2: password; 3: SSL + password. -->
            <Secure>0</Secure>
            <!--<IsPlainPassword>true</IsPlainPassword>
            <Password>123</Password>
-->
            <EndPoints>10.222.12.77:6379,10.222.12.105:6379,10.222.12.161:6379</EndPoints>
        </WebSession>
    </Services>
</Server>

备注:
1.sentinel.xml 的这两处要一致 (本次案例的77服务器里配的是26380,,其余用的都是26379)
在这里插入图片描述
在这里插入图片描述
endpoints里的端口需要跟cfg.xml上的一致
在这里插入图片描述
启动中心节点:

cd /opt/rds2214/pcenter/bin
 sh RestartCenter.sh

查看中心节点安装目录logs目录日志
在这里插入图片描述
启动服务节点:

cd /opt/rds2214/pmemdb/bin
sh RestartServer.sh

查看服务节点安装目录logs目录下的日志文件和状态文件
在这里插入图片描述
在这里插入图片描述
启动哨兵节点

cd /opt/rds2214/pmemdb_shaobing/bin
sh RestartSentinel.sh

在这里插入图片描述
在这里插入图片描述
验证哨兵模式(26380是在每个pmemdb_shaobing/etc/下的sentinel.xml 下配的)
在这里插入图片描述

SENTINEL masters

查一下name是什么,如下图所示:
在这里插入图片描述
这里的 WebSession就是查出的name

#这里的 WebSession就是查出的name
SENTINEL slaves WebSession

在这里插入图片描述
在这里插入图片描述

多个中心节点配置

pmemdb/etc/dynamic.xml下進行配置:
在这里插入图片描述
设置密码

pmemdb/etc下的cfg.xml,找到这一块
在这里插入图片描述

修改成这样:

<Secure>2</Secure>
        <Password>537cb0e6b7fbad3b75f2245e61b4d2e4</Password>
        <RedisPort>6379</RedisPort>
        <RedisPlainPassword>true</RedisPlainPassword>
        <RedisPassword>123456</RedisPassword>

其中537cb0e6b7fbad3b75f2245e61b4d2e4就是123456加密后的密码,加密脚本在bin目录下:
在这里插入图片描述

./sM4.sh encrypt 要加密的密碼(尽量别用符号)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1888021.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

CQ 社区版2.13.3 | 支持全局开启OTP登录、文本导入功能可独立控制……

又到一月一度的 CloudQuery 发版时间啦&#xff01; 本次版本更新&#xff0c;对多个模块进行了功能的优化和完善&#xff0c;比如将文本导入与 insert 权限脱离使文本导入可单独控制&#xff1b;将工具权限与权限等级脱离&#xff0c;使其能独立授权和提权&#xff1b;操作模…

项目实战--Spring Boot + Minio文件切片上传下载

1.搭建环境 引入项目依赖 <!-- 操作minio的java客户端--> <dependency><groupId>io.minio</groupId><artifactId>minio</artifactId><version>8.5.2</version> </dependency> <!-- jwt鉴权相应依赖--> &…

初试总分409分,专业课143,西电821专业

非常感谢自己考研409分上岸西安电子科技大学&#xff0c;杭州研究院&#xff0c;专业课143分&#xff0c;跟的研梦&#xff0c;讲课以及答疑还是非常专业的。 821专业课课本总共有四本&#xff0c;都在官网考纲的参考书里写了&#xff0c;不过主要参考其中两本&#xff0c;一本…

机器学习笔记 LightGBM:理解算法背后的数学原理

一、简述 在一次数据科学的比赛中&#xff0c;我有机会使用 LightGBM&#xff0c;这是一种最先进的机器学习算法&#xff0c;它极大地改变了我们处理预测建模任务的方式。我对它在数千个数据点上进行训练的速度感到着迷&#xff0c;同时保持了其他算法难以达到的准确性。LightG…

EasyExcel4导入导出数据(基于MyBatisPlus)

一、POM依赖 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><m…

OK527N-C开发板-简单的性能测试

OK527N-C CoreMark 获取CoreMark源码 首先使用Git克隆仓库&#xff1a; git clone https://github.com/eembc/coremark.git cd coremark修改Makefile 首先复制文件夹 cp -rf posix ok527之后修改ok527文件夹下的core_portme.mak文件&#xff0c;将CC修改如下 CC aarch6…

uniapp地图点击获取位置

主页面 <view class"right-content" click.stop"kilometer(item)"><view class"km">{{item.distance||0}}km</view><image src"../../static/map.png" mode""style"width: 32rpx; height: 32rpx…

模块电源(九):DC-DC工作模式和调制方法

DC-DC 需要在一定的开关频率下工作&#xff0c;并需要一个控制电路配合来稳定 DCDC 的输出电压。因此&#xff0c;针对不同的控制方案&#xff0c;需要设计不同的 DC-DC 工作模式和调制方法来使其稳定工作。 一、工作模式 一个 DC-DC 电路中&#xff0c;开关管导通阶段的电感电…

【前端】HTML+CSS复习记录【5】

文章目录 前言一、padding、margin、border&#xff08;边框边距&#xff09;二、样式优先级三、var&#xff08;使用 CSS 变量更改多个元素样式&#xff09;四、media quary&#xff08;媒体查询&#xff09;系列文章目录 前言 长时间未使用HTML编程&#xff0c;前端知识感觉…

【高中数学/基本不等式】已知a,b皆为正实数,且a+b=2 求:1/a+4/b的最小值?(2011年重庆理科卷第七题)

【题目】 已知a,b皆为正实数&#xff0c;且ab2 求&#xff1a;1/a4/b的最小值&#xff1f; 【解答】 解法一&#xff1a;基本不等式法 由ab2可推知a/2b/21 1/a4/b(a/2b/2)/a(2a2b)/b1/2b/2a2a/b22.5b/2a2a/b >2.52倍根号下&#xff08;b/2a*2a/b&#xff09;2.52*14.…

力扣双指针算法题目:双数之和,三数之和,四数之和

目录 一&#xff1a;双数之和 1.题目&#xff1a; 2.思路解析 3.代码 二&#xff1a;三数之和 1.题目 2.思路解析 3&#xff0c;代码 三&#xff1a;四数字之和 1.题目 2.思路解析 3.代码 一&#xff1a;双数之和 1.题目&#xff1a; 输入一个递增排序的数组和一…

基于Java的家政预约系统设计与实现

作者介绍&#xff1a;计算机专业研究生&#xff0c;现企业打工人&#xff0c;从事Java全栈开发 主要内容&#xff1a;技术学习笔记、Java实战项目、项目问题解决记录、AI、简历模板、简历指导、技术交流、论文交流&#xff08;SCI论文两篇&#xff09; 上点关注下点赞 生活越过…

提高候选人的招聘感受:成功的策略

大约78%的候选人表示&#xff0c;他们的整体应聘体验表明企业对员工的关注。然而&#xff0c;超过一半的候选人透露&#xff0c;他们在招聘过程中有过负面的候选人经历&#xff0c;80%的候选人在经历了令人失望的招聘过程后会公开与他人分享他们的不良经历。 但也有一线希望&am…

Swift 中强大的 Key Paths(键路径)机制趣谈(上)

概览 小伙伴们可能不知道&#xff1a;在 Swift 语言中隐藏着大量看似“其貌不扬”实则却让秃头码农们“高世骇俗”&#xff0c;堪称卧虎藏龙的各种秘技。 其中&#xff0c;有一枚“不起眼”的小家伙称之为键路径&#xff08;Key Paths&#xff09;。如若将其善加利用&#xff…

STM32 中断编程入门

目录 一、中断系统 1、中断的原理 2、中断类型 外部中断 定时器中断 DMA中断 3、中断处理函数 中断标志位清除 中断服务程序退出 二、实际应用 中断控制LED 任务要求 代码示例 中断控制串口通信 任务要求1 代码示例 任务要求2 代码示例 总结 学习目标&…

什么是文档透明加密|好用的文档透明加密软件有哪些?

在当今日益数字化和信息化的时代&#xff0c;数据安全问题愈发受到企业和个人的关注。文档作为信息的重要载体&#xff0c;其安全性不言而喻。为了保障文档的机密性和完整性&#xff0c;文档透明加密技术应运而生。本文将对文档透明加密进行详细介绍&#xff0c;并探讨一些好用…

6月份上海二手房卖疯了,暴涨四成,反价房东被抛弃

6月份刚刚结束&#xff0c;北京、上海两大城市的房市成交情况纷纷出炉&#xff0c;从成交量来看上海房市明显比北京火热许多&#xff0c;同时与其他城市类似&#xff0c;消费者偏向于二手房。 6月份上海二手房往前高达2.6万套&#xff0c;环比增加超四成&#xff0c;创下2021年…

粤港联动,北斗高质量国际化发展的重要机遇

今年是香港回归27周年&#xff0c;也是《粤港澳大湾区发展规划纲要》公布5周年&#xff0c;5年来各项政策、平台不断为粤港联动增添新动能。“十四五”时期的粤港澳大湾区&#xff0c;被国家赋予了更重大的使命&#xff0c;国家“十四五”《规划纲要》提出&#xff0c;以京津冀…

用MySQL+node+vue做一个学生信息管理系统(二):创建MySQL数据表、创建HTML用户列表页面

MySQL代码 CREATE DATABASE students;USE students;CREATE TABLE student( id INT COMMENT 学号, name VARCHAR(32) COMMENT 姓名, sex VARCHAR(8) COMMENT 性别, class VARCHAR(64) COMMENT 班级 )SHOW TABLES;下面介绍一下Vue框架的element-ui的使用方法&#xff0c;这里就不…