8.4. 사이트 간 복제를 위한 데이터 그리드 클러스터 구성
데이터를 복제하기 위한 전용 Cryostat 전송 채널을 통해 통신할 수 있도록 Data Grid 클러스터를 백업 위치로 구성합니다.
사전 요구 사항
- 각 백업 위치에 대한 서비스 계정 토큰이 포함된 보안을 생성합니다.
- 모든 클러스터가 Data Grid 서비스 노드인지 확인합니다.
OpenShift 프로젝트 이름이 일치하는지 확인합니다.
중요데이터 그리드 Operator는 사이트 간 복제를 수행하려면 Data Grid 클러스터가 동일한 이름을 가지며 일치하는 네임스페이스에서 실행해야 합니다.
예를 들어
xsite-cluster라는 프로젝트에서 LON 에 클러스터를 생성합니다. CryostatC 의 클러스터는xsite-cluster라는 프로젝트에서도 실행되어야 합니다.
프로세스
-
각 Data Grid 클러스터에 대한
InfinispanCR을 생성합니다. -
metadata.name을 사용하여 각 Data Grid 클러스터에 일치하는 이름을 지정합니다. -
spec.service.sites.local.name을 사용하여 로컬 사이트의 이름을 지정합니다. -
spec.service.sites.local.expose.type을 사용하여 로컬 사이트의 expose 서비스 유형을 설정합니다. spec.service.sites.locations의 백업 위치 역할을 하는 각 Data Grid 클러스터에 대해 이름, URL, 시크릿을 제공합니다.다음은 LON 및 CryostatC에 대한
InfinispanCR 정의의 예입니다.LON
apiVersion: infinispan.org/v1 kind: Infinispan metadata: name: example-infinispan spec: replicas: 3 service: type: DataGrid sites: local: name: LON expose: type: LoadBalancer locations: - name: LON url: openshift://api.rhdg-lon.openshift-aws.myhost.com:6443 secretName: lon-token - name: NYC url: openshift://api.rhdg-nyc.openshift-aws.myhost.com:6443 secretName: nyc-tokenNYC
apiVersion: infinispan.org/v1 kind: Infinispan metadata: name: example-infinispan spec: replicas: 2 service: type: DataGrid sites: local: name: NYC expose: type: LoadBalancer locations: - name: NYC url: openshift://api.rhdg-nyc.openshift-aws.myhost.com:6443 secretName: nyc-token - name: LON url: openshift://api.rhdg-lon.openshift-aws.myhost.com:6443 secretName: lon-token
다음과 같이 교차 사이트 복제의 로깅 수준을 조정합니다.
... logging: categories: org.jgroups.protocols.TCP: error org.jgroups.protocols.relay.RELAY2: fatal이전 구성에서는 클러스터 백업 작업에 대한 과도한 메시지를 줄이기 위해 Cryostat TCP 및 RELAY2 프로토콜의 로깅을 줄임으로써 컨테이너 스토리지를 사용하는 많은 로그 파일이 발생할 수 있습니다.
- 다른 Data Grid 서비스 리소스를 사용하여 노드를 구성합니다.
-
InfinispanCR을 적용합니다. 노드 로그를 확인하여 Data Grid 클러스터가 교차 사이트 뷰를 형성하는지 확인합니다. 예를 들면 다음과 같습니다.
$ oc logs example-infinispan-0 | grep x-site INFO [org.infinispan.XSITE] (jgroups-5,example-infinispan-0-<id>) ISPN000439: Received new x-site view: [NYC] INFO [org.infinispan.XSITE] (jgroups-7,example-infinispan-0-<id>) ISPN000439: Received new x-site view: [NYC, LON]
다음 단계
클러스터가 사이트 간 보기를 구성한 경우 캐시에 백업 위치를 추가할 수 있습니다.
8.4.1. 사이트 복제 리소스Cross-Site Replication Resources 링크 복사링크가 클립보드에 복사되었습니다!
spec:
...
service:
type: DataGrid
sites:
local:
name: LON
expose:
type: LoadBalancer
locations:
- name: LON
url: openshift://api.site-a.devcluster.openshift.com:6443
secretName: lon-token
- name: NYC
url: openshift://api.site-b.devcluster.openshift.com:6443
secretName: nyc-token
logging:
categories:
org.jgroups.protocols.TCP: error
org.jgroups.protocols.relay.RELAY2: fatal
- 1
- Data Grid 서비스를 지정합니다. 데이터 그리드는 Data Grid 서비스 클러스터를 사용하는 사이트 간 복제만 지원합니다.
- 2
- Data Grid 클러스터의 로컬 사이트 이름을 지정합니다.
- 3
- 백업 위치 간 통신을 처리하는 service
LoadBalancer를 지정합니다. - 4
- 모든 백업 위치에 대한 연결 정보를 제공합니다.
- 5
spec.service.sites.local.name과 일치하는 백업 위치를 지정합니다.- 6
- 백업 위치에 대한 OpenShift API의 URL을 지정합니다.
- 7
- 백업 사이트의 서비스 계정 토큰이 포함된 시크릿을 지정합니다.
- 8
- Cryostat TCP 프로토콜에 대한 오류 메시지를 기록합니다.
- 9
- Cryostat RELAY2 프로토콜의 치명적인 메시지를 기록합니다.