Redis Sentinel 사용 가능 한 설정 을 위 한 상세 한 절차
redis 높 은 사용 가능 한 설정:
보초병 설정(redis-sentinel),내 모든 프로필 은/etc/redis-cluster/디 렉 터 리 에 놓 여 있 습 니 다.
1,redis-sentinel 생 성26379.conf,주요 내용 은 다음 과 같다.
#
port 26379
daemonize yes
logfile "/var/log/redis/sentinel_26379.log"
protected-mode no
dir /var/lib/redis-cluster/sentinel
#
sentinel monitor mymaster 127.0.0.1 6379 1 ( master )
#sentinel auth-pass mymaster passwd
sentinel parallel-syncs mymaster 1
sentinel down-after-milliseconds mymaster 5000
sentinel failover-timeout mymaster 18000
2,redis-sentinel 생 성26380.conf,주요 내용 은 다음 과 같 습 니 다.
#
port 26380
daemonize yes
logfile "/var/log/redis/sentinel_26380.log"
protected-mode no
dir /var/lib/redis-cluster/sentinel
#
sentinel monitor mymaster 127.0.0.1 6379 1 ( master )
#sentinel auth-pass mymaster passwd
sentinel parallel-syncs mymaster 1
sentinel down-after-milliseconds mymaster 5000
sentinel failover-timeout mymaster 18000
sentinel monitor 의 매개 변수 성명 의 의 미 는 다음 과 같다.sentinel monitor [master-group-name] [ip] [port] [quorum]
첫 번 째 줄 은 Redis 에 게 master 라 는 주 소 를 알려 주 는 데 사 용 됩 니 다.주 소 는 127.0.0.1 이 고 포트 는 6379 이 며 법정 인원 은 2 입 니 다.매개 매개 변 수 는 이해 하기 쉽 지만 quorum 은 설명 이 필요 합 니 다.
1.quorum 은 Sentinel 이 master 가 도착 할 수 있 는 지 협상 하여 동의 해 야 하 는 수량 입 니 다.진정한 슬 레이 브 를 실패 로 표시 하기 위해 서 는 고장 이전 프로 세 스 를 시작 해 야 합 니까?
2.어쨌든 quorum 은 고장 을 검사 하 는 데 만 사 용 됩 니 다.고장 이전 을 실제 수행 하기 위해 서 는 Sentinel 이 leader 를 선출 하고 권한 을 부여 해 야 한다.대부분의 Sentinel 프로 세 스 선거 에서 만 발생 한다.
다른 옵션 은 보통 이런 형식 입 니 다.
다른 옵션 은 보통 이런 형식 입 니 다:sentinel[optionname] [master_name] [option_value]
1.down-after-milliseconds-하나의 인 스 턴 스 가 도착 할 수 없습니다(ping 이 통 하지 않 거나 오류 가 있 음).Sentinel 은 다운 의 밀리초 라 고 생각 하기 시 작 했 습 니 다.
2.parallel-syncs-고장 이전 후 새 master 를 사용 하 는 slave 의 수 를 다시 설정 할 수 있 습 니 다.숫자 가 낮 을 수록 더 많은 시간 이 고장 으로 전 이 됩 니 다.그러나 slaves 가 서비스 오래된 데이터 로 설정 되면 모든 slave 가 동시에 master 를 동기 화 하 는 것 을 원 하지 않 을 수도 있 습 니 다.마스터 에서 대량 데 이 터 를 불 러 오 는 것 을 중단 할 때 슬 레이 브 가 차단 되 지 않 기 때 문 입 니 다.설정 옵션 을 1 로 설정 하면 매번 하나의 slave 만 도착 할 수 없다 고 확신 합 니 다.
3.redis-master-6379.conf 를 만 듭 니 다.master 설정 은 기본 파일 과 차이 가 없습니다.주요 내용 은 다음 과 같 습 니 다.
daemonize yes
protected-mode no
port 6379
#requirepass "passwd"
#masterauth "passwd"
4.redis-slave-6380.conf 를 만 들 고 주요 내용 은 다음 과 같 습 니 다.
protected-mode no
port 6380
daemonize yes
#requirepass "passwd"
#masterauth "passwd"
slaveof 127.0.0.1 6379
5.이제 시동 을 걸 수 있 습 니 다.
cd /usr/sbin/
# master redis
redis-server /etc/redis-cluster/redis-master-6379.conf
# slave redis
redis-server /etc/redis-cluster/redis-slave-6380.conf
# redis-sentinel
redis-sentinel /etc/redis-cluster/redis-sentinel_26379.conf
redis-sentinel /etc/redis-cluster/redis-sentinel_26380.conf
우 리 는/var/log/redis/sentinel26379.log 디 렉 터 리 에서 응답 로 그 를 봅 니 다.6.spring boot 통합 redis-sentinel
컴퓨터 설정 설명
#spring.redis.host=127.0.0.1
# Redis
#spring.redis.port=6379
사용 가능 한 설정 증가
# redis server
spring.redis.sentinel.master=mymaster
#
spring.redis.sentinel.nodes=127.0.0.1:26379,127.0.0.1:26380
코드 에서 RedisUtils 에서 직접 사용 할 수 있 습 니 다.예 를 들 어:
@Autowired
private RedisTemplate redisTemplate;
뒤에 컨트롤 러 에서 RedisUtils 로 직접 정의 할 수 있 는 방법 입 니 다.마지막 으로 테스트 해 볼 게 요.
구체 적 인 RedisUtils 코드 는 아래 의 주 소 를 보십시오https://coding.net/u/evening/p/development-tool-summary/git/blob/master/RedisUtils
현재 배치 에 성 공 했 습 니 다.redis-sentinel 이나 redis 테스트 를 끊 으 면 자동 으로 전환 할 수 있 습 니 다.
이 과정 도 많은 구 덩이 를 만 났 으 니 정리 해 보 자.
1:모든 설정 이 완료 되면 프로젝트 보고 시작:모든 sentinels down,my master 가 실행 중인 위 치 를 결정 할 수 없습니다...
포트 가 열 리 지 않 았 거나 redis-sentinel 파일 에 protected-mode no 를 추가 하지 않 았 기 때 문 일 수 있 습 니 다.
2:spring boot 를 통합 한 후 redis 메모리 값 은 여러 개의 xacxedx00x05tx00x0c 물건 을 저장 합 니 다.
이것 은 기본 직렬 화 를 사 용 했 기 때 문 입 니 다.잭 슨 2Json RedisSerializer 를 사용 하면 됩 니 다.위의 연결 주 소 를 참조 하 십시오.
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
그래프 구조를 무상으로 취급할 수 없는 것은 싫기 때문에, redisgraph를 WSL2에 극치고 설치해 보았습니다.제목은 만우절이므로. 그렇다, 역시, 앞으로는 그래프 구조 데이터베이스라고 생각했다. 생각한 것은 몇 년 전인가. 전부터 Neo4j는 시험하고 있지만, 영업 분들로부터 상용 라이센스가 높다고 가르쳐 주었으므로, 전전...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.