使用Docker安装并部署Redis集群
Ruby环境准备建议版本:2.2.3+(目前rvm管理库的最高版本是2.6+)安装curl : yum install curl升级nss版本 : yum -y update nss安装rvm : curl -L get.rvm.io | bash -s stable保存执行变更 : source /etc/profile.d/rvm.sh查看Ruby版本 :rvm list kno...
·
Ruby环境准备
建议版本:2.2.3+(目前rvm管理库的最高版本是2.6+)
- 安装curl : yum install curl
- 升级nss版本 : yum -y update nss
- 安装rvm : curl -L get.rvm.io | bash -s stable
- 保存执行变更 : source /etc/profile.d/rvm.sh
- 查看Ruby版本 :rvm list known
- 升级Ruby版本 :rvm install 2.5.5
- 使用Ruby版本 :rvm use ruby-2.5.5
- 查看Ruby版本 :ruby -v
- 安装RubyGem :yum install rubygems
10.安装Redis Gem : gem install redis --version 3.0.7
Docker创建Redis镜像
- 创建Redis本地文件夹 : mkdir /usr/docker_root/redis_cluster
- 进入Redis本地文件夹 :cd /usr/docker_root/redis_cluster
- 下载Redis压缩包 :wget http://download.redis.io/releases/redis-3.0.7.tar.gz
- 解压Redis压缩包 :tar zxvf redis-3.0.7.tar.gz
- 进入解压后的文件夹: cd redis-3.0.7
- 编译Redis : make
- 修改配置文件核心参数: vi redis.conf
#根据自己的情况调整就可以(笔者使用的默认配置)
bind 0.0.0.0
#后台运行
daemonize no
#日志存储路径
logfile "/var/log/redis/redis-server.log"
#redis访问密码
requirepass yourpass
#集群安全验证
masterauth yourpass
#是否开启append-only Log日志
appendonly yes
#启用集群模式
cluster-enabled yes
#集群节点日志路径
cluster-config-file nodes.conf
#集群节点超时时间
cluster-node-timeout 5000
- 进入目录 : cd /usr/docker_root/redis_cluster
- 创建Redis基础镜像 : vim Dockerfile
FROM centos:7
ADD redis-3.0.7.tar.gz /
RUN mkdir -p /redis
ADD /redis-3.0.7/redis.conf /redis/
RUN yum -y update
RUN yum install -y gcc make
WORKDIR /redis-3.0.7
RUN make
RUN mv /redis-3.0.7/src/redis-server /redis/
WORKDIR /
RUN rm -rf /redis-3.0.7
RUN yum remove -y gcc make
VOLUME ["/var/log/redis/"]
EXPOSE 6379
- 构建基础镜像 : docker build -t redis:3.0.7 .
- 创建节点目录 : mkdir /usr/docker_root/redis_node
- 进入节点目录 : cd /usr/docker_root/redis_node
- 创建Redis节点镜像 : vim Dockerfile
FROM redis:3.0.7
ENTRYPOINT ["/redis/redis-server", "/redis/redis.conf"]
- 构建Redis节点镜像 : docker build -t redis-cluster:3.0.7 .
- 检查镜像 : docker images
- 启动镜像 :
docker run -d --name redis01 -p 6379:6379 redis-cluster:3.0.7
docker run -d --name redis02 redis-cluster:3.0.7
docker run -d --name redis03 redis-cluster:3.0.7
docker run -d --name redis04 redis-cluster:3.0.7
docker run -d --name redis05 redis-cluster:3.0.7
docker run -d --name redis06 redis-cluster:3.0.7
- 查看Redis节点IP : docker inspect redis01 redis02 redis03 redis04 redis05 redis06 | grep “IPAddress”| grep 172
- 查找配置文件 :find / -name client.rb 【中间有redis目录的那个】
- 修改配置文件 :vim /usr/local/rvm/gems/ruby-2.3.8/gems/redis-4.1.2/lib/redis/client.rb
DEFAULTS = {
:url => lambda { ENV["REDIS_URL"] },
:scheme => "redis",
:host => "127.0.0.1",
:port => 6379,
:path => nil,
:timeout => 5.0,
:password => "xxxxxx", #主要是修改这个,要和redis.conf配置的密码一致,如果没有密码就删掉
:db => 0,
:driver => nil,
:id => nil,
:tcp_keepalive => 0,
:reconnect_attempts => 1,
:inherit_socket => false
}
- 搭建启动集群: 每个人的IP都不一样,不要全部Copy!
cd /usr/docker_root/redis_cluster/redis-3.0.7/src/
./redis-trib.rb create --replicas 1 172.19.0.6:6379 \
172.17.0.1:6379 \
172.17.0.2:6379 \
172.17.0.3:6379 \
172.17.0.4:6379 \
172.17.0.5:6379
更多推荐
已为社区贡献1条内容
所有评论(0)