redis-哨兵部署
redis5.0.8编译安装
| 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系统环境配置
| |
| |
| |
| 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哨兵配置
| 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 |
| |
| |
| 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 |
| |
| replicaof 主节点IP或主机名 27001 |
| replica-serve-stale-data no |
| |
- 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 |
| |
| sentinel monitor mymaster RedisMaster节点IP或主机名 27001 1 |
| sentinel down-after-milliseconds mymaster 5000 |
| sentinel parallel-syncs mymaster 1 |
| sentinel failover-timeout mymaster 300000 |
| |
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 |
| |
| 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 |
| |
| |
| connected_clients:34 |
| client_recent_max_input_buffer:2 |
| client_recent_max_output_buffer:0 |
| blocked_clients:0 |
| |
| |
| 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 |
| |
| |
| 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 |
| |
| |
| 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 |
| |
| |
| 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 |
| |
| |
| used_cpu_sys:86375.070613 |
| used_cpu_user:63277.321020 |
| used_cpu_sys_children:213.099140 |
| used_cpu_user_children:289.543452 |
| |
| |
| cluster_enabled:0 |
| |
| |
| 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 |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具