Linux 패키지를 사용한 Redis 복제 및 장애 조치
Linux 패키지를 사용하여 Redis Sentinel 기반의 기본-복제본 토폴로지를 구성하는 방법을 설명합니다. Redis 복제, Sentinel 설정, GitLab 애플리케이션 구성, 다중 Redis 클러스터, Valkey 사용, TLS 보안 등을 다룹니다.
이 설명서는 Linux 패키지를 위한 것입니다. 번들되지 않은 자체 Redis를 사용하려면 자체 인스턴스를 제공하는 Redis 복제 및 장애 조치 를 참조하세요. Redis 용어에서 primary 는 master 라고 불립니다. 이 문서에서는 master 가 필요한 설정을 제외하고 master 대신 primary 를 사용합니다. 확장 가능한 환경에서 Redis 를 사용하는 것은 장애 조치 절차를 감시하고 자동으로 시작하는 Redis Sentinel 서비스와 함께 기본 x 복제본 토폴로지를 사용하면 가능합니다. Redis는 Sentinel과 함께 사용할 때 인증이 필요합니다. 자세한 내용은 Redis 보안 설명서를 참조하세요. Redis 서비스를 보호하기 위해 Redis 비밀번호와 엄격한 방화벽 규칙을 조합하여 사용하는 것을 권장합니다. 토폴로지와 아키텍처를 완전히 이해하기 위해 GitLab으로 Redis를 구성하기 전에 먼저 Redis Sentinel 설명서를 읽어보는 것을 권장합니다. Redis와 Redis Sentinel을 복제 토폴로지로 설정하는 세부 내용에 들어가기 전에 구성 요소들이 어떻게 연결되는지 더 잘 이해하기 위해 이 문서를 전체적으로 한 번 읽어보세요. 물리적이거나 별도의 물리적 머신에서 실행되는 VM인 최소 3 개의 독립된 머신이 필요합니다. 모든 기본 및 복제본 Redis 인스턴스는 서로 다른 머신에서 실행되어야 합니다. 이 특정 방식으로 머신을 프로비저닝하지 못하면 공유 환경의 문제가 전체 설정을 중단시킬 수 있습니다. Sentinel을 기본 또는 복제본 Redis 인스턴스와 함께 실행하는 것은 괜찮습니다. 그러나 동일한 머신에 Sentinel이 하나 이상 있어서는 안 됩니다. 또한 기반 네트워크 토폴로지를 고려하여 Redis/Sentinel과 GitLab 인스턴스 간에 중복 연결이 있는지 확인해야 합니다. 그렇지 않으면 네트워크가 단일 장애 지점이 됩니다. 확장 환경에서 Redis를 실행하려면 다음 몇 가지가 필요합니다: 여러 Redis 인스턴스 기본 x 복제본 토폴로지로 Redis 실행 여러 Sentinel 인스턴스 모든 Sentinel 및 Redis 인스턴스에 대한 애플리케이션 지원 및 가시성 Redis Sentinel은 HA 환경에서 가장 중요한 작업, 즉 최소한의 다운타임으로 서버를 온라인 상태로 유지하는 데 도움을 줄 수 있습니다. Redis Sentinel: 기본 및 복제본 인스턴스를 모니터링하여 사용 가능한지 확인합니다. 기본 이 실패하면 복제본 을 기본 으로 승격시킵니다. 실패한 기본 이 다시 온라인 상태가 되면 기본 을 복제본 으로 강등시킵니다(데이터 파티션 방지). 항상 현재 기본 서버에 연결할 수 있도록 애플리케이션에서 쿼리할 수 있습니다. 기본 이 응답하지 못하면 애플리케이션(우리의 경우 GitLab)이 시간 초과를 처리하고 재연결(새 기본 을 위해 Sentinel 쿼리)하는 것이 해당 애플리케이션의 책임입니다. Sentinel을 올바르게 구성하는 방법을 더 잘 이해하려면 먼저 Redis S
