美文网首页
redis-5.0.8_v2哨兵部署.md

redis-5.0.8_v2哨兵部署.md

作者: 平凡的运维之路 | 来源:发表于2023-09-21 08:59 被阅读0次

redis-哨兵部署

redis5.0.8编译安装

  • 下载redis地址
http://download.redis.io/releases/redis-5.0.8.tar.gz
  • 编译安装
yum -y install gcc compat-lib* tcl*

tar xvf redis-5.0.8.tar.gz
cd redis-5.0.8
make -j 2
make PREFIX=/redis/app install
mkdir /redis/app/redis/{conf,database,log,run}
mv  /redis/app/redis  /redis/app/redis-5.0.8

Redis系统环境配置

  • 环须配置
## mkdir -p /redis/app
## unzip redis-5.0.8-linux-glibc2.12-x86_64.zip

groupadd -g 4101 redis
useradd -u 4101 -g redis redis
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux
service iptables stop
chkconfig iptables off
service ip6tables stop
chkconfig ip6tables off
echo "vm.overcommit_memory = 1" >> /etc/sysctl.conf
echo "net.core.somaxconn = 1024" >> /etc/sysctl.conf
echo never > /sys/kernel/mm/transparent_hugepage/enabled

cat >> /etc/rc.local << EOF
echo never > /sys/kernel/mm/transparent_hugepage/enabled
EOF

cat >> /etc/security/limits.conf << EOF
redis soft nofile 131070
redis hard nofile 131070
EOF

chown -R redis:redis /redis/app
chmod -R 775 /redis/app

echo 'export REDIS_HOME=/redis/app/redis-5.0.8' >>  /etc/profile
echo 'export PATH=$PATH:$REDIS_HOME/bin' >>  /etc/profile

redis哨兵配置

  • redis环境配置

    • 172.168.27.44
    • 172.168.27.45
    • 172.168.27.46
    • Redis Server 端口统一为: 27001
    • Redis Sentinel 端口统一为: 28001
  • 不要使用redis-example.conf和sentinel-example.conf文件,请复制一份新的文件。

  • 提示:当需要开启密码时访问时解除requirepass和masterauth注释解除

  • vim redis.conf master节点

port 27001
bind 主机实际IP地址
protected-mode no
timeout 30
daemonize yes
pidfile /redis/app/redis-5.0.8/run/redis_27001.pid
logfile /redis/app/redis-5.0.8/log/27001.log
dir /redis/app/redis-5.0.8/database
dbfilename dump.rdb
appendonly yes
appendfilename appendonly.aof
appendfsync always
activedefrag yes
maxmemory-policy volatile-lru
maxmemory 4g
maxclients 2000
save 900 1
save 300 10
save 60 10000
#requirepass zxJZt7PidfT
  • vim redis.conf slave节点
#REPLICAT Setting
port 27001
bind 主机实际IP地址
protected-mode no
timeout 30
daemonize yes
pidfile /redis/app/redis-5.0.8/run/redis_27001.pid
logfile /redis/app/redis-5.0.8/log/27001.log
dir /redis/app/redis-5.0.8/database
dbfilename dump.rdb
appendonly yes
appendfilename appendonly.aof
appendfsync always
activedefrag yes
maxmemory-policy volatile-lru
maxmemory 4g
maxclients 2000
save 900 1
save 300 10
save 60 10000
#requirepass zxJZt7PidfT
replicaof 主节点IP或主机名 27001
replica-serve-stale-data no
#masterauth zxJZt7PidfT
  • sentinel.conf 节点配置
    • 提示:sentinel节点的配置不区分主从配置,sentinel会自动监测节点状态
    • 当Redis开启密码方式时,就把requirepass和sentinel auth-pass注释解除
port 28001
bind 主机实际IP地址
protected-mode no
daemonize yes
pidfile /redis/app/redis-5.0.8/run/28001.pid
logfile /redis/app/redis-5.0.8/log/28001.log
#requirepass zxJZt7PidfT
sentinel monitor mymaster RedisMaster节点IP或主机名 27001 1
sentinel down-after-milliseconds mymaster 5000
sentinel parallel-syncs mymaster 1
sentinel failover-timeout mymaster 300000
#sentinel auth-pass mymaster zxJZt7PidfT

redis启动

  • 启动方式
  • 登录到三台服务器依次执行
redis-server /redis/app/redis-5.0.8/conf/redis-27001.conf
redis-sentinel /redis/app/redis-5.0.8/conf/sentinel-28001.conf

登录redis查看

  • 查看集群状态
[redis@flink1 bin]$ ./redis-cli -h 127.0.0.1 -p 27001
127.0.0.1:27001> info
# Server
redis_version:5.0.8
redis_git_sha1:00000000
redis_git_dirty:0
redis_build_id:bcebc1a7f397be7c
redis_mode:standalone
os:Linux 4.19.188-10.el7.ucloud.x86_64 x86_64
arch_bits:64
multiplexing_api:epoll
atomicvar_api:sync-builtin
gcc_version:4.4.7
process_id:9368
run_id:e7b1a70c5c34b3ccc97598d758ecdccc928de1b8
tcp_port:27001
uptime_in_seconds:37755938
uptime_in_days:436
hz:10
configured_hz:10
lru_clock:612955
executable:/home/redis/app/redis-5.0.8/bin/./redis-server
config_file:/home/redis/app/redis-5.0.8/conf/redis-27001.conf

# Clients
connected_clients:34
client_recent_max_input_buffer:2
client_recent_max_output_buffer:0
blocked_clients:0

# Memory
used_memory:2433720
used_memory_human:2.32M
used_memory_rss:6889472
used_memory_rss_human:6.57M
used_memory_peak:17015040
used_memory_peak_human:16.23M
used_memory_peak_perc:14.30%
used_memory_overhead:2144244
used_memory_startup:382936
used_memory_dataset:289476
used_memory_dataset_perc:14.12%
allocator_allocated:2903464
allocator_active:3534848
allocator_resident:10539008
total_system_memory:8150044672
total_system_memory_human:7.59G
used_memory_lua:43008
used_memory_lua_human:42.00K
used_memory_scripts:3256
used_memory_scripts_human:3.18K
number_of_cached_scripts:5
maxmemory:4000000000
maxmemory_human:3.73G
maxmemory_policy:volatile-lru
allocator_frag_ratio:1.22
allocator_frag_bytes:631384
allocator_rss_ratio:2.98
allocator_rss_bytes:7004160
rss_overhead_ratio:0.65
rss_overhead_bytes:-3649536
mem_fragmentation_ratio:2.88
mem_fragmentation_bytes:4498008
mem_not_counted_for_evict:1060
mem_replication_backlog:1048576
mem_clients_slaves:33844
mem_clients_normal:640892
mem_aof_buffer:1060
mem_allocator:jemalloc-5.1.0
active_defrag_running:0
lazyfree_pending_objects:0

# Persistence
loading:0
rdb_changes_since_last_save:3412
rdb_bgsave_in_progress:0
rdb_last_save_time:1695111707
rdb_last_bgsave_status:ok
rdb_last_bgsave_time_sec:1
rdb_current_bgsave_time_sec:-1
rdb_last_cow_size:585728
aof_enabled:1
aof_rewrite_in_progress:0
aof_rewrite_scheduled:0
aof_last_rewrite_time_sec:0
aof_current_rewrite_time_sec:-1
aof_last_bgrewrite_status:ok
aof_last_write_status:ok
aof_last_cow_size:679936
aof_current_size:41993266
aof_base_size:86641
aof_pending_rewrite:0
aof_buffer_length:0
aof_rewrite_buffer_length:0
aof_pending_bio_fsync:0
aof_delayed_fsync:0

# Stats
total_connections_received:8296918
total_commands_processed:2300731218
instantaneous_ops_per_sec:105
total_net_input_bytes:204544497170
total_net_output_bytes:430087982109
instantaneous_input_kbps:8.56
instantaneous_output_kbps:23.88
rejected_connections:0
sync_full:3
sync_partial_ok:1
sync_partial_err:0
expired_keys:114013
expired_stale_perc:0.00
expired_time_cap_reached_count:0
evicted_keys:0
keyspace_hits:134214172
keyspace_misses:141147359
pubsub_channels:1
pubsub_patterns:0
latest_fork_usec:385
migrate_cached_sockets:0
slave_expires_tracked_keys:0
active_defrag_hits:0
active_defrag_misses:0
active_defrag_key_hits:0
active_defrag_key_misses:0

# Replication
role:master
connected_slaves:2
slave0:ip=192.168.27.45,port=27001,state=online,offset=167099048190,lag=1
slave1:ip=192.168.27.46,port=27001,state=online,offset=167099048190,lag=1
master_replid:300c927073f94d029393e0ead3b30fd89d3c853a
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:167099048879
second_repl_offset:-1
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:167098000304
repl_backlog_histlen:1048576

# CPU
used_cpu_sys:86375.070613
used_cpu_user:63277.321020
used_cpu_sys_children:213.099140
used_cpu_user_children:289.543452

# Cluster
cluster_enabled:0

# Keyspace
db0:keys=438,expires=15,avg_ttl=330000761
db4:keys=3,expires=0,avg_ttl=0
db5:keys=87,expires=50,avg_ttl=14032
db6:keys=3,expires=0,avg_ttl=0

相关文章

  • 第四周部分学习报告

    上周模糊问题 哨兵集群必须部署2个以上节点 如果哨兵集群仅仅部署了个2个哨兵实例,quorum=1 |:---- ...

  • redis(二)

    Redis用户认证 禁用危险命令 主从复制的过程 主从复制的部署 哨兵 Redis哨兵+主从+密码 Redis哨兵...

  • 哨兵集群实践

    概述 光说不练假把式,现在就开始部署哨兵集群,以及如何基于哨兵进行故障转移。 哨兵配置 哨兵默认用的是26379端...

  • 自我系统学习Redis小记-04

    08 | 哨兵集群:哨兵挂了,主从库还能切换吗? 1、引言 哨兵机制,它可以实现主从库的自动切换。通过部署多个实例...

  • redis的哨兵

    sentinal 本质上是运行在特殊模式下的redis一个典型的哨兵部署如下 我们使用哨兵结构进行部署的主要目的是...

  • Redis哨兵

    Redis Sentinel Redis哨兵为Redis提供高可用。这就意味着你用哨兵可以创建一个Redis部署,...

  • 一旦多个实例组成了哨兵集群,即使有哨兵实例出现故障挂掉了,其他哨

    哨兵机制,它可以实现主从库的自动切换。通过部署多个实例,就形成了一个哨兵集群。哨兵集群中的多个实例共同判断,可以降...

  • Redis Sentinel 搭建

    部署哨兵之前需要了解的基本事情 1.一个健壮的部署至少需要三个哨兵实例,并且使用奇数个Sentinel.2.三个哨...

  • 缓存架构之14:在项目中以经典的3节点方式部署哨兵集群

    动手实操,练习如何操作部署哨兵集群,如何基于哨兵进行故障转移,还有一些企业级的配置方案 1、哨兵的配置文件 sen...

  • redis在项目中以经典的3节点方式部署哨兵集群

    动手实操,练习如何操作部署哨兵集群,如何基于哨兵进行故障转移,还有一些企业级的配置方案 1、哨兵的配置文件 sen...

网友评论

      本文标题:redis-5.0.8_v2哨兵部署.md

      本文链接:https://www.haomeiwen.com/subject/xqxzvdtx.html