>  기사  >  데이터 베이스  >  Docker에서 Redis 클러스터 설치 및 구성을 구현하는 방법

Docker에서 Redis 클러스터 설치 및 구성을 구현하는 방법

王林
王林앞으로
2023-05-26 18:36:251584검색

1. 모든 머신에서 미러를 가져옵니다.

docker pull redis

Docker에서 Redis 클러스터 설치 및 구성을 구현하는 방법

2. 마스터-슬레이브 클러스터 구축

2.1, redis.cong 파일

2.1.1, 마스터 노드:

bind  0.0.0.0
protected-mode no
//redis配置访问密码
requirepass 123456
//主节点密码  哨兵模式下主节点宕机从新恢复变成从节点  需要密码
masterauth 123456

2.1.2, 슬레이브 노드:

bind  0.0.0.0
protected-mode no
requirepass 123456
//主节点访问密码
masterauth 123456
//主节点信息
slaveof  *.*.*.* 6379

2.2. 로컬 매핑 폴더를 생성하고 /usr/local/redis/conf 폴더에 redis.conf를 넣습니다.

# /usr/local/redis
cd /usr/locar/redis
mkdir conf
mkdir data

2.3. redis

docker run -p 6379:6379 --name redis \
-v /usr/local/redis/conf/redis.conf:/etc/redis/redis.conf \
-v /usr/local/redis/data:/data \
-d redis redis-server /etc/redis/redis.conf --appendonly yes

Docker에서 Redis 클러스터 설치 및 구성을 구현하는 방법

2.4.를 시작합니다.

### 在主节点查看
# 进入容器内部
docker exec -it redis bash
 
# 进入redis
redis-cli
 
# 校验密码
auth 123456
 
# 查看集群信息
info replication

Docker에서 Redis 클러스터 설치 및 구성을 구현하는 방법

Docker에서 Redis 클러스터 설치 및 구성을 구현하는 방법

3. Sentinel 모드를 켭니다

3.1. Sentinel.conf 구성 파일

#### 根据需要修改一下内容 
# 让sentinel服务后台运行(docker的话需要设置为no,非docker运行设置为yes, 因为docker有个-d属性就是让在后台运行的)
daemonize no 
 
# 修改日志文件的路径
logfile "/data/sentinel.log"
 
# 修改监控的主redis服务器
# 最后一个2表示,两台机器判定主被动下线后,就进行failover(故障转移)
sentinel monitor mymaster *.*.*.*(公网ip) 6390 2
 
#超过5秒master还没有连接上,则认为master已经停止
sentinel down-after-milliseconds mymaster 5000
 
 
sentinel auth-pass mymaster 123456

3.2. 로컬 매핑 폴더를 만들고 /usr/local/redis-sentinel에 넣습니다. / conf 폴더

# /usr/local/redis
cd /usr/locar/redis-sentinel
mkdir conf
mkdir data

3.3. redis-sentinel 프로세스를 시작합니다

docker run -d --name sentinel -p 26379:26379  \
-v /usr/local/redis-sentinel/conf/sentinel.conf:/etc/sentinel.conf \
-v /usr/local/redis-sentinel/data:/data redis redis-sentinel /etc/sentinel.conf

3.4. redis-sentinel 컨테이너에 들어가서

# 进入sentinel节点
docker exec -it sentinel redis-cli  -p 26379
# 查看sentinel信息
info sentinel

Docker에서 Redis 클러스터 설치 및 구성을 구현하는 방법

3.5. 마스터 노드를 닫습니다

  • Ex ecute 마스터-슬레이브 클러스터

  • 로 구축된 2.4 검증 모듈을 실행한 후 정보의 변경 사항을 관찰하거나 센티넬이 구성한 로그 파일을 모니터링하는 "정보 복제" 명령을 여러 번 실시간으로 확인할 수 있습니다

위 내용은 Docker에서 Redis 클러스터 설치 및 구성을 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제