欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

關(guān)于docker?compose安裝redis集群的問(wèn)題(集群擴(kuò)容、集群收縮)

 更新時(shí)間:2022年03月25日 10:12:25   作者:Xiao--Y  
這篇文章主要介紹了docker?compose安裝redis集群、集群擴(kuò)容、集群收縮,主要包括redis配置信息模板,編寫(xiě)批量生成配置文件腳本的相關(guān)命令,需要的朋友參考下吧

一、redis 配置信息模板

文件名:redis-cluster.tmpl

# redis端口
port ${PORT}
#redis 訪問(wèn)密碼
requirepass 123456
#redis 訪問(wèn)Master節(jié)點(diǎn)密碼
masterauth 123456
# 關(guān)閉保護(hù)模式
protected-mode no
# 開(kāi)啟集群
cluster-enabled yes
# 集群節(jié)點(diǎn)配置
cluster-config-file nodes.conf
# 超時(shí)
cluster-node-timeout 5000
# 集群節(jié)點(diǎn)IP host模式為宿主機(jī)IP
# cluster-announce-ip 192.168.1.10
# 集群節(jié)點(diǎn)端口 7001 - 7006
cluster-announce-port ${PORT}
cluster-announce-bus-port 1${PORT}
# 開(kāi)啟 appendonly 備份模式
appendonly yes
# 每秒鐘備份
appendfsync everysec
# 對(duì)aof文件進(jìn)行壓縮時(shí),是否執(zhí)行同步操作
no-appendfsync-on-rewrite no
# 當(dāng)目前aof文件大小超過(guò)上一次重寫(xiě)時(shí)的aof文件大小的100%時(shí)會(huì)再次進(jìn)行重寫(xiě)
auto-aof-rewrite-percentage 100
# 重寫(xiě)前AOF文件的大小最小值 默認(rèn) 64mb
auto-aof-rewrite-min-size 64mb

# 日志配置
# debug:會(huì)打印生成大量信息,適用于開(kāi)發(fā)/測(cè)試階段
# verbose:包含很多不太有用的信息,但是不像debug級(jí)別那么混亂
# notice:適度冗長(zhǎng),適用于生產(chǎn)環(huán)境
# warning:僅記錄非常重要、關(guān)鍵的警告消息
loglevel notice
# 日志文件路徑
logfile "/data/redis.log"

二、編寫(xiě)批量生成配置文件腳本

文件名:redis-cluster-config.sh

for port in `seq 7001 7006`; do \
  mkdir -p ./${port}/conf \
  && PORT=${port} envsubst < ./redis-cluster.tmpl > ./${port}/conf/redis.conf \
  && mkdir -p ./${port}/data; \
done

三、批量生成配置文件

執(zhí)行 redis-cluster-config.sh 生成配置文件

在這里插入圖片描述

四、編寫(xiě) docker-compose 文件

文件名:docker-compose.yml

version: '3'
services:
  redis-7001:
    image: redis:6
    container_name: redis-7001
    command:
      ["redis-server", "/usr/local/etc/redis/redis.conf"]
    volumes:
      - ./7001/conf/redis.conf:/usr/local/etc/redis/redis.conf
      - ./7001/data:/data
    ports:
      - "7001:7001"
      - "17001:17001"
    environment:
      # 設(shè)置時(shí)區(qū)為上海,否則時(shí)間會(huì)有問(wèn)題
      - TZ=Asia/Shanghai
    logging:
      options:
        max-size: '100m'
        max-file: '10'
  redis-7002:
    container_name: redis-7002
      - ./7002/conf/redis.conf:/usr/local/etc/redis/redis.conf
      - ./7002/data:/data
      - "7002:7002"
      - "17002:17002"
  redis-7003:
    container_name: redis-7003
      - ./7003/conf/redis.conf:/usr/local/etc/redis/redis.conf
      - ./7003/data:/data
      - "7003:7003"
      - "17003:17003"
  redis-7004:
    container_name: redis-7004
      - ./7004/conf/redis.conf:/usr/local/etc/redis/redis.conf
      - ./7004/data:/data
      - "7004:7004"
      - "17004:17004"
  redis-7005:
    container_name: redis-7005
      - ./7005/conf/redis.conf:/usr/local/etc/redis/redis.conf
      - ./7005/data:/data
      - "7005:7005"
      - "17005:17005"
  redis-7006:
    container_name: redis-7006
      - ./7006/conf/redis.conf:/usr/local/etc/redis/redis.conf
      - ./7006/data:/data
      - "7006:7006"
      - "17006:17006"

五、做集群、分配插槽

注:192.168.44.65 為 宿主機(jī)ip

ipport
192.168.44.657001
192.168.44.657002
192.168.44.657003
192.168.44.657004
192.168.44.657005
192.168.44.657006

執(zhí)行命令:
注: cluster-replicas 表示 一個(gè)主節(jié)點(diǎn)有幾個(gè)從節(jié)點(diǎn)

C:\Users\billow>docker exec -it redis-7001 redis-cli -p 7001 -a 123456 --cluster create 192.168.44.65:7001 192.168.44.65:7002 192.168.44.65:7003 192.168.44.65:7004 192.168.44.65:7005 192.168.44.65:7006 --cluster-replicas 1
>>> Performing hash slots allocation on 6 nodes...
Master[0] -> Slots 0 - 5460
Master[1] -> Slots 5461 - 10922
Master[2] -> Slots 10923 - 16383
Adding replica 192.168.44.65:7005 to 192.168.44.65:7001
Adding replica 192.168.44.65:7006 to 192.168.44.65:7002
Adding replica 192.168.44.65:7004 to 192.168.44.65:7003
>>> Trying to optimize slaves allocation for anti-affinity
[WARNING] Some slaves are in the same host as their master
M: 741c7bb537888ff97866896abb22da27c22f8eaf 192.168.44.65:7001
   slots:[0-5460] (5461 slots) master
M: e5f687462a0c47f51c3abf4b8d77d646a3d63fa9 192.168.44.65:7002
   slots:[5461-10922] (5462 slots) master
M: 9936d3690d971eccfc8b8ed43c5defc66f318454 192.168.44.65:7003
   slots:[10923-16383] (5461 slots) master
S: b7b6fa6a4766c32c5d42d759548d6fcdf2b9159b 192.168.44.65:7004
   replicates e5f687462a0c47f51c3abf4b8d77d646a3d63fa9
S: 2275c996f25a8815342e2435af073eb29565778b 192.168.44.65:7005
   replicates 9936d3690d971eccfc8b8ed43c5defc66f318454
S: f69a5d0ae974816396a9d9e613c13f6ceea25de2 192.168.44.65:7006
   replicates 741c7bb537888ff97866896abb22da27c22f8eaf
Can I set the above configuration? (type 'yes' to accept): yes
>>> Nodes configuration updated
>>> Assign a different config epoch to each node
>>> Sending CLUSTER MEET messages to join the cluster
Waiting for the cluster to join
.
>>> Performing Cluster Check (using node 192.168.44.65:7001)
M: 741c7bb537888ff97866896abb22da27c22f8eaf 192.168.44.65:7001
   slots:[0-5460] (5461 slots) master
   1 additional replica(s)
S: f69a5d0ae974816396a9d9e613c13f6ceea25de2 172.25.0.11:7006
   slots: (0 slots) slave
   replicates 741c7bb537888ff97866896abb22da27c22f8eaf
M: 9936d3690d971eccfc8b8ed43c5defc66f318454 172.25.0.7:7003
   slots:[10923-16383] (5461 slots) master
   1 additional replica(s)
M: e5f687462a0c47f51c3abf4b8d77d646a3d63fa9 172.25.0.8:7002
   slots:[5461-10922] (5462 slots) master
   1 additional replica(s)
S: 2275c996f25a8815342e2435af073eb29565778b 172.25.0.10:7005
   slots: (0 slots) slave
   replicates 9936d3690d971eccfc8b8ed43c5defc66f318454
S: b7b6fa6a4766c32c5d42d759548d6fcdf2b9159b 172.25.0.9:7004
   slots: (0 slots) slave
   replicates e5f687462a0c47f51c3abf4b8d77d646a3d63fa9
[OK] All nodes agree about slots configuration.
>>> Check for open slots...
>>> Check slots coverage...
[OK] All 16384 slots covered.

六、測(cè)試:

命令:

-- 集群、分配插槽
docker exec -it redis-7001 redis-cli -p 7001 -a 123456 --cluster create 192.168.44.65:7001 192.168.44.65:7002 192.168.44.65:7003 192.168.44.65:7004 192.168.44.65:7005 192.168.44.65:7006 --cluster-replicas 1
-- 測(cè)試
docker exec -it redis-7001 redis-cli -h 192.168.44.65 -p 7003 -a 123456 -c
-- 查看集群狀態(tài)
cluster nodes
-- 查看分片信息
cluster slots
-- 查看集群信息
cluster info

執(zhí)行結(jié)果:

C:\Users\billow>docker exec -it redis-7001 redis-cli -h 192.168.44.65 -p 7003 -a 123456 -c
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
192.168.44.65:7003>
192.168.44.65:7003>
192.168.44.65:7003>
192.168.44.65:7003>
192.168.44.65:7003> set name admin
-> Redirected to slot [5798] located at 172.25.0.8:7002
OK
172.25.0.8:7002> get name
"admin"
172.25.0.8:7002> cluster nodes
2275c996f25a8815342e2435af073eb29565778b 172.25.0.10:7005@17005 slave 9936d3690d971eccfc8b8ed43c5defc66f318454 0 1648086940436 3 connected
f69a5d0ae974816396a9d9e613c13f6ceea25de2 172.25.0.11:7006@17006 slave 741c7bb537888ff97866896abb22da27c22f8eaf 0 1648086939000 1 connected
b7b6fa6a4766c32c5d42d759548d6fcdf2b9159b 172.25.0.9:7004@17004 slave e5f687462a0c47f51c3abf4b8d77d646a3d63fa9 0 1648086939710 2 connected
741c7bb537888ff97866896abb22da27c22f8eaf 172.25.0.6:7001@17001 master - 0 1648086939392 1 connected 0-5460
e5f687462a0c47f51c3abf4b8d77d646a3d63fa9 172.25.0.8:7002@17002 myself,master - 0 1648086939000 2 connected 5461-10922
9936d3690d971eccfc8b8ed43c5defc66f318454 172.25.0.7:7003@17003 master - 0 1648086938868 3 connected 10923-16383
172.25.0.8:7002>
172.25.0.8:7002>
172.25.0.8:7002>
172.25.0.8:7002>
172.25.0.8:7002>
172.25.0.8:7002> cluster slots
1) 1) (integer) 0
   2) (integer) 5460
   3) 1) "172.25.0.6"
      2) (integer) 7001
      3) "741c7bb537888ff97866896abb22da27c22f8eaf"
   4) 1) "172.25.0.11"
      2) (integer) 7006
      3) "f69a5d0ae974816396a9d9e613c13f6ceea25de2"
2) 1) (integer) 5461
   2) (integer) 10922
   3) 1) "172.25.0.8"
      2) (integer) 7002
      3) "e5f687462a0c47f51c3abf4b8d77d646a3d63fa9"
   4) 1) "172.25.0.9"
      2) (integer) 7004
      3) "b7b6fa6a4766c32c5d42d759548d6fcdf2b9159b"
3) 1) (integer) 10923
   2) (integer) 16383
   3) 1) "172.25.0.7"
      2) (integer) 7003
      3) "9936d3690d971eccfc8b8ed43c5defc66f318454"
   4) 1) "172.25.0.10"
      2) (integer) 7005
      3) "2275c996f25a8815342e2435af073eb29565778b"
172.25.0.8:7002> cluster info
cluster_state:ok
cluster_slots_assigned:16384
cluster_slots_ok:16384
cluster_slots_pfail:0
cluster_slots_fail:0
cluster_known_nodes:6
cluster_size:3
cluster_current_epoch:6
cluster_my_epoch:2
cluster_stats_messages_ping_sent:906
cluster_stats_messages_pong_sent:911
cluster_stats_messages_meet_sent:1
cluster_stats_messages_sent:1818
cluster_stats_messages_ping_received:911
cluster_stats_messages_pong_received:906
cluster_stats_messages_received:1817

七、手動(dòng)擴(kuò)容

添加兩個(gè)新的節(jié)點(diǎn)用于手動(dòng)擴(kuò)容
文件名:add-redis-docker.yml

version: '3'

services:
  redis-7007:
    image: redis:6
    container_name: redis-7007
    command:
      ["redis-server", "/usr/local/etc/redis/redis.conf"]
    volumes:
      - ./7007/conf/redis.conf:/usr/local/etc/redis/redis.conf
      - ./7007/data:/data
    ports:
      - "7007:7007"
      - "17007:17007"
    environment:
      # 設(shè)置時(shí)區(qū)為上海,否則時(shí)間會(huì)有問(wèn)題
      - TZ=Asia/Shanghai
    logging:
      options:
        max-size: '100m'
        max-file: '10'
  redis-7008:
    container_name: redis-7008
      - ./7008/conf/redis.conf:/usr/local/etc/redis/redis.conf
      - ./7008/data:/data
      - "7008:7008"
      - "17008:17008"
networks:
    default:
        external:
            name: learn_shop

執(zhí)行命令:
docker-compose -f add-redis-docker.yml up

八、添加主從節(jié)點(diǎn)

1、添加主節(jié)點(diǎn)

-- 進(jìn)入任意節(jié)點(diǎn)
docker exet -it redis-7001 bash

-- 添加主節(jié)點(diǎn)(192.168.44.65:7001 -a 123456  這個(gè)可以是任何已存在的節(jié)點(diǎn),主要用于獲取集群信息)
redis-cli --cluster add-node 192.168.44.65:7007 192.168.44.65:7001 -a 123456

結(jié)果:

root@aa1e004c00ff:/data# redis-cli --cluster add-node 192.168.44.65:7007 192.168.44.65:7001 -a 123456
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
>>> Adding node 192.168.44.65:7007 to cluster 192.168.44.65:7001
>>> Performing Cluster Check (using node 192.168.44.65:7001)
M: 741c7bb537888ff97866896abb22da27c22f8eaf 192.168.44.65:7001
   slots:[0-5460] (5461 slots) master
   1 additional replica(s)
S: 2275c996f25a8815342e2435af073eb29565778b 172.25.0.6:7005
   slots: (0 slots) slave
   replicates 9936d3690d971eccfc8b8ed43c5defc66f318454
M: 9936d3690d971eccfc8b8ed43c5defc66f318454 172.25.0.8:7003
   slots:[10923-16383] (5461 slots) master
   1 additional replica(s)
S: f69a5d0ae974816396a9d9e613c13f6ceea25de2 172.25.0.11:7006
   slots: (0 slots) slave
   replicates 741c7bb537888ff97866896abb22da27c22f8eaf
S: b7b6fa6a4766c32c5d42d759548d6fcdf2b9159b 172.25.0.9:7004
   slots: (0 slots) slave
   replicates e5f687462a0c47f51c3abf4b8d77d646a3d63fa9
M: e5f687462a0c47f51c3abf4b8d77d646a3d63fa9 172.25.0.7:7002
   slots:[5461-10922] (5462 slots) master
   1 additional replica(s)
[OK] All nodes agree about slots configuration.
>>> Check for open slots...
>>> Check slots coverage...
[OK] All 16384 slots covered.
>>> Send CLUSTER MEET to node 192.168.44.65:7007 to make it join the cluster.
[OK] New node added correctly.

查看剛加的主節(jié)點(diǎn):

127.0.0.1:7001> cluster nodes
741c7bb537888ff97866896abb22da27c22f8eaf 172.25.0.10:7001@17001 myself,master - 0 1648104789000 1 connected 0-5460
2275c996f25a8815342e2435af073eb29565778b 172.25.0.6:7005@17005 slave 9936d3690d971eccfc8b8ed43c5defc66f318454 0 1648104789523 3 connected
6f0c7d0ae166717d645e84b48b72b9706c7c758a 172.25.0.13:7007@17007 master - 0 1648104790133 0 connected
9936d3690d971eccfc8b8ed43c5defc66f318454 172.25.0.8:7003@17003 master - 0 1648104790546 3 connected 10923-16383
f69a5d0ae974816396a9d9e613c13f6ceea25de2 172.25.0.11:7006@17006 slave 741c7bb537888ff97866896abb22da27c22f8eaf 0 1648104790000 1 connected
b7b6fa6a4766c32c5d42d759548d6fcdf2b9159b 172.25.0.9:7004@17004 slave e5f687462a0c47f51c3abf4b8d77d646a3d63fa9 0 1648104790000 2 connected
e5f687462a0c47f51c3abf4b8d77d646a3d63fa9 172.25.0.7:7002@17002 master - 0 1648104791062 2 connected 5461-10922

2、添加從節(jié)點(diǎn)

-- 進(jìn)入任意節(jié)點(diǎn)
docker exet -it redis-7001 bash

-- 添加從節(jié)點(diǎn)(192.168.44.65:7001 -a 123456  這個(gè)可以是任何已存在的節(jié)點(diǎn),主要用于獲取集群信息)(6f0c7d0ae166717d645e84b48b72b9706c7c758a  為剛加的主節(jié)點(diǎn) id)
redis-cli --cluster add-node --cluster-slave --cluster-master-id 6f0c7d0ae166717d645e84b48b72b9706c7c758a 192.168.44.65:7008 192.168.44.65:7001 -a 123456

結(jié)果:

127.0.0.1:7001> cluster nodes
741c7bb537888ff97866896abb22da27c22f8eaf 172.25.0.10:7001@17001 myself,master - 0 1648105151000 1 connected 0-5460
2275c996f25a8815342e2435af073eb29565778b 172.25.0.6:7005@17005 slave 9936d3690d971eccfc8b8ed43c5defc66f318454 0 1648105154016 3 connected
6f0c7d0ae166717d645e84b48b72b9706c7c758a 172.25.0.13:7007@17007 master - 0 1648105152000 0 connected
9936d3690d971eccfc8b8ed43c5defc66f318454 172.25.0.8:7003@17003 master - 0 1648105153000 3 connected 10923-16383
f69a5d0ae974816396a9d9e613c13f6ceea25de2 172.25.0.11:7006@17006 slave 741c7bb537888ff97866896abb22da27c22f8eaf 0 1648105152000 1 connected
6478c692a149130d56538aea69b54d2abc1c98b4 172.25.0.12:7008@17008 slave 6f0c7d0ae166717d645e84b48b72b9706c7c758a 0 1648105152000 0 connected
b7b6fa6a4766c32c5d42d759548d6fcdf2b9159b 172.25.0.9:7004@17004 slave e5f687462a0c47f51c3abf4b8d77d646a3d63fa9 0 1648105153599 2 connected
e5f687462a0c47f51c3abf4b8d77d646a3d63fa9 172.25.0.7:7002@17002 master - 0 1648105153000 2 connected 5461-10922

九、分配插槽

剛加入的主從節(jié)點(diǎn)還不能使用,因?yàn)檫€沒(méi)有分配插槽
rebalance平衡集群節(jié)點(diǎn)slot數(shù)量
語(yǔ)法:

rebalance host:port
--weight <arg>
--auto-weights
--threshold <arg>
--use-empty-masters
--timeout <arg>
--simulate
--pipeline <arg>

host:port:這個(gè)是必傳參數(shù),用來(lái)從一個(gè)節(jié)點(diǎn)獲取整個(gè)集群信息,相當(dāng)于獲取集群信息的入口。
--weight <arg>:節(jié)點(diǎn)的權(quán)重,格式為node_id=weight,如果需要為多個(gè)節(jié)點(diǎn)分配權(quán)重的話(huà),需要添加多個(gè)--weight <arg>參數(shù),即--weight b31e3a2e=5 --weight 60b8e3a1=5,node_id可為節(jié)點(diǎn)名稱(chēng)的前綴,只要保證前綴位數(shù)能唯一區(qū)分該節(jié)點(diǎn)即可。沒(méi)有傳遞–weight的節(jié)點(diǎn)的權(quán)重默認(rèn)為1。
--auto-weights:這個(gè)參數(shù)在rebalance流程中并未用到。
--threshold <arg>:只有節(jié)點(diǎn)需要遷移的slot閾值超過(guò)threshold,才會(huì)執(zhí)行rebalance操作。具體計(jì)算方法可以參考下面的rebalance命令流程的第四步。
--use-empty-masters:rebalance是否考慮沒(méi)有節(jié)點(diǎn)的master,默認(rèn)沒(méi)有分配slot節(jié)點(diǎn)的master是不參與rebalance的,設(shè)置--use-empty-masters可以讓沒(méi)有分配slot的節(jié)點(diǎn)參與rebalance。
--timeout <arg>:設(shè)置migrate命令的超時(shí)時(shí)間。
--simulate:設(shè)置該參數(shù),可以模擬rebalance操作,提示用戶(hù)會(huì)遷移哪些slots,而不會(huì)真正執(zhí)行遷移操作。
--pipeline <arg>:與reshar的pipeline參數(shù)一樣,定義cluster getkeysinslot命令一次取出的key數(shù)量,不傳的話(huà)使用默認(rèn)值為10。
-- 分配插槽(192.168.44.65:7001 -a 123456  這個(gè)可以是任何已存在的節(jié)點(diǎn),主要用于獲取集群信息)
redis-cli --cluster rebalance --cluster-threshold 1 --cluster-use-empty-masters 192.168.44.65:7001 -a 123456

如果需要模擬執(zhí)行添加 : --cluster-simulate

結(jié)果:

root@aa1e004c00ff:/data# redis-cli --cluster rebalance --cluster-threshold 1 --cluster-use-empty-masters 192.168.44.65:7001 -a 123456
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
>>> Performing Cluster Check (using node 192.168.44.65:7001)
[OK] All nodes agree about slots configuration.
>>> Check for open slots...
>>> Check slots coverage...
[OK] All 16384 slots covered.
>>> Rebalancing across 4 nodes. Total weight = 4.00
Moving 1366 slots from 172.25.0.7:7002 to 172.25.0.13:7007
#########################################################################################
Moving 1365 slots from 172.25.0.8:7003 to 172.25.0.13:7007
#########################################################################################
Moving 1365 slots from 192.168.44.65:7001 to 172.25.0.13:7007
#########################################################################################

查看節(jié)點(diǎn)信息:

127.0.0.1:7001> cluster nodes
741c7bb537888ff97866896abb22da27c22f8eaf 172.25.0.10:7001@17001 myself,master - 0 1648105892000 1 connected 1365-5460
2275c996f25a8815342e2435af073eb29565778b 172.25.0.6:7005@17005 slave 9936d3690d971eccfc8b8ed43c5defc66f318454 0 1648105893536 3 connected
6f0c7d0ae166717d645e84b48b72b9706c7c758a 172.25.0.13:7007@17007 master - 0 1648105894566 8 connected 0-1364 5461-6826 10923-12287
9936d3690d971eccfc8b8ed43c5defc66f318454 172.25.0.8:7003@17003 master - 0 1648105893000 3 connected 12288-16383
f69a5d0ae974816396a9d9e613c13f6ceea25de2 172.25.0.11:7006@17006 slave 741c7bb537888ff97866896abb22da27c22f8eaf 0 1648105893000 1 connected
6478c692a149130d56538aea69b54d2abc1c98b4 172.25.0.12:7008@17008 slave 6f0c7d0ae166717d645e84b48b72b9706c7c758a 0 1648105894576 8 connected
b7b6fa6a4766c32c5d42d759548d6fcdf2b9159b 172.25.0.9:7004@17004 slave e5f687462a0c47f51c3abf4b8d77d646a3d63fa9 0 1648105893000 2 connected
e5f687462a0c47f51c3abf4b8d77d646a3d63fa9 172.25.0.7:7002@17002 master - 0 1648105894566 2 connected 6827-10922

十、集群測(cè)試

root@aa1e004c00ff:/data# redis-cli -p 7001 -a 123456 -c
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
127.0.0.1:7001> set 1 1
-> Redirected to slot [9842] located at 172.25.0.7:7002
OK
172.25.0.7:7002> set 2 2
-> Redirected to slot [5649] located at 172.25.0.13:7007
OK
172.25.0.13:7007> set 3 3
-> Redirected to slot [1584] located at 172.25.0.10:7001
OK
172.25.0.10:7001> set 4 4
-> Redirected to slot [14039] located at 172.25.0.8:7003
OK
172.25.0.8:7003> set 5 5
-> Redirected to slot [9974] located at 172.25.0.7:7002
OK
172.25.0.7:7002> set 6 6
-> Redirected to slot [5781] located at 172.25.0.13:7007
OK
172.25.0.13:7007> set 7 7
-> Redirected to slot [1716] located at 172.25.0.10:7001
OK
172.25.0.10:7001>
172.25.0.10:7001>
172.25.0.10:7001>
172.25.0.10:7001>
172.25.0.10:7001> get 1
-> Redirected to slot [9842] located at 172.25.0.7:7002
"1"
172.25.0.7:7002> get 2
-> Redirected to slot [5649] located at 172.25.0.13:7007
"2"
172.25.0.13:7007> get 3
-> Redirected to slot [1584] located at 172.25.0.10:7001
"3"
172.25.0.10:7001> get 4
-> Redirected to slot [14039] located at 172.25.0.8:7003
"4"
172.25.0.8:7003> get 5
-> Redirected to slot [9974] located at 172.25.0.7:7002
"5"
172.25.0.7:7002> get 6
-> Redirected to slot [5781] located at 172.25.0.13:7007
"6"
172.25.0.13:7007> get 7
-> Redirected to slot [1716] located at 172.25.0.10:7001
"7"

十一、常用命令

集群
cluster info :打印集群的信息

cluster nodes :列出集群當(dāng)前已知的所有節(jié)點(diǎn)( node),以及這些節(jié)點(diǎn)的相關(guān)信息。
節(jié)點(diǎn)
cluster meet <ip> <port> :將 ip 和 port 所指定的節(jié)點(diǎn)添加到集群當(dāng)中,讓它成為集群的一份子。
cluster forget <node_id> :從集群中移除 node_id 指定的節(jié)點(diǎn)。
cluster replicate <node_id> :將當(dāng)前節(jié)點(diǎn)設(shè)置為 node_id 指定的節(jié)點(diǎn)的從節(jié)點(diǎn)。
cluster saveconfig :將節(jié)點(diǎn)的配置文件保存到硬盤(pán)里面。
槽(slot)
cluster addslots <slot> [slot ...] :將一個(gè)或多個(gè)槽( slot)指派( assign)給當(dāng)前節(jié)點(diǎn)。
cluster delslots <slot> [slot ...] :移除一個(gè)或多個(gè)槽對(duì)當(dāng)前節(jié)點(diǎn)的指派。
cluster flushslots :移除指派給當(dāng)前節(jié)點(diǎn)的所有槽,讓當(dāng)前節(jié)點(diǎn)變成一個(gè)沒(méi)有指派任何槽的節(jié)點(diǎn)。
cluster setslot <slot> node <node_id> :將槽 slot 指派給 node_id 指定的節(jié)點(diǎn),如果槽已經(jīng)指派給另一個(gè)節(jié)點(diǎn),那么先讓另一個(gè)節(jié)點(diǎn)刪除該槽>,然后再進(jìn)行指派。
cluster setslot <slot> migrating <node_id> :將本節(jié)點(diǎn)的槽 slot 遷移到 node_id 指定的節(jié)點(diǎn)中。
cluster setslot <slot> importing <node_id> :從 node_id 指定的節(jié)點(diǎn)中導(dǎo)入槽 slot 到本節(jié)點(diǎn)。
cluster setslot <slot> stable :取消對(duì)槽 slot 的導(dǎo)入( import)或者遷移( migrate)。
鍵
cluster keyslot <key> :計(jì)算鍵 key 應(yīng)該被放置在哪個(gè)槽上。
cluster countkeysinslot <slot> :返回槽 slot 目前包含的鍵值對(duì)數(shù)量。
cluster getkeysinslot <slot> <count> :返回 count 個(gè) slot 槽中的鍵

到此這篇關(guān)于docker compose安裝redis集群、集群擴(kuò)容、集群收縮的文章就介紹到這了,更多相關(guān)docker compose安裝redis集群內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Docker安裝部署neo4j的實(shí)戰(zhàn)過(guò)程

    Docker安裝部署neo4j的實(shí)戰(zhàn)過(guò)程

    Docker是一種容器化技術(shù),可以在Linux系統(tǒng)上部署應(yīng)用程序,下面這篇文章主要給大家介紹了關(guān)于Docker安裝部署neo4j的相關(guān)資料,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2023-05-05
  • 用Docker swarm快速部署Nebula Graph集群的教程

    用Docker swarm快速部署Nebula Graph集群的教程

    這篇文章主要介紹了用Docker swarm快速部署Nebula Graph集群的方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-09-09
  • Docker搭建簡(jiǎn)單的應(yīng)用棧與容器Hello World訪問(wèn)詳解

    Docker搭建簡(jiǎn)單的應(yīng)用棧與容器Hello World訪問(wèn)詳解

    這篇文章主要介紹了Docker搭建簡(jiǎn)單的應(yīng)用棧與容器Hello World訪問(wèn),結(jié)合實(shí)例形式詳細(xì)分析了Docker應(yīng)用容器棧的獲取、互聯(lián)、啟動(dòng)、配置以及應(yīng)用訪問(wèn)測(cè)試相關(guān)操作技巧,需要的朋友可以參考下
    2018-06-06
  • 在Windows系統(tǒng)下安裝docker窗口的配置過(guò)程

    在Windows系統(tǒng)下安裝docker窗口的配置過(guò)程

    相信大家都知道Docker有很多種安裝的選擇,其中支持最好的是Ubuntu系統(tǒng)。而且docker如果想在windows上運(yùn)行必須借助docker-machine,這篇文章將給大家詳細(xì)的介紹在Windows系統(tǒng)上安裝docker窗口的配置過(guò)程,有需要的朋友們可以參考借鑒。
    2016-10-10
  • 如何使用docker搭建upload-labs

    如何使用docker搭建upload-labs

    upload-labs是一個(gè)使用php語(yǔ)言編寫(xiě)的,專(zhuān)門(mén)收集滲透測(cè)試和CTF中遇到的各種上傳漏洞的靶場(chǎng),旨在幫助大家對(duì)上傳漏洞有一個(gè)全面的了解,本文給大家介紹使用 Docker 搭建 upload-labs 的步驟,感興趣的朋友一起看看吧
    2024-03-03
  • 再見(jiàn) Docker如何5分鐘轉(zhuǎn)型 containerd

    再見(jiàn) Docker如何5分鐘轉(zhuǎn)型 containerd

    這篇文章主要介紹了再見(jiàn) Docker如何5分鐘轉(zhuǎn)型 containerd,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-03-03
  • 基于Docker的MySQL主從復(fù)制環(huán)境搭建的實(shí)現(xiàn)步驟

    基于Docker的MySQL主從復(fù)制環(huán)境搭建的實(shí)現(xiàn)步驟

    這篇文章主要介紹了基于Docker的MySQL主從復(fù)制環(huán)境搭建的實(shí)現(xiàn)步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-01-01
  • docker mysql鏡像因?yàn)榕渲梦募霈F(xiàn)錯(cuò)誤一直提示重啟的解決

    docker mysql鏡像因?yàn)榕渲梦募霈F(xiàn)錯(cuò)誤一直提示重啟的解決

    這篇文章主要介紹了docker mysql鏡像因?yàn)榕渲梦募霈F(xiàn)錯(cuò)誤一直提示重啟的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • 如何解決Linux系統(tǒng)下Docker占滿(mǎn)分區(qū)的問(wèn)題

    如何解決Linux系統(tǒng)下Docker占滿(mǎn)分區(qū)的問(wèn)題

    本篇文章主要介紹了如何解決Linux系統(tǒng)下Docker占滿(mǎn)分區(qū)的問(wèn)題。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-07-07
  • 使用docker?部署mysql突然連接不上的問(wèn)題及解決方法

    使用docker?部署mysql突然連接不上的問(wèn)題及解決方法

    這篇文章主要介紹了使用docker?部署mysql,突然連接不上,要解決這個(gè)問(wèn)題需要找到根本原因,對(duì)癥治療就好,本文通過(guò)圖文實(shí)例相結(jié)合給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-06-06

最新評(píng)論