aws centos7 redis 集群搭建

栏目: 数据库 · 发布时间: 6年前

内容简介:如果出现:执行下命令:复制redis.conf文件到redis bin目录下。
cd /usr/local
wget http://download.redis.io/releases/redis-4.0.9.tar.gz
tar -xzvf redis-4.0.9.tar.gz
cd redis-4.0.9
mkdir /usr/local/redis
make  PREFIX=/usr/local/redis install

如果出现:

zmalloc.h:50:31: 致命错误:jemalloc/jemalloc.h:没有那个文件或目录

执行下命令:

sudo make MALLOC=libc

集群配置

复制redis.conf文件到redis bin目录下。

sudo cp /usr/local/src/redis-4.0.9/redis.conf /usr/local/redis/bin/

修改为后台启动模式:

daemonize yes

启动集群:

cluster-enabled yes

然后将 redis 目录分别付出一个redis-master和redis-slave目录。并修改slave对应的日志文件和端口:

port 6380

pidfile /var/run/redis_6380.pid

分别启动主从两个服务:

sudo ./redis-server redis.conf

至此完成了准备工作,依次启动三台服务器上的6个节点。

搭建集群

构建集群的脚本需要用到 Ruby 来进行执行。

安装Ruby

删除旧版本

sudo yum remove ruby

安装依赖

sudo yum install zlib

下载并安装,注意Ruby版本对照,这里采用2.6版本,其他版本会出现误报。

cd /usr/local

sudo wget https://cache.ruby-lang.org/pub/ruby/2.6/ruby-2.6.0.tar.gz

sudo tar -xzvf ruby-2.6.0.tar.gz

sudo mkdir  /usr/local/ruby2.6

cd ruby-2.6.0

#切换至root用户操作
sudo -i

./configure -prefix=/usr/local/ruby2.6

make && make install

配置环境变量

sudo vim /etc/profile

添加配置

export RUBY_HOME=/usr/local/ruby2.6
export PATH=$RUBY_HOME/bin:$PATH

使生效:

source /etc/profile

安装gem

sudo wget https://rubygems.org/rubygems/rubygems-3.0.3.tgz

sudo ruby setup.rb


sudo gem install redis -v 3.3.5

复制redis脚本

sudo cp /usr/local/src/redis-4.0.9/src/redis-trib.rb /usr/local/redis-master/

执行脚本:

./redis-trib.rb create --replicas 1 172.31.0.1:6379 172.31.0.1:6380 172.31.0.2:6379 172.31.0.2:6380 172.31.0.3:6379 172.31.0.3:6380

配置文件中的地址修改。

等待的过程中开发了16379和16380端口

集群设置密码

分别针对不同的机器,不同的服务器执行以下操作,注意端口替换。

sudo /usr/local/redis-master/bin/redis-cli -p 6379

config set masterauth mima

config set requirepass mima

auth mima

config rewrite

设置redis-trib.rb密码

如果未设置密码,执行则会报错:

[centos@ip-172-0-0-1 redis-master]$ sudo ./redis-trib.rb check 172.1.1.1:6379
[ERR] Sorry, can't connect to node 172.1.1.1:6379

找到建立集群时执行以下命令生成的client.rb文件:

gem install redis

执行查找:

sudo find / -name client.rb -print

找到要修改文件:

sudo vim /usr/local/share/gems/gems/redis-3.3.5/lib/redis/client.rb

修改对应的password:

require_relative "errors"
require "socket"
require "cgi"

class Redis
  class Client

    DEFAULTS = {
      :url => lambda { ENV["REDIS_URL"] },
      :scheme => "redis",
      :host => "127.0.0.1",
      :port => 6379,
      :path => nil,
      :timeout => 5.0,
      :password => "frank",
      :db => 0,
      :driver => nil,
      :id => nil,
      :tcp_keepalive => 0,
      :reconnect_attempts => 1,
      :inherit_socket => false
    }

    attr_reader :options

注意排版格式,对账上面的格式可快速发现哪个是需要修改的文件。再次执行检查,即可成功执行。


以上所述就是小编给大家介绍的《aws centos7 redis 集群搭建》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Mathematica Cookbook

Mathematica Cookbook

Sal Mangano / O'Reilly Media / 2009 / GBP 51.99

As the leading software application for symbolic mathematics, Mathematica is standard in many environments that rely on math, such as science, engineering, financial analysis, software development, an......一起来看看 《Mathematica Cookbook》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

在线进制转换器
在线进制转换器

各进制数互转换器

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具