最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Docker下redis的主從配置教程詳解

 更新時間:2019年07月02日 15:32:32   作者:強奸朱  
這篇文章主要介紹了Docker下redis的主從配置,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下

1、拉取redis鏡像

docker pull redis

2、啟動3個redis容器服務,分別使用到6379、6380、6381端口

docker run --name redis-6379 -p 6379:6379 -d redis
docker run --name redis-6380 -p 6380:6379 -d redis
docker run --name redis-6381 -p 6381:6379 -dredis

3、查看容器

[tcy@tcy1 ~]$ docker ps -a
CONTAINER ID  IMAGE      COMMAND    CREATED    STATUS    PORTS     NAMES
a9fa77adc598  daocloud.io/library/redis "docker-entrypoint.s 2 hours ago   Up 2 hours   0.0.0.0:6381->6379/tcp redis-6381   
6ee2f2f007e6  daocloud.io/library/redis "docker-entrypoint.s 2 hours ago   Up 2 hours   0.0.0.0:6380->6379/tcp redis-6380   
ab54741166e1  daocloud.io/library/redis "docker-entrypoint.s 3 hours ago   Up 3 hours   0.0.0.0:6379->6379/tcp redis-6379

4、測試容器,成功

docker exec -it ab54741166e1 redis-cli:進入容器
[root@tcy1 tcy]# docker exec -it ab54741166e1 redis-cli
127.0.0.1:6379> set b tcy
OK
127.0.0.1:6379> get b
"tcy"
127.0.0.1:6379> quit[root@tcy1 tcy]#

5、開始redis集群配置

5.1、看容器內網(wǎng)的ip地址

[root@tcy1 tcy]# docker inspect a9fa77adc598

在這里插入圖片描述

3個redis的內網(wǎng)ip地址為:

redis-6379:172.17.0.1:6379
redis-6380:172.17.0.2:6379
redis-6381:172.17.0.3:6379

5.2、進入docker容器內部,查看當前redis角色(主還是從)

[root@tcy1 tcy]# docker exec -it ab54741166e1 /bin/bash
root@ab54741166e1:/data# redis-cli
127.0.0.1:6379> info replication
# Replication
role:master
connected_slaves:0
master_replid:d43d1ae8cde6cb084220e18b926aba79e0bb2504
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:0
second_repl_offset:-1
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:0
repl_backlog_histlen:0
127.0.0.1:6379> quit
root@ab54741166e1:/data# exit 
exit

目前三個都是master狀態(tài)

5.3、使用redis-cli命令修改redis-6380、redis-6381的主機為172.17.0.1:6379

[root@tcy1 tcy]# docker exec -it a9fa77adc598 /bin/bash  //redis-6380
root@a9fa77adc598:/data# redis-cli
127.0.0.1:6379> SLAVEOF 172.17.0.1 6379
OK
127.0.0.1:6379> quit
root@a9fa77adc598:/data# exit
exit
[root@tcy1 tcy]# docker exec -it 6ee2f2f007e6 /bin/bash //redis-6381
root@6ee2f2f007e6:/data# redis-cli
127.0.0.1:6379> SLAVEOF 172.17.0.1 6379
OK
127.0.0.1:6379> quit

5.4、查看redis-6379是否已經擁有2個從機,connected_slaves:2,是的

[root@tcy1 tcy]# docker exec -it ab54741166e1 /bin/bash
root@ab54741166e1:/data# redis-cli
127.0.0.1:6379> info replication
# Replication
role:master
connected_slaves:2
slave0:ip=172.17.0.3,port=6379,state=online,offset=378,lag=1
slave1:ip=172.17.0.2,port=6379,state=online,offset=378,lag=0
master_replid:ce193b15cfd57f7dc3ccfbf2a4aef6156b131e6d
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:378
second_repl_offset:-1
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:1
repl_backlog_histlen:378
127.0.0.1:6379> quit
root@ab54741166e1:/data# exit
exit

5.5、配置Sentinel哨兵

進入3臺redis容器內部進行配置,在容器根目錄里面創(chuàng)建sentinel.conf文件

文件內容為: sentinel monitor mymaster 172.17.0.1 6379 1

[root@tcy1 tcy]# docker exec -it a9fa77adc598 /bin/bash
root@a9fa77adc598:/data# cd / && touch sentinel.conf 
root@a9fa77adc598:/# vim /sentinel.conf

如果出現(xiàn):bash: vim: command not found

解決:1、apt-get update 2、apt-get install vim

最后,啟動Redis哨兵:

root@a9fa77adc598:/# redis-sentinel /sentinel.conf
342:X 24 Jun 11:37:58.934 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
342:X 24 Jun 11:37:58.957 # Redis version=4.0.10, bits=64, commit=00000000, modified=0, pid=342, just started
342:X 24 Jun 11:37:58.958 # Configuration loaded
342:X 24 Jun 11:37:58.959 # You requested maxclients of 10000 requiring at least 10032 max file descriptors.
342:X 24 Jun 11:37:58.959 # Server can't set maximum open files to 10032 because of OS error: Operation not permitted.
342:X 24 Jun 11:37:58.960 # Current maximum open files is 4096. maxclients has been reduced to 4064 to compensate for low ulimit. If you need higher maxclients increase 'ulimit -n'.
        _._                         
      _.-``__ ''-._                       
   _.-``  `. `_. ''-._      Redis 4.0.10 (00000000/0) 64 bit
 .-`` .-```. ```\/  _.,_ ''-._                  
 (  '   ,    .-` | `,  )   Running in sentinel mode
 |`-._`-...-` __...-.``-._|'` _.-'|   Port: 26379
 |  `-._  `._  /   _.-'  |   PID: 342
 `-._  `-._ `-./ _.-'  _.-'                  
 |`-._`-._  `-.__.-'  _.-'_.-'|                 
 |  `-._`-._    _.-'_.-'  |      http://redis.io    
 `-._  `-._`-.__.-'_.-'  _.-'                  
 |`-._`-._  `-.__.-'  _.-'_.-'|                 
 |  `-._`-._    _.-'_.-'  |                 
 `-._  `-._`-.__.-'_.-'  _.-'                  
   `-._  `-.__.-'  _.-'                    
     `-._    _.-'                      
       `-.__.-'                        
 
342:X 24 Jun 11:37:59.068 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
342:X 24 Jun 11:37:59.089 # Sentinel ID is dfd5a5bfe1036b1df3395c4ba858329034fc5b7e
342:X 24 Jun 11:37:59.091 # +monitor master mymaster 172.17.0.1 6379 quorum 1
342:X 24 Jun 11:37:59.110 * +slave slave 172.17.0.3:6379 172.17.0.3 6379 @ mymaster 172.17.0.1 6379
342:X 24 Jun 11:37:59.115 * +slave slave 172.17.0.2:6379 172.17.0.2 6379 @ mymaster 172.17.0.1 6379
 
342:X 24 Jun 11:39:27.601 * +sentinel sentinel ba9b0d0539d8273edfcbd922fe138f50daa78bbb 172.17.0.2 26379 @ mymaster 172.17.0.1 6379
342:X 24 Jun 11:41:59.144 * +sentinel sentinel f0510f8582b72c056531f219397ed8826683e665 172.17.0.1 26379 @ mymaster 172.17.0.1 6379

便于觀察,開多個窗口。

在這里插入圖片描述

Sentinel哨兵配置完畢

5.6、測試

關閉Master

[tcy@tcy1 ~]$ docker stop ab54741166e1
ab54741166e1

這時,剩余的2個從機,會自動選舉產生新的主機,這里選舉172.17.0.2為主機。

在這里插入圖片描述

查看172.17.0.2,變成了主機。

[root@tcy1 /]# docker exec -it 6ee2f2f007e6 /bin/bash
root@6ee2f2f007e6:/data# redis-cli
127.0.0.1:6379> info replication
# Replication
role:master
connected_slaves:1
slave0:ip=172.17.0.3,port=6379,state=online,offset=66906,lag=1
master_replid:5a7489c8181ddf0d73d418d30d6a4c8e039198ba
master_replid2:ce193b15cfd57f7dc3ccfbf2a4aef6156b131e6d
master_repl_offset:67041
second_repl_offset:65534
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:85
repl_backlog_histlen:66957
127.0.0.1:6379> 

總結

以上所述是小編給大家介紹的Docker下redis的主從配置,希望對大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會及時回復大家的!

相關文章

  • docker部署應用的三種方式

    docker部署應用的三種方式

    越來越多的前端團隊選擇用Docker部署前端項目,本文主要介紹了docker部署應用的三種方式,具有一定的參考價值,感興趣的可以了解一下
    2024-03-03
  • 教你如何通過編寫dockerfile部署python項目

    教你如何通過編寫dockerfile部署python項目

    Dockerfile是一個放置在項目根目錄下的描述文件,可以利用 Docker 命令基于該文件構建一個鏡像,下面這篇文章主要給大家介紹了關于如何通過編寫dockerfile部署python項目的相關資料,需要的朋友可以參考下
    2024-07-07
  • docker 移除掉運行不正常的container操作

    docker 移除掉運行不正常的container操作

    這篇文章主要介紹了docker 移除掉運行不正常的container操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • 詳解Docker cpu限制分析

    詳解Docker cpu限制分析

    本篇文章主要介紹了Docker cpu限制分析,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-01-01
  • docker之點到點的容器網(wǎng)絡的配置

    docker之點到點的容器網(wǎng)絡的配置

    本篇文章主要介紹了docker之點到點的容器網(wǎng)絡的配置,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-03-03
  • docker部署mysql 實現(xiàn)遠程連接的示例代碼

    docker部署mysql 實現(xiàn)遠程連接的示例代碼

    這篇文章主要介紹了docker部署mysql 實現(xiàn)遠程連接的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-09-09
  • Dockerfile中常用命令匯總

    Dockerfile中常用命令匯總

    本文給大家列出了 Dockerfile 中最常用的指令,完整列表和說明可參看官方文檔。希望大家能夠喜歡
    2018-11-11
  • Docker容器添加自定義MySQL配置文件

    Docker容器添加自定義MySQL配置文件

    本文介紹在Docker容器中通過綁定掛載為MySQL添加自定義配置文件,包括確定綁定掛載目錄、創(chuàng)建配置文件、添加配置項、重啟容器和驗證配置,具有一定的參考價值,感興趣的可以了解一下
    2024-11-11
  • docker部署Gitlab全過程

    docker部署Gitlab全過程

    文章介紹了如何拉取GitLab Docker鏡像、首次登錄獲取默認密碼、修改密碼、配置SSH Key、生成SSL證書以及測試SSH方式拉取代碼的過程
    2025-12-12
  • docker安裝sentinel的實現(xiàn)示例

    docker安裝sentinel的實現(xiàn)示例

    本文主要介紹了docker安裝sentinel的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-12-12

最新評論

马山县| 凭祥市| 华安县| 新乡县| 浦县| 江安县| 平陆县| 宁陵县| 宣化县| 波密县| 吉首市| 清流县| 九寨沟县| 嘉峪关市| 洛浦县| 合作市| 五家渠市| 苗栗市| 黄浦区| 延安市| 蒲城县| 贵定县| 津市市| 玉屏| 宁国市| 陕西省| 华池县| 林芝县| 新乐市| 大安市| 太仆寺旗| 当雄县| 东乌珠穆沁旗| 汝阳县| 怀集县| 乃东县| 南宫市| 石城县| 温泉县| 布拖县| 吉水县|