aws centos7 redis 集群搭建

简介: aws centos7 redis 集群搭建

下载

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

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


目录
相关文章
|
NoSQL 数据可视化 Linux
redis学习四、可视化操作工具链接 centos redis,付费Redis Desktop Manager和免费Another Redis DeskTop Manager下载、安装
本文介绍了Redis的两个可视化管理工具:付费的Redis Desktop Manager和免费的Another Redis DeskTop Manager,包括它们的下载、安装和使用方法,以及在使用Another Redis DeskTop Manager连接Redis时可能遇到的问题和解决方案。
2102 1
redis学习四、可视化操作工具链接 centos redis,付费Redis Desktop Manager和免费Another Redis DeskTop Manager下载、安装
|
NoSQL Linux Redis
在 centos7 下重启/开启 redis 服务器
本文提供了一种在Centos 7操作系统下如何重启Redis服务器的步骤,包括停止Redis服务、确认停止成功以及重新启动Redis服务。
1795 2
在 centos7 下重启/开启 redis 服务器
|
NoSQL Linux Redis
Docker学习二(Centos):Docker安装并运行redis(成功运行)
这篇文章介绍了在CentOS系统上使用Docker安装并运行Redis数据库的详细步骤,包括拉取Redis镜像、创建挂载目录、下载配置文件、修改配置以及使用Docker命令运行Redis容器,并检查运行状态和使用Navicat连接Redis。
1838 3
|
NoSQL Linux Redis
linux之centos安装redis
linux之centos安装redis
|
NoSQL 数据可视化 Linux
2022 年超详细步骤讲解 CentOS 7 安装Redis 。解决Redis Desktop Manager 图形化工具连接失败解决 ;connection failed处理。开机自启Redis
这篇文章提供了在CentOS 7上安装Redis的详细步骤,包括上传Redis安装包、解压安装、编译、安装、备份配置文件、修改配置以支持后台运行和设置密码、启动Redis服务、使用客户端连接Redis、关闭Redis服务、解决Redis Desktop Manager图形化工具连接失败的问题、设置Redis开机自启动,以及Redis服务的启动和停止命令。
2022 年超详细步骤讲解 CentOS 7 安装Redis 。解决Redis Desktop Manager 图形化工具连接失败解决 ;connection failed处理。开机自启Redis
|
NoSQL 安全 Redis
AWS迁移教程,Redis迁移到Elasticache
AWS迁移教程,Redis迁移到Elasticache
|
存储 网络协议 Linux
AWS实操-EC2-创建购买linux(centos)EC2服务器
AWS实操-EC2-创建购买linux(centos)EC2服务器
|
NoSQL Linux 网络安全
基于 centOS7 的 redis 安装
基于 centOS7 的 redis 安装
448 1
|
NoSQL Java Redis
数据管理DMS产品使用合集之在使用AWS DMS与ElastiCache for Redis进行通信时遇到Java超时错误,该怎么办
阿里云数据管理DMS提供了全面的数据管理、数据库运维、数据安全、数据迁移与同步等功能,助力企业高效、安全地进行数据库管理和运维工作。以下是DMS产品使用合集的详细介绍。
367 0
|
NoSQL Linux 网络安全
centos安装Redis
centos安装Redis
526 0