어플라이언스 토폴로지: 머신 그룹, 구역 및 데이터 그리드

데이터 그리드는 특정 애플리케이션 또는 애플리케이션 세트의 오브젝트를 보유하기 위해 작성할 수 있는 스토리지 단위입니다. 머신 그룹은 확장성 및 관리를 위해 어플라이언스를 그룹화합니다. 영역은 어플라이언스의 실제 위치를 정의하고 캐시의 데이터 배치를 판별하는 데 사용됩니다.

어플라이언스 토폴로지

머신 그룹 및 영역 둘 다 하나 이상의 WebSphere® DataPower® XC10 Appliances와 연관됩니다. 각 어플라이언스는 하나의 머신 그룹 및 영역의 멤버일 수 있습니다. 각 어플라이언스는 캐시 데이터를 보유하는 여러 데이터 그리드를 호스트합니다.
그림 1. 머신 그룹 및 영역 토폴로지
이 머신 그룹에는 각각에 하나의 어플라이언스가 포함되는 두 개의 영역인 Rack1 및 Rack2가 들어 있습니다.
어플라이언스는 각각 카탈로그 서비스, 기본 및 복제 데이터 눈금을
실행합니다.
중요사항: 데이터 그리드의 가용성을 높이려면 두 개의 어플라이언스가 필요합니다.

머신 그룹

머신 그룹 정의 시 머신 그룹의 어플라이언스 간에 공유되는 정보는 데이터 그리드, 모니터링 정보, 머신 그룹 및 영역 멤버와 사용자입니다. 해당 정보를 업데이트하면 해당 변경사항이 머신 그룹의 모든 기타 어플라이언스에 대해 지속됩니다. 카탈로그 서비스를 통해 어플라이언스 간에 통신할 수 있습니다. 카탈로그 서비스는 카탈로그 서버의 그룹입니다. 머신 그룹의 각 어플라이언스에서는 각 머신 그룹마다 카탈로그 서버를 3개로 제한하여 카탈로그 서버를 실행합니다. 머신 그룹에 4개 이상의 어플라이언스가 있는 경우 카탈로그 서비스는 머신 그룹에 추가된 처음 3개의 어플라이언스에서 실행됩니다. 머신 그룹에서 카탈로그 서버가 포함된 어플라이언스를 제거하거나 카탈로그 서버가 포함된 어플라이언스가 사용 불가능해지면 머신 그룹에 추가한 그 다음 어플라이언스가 카탈로그 서버를 실행합니다. 카탈로그 서버는 기타 어플라이언스에 대해 장애 복구를 수행하지 않습니다.

머신 그룹에 어플라이언스를 추가하려면 어플라이언스의 호스트 이름 및 비밀 키를 다른 어플라이언스의 머신 그룹 구성 패널에 추가하십시오. 머신 그룹 멤버쉽이 머신 그룹 멤버 간에 지속되므로 머신 그룹의 어플라이언스에서 해당 구성을 작성할 수 있습니다.

어플라이언스는 하나의 머신 그룹에만 있습니다. 머신 그룹에 이미 있는 어플라이언스를 다른 머신 그룹에 추가할 수 없습니다. 또한 두 개의 머신 그룹을 단일 머신 그룹으로 결합할 수 없습니다. 별도의 머신 그룹으로부터 어플라이언스를 결합하려면 각 어플라이언스를 해당 머신 그룹에서 제거하여 각 어플라이언스를 독립형으로 만들어야 합니다. 그런 다음 모든 어플라이언스가 포함된 머신 그룹을 새로 작성할 수 있습니다.

머신 그룹을 사용하여 대부분의 구성 변경사항을 작성할 수 있지만, 제공된 어플라이언스에 로그인해야 어플라이언스 > 어플라이언스 설정어플라이언스 > 문제점 해결 패널의 설정을 변경할 수 있습니다.

영역

영역은 어플라이언스의 물리적 위치와 연관됩니다(예: 구/군/시 또는 실습실의 랙 위치). 카탈로그 서비스가 데이터 그리드의 데이터가 저장된 위치를 정의하는 데 영역을 사용할 수 있습니다. 예를 들어 데이터 그리드의 기본 정보가 제공된 영역에 저장되는 경우 복제본 데이터는 다른 영역에 있는 어플라이언스에 저장됩니다. 이 구성을 사용하면 데이터 그리드 기본을 보유한 어플라이언스가 실패하는 경우 기본에서 복제본으로 장애 복구가 발생할 수 있습니다.

데이터 그리드

데이터 그리드에서는 해당 애플리케이션의 오브젝트를 보유합니다. 오브젝트를 캐싱하여 해당 애플리케이션의 성능을 증가시킬 수 있습니다. 3가지 유형의 데이터 그리드가 있습니다.
단순 데이터 그리드
단순 데이터 그리드에서는 키-값 쌍의 데이터를 보유합니다. 예를 들어 단순 데이터 그리드에 데이터베이스 조회의 결과를 저장할 수 있습니다. ObjectMap API를 사용하여 단순 데이터 그리드를 구현합니다. ObjectMap API는 Java 맵과 유사하게 작동합니다.
세션 데이터 그리드
WebSphere Application Server 세션을 사용하는 경우 세션 관리 데이터에 어플라이언스의 세션 데이터 그리드를 사용하도록 애플리케이션을 구성할 수 있습니다. 새 애플리케이션 설치 중 세션 데이터 그리드를 사용하도록 애플리케이션을 구성할 수 있습니다. 또한 기존의 애플리케이션 또는 서버 설정을 업데이트하여 어플라이언스에서 세션 데이터 그리드를 사용할 수 있습니다.
동적 캐시 데이터 그리드
어플라이언스의 동적 캐시 데이터 그리드를 사용하여 WebSphere Application Server 동적 캐시의 데이터를 저장할 수 있습니다. 동적 캐시 API를 사용하여 작성되는 애플리케이션 또는 서블릿 등의 컨테이너 레벨 캐싱을 사용하는 애플리케이션에서 어플라이언스를 캐시 프로바이더로 사용하도록 할 수 있습니다. 그러면 애플리케이션 서버에서 메모리를 덜 사용합니다. 모든 캐시 데이터는 어플라이언스에 오프로드되어 이제 애플리케이션 서버 메모리에 저장되지 않습니다.

데이터 그리드 복제

제공된 데이터 그리드에 대해 목표 복제본 수를 정의할 수 있습니다. 머신 그룹에 두 개 이상의 어플라이언스가 있을 때 복제본이 작성됩니다. 하나의 어플라이언스가 있으면 복제본이 작성되지 않습니다.하나의 어플라이언스가 기본 데이터 그리드를 호스트하므로 머신 그룹에 n개의 어플라이언스가 있는 경우 최대 복제본 수는 n-1입니다. 목표 복제본 수가 현재 n-1 보다 클 경우 머신 그룹에 어플라이언스를 추가할 때 더 많은 복제본을 넣을 수 있습니다. 복제본 수를 향후 원하는 만큼의 최고 복제본 수로 설정할 것을 고려하십시오. 복제본 설정을 편집하려면 데이터 그리드가 지워져야 하므로 향후의 복제본 수를 고려하여 값을 설정하십시오. 새 어플라이언스가 머신 그룹에 추가될 때 추가 복제본이 작성됩니다. 기본 및 복제본 데이터 그리드는 머신 그룹의 모든 어플라이언스에 균등하게 분배 혹은 분해 됩니다. 새 어플라이언스가 머신 그룹에 결합할 때 기본 및 복제본 데이터 그리드를 분배하기 위한 재밸런싱이 발생합니다.

복제본은 동기 복제본 또는 비동기 복제본일 수 있습니다. 동기 복제본에서는 기본 데이터 그리드에서 트랜잭션의 파트로 업데이트를 수신합니다. 비동기 복제본은 기본 데이터 그리드의 트랜잭션이 확정된 이후 업데이트됩니다. 동기 복제본은 데이터 일관성을 보장하지만 비동기 복제본에 비해 요청에 대한 응답 시간을 늘릴 수 있습니다. 비동기 복제본에는 데이터 일관성의 동일한 보장이 없지만 트랜잭션을 더 빨리 완료할 수 있습니다. 데이터 그리드에는 기본적으로 하나의 비동기 복제본이 있습니다. 배치 알고리즘은 복제본이 있는 위치를 제어합니다.

맵은 키-값 쌍에 데이터 그리드의 데이터가 포함된 데이터 구조입니다. 단일 데이터 그리드에는 데이터 그리드 및 데이터 그리드 복제본에 있는 여러 맵이 있을 수 있습니다.

[Firmware refresh Version 2.0.0.2 and later] 클라이언트 애플리케이션을 특별하게 이름 지정된 맵에 연결해서 데이터 그리드에 추가 맵을 작성할 수 있습니다. 동적 맵이 자동으로 작성됩니다.

[Version 2.0.0.3 and later]

머신 그룹 링크

단일 머신 그룹은 거짓 긍정 장애 감지 발생으로 인해 신뢰할 수 없는 네트워크에 연결하지 말아야 합니다. 그렇지만 신뢰할 수 없는 네트워크 연결이 포함된 어플라이언스에서도 데이터 그리드 데이터 복제가 여전히 필요할 수도 있습니다. 이런 유형의 토폴로지를 사용하려는 일부 공통 시나리오는 다음과 같습니다.
  • 하나의 머신 그룹이 활성화되고 다른 그룹은 백업에 사용되는 데이터 센터 사이의 재해 복구
  • 모든 머신 그룹이 지역적으로 인접한 클라이언트에 대해 활성화된 지역적인 분산 데이터 센터
두 개의 머신 그룹에 연결하면 동일한 이름을 가진 데이터 그리드가 머신 그룹 간에 비동기적으로 복제됩니다. 이러한 데이터 그리드에는 각 머신 그룹의 동일한 수의 복제본이 있어야 하고 동일한 동적 맵 구성이 있어야 합니다.