#!/bin/bash

#安装gcc
yum -y install gcc
#安装RVM所需的程序包
yum -y install gcc-c++ patch readline readline-devel zlib zlib-devel
yum -y install libyaml-devel libffi-devel openssl-devel make
yum -y install bzip2 autoconf automake libtool bison iconv-devel sqlite-devel
#安装RVM
curl -sSL https://rvm.io/mpapis.asc | gpg --import -
curl -L get.rvm.io | bash -s stable
#设置RVM环境
source /etc/profile.d/rvm.sh
rvm reload
#验证依赖
rvm requirements run
#安装ruby
rvm install 2.2.
rvm use 2.2. --default
ruby --version cd /usr/local/src #下载redis
curl http://download.redis.io/releases/redis-4.0.9.tar.gz -o redis-4.0.9.tar.gz
tar -zxvf redis-4.0..tar.gz
cd redis-4.0. #curl http://download.redis.io/releases/redis-3.2.8.tar.gz -o redis-3.2.8.tar.gz
#tar -zxvf redis-3.2..tar.gz
#cd redis-3.2. #安装到指定目录中(make 报错请 make MALLOC=libc)
make MALLOC=libc PREFIX=/usr/local/redis install
cp src/redis-trib.rb /usr/local/redis/bin/
#配置环境变量
echo 'export PATH="$PATH:/usr/local/redis/bin"' >> /etc/profile
tail - /etc/profile
. /etc/profile yum -y install ruby-devel rubygems rpm-build
#gem这个命令来安装redis接口
gem install redis #创建需要文件夹
mkdir -p /usr/local/redis/{etc,data,logs}
mkdir -p /usr/local/redis/data/{,,}
#拷贝配置文件、启动项文件
cp redis.conf /usr/local/redis/etc/.conf
cp utils/redis_init_script /etc/init.d/redis_6379 #redis配置文件
cd /usr/local/redis/etc
#后台运行
sed -i 's/daemonize no/daemonize yes/' .conf
#日志文件地址
sed -i 's/logfile ""/logfile \/usr\/local\/redis\/logs\/redis_6379.log/' .conf
#数据文件地址
sed -i 's/dir .\//dir \/usr\/local\/redis\/data\/6379/' .conf
#192.168.1. 为当前机器IP
sed -i 's/bind 127.0.0.1/bind 192.168.100.146 127.0.0.1/' .conf
#开启cluster
sed -i 's/# cluster-enabled yes/cluster-enabled yes/' .conf
sed -i 's/# cluster-config-file nodes-6379.conf/cluster-config-file \/usr\/local\/redis\/etc\/nodes-6379.conf/' .conf
sed -i 's/# cluster-node-timeout 15000/cluster-node-timeout 3000/' .conf
sed -i 's/appendonly no/appendonly yes/' .conf cp .conf .conf
sed -i 's/6379/7379/' .conf
cp .conf .conf
sed -i 's/6379/8379/' .conf #redis启动项
cd /etc/init.d
#sed '2c # chkconfig: 2345 90 10' .conf
#多行用\n sed '1a 第一\n第二' ab
sed -i '1a # chkconfig: 2345 90 10' redis_6379
sed -i 's/\/usr\/local\/bin/\/usr\/local\/redis\/bin/' redis_6379
sed -i 's/\/etc\/redis/\/usr\/local\/redis\/etc/' redis_6379 cp redis_6379 redis_7379
sed -i 's/6379/7379/' redis_7379
cp redis_6379 redis_8379
sed -i 's/6379/8379/' redis_8379
#添加启动项
chkconfig --list
chkconfig redis_6379 on
chkconfig redis_7379 on
chkconfig redis_8379 on
chkconfig --list
service redis_6379 start
service redis_7379 start
service redis_8379 start
echo 'cluster 配置'
redis-trib.rb create --replicas 192.168.1.100: 192.168.1.: 192.168.1.100: #StackExchange.Redis连接redis-cluster版本
#https://github.com/StackExchange/StackExchange.Redis/issues/672

redis-cluster无备节点,安装脚本的更多相关文章

  1. 又一种获取redis cluster slots分布的小脚本

    需要:昨晚学习了cluster slots命令,之前写的脚本,有可以换种方法获取到redis cluster slots 分布情况. cluster slots的结果如下: 4 5460 5.5.5. ...

  2. Redis Cluster 集群节点维护 (三)

    Redis Cluster 集群节点维护: 集群运行很久之后,难免由于硬件故障,网络规划,业务增长,等原因对已有集群进行相应的调整,比如增加redis nodes 节点,减少节点,节点迁移,更换服务器 ...

  3. 获取redis cluster中所有节点的内存使用情况

    需求:获取redis cluster集群中所有节点的内存使用情况. ip_port=`redis-cli -h $ -p $ -a abc123 -c cluster nodes | awk '{pr ...

  4. redis cluster 添加/删除节点操作

    RedisCluster 添加/删除节点 添加节点新配置两个测试节点8008和9009 [root@--- ~]# /usr/local/redis-/bin/redis-server /u02/re ...

  5. Redis Cluster 集群节点信息 维护篇(二)

    集群信息文件: # cluster 集群内部信息对应文件,由集群自动维护. /data/soft/redis/6379data/nodes-6379.conf 集群信息查看: ./redis-trib ...

  6. DG_Oracle DataGuard Primary/Standby物理主备节点安装实践(案例)

    2014-09-09 Created By BaoXinjian

  7. redis官网下载自动安装脚本

    注释:使用方法为 # ./redis.sh  version           ----version为官网版本号 #!/bin/bashversion=$1serverurl='download. ...

  8. 170103、Redis官方集群方案 Redis Cluster

    前面我们谈了Redis Sharding多服务器集群技术,Redis Sharding是客户端Sharding技术,对于服务端来说,各个Redis服务器彼此是相互独立的,这对于服务端根据需要灵活部署R ...

  9. Redis-3.2.0集群配置(redis cluster)

    版本:redis-3.0.5 redis-3.2.0  redis-3.2.9  redis-4.0.11 参考:http://redis.io/topics/cluster-tutorial. 目录 ...

随机推荐

  1. Shell 数值、字符串比较

    Shell脚本中,数值与字符串比较是不同的,因此要注意(注意[]括号内参数和括号之间有一个空格). 一.数值比较 -eq 等于,如: if [ $a -eq $b ] -ne    不等于,如: if ...

  2. Solidity合约间的调用 -Solidity通过合约转ERC20代币

    Solidity通过合约转ERC20代币   ERC20代币并不能像Ether一样使用sendTo.transfer(amt)来转账,ERC20代币只能通过token中定义的transfer方法来转账 ...

  3. charles本地调试之map和rewrite功能

    charles是一款mac下代理调试工具,对于前端开发同学来说是相当方便的一个调试接口的工具:不过charles需要收费,不过在天朝几乎收费的软件都能找到破解方法: 使用charles前,需要将cha ...

  4. ----关于position的四个标签----

    从[ two1-4 ]分别为absolute,fixed,static,relative标签 四个标签下位移值相同,[ two2 ]和[ two1 ]都出现在左上角,[ two2 ] 盖住了[ two ...

  5. Mysql知识点个人整理

    1.概念 数据库:保存有组织的数据的容器. 表: 某种特定类型数据的结构化清单 模式:关于数据库和表的布局和特性的信息?(有时指数据库) 主键: primary key 一个列或一组列,其值能唯一区分 ...

  6. Chapter3_操作符_逻辑操作符

    逻辑操作符与(&&)或(||)非(^)能够对布尔类型的数据类型进行操作,并且生成布尔值,和关系操作符的产生的数据类型是一样的.需要注意的不多,有以下几点: (1)在需要使用string ...

  7. SSM框架整合(Spring+SpringMVC+MyBatis+Oracle)

    1.开发环境搭建以及创建Maven Web项目 参看之前的博文[确保maven web项目不报错]:http://www.cnblogs.com/cainiaomahua/p/6306476.html ...

  8. Latex小技巧

    最近由于离散数学课程作业的需要, 使用$\LaTeX$写pdf报告, 积累了一些$\LaTeX$小技巧, 以后还会陆续补充. 1. 查看某个包的使用手册, 在命令行中输入texdoc XXX, 其中X ...

  9. ESP32 windows开发环境的搭建(官方方法)

    首先保证电脑中的已经下载了git客户端,没有的自行去https://git-scm.com/下载 STEP1: 获得编译工具链 Windows没有内置的“make”环境,所以安装工具链你将需要一个兼容 ...

  10. 提高Linux运维效率的命令行常用快捷键

    提高Linux运维效率的命令行常用快捷键 tab 命令或路径等的补全键,Linux最有用快捷键 Ctrl+a 光标回到命令行首 Ctrl+e 光标回到命令行尾 Ctrl+k 剪切(删除)光标处到行尾的 ...