>  기사  >  데이터 베이스  >  Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.

Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.

coldplay.xixi
coldplay.xixi앞으로
2021-01-26 09:45:332114검색

Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.

권장(무료): redis

Article 디렉터리

  • 마스터-슬레이브 복제
    • Command
    • Configuration
  • 복제 원칙
    • 전체 복사
    • 볼륨 복제 추가
    • Test
  • Nested master-slave
  • Sentinel 모드
    • Sentinel 구성
    • Test

Master-slave 복제


마스터-슬레이브 복제 는 하나를 의미합니다. Redis 서버의 데이터는 다른 Redis 서버로 복사되는데, 전자를 메인 노드 Master라고 하고, 후자를 Slave 노드라고 합니다. 일반적으로 Master에서 Slave로 한 방향으로만 복사할 수 있습니다. 마스터는 주로 쓰기 작업을 수행하고 슬레이브는 읽기 작업을 주로 수행하여 읽기와 쓰기를 분리합니다.

Function

  1. 데이터 이중화: 마스터-슬레이브 복제는 지속성에 추가된 데이터 이중화 방법인 데이터의 핫 백업을 구현합니다.
  2. 장애 복구: 마스터 노드에 문제가 발생하면 슬레이브 노드가 서비스를 제공하여 신속한 장애 복구를 달성할 수 있습니다. 이는 실제로 일종의 서비스 중복입니다.
  3. 로드 밸런싱: 읽기-쓰기 분리와 결합된 마스터-슬레이브 복제를 기반으로 마스터 노드는 쓰기 서비스를 제공하고 슬레이브 노드는 읽기 서비스를 제공할 수 있습니다(즉, Redis 데이터를 쓸 때 애플리케이션이 마스터 노드에 연결됩니다) 그리고 Redis 데이터를 읽을 때 애플리케이션은 서버 로드를 공유하기 위해 슬레이브 노드)에 연결합니다. 특히 쓰기가 적고 읽기가 많은 시나리오에서 여러 슬레이브 노드를 통해 읽기 로드를 공유하면 동시성이 크게 향상될 수 있습니다. 레디스 서버.
  4. 고가용성의 초석: 위의 기능 외에도 마스터-슬레이브 복제는 센티널 및 클러스터 구현의 기초이기도 합니다. 따라서 마스터-슬레이브 복제는 Redis 고가용성의 기초입니다.

Command

Command Function
slaveof 호스트 포트 현재 서버를 지정된 서버의 슬레이브 서버로 변환합니다. 이미 슬레이브인 경우 이전 마스터 서버의 동기화를 중지하고 이전 데이터 세트를 삭제한 후 새 마스터 서버의 동기화를 시작합니다. SLAVEOF NO ONE을 사용하면 슬레이브 서버가 복제 기능을 끄고 슬레이브 서버에서 다시 마스터 서버로 전환하게 됩니다. 원본 동기화 데이터 세트는 삭제되지 않습니다.
info [section] INFO 명령은 Redis 서버에 대한 다양한 정보와 통계값을 이해하기 쉽고 읽기 쉬운 형식으로 반환합니다. 선택적 매개변수 section를 제공하면 명령이 정보의 특정 부분만 반환하도록 할 수 있습니다.

구성

여러 서비스가 포함된 단일 머신을 예로 들어보겠습니다(일반적으로 여러 서비스가 포함된 여러 머신이 있지만 서버는 하나뿐입니다)

우선, 각 Redis 클라이언트는 기본적으로 호스트로 설정됩니다. 정보 복제 명령을 통해 볼 수 있습니다.
Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.

이제 하나의 마스터와 두 개의 슬레이브를 시뮬레이션하기 위해 세 개의 클라이언트를 동시에 열어야 하므로 구성을 수정해야 합니다.

  1. 포트 번호 수정
  2. pid 이름 수정
  3. 로그 수정 name
  4. rdb 이름 수정
  5. 설정 호스트 연결(선택 사항, 명령줄 사용)

먼저 두 개의 구성 파일을 슬레이브 구성으로 복사하세요. 호스트는 기본값을 사용할 수 있습니다.
Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.
위의 5개 구성 지점을 순서대로 수정하려면 redis80.conf를 예로 들어 보겠습니다. 81의 경우 처음 4개 지점만 변경됩니다. ㅋㅋㅋ
Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.
81에는 구성이 없으며 명령줄을 통해 수동으로 설정할 수 있습니다Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.
Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.
Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.현재 View 79(마스터):

Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.
Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.복사 원칙
Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.

    전체 복사

  1. Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.매번 슬레이브가 마스터에 연결됩니다. 전체 복사, 호스트의 모든 데이터를 슬레이브로 복사합니다.

  2. 증분 복제Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.
슬레이브가 마스터에 연결된 후 나중에 마스터가 업데이트하는 데이터는 해당 데이터 부분에 대해서만 슬레이브에 동기적으로 업데이트됩니다.


Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.Test

슬레이브는 기본적으로 읽기 전용이며 동기화된 마스터의 데이터를 증분적으로 복사합니다.


호스트가 다운되었습니다.

    3. 다운타임 상황에서:

  1. Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.
    Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.
    Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.

  2. Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.
    Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.
    중첩된 마스터-슬레이브Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.

    그림 79와 같이 80의 호스트이고, 80이 81의 호스트입니다. 이는 중첩된 마스터-슬레이브 관계입니다.
    Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.
    Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.
    Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.

    Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.
    Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.
    Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.
    Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.

    Sentinel 모드


    위의 80개 상위 및 중첩 마스터-슬레이브는 모두 명령줄에서 수동으로 입력됩니다. 피하는 것이 목적이다 호스트에 문제가 있는 컴퓨터 쓰기 후 작업 기간에는 수동 개입이 필요합니다.
    Sentinel은 독립적인 프로세스로 독립적으로 실행됩니다. 원칙은 Sentinel이 명령을 보내고 Redis 서버의 응답을 기다리는 방식으로 실행 중인 여러 Redis 서버를 모니터링한다는 것입니다. Sentinel이 호스트가 오프라인임을 감지하면 새 호스트가 되기 위해 슬레이브 시스템을 선택하여 "업"(자동 오류 마이그레이션)합니다. 원래 호스트가 온라인 상태가 되면 원래 호스트는 새 호스트의 슬레이브가 됩니다. 원칙은 게시 및 구독 모델을 통해 다른 서버에 알리고 구성 파일을 수정하여 호스트를 전환하는 것입니다.

    Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다. Sentinel이 다운되면 어떻게 해야 하나요? 여러 센티널을 사용하여 서로를 모니터링할 수 있습니다.

    Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.
    사진은 https://www.jianshu.com/p/06ab9daf921d에서 가져왔습니다. 침입 및 삭제

    • 주관적 다운(SDOWN)은 단일 Sentinel 인스턴스가 서버 라인에 발생하는 다운타임을 의미합니다. 심판.
    • Objective Down
    • (Objectively Down, 줄여서 ODOWN)은 동일한 서버에서 주관적인 오프라인 판단을 내리고 SENTINEL is-master-down-by-addr 명령을 통해 서로 통신하는 여러 Sentinel 인스턴스를 말합니다. 서버가 오프라인 상태라는 것입니다.
    • 호스트가 객관적으로 오프라인 상태가 되면 Sentinel은 새 호스트에 투표하고(
    특정 알고리즘은 생략

    ) 자동 장애 조치(failover)를 수행하고 게시 및 구독을 통해 호스트를 전환하도록 다른 서버에 알립니다.

    센티넬 구성

    먼저 설치 디렉터리에 자세한 주석이 달린 센티널 구성이 있습니다.


    6379를 모니터링하기 위해 새 sentinel.conf를 만들고 나머지는 기본값으로 설정할 수 있습니다. Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.

    센티넬을 시작합니다. Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.

    Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.
    Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.

    테스트

    Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.
    Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.
    Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.
    Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.
    Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.
    Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.
    Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.
    다중 센티널 모드, 여러 포트 구성 파일 구성 Tinel 클라이언트를 사용하고 동일한 패턴을 따릅니다( Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.게으른
    )

위 내용은 Redis는 마스터-슬레이브 복제 및 감시 모드를 설명합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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