Redis此例简单介绍基于docker的redis安装与集群搭建

来源:互联网 发布:淘宝软文例题解 编辑:程序博客网 时间:2024/05/16 07:26

Redis 拓展连接
此例简单介绍基于docker的redis安装与集群搭建
一:安装
1.获取redis镜像

docker pull redis

2.写服务配置文件redis.conf

daemonize nopidfile "/var/run/redis.pid"port 6379timeout 300loglevel warninglogfile "redis.log"databases 16rdbcompression yesdbfilename "redis.rdb"dir "/data"requirepass passwordmaxclients 10000maxmemory 1000mbmaxmemory-policy allkeys-lruappendonly noappendfsync always

3.写哨兵配置文件sentinel.conf

daemonize noport 26379dir "/tmp"sentinel monitor mymaster *.*.*.* 6379 1sentinel down-after-milliseconds mymaster 60000sentinel auth-pass mymaster passwordsentinel config-epoch mymaster 0sentinel leader-epoch mymaster 0

4.启动redis服务

docker run --name redis -p 6379:6379 -v /showcase/redis/redis.conf:/data/redis.conf --restart=always -d redis:latest redis-server redis.conf

5.启动sentinel服务

docker run --name sentinel -p 26379:26379 -v /showcase/redis/sentinel.conf:/data/sentinel.conf --restart=always -d redis:latest redis-sentinel sentinel.conf

二:集群搭建
1.写主服务配置文件redis_master.conf

daemonize nopidfile "/var/run/redis.pid"port 6379                       timeout 300                     loglevel warning                        logfile "redis.log"                    databases 16                        rdbcompression yes                     dbfilename "redis.rdb"                     dir "/data"                    requirepass passwordmasterauth passwordmaxclients 10000maxmemory 1000mb                        maxmemory-policy allkeys-lru                        appendonly no                       appendfsync always

2.写从服务配置文件redis_slave.conf

daemonize nopidfile "/var/run/redis.pid"                       port 6379                       timeout 300                     loglevel warning                        logfile "redis.log"                    databases 16                        rdbcompression yes                     dbfilename "redis.rdb"                     dir "/data"                    requirepass passwordmasterauth passwordmaxclients 10000                        maxmemory 1000mb                        maxmemory-policy allkeys-lru                        appendonly no                       appendfsync always                      slaveof *.*.*.* 6379

3.写哨兵集群配置文件sentinel.conf

daemonize noport 26379dir "/tmp"sentinel monitor mymaster *.*.*.* 6379 2sentinel down-after-milliseconds mymaster 60000sentinel auth-pass mymaster passwordsentinel config-epoch mymaster 0sentinel leader-epoch mymaster 0

4.启动主redis服务

docker run --name redis_master -p 6379:6379 -v /showcase/redis/redis_master.conf:/data/redis_master.conf --restart=always -d redis:latest redis-server redis_master.conf

5.启动从redis服务

docker run --name redis_slave -p 6379:6379 -v /showcase/redis/redis_slave.conf:/data/redis_slave.conf --restart=always -d redis:latest redis-server redis_slave.conf

6.启动sentinel服务

docker run --name sentinel -p 26379:26379 -v /showcase/redis/sentinel.conf:/data/sentinel.conf --restart=always -d redis:latest redis-sentinel sentinel.conf
0 0