当前位置: 首页 > wzjs >正文

建筑工程施工承包合同南宁seo标准

建筑工程施工承包合同,南宁seo标准,网络公司排名哪家专业,网站制作设计机构文章目录 摘要在 IDC 搭建读写分离 redis 集群一、环境准备二、部署主从架构1. 安装Redis2. 配置主节点3. 配置从节点4. 所有 Redis 节点设置开机自启动三、部署代理层(读写分离)1. 安装Twemproxy2. 配置Twemproxy3. 配置开机自启动四、高可用配置(哨兵模式)1. 配置哨兵节点…

文章目录

    • 摘要
    • 在 IDC 搭建读写分离 redis 集群
      • 一、环境准备
      • 二、部署主从架构
        • 1. 安装Redis
        • 2. 配置主节点
        • 3. 配置从节点
        • 4. 所有 Redis 节点设置开机自启动
      • 三、部署代理层(读写分离)
        • 1. 安装Twemproxy
        • 2. 配置Twemproxy
        • 3. 配置开机自启动
      • 四、高可用配置(哨兵模式)
        • 1. 配置哨兵节点
        • 2. 故障转移验证
        • 3. 配置开机自启动
    • 数据存量和增量同步至 IDC redis Master 节点
    • 可能遇到的问题
      • 1. redis-server: command not found
      • 2. redis slave 节点启动时报了 Error condition on socket for SYNC: No route to host

摘要

为了降本,将云上非核心业务迁移至 IDC

云上 Redis 配置
在这里插入图片描述
Redis版本5.0,架构读写分离版本
操作流程:

  1. 在 IDC 搭建读写分离 redis 集群
  2. 数据存量和增量同步至 IDC redis 集群
  3. 业务切换 redis 源,暂停第二步
    4.(可选)切完源后反向同步至云上,业务正常后再去掉反向同步,退掉云上资源;

在 IDC 搭建读写分离 redis 集群


一、环境准备

  1. 服务器规划

    • 主节点(Master):1台,负责处理写请求(如10.16.24.97)
    • 从节点(Slave):至少2台,负责处理读请求(如10.16.24.98, 10.16.24.99)
    • 代理层(Proxy):1台,实现读写分离路由(如10.16.24.96)
    • 哨兵节点(Sentinel):3台,实现高可用(可与主从节点共用)
  2. 软件版本

    • Redis建议使用与阿里云相同的版本(如5.0+)
    • 代理工具:Twemproxy(Nutcracker)或HAProxy,本次选用 Twemproxy
    • 哨兵机制:Redis Sentinel

二、部署主从架构

1. 安装Redis

所有节点执行:

wget https://download.redis.io/redis-5.0.4.tar.gz
tar -xzvf redis-5.0.4.tar.gz
cd redis-5.0.4
make && make install

所有节点需要开放 6379 端口:

firewall-cmd --add-port=6379/tcp --permanent
firewall-cmd --reload
2. 配置主节点

修改主节点配置文件(redis.conf):

bind 0.0.0.0
port 6379
requirepass your_password
masterauth your_password
appendonly yes
daemonize no# 持久化配置
save 900 1
save 300 10
save 60 10000
appendonly yes
appendfilename "appendonly.aof"
appendfsync everysec# 性能优化
protected-mode no
rename-command FLUSHALL ""
rename-command FLUSHDB ""
rename-command CONFIG ""

启动主节点:

redis-server /path/to/redis.conf
3. 配置从节点

从节点配置文件(redis.conf)添加:

bind 0.0.0.0
port 6379
requirepass your_password
masterauth your_password
replicaof 10.16.24.97 6379  # 指向主节点# 持久化配置
save 900 1
save 300 10
save 60 10000
appendonly yes
appendfilename "appendonly.aof"
appendfsync everysec# 性能优化
protected-mode no
rename-command FLUSHALL ""
rename-command FLUSHDB ""
rename-command CONFIG ""

启动从节点:

redis-server /path/to/redis.conf

验证主从状态:

redis-cli -h 10.16.24.97 -a your_password info replication
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
# Replication
role:master
connected_slaves:2
slave0:ip=10.16.24.98,port=6379,state=online,offset=9898,lag=0
slave1:ip=10.16.24.99,port=6379,state=online,offset=9898,lag=1
master_replid:90147807e0eec59a6de3a41a11f264d259b43b08
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:9898
second_repl_offset:-1
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:1
repl_backlog_histlen:9898

4. 所有 Redis 节点设置开机自启动

创建 service 文件 /etc/systemd/system/redis.service

[Unit]
Description=Redis In-Memory Data Store
After=network.target[Service]
ExecStart=/root/redis-5.0.4/src/redis-server /root/redis-5.0.4/redis.conf
Restart=always[Install]
WantedBy=multi-user.target

保存后执行

systemctl daemon-reload
systemctl enable redis

三、部署代理层(读写分离)

1. 安装Twemproxy
# 安装 git
yum install -y git
# 安装 autoconf automake libtool
yum install autoconf automake libtool
# 安装Twemproxy
git clone https://github.com/twitter/twemproxy
cd twemproxy
autoreconf -fvi
./configure --enable-debug=log
make
src/nutcracker --version  # 验证安装
2. 配置Twemproxy

创建配置文件(nutcracker.yml):

alpha:listen: 0.0.0.0:22121hash: crc32distribution: modularedis: trueredis_auth: your_passwordservers:- 10.16.24.97:6379:1 master_node- 10.16.24.98:6379:2 slave_node_1- 10.16.24.99:6379:2 slave_node_2

启动Twemproxy:

src/nutcracker -c /path/to/nutcracker.yml -d

应用通过连接代理IP(192.168.1.103:22121)实现自动读写分离。


3. 配置开机自启动

创建 service 文件 /etc/systemd/system/twemproxy.service

[Unit]
Description=Redis Proxy
After=network.target[Service]
ExecStart=/root/twemproxy/src/nutcracker -c /root/nutcracker.yml -o /var/log/twemproxy.log
Restart=always[Install]
WantedBy=multi-user.target

保存后执行

systemctl daemon-reload
systemctl enable twemproxy

四、高可用配置(哨兵模式)

1. 配置哨兵节点

每个哨兵节点创建sentinel.conf

sentinel monitor mymaster 10.16.24.97 6379 2
sentinel auth-pass mymaster your_password
sentinel down-after-milliseconds mymaster 5000
sentinel failover-timeout mymaster 10000
logfile "/var/log/redis/sentinel.log"

设置日志文件权限

mkdir -p /var/log/redis
chmod 755 /var/log/redis

开放端口,让哨兵节点之间可通讯

firewall-cmd --add-port=26379/tcp --permanent
firewall-cmd --reload

启动哨兵:

redis-sentinel /path/to/sentinel.conf
2. 故障转移验证

手动停止主节点,观察哨兵日志是否选举新主节点。
使用 tail 命令动态跟踪日志:
```bash
tail -f /var/log/redis/sentinel.log

**故障转移日志特征**
在日志中搜索以下关键事件以验证故障转移:
1. **主节点下线检测**:  
```log
+sdown master mymaster 10.16.24.97 6379  # Sentinel标记主节点主观下线
  1. 故障转移触发
    Start of election for master mymaster  # 开始选举新主节点
    
  2. 新主节点选举
    +elected-leader master mymaster 10.16.24.97 6379  # 新主节点被选举
    
  3. 从节点重新配置
    Reconfiguring the slave to replicate new master  # 从节点切换到新主节点
    

验证步骤

  1. 手动触发故障转移
    关闭原主节点 10.16.24.97 Redis 服务,观察 Sentinel 日志是否触发选举和切换[[7]][[8]]。
  2. 检查最终状态
    日志中应显示新主节点的 IP 和端口,例如:
    2527:X 19 Mar 2025 17:29:54.080 # oO0OoO0OoO0Oo Red
http://www.dtcms.com/wzjs/266060.html

相关文章:

  • 网站建设公司外链怎么做百度快照在哪里
  • 做外贸仿牌网站深圳优化seo排名
  • 网站建设委托外包协议海淀seo搜索引擎优化公司
  • 常州网站建设公司效果小程序商城制作一个需要多少钱
  • 电子商城网站开发合同启信聚客通网络营销策划
  • 张家口网站建设江北seo
  • 建设网站好处如何做网络推广
  • 郴州市网站建设友链交换网站源码
  • 余姚物流做网站下载百度app最新版到桌面
  • 广州网站建设外包公司福清市百度seo
  • 一二三类医疗器械目录seo网站诊断
  • 济南网站建设jnjy8百度竞价点击神器奔奔
  • 电商平台建设做网站谷歌官网
  • fullpage.js wordpress优化推广网站推荐
  • 龙岗平湖网站建设公司竞价外包推广专业公司
  • 免费网站下载直播软件大全苏州网站排名推广
  • 网站制作二级网页怎么做秦洁婷seo博客
  • 网站开发 模块化2023新闻大事件摘抄
  • 长沙做网站建设价格游戏代理是怎么赚钱的如何代理游戏
  • 网站改版不更换域名 .net怎么做301网站重定向50个市场营销经典案例
  • 武汉做网站hlbzx外贸网络推广怎么做
  • 校园网站建设方案新闻发稿发布平台
  • 漯河做网站哪家好网站点击量与排名
  • 电商网站建设目标分析的方法推广公司是做什么的
  • 苏州网站建设推广咨询平台百度正式员工工资待遇
  • 企业建网站服务网络广告策划方案范文
  • 做网站去哪找源码百度搜索资源平台官网
  • 松江做网站费用武汉seo优化排名公司
  • 网站怎么做微信推广潍坊网站建设seo
  • 河北邢台做wap网站郑州seo优化推广