7.2. 3scale의 백엔드 구성 요소 구성
3scale 관리자로 backend-cron, backend-listener, backend-worker 구성 요소 환경 변수에 대한 back-end의 Redis HA(failover)를 구성합니다. 이러한 구성은 3scale의 Redis HA에 필요합니다.
sentinels와 함께 Redis를 사용하려면 3scale을 배포하기 전에 원하는 Redis를 구성하려면 모든 필드가 있는 system-redis 시크릿을 생성해야 합니다. 필드는 3scale 현재 백엔드에서 매개변수로 제공되지 않습니다.
7.2.1. backend-redis 및 system-redis 시크릿 생성 링크 복사링크가 클립보드에 복사되었습니다!
다음 단계에 따라 backend-redis 및 system-redis 시크릿을 생성합니다.
7.2.2. HA용 3scale 신규 설치 배포 링크 복사링크가 클립보드에 복사되었습니다!
단일 데이터베이스 Redis 인스턴스를 사용하여 배포할 때 키 충돌을 방지하려면 sidekiq 및 message_bus Redis 키에 대해 다른 네임스페이스를 설정합니다. 이는 Redis Enterprise 및 Redis 클러스터에 모두 적용됩니다.
sidekiq 및 message_bus가 다른 Redis 데이터베이스에 읽고 쓰는 기타 배포의 경우 네임스페이스는 필요하지 않습니다.
다음 매개 변수는 Redis 키 네임스페이스를 설정하는 데 사용됩니다.
-
NAMESPACE: Redis 데이터베이스에system-app및system-sidekiq에 저장된 작업 대기열과 관련된 항목의 경우 -
MESSAGE_BUS_NAMESPACE: Redis 데이터베이스의system-app에 의해 저장된 프로세스 간message_bus통신과 관련된 항목의 경우
절차
아래 필드를 사용하여
backend-redis및system-redis시크릿을 생성합니다.backend-redis
Copy to Clipboard Copied! Toggle word wrap Toggle overflow system-redis
Copy to Clipboard Copied! Toggle word wrap Toggle overflow sentinels를 사용하여 Redis에 대해 구성할 때
backend-redis및system-redis의 해당URL필드는redis://[:redis-password@]redis-group[/db]`형식의 Redis 그룹을 나타냅니다. 여기서 [x]는 선택적 요소 x이며,redis-password,redis-group,db변수를 적절하게 대체합니다.예제
redis://:redispwd@mymaster/5
redis://:redispwd@mymaster/5Copy to Clipboard Copied! Toggle word wrap Toggle overflow SENTINEL_HOSTS필드는 다음 형식의 sentinel 연결 문자열을 쉼표로 구분한 목록입니다.redis://:sentinel-password@sentinel-hostname-or-ip:port
redis://:sentinel-password@sentinel-hostname-or-ip:portCopy to Clipboard Copied! Toggle word wrap Toggle overflow 목록의 각 요소에 대해 [x]는 선택적 요소 x 및
sentinel-password,sentinel-hostname-or-ip를 나타내며,port는 그에 따라 교체할 변수입니다.예제
:sentinelpwd@123.45.67.009:2711,:sentinelpwd@other-sentinel:2722
:sentinelpwd@123.45.67.009:2711,:sentinelpwd@other-sentinel:2722Copy to Clipboard Copied! Toggle word wrap Toggle overflow
-
SENTINEL_ROLE필드는master또는slave입니다.
최신 버전의 템플릿을 사용하여 템플릿을 사용하여 OpenShift에 3scale 배포에 표시된 대로 3scale을 배포합니다.
-
이미 존재하는
backend-redis및system-redis로 인한 오류를 무시합니다.
-
이미 존재하는
7.2.3. 3scale이 아닌 HA 배포를 HA로 마이그레이션 링크 복사링크가 클립보드에 복사되었습니다!
-
HA 용 3scale의 새로운 설치 배포에 표시된 대로 모든 필드를 사용하여
backend-redis및system-redis시크릿을 편집합니다. 백엔드 pod에 대해 다음
backend-redis환경 변수가 정의되어 있는지 확인합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음
system-redis환경 변수가system-(app|sidekiq|sphinx)Pod에 대해 정의되어 있는지 확인합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 템플릿을 사용하여 3scale을 계속 업그레이드 하려면 지침을 따르십시오.
7.2.3.1. Redis Enterprise 사용 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift에 배포된 Redis Enterprise를 사용하여 다음과 같은 세 가지
redis-enterprise인스턴스를 사용하십시오.system-redis시크릿을 편집합니다.-
고유한 값을
MESSAGE_BUS_NAMESPACE및NAMESPACE로 설정합니다. -
URL및MESSAGE_BUS_URL을 동일한 데이터베이스로 설정합니다.
-
고유한 값을
-
backend-redis의 백엔드 데이터베이스를REDIS_QUES_URL로 설정합니다. -
backend-redis의 세 번째 데이터베이스를REDIS_STORAGE_URL로 설정합니다.
7.2.3.2. Redis Sentinel 사용 링크 복사링크가 클립보드에 복사되었습니다!
3개 또는 4개의 다른 Redis 데이터베이스와 함께 Redis Sentinel을 사용하십시오.
system-redis시크릿을 편집합니다.-
고유한 값을
MESSAGE_BUS_NAMESPACE및NAMESPACE로 설정합니다. -
URL및MESSAGE_BUS_URL을 적절한 Redis 그룹으로 설정합니다 (예:redis://:redispwd@mymaster/5) -
SENTINEL_HOSTS및MESSAGE_BUS_SENTINEL_HOSTS를 sentinels 호스트 및 포트의 쉼표로 구분된 목록으로 설정합니다(예::sentinelpwd@123.45.67.009:2711,:sentinelpwd@other-sentinel:2722). -
SENTINEL_ROLE및MESSAGE_BUS_SENTINEL_ROLE을 master로 설정합니다.
-
고유한 값을
백엔드의
backend-redis시크릿을 다음 값으로 설정합니다.-
REDIS_QUEUES_URL -
REDIS_QUEUES_SENTINEL_ROLE -
REDIS_QUEUES_SENTINEL_HOSTS
-
세 번째 데이터베이스의 변수를 다음과 같이 설정합니다.
-
REDIS_STORAGE_URL -
REDIS_STORAGE_SENTINEL_ROLE -
REDIS_STORAGE_SENTINEL_HOSTS
-
참고
system-app 및 system-sidekiq 구성 요소는 통계를 검색하기 위해
back-endRedis에 직접 연결합니다.-
3scale 2.7부터 이러한 시스템 구성 요소는 sentinels를 사용할 때
back-endRedis(스토리지)에도 연결할 수 있습니다.
-
3scale 2.7부터 이러한 시스템 구성 요소는 sentinels를 사용할 때
system-app 및 system-sidekiq 구성 요소는
backend-redis대기열이 아닌backend-redis스토리지 만 사용합니다.-
시스템 구성 요소를 변경하면 sentinels가 있는
backend-redis스토리지를 지원합니다.
-
시스템 구성 요소를 변경하면 sentinels가 있는