hank_gao

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
统计
 

tags: redis

redis

三主三从安装

环境 centos6.5
Redis1 172.16.5.1
Redis2 172.16.5.2
Redis3 172.16.5.3

  • 关闭防火墙,selinux
chkconfig iptables off
vim /etc/selinux/config    disabled
reboot
  • 配置yum源

  • 安装包路径 /data

  • 软件包
    openssl-1.0.2j.tar.gz redis-3.0.7.tar.gz redis-3.0.7.gem ruby-2.1.10.tar.gz rubygems-2.6.8.zip

  • 安装路径 /ane
    所有节点镜像安装

tar -xf redis-3.0.7.tar.gz
cd redis-3.0.7
make
make install PREFIX=/ane/redis-3.0.7
ln -s /ane/redis-3.0.7 /ane/redis
mkdir /ane/redis/conf
mkdir /ane/redis/log
mkdir /ane/redis/data
mkdir /ane/redis/data/6379
mkdir /ane/redis/data/6380

修改系统参数

  • 自改最大可打开文件数
vim /etc/security/limits.conf
soft nofile 102400
hard nofile 102400
echo "net.core.somaxconn = 2048" >> /etc/sysctl.conf
echo "vm.overcommit_memory = 1" >> /etc/sysctl.conf 
echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo "fs.file-max = 65535" >> /etc/sysctl.conf
echo "net.core.somaxconn = 32767" >> /etc/sysctl.conf
sysctl -p

查看OOM是否为0如果不是,参照net.core.somaxconn修改
cat /proc/sys/vm/overcommit_memory
0

echo never > /sys/kernel/mm/transparent_hugepage/enabled追加到/etc/rc.local

拷贝配置文件

cp /data/redis-3.0.7/redis-conf /ane/redis/conf/redis-6379.conf 
cp /data/redis-3.0.7/redis-conf /ane/redis/conf/redis-6380.conf

目录结构
tree redis
redis
├── bin
│ ├── redis-benchmark
│ ├── redis-check-aof
│ ├── redis-check-dump
│ ├── redis-cli
│ ├── redis-sentinel -> redis-server
│ └── redis-server
├── conf
│ ├── redis-6379.conf
│ └── redis-6380.conf
├── data
│ ├── 6379
│ └── 6380
└──log

6 directories, 8 files

启动脚本

cat start-redis-cluster.sh 
#!/bin/sh

REDIS_HOME=/ane/redis
$REDIS_HOME/bin/redis-server $REDIS_HOME/conf/redis-6379.conf
$REDIS_HOME/bin/redis-server $REDIS_HOME/conf/redis-6380.conf

/ane/redis/start-redis-cluster.sh

安装ruby

tar -xf openssl-1.0.2j.tar.gz
cd openssl-1.0.2j
./config
make
make install
yum -y install zlib-devel
tar -xf ruby-2.1.10.tar.gz
cd ruby-2.1.10
./configure --prefix=/ane/ruby-2.1.10
make
make install
ln -s /ane/ruby-2.1.10 /ane/ruby
vim ~/.bash_profile 
PATH=$PATH:$HOME/bin:/ane/ruby/bin:/ane/redis/bin
Source
[root@redis3 ruby-2.1.10]# ruby -v
ruby 2.1.10p492 (2016-04-01 revision 54464) [x86_64-linux]

安装rubygems

yum -y install unzip
unzip rubygems-2.6.8.zip
cd rubygems-2.6.8
ruby setup.rb
cd ../ruby-2.1.10/ext/zlib/
ruby extconf.rb
make
make install

安装提前下载好的redis-3.0.7-gem

gem install -l redis-3.0.7.gem
cp /data/redis-3.0.7/src/redis-trib.rb /ane/redis/bin/

创建集群

redis-trib.rb create --replicas 1 172.16.5.1:6379 172.16.5.2:6379 172.16.5.3:6379 172.16.5.1:6380 172.16.5.2:6380 172.16.5.3:6380


验证

[root@redis1 ~]# redis-cli -c -p 6379
127.0.0.1:6379> set a 1
-> Redirected to slot [15495] located at 172.16.5.3:6379
OK

[root@redis3 ~]# redis-cli -c -p 6379
127.0.0.1:6379> get a
"1"
posted on   hank_gao  阅读(382)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
 
点击右上角即可分享
微信分享提示