标签:pid 虚拟机 两条命令 run data 新建 ems 创建 真机
以任何方式获取都可以。自行官网下载。
命令:docker pull centos:7
这种基于操作系统的安装也适合虚拟机、真机等环境,而且之前查询资料也都是这种情况开始,没有看到直接跳过这步的样例。
由于集群环境要求有明确的ip配置,需要提供固定ip,所以这里创建容器时指定ip,这就要求有可用的网络信息。
docker network create --subnet=172.19.0.0/16 mynetwork
由于计划每个容器配置两个redis,所以需要3个容器,也可以直接创建6个容器。
docker run -d -v /home/bunny/cento7s/01:/data --network=mynetwork --ip=172.19.0.11 centos:7 /usr/sbin/init
docker run -d -v /home/bunny/cento7s/01:/data --network=mynetwork --ip=172.19.0.12 centos:7 /usr/sbin/init
docker run -d -v /home/bunny/cento7s/01:/data --network=mynetwork --ip=172.19.0.13 centos:7 /usr/sbin/init
首先进入容器,将下载好的redis上传到容器内,这里可以直接拷贝到/home/bunny/cento7s/01。
tar zxvf redis-3.2.5.tar.gz
cd redis-3.2.5
yum install -y wget gcc make tcl
make && make install
新建2个文件夹/etc/redis/7001 /etc/redis/7002
将配置文件复制到2个文件夹,一个对应端口号7001,一个对应端口号7002.下面只配置7001,7002参考7001的配置。
下面的配置文件一共是2*3=6个,分别对应3个ip,每个ip2个端口。
port 7001
bind 172.19.0.11
daemonize yes
pidfile /var/run/redis_7001.pid
dir /etc/redis/7001/
appendonly yes
cluster-enabled yes
cluster-config-file nodes-7001.conf
cluster-node-timeout 5000
yum install ruby -y
yum install rubygems -y
gem install redis -v 3.0.7
逐一启动6个redis进程,下面两条命令在每个容器内执行,一共6个命令执行。
/usr/local/redis-4.0.8/src/redis-server /etc/redis/7001/redis.conf
/usr/local/redis-4.0.8/src/redis-server /etc/redis/7002/redis.conf
通过ps -ef|grep redis 查看进程,每个容器应该2个进程。
./redis-trib.rb create --replicas 1 172.19.0.11:7001 172.19.0.12:7001 172.19.0.13:7001 172.19.0.11:7002 172.19.0.12:7002 172.19.0.13:7002
如果是更新的版本可能是下面这条命令
redis-cli --cluster create 172.19.0.11:7001 172.19.0.12:7001 172.19.0.13:7001 172.19.0.11:7002 172.19.0.12:7002 172.19.0.13:7002 --cluster-replicas 1
然后输入yes确认
任何一个单点的ip地址和端口号以集群方式登录都可以,也就是在命令中添加上 -c
喵星之旅-狂奔的兔子-基于docker的redis分布式集群
标签:pid 虚拟机 两条命令 run data 新建 ems 创建 真机
原文地址:https://www.cnblogs.com/kittybunny/p/12259089.html