가용성을 최대화하고 성능을 최적화하기 위해 일부 서비스 조합의 경우 클러스터 노드 간에 온라인 리소스 그룹이 분배되어야 합니다. 온라인 리소스 그룹을 분배할 때는 다음 용도로 리소스 그룹 간에 유사성을 만드는 작업을 수행합니다.
리소스 그룹이 처음 온라인으로 전환될 때 필요한 분배 적용
리소스 그룹 페일오버 또는 스위치오버 시도 후 필요한 분배 보존
이 절에서는 다음 예를 통해 리소스 그룹 유사성을 사용하여 클러스터 노드 간에 온라인 리소스 그룹을 분배하는 방법을 제공합니다.
특정 리소스 그룹과 다른 리소스 그룹의 코로케이션 적용
특정 리소스 그룹과 다른 리소스 그룹의 우선 코로케이션 지정
리소스 그룹 세트 로드 균형 조정
중요한 서비스가 우선하도록 지정
리소스 그룹 페일오버 또는 스위치오버 위임
리소스 그룹 간의 유사성을 결합하여 보다 복잡한 동작 지정
리소스 그룹 간의 유사성은 리소스 그룹을 동시에 온라인으로 전환할 수 있는 노드를 제한합니다. 각 유사성에서 소스 리소스 그룹은 대상 리소스 그룹 또는 여러 대상 리소스 그룹에 대한 유사성을 선언합니다. 리소스 그룹 간의 유사성을 만들려면 다음과 같이 소스의 RG_affinities 리소스 그룹 등록 정보를 설정합니다.
-p RG_affinities=affinity-list
소스 리소스 그룹과 단일 대상 리소스 그룹 또는 다중 대상 리소스 그룹 간의 쉼표로 구분된 유사성 목록을 지정합니다. 목록에 단일 유사성 또는 둘 이상의 유사성을 지정할 수 있습니다.
다음과 같이 목록에 각 유사성을 지정합니다.
operator target-rg
만들려는 유사성의 유형을 지정합니다. 자세한 내용은 표 7을 참조하십시오.
만들려는 유사성의 대상인 리소스 그룹을 지정합니다.
|
약한 유사성은 Nodelist 우선 순위보다 우선합니다.
다른 리소스 그룹의 현재 상태로 인해 강한 유사성이 노드에서 충족되지 못할 수 있습니다. 이 경우 유사성의 소스인 리소스 그룹이 오프라인 상태로 유지됩니다. 강한 유사성이 충족될 수 있도록 다른 리소스 그룹의 상태가 변경되는 경우 유사성의 소스인 리소스 그룹이 다시 온라인으로 전환됩니다.
하나의 리소스 그룹으로 표시되는 서비스가 두번째 리소스 그룹의 서비스에 강력하게 종속될 수 있습니다. 이 경우 두 서비스가 동일한 노드에서 실행되어야 합니다. 예를 들어 상호 종속된 여러 개의 서비스 데몬으로 구성된 응용 프로그램의 경우 모든 데몬이 동일한 노드에서 실행되어야 할 수 있습니다.
이 경우 종속된 서비스의 리소스 그룹이 다른 서비스의 리소스 그룹과 함께 나란히 배열되도록 적용합니다. 특정 리소스 그룹과 다른 리소스 그룹의 코로케이션을 적용하려면 특정 리소스 그룹에서 다른 리소스 그룹에 대해 강한 긍정적 유사성을 선언합니다.
# clresourcegroup set|create -p RG_affinities=++target-rg source-rg
강한 긍정적 유사성의 소스인 리소스 그룹을 지정합니다. 이 리소스 그룹은 다른 리소스 그룹에 대해 강한 긍정적 유사성을 선언하려는 소스 리소스 그룹입니다.
강한 긍정적 유사성의 대상인 리소스 그룹을 지정합니다. 이 리소스 그룹은 강한 긍정적 유사성을 선언하려는 대상 리소스 그룹입니다.
리소스 그룹은 강한 긍정적 유사성을 가지는 대상 리소스 그룹을 따릅니다. 대상 리소스 그룹이 다른 노드에 재배치되는 경우 자동으로 소스 리소스 그룹이 대상과 동일한 노드로 전환됩니다. 단, 강한 긍정적 유사성을 선언한 리소스 그룹은 유사성의 대상이 실행되고 있지 않은 노드로 페일오버되지 않습니다.
예를 들어, 리소스 그룹 rg1이 리소스 그룹 rg2에 대해 강한 긍정적 유사성을 선언한다고 가정합니다. 이 경우 rg2가 다른 노드로 페일오버되면 rg1도 해당 노드로 페일오버됩니다. 이 페일오버는 rg1의 모든 리소스가 작동 중인 경우에도 발생합니다. 하지만 rg1의 리소스가 rg2가 실행되고 있지 않은 노드로 rg1을 페일오버하려고 시도하면 이 시도가 차단됩니다.
강한 긍정적 유사성의 대상을 온라인으로 전환할 때 강한 긍정적 유사성의 소스가 모든 노드에서 오프라인 상태일 수 있습니다. 이 경우 자동으로 강한 긍정적 유사성의 소스가 대상과 동일한 노드에서 온라인으로 전환됩니다.
예를 들어, 리소스 그룹 rg1이 리소스 그룹 rg2에 대해 강한 긍정적 유사성을 선언한다고 가정합니다. 처음에는 두 리소스 그룹이 모든 노드에서 오프라인 상태입니다. 관리자가 특정 노드에서 rg2를 온라인으로 전환하면 자동으로 rg1이 동일한 노드에서 온라인으로 전환됩니다.
clresourcegroup suspend 명령을 사용하면 강한 유사성 또는 클러스터 재구성으로 인해 자동으로 리소스 그룹이 온라인으로 전환되지 않도록 할 수 있습니다.
강한 긍정적 유사성을 선언하는 리소스 그룹이 페일오버되도록 허용해야 할 경우 페일오버를 위임해야 합니다. 자세한 내용은 리소스 그룹 페일오버 또는 스위치오버 위임을 참조하십시오.
예 56 특정 리소스 그룹과 다른 리소스 그룹의 코로케이션 적용이 예에서는 리소스 그룹 rg2에 대해 강한 긍정적 유사성을 선언하도록 리소스 그룹 rg1을 수정하는 명령을 보여줍니다. 이 유사성 관계로 인해 rg1은 rg2가 실행 중인 노드에서만 온라인으로 전환됩니다. 이 예에서는 두 리소스 그룹이 존재한다고 가정합니다.
# clresourcegroup set -p RG_affinities=++rg2 rg1
하나의 리소스 그룹으로 표시되는 서비스가 두번째 리소스 그룹의 서비스를 사용하고 있을 수 있습니다. 따라서 해당 서비스는 동일한 노드에서 실행되는 경우 가장 효율적으로 실행됩니다. 예를 들어, 응용 프로그램과 데이터베이스가 동일한 노드에서 실행되는 경우 이 데이터베이스를 사용하는 해당 응용 프로그램이 가장 효율적으로 실행됩니다. 하지만 서비스를 서로 다른 노드에서 실행할 수 있습니다. 효율성이 저하되더라도 리소스 그룹의 추가 페일오버에 비해 영향을 덜 받기 때문입니다.
이 경우 가능한 한 두 리소스 그룹이 코로케이션되도록 지정합니다. 특정 리소스 그룹과 다른 리소스 그룹의 우선 코로케이션을 지정하려면 특정 리소스 그룹에서 다른 리소스 그룹에 대해 약한 긍정적 유사성을 선언합니다.
# clresourcegroup set|create -p RG_affinities=+target-rg source-rg
약한 긍정적 유사성의 소스인 리소스 그룹을 지정합니다. 이 리소스 그룹은 다른 리소스 그룹에 대해 약한 긍정적 유사성을 선언하려는 소스 리소스 그룹입니다.
약한 긍정적 유사성의 대상인 리소스 그룹을 지정합니다. 이 리소스 그룹은 약한 긍정적 유사성을 선언하려는 대상 리소스 그룹입니다.
특정 리소스 그룹에서 다른 리소스 그룹에 대해 약한 긍정적 유사성을 선언하면 두 리소스 그룹이 동일한 노드에서 실행될 가능성이 높아집니다. 먼저 약한 긍정적 유사성의 대상이 이미 실행 중인 노드에서 약한 긍정적 유사성의 소스가 온라인으로 전환됩니다. 하지만 리소스 모니터로 인해 유사성의 대상이 페일오버되는 경우 약한 긍정적 유사성의 소스가 페일오버되지 않습니다. 마찬가지로 유사성의 대상이 스위치오버되는 경우 약한 긍정적 유사성의 소스가 페일오버되지 않습니다. 두 가지 경우에서 소스는 이미 실행 중인 노드에서 온라인 상태로 유지됩니다.
이 예에서는 리소스 그룹 rg2에 대해 약한 긍정적 유사성을 선언하도록 리소스 그룹 rg1을 수정하는 명령을 보여줍니다. 이 유사성 관계로 인해 먼저 rg1과 rg2가 동일한 노드에서 온라인으로 전환됩니다. 하지만 rg2의 리소스로 인해 rg2가 페일오버되는 경우 리소스 그룹이 먼저 온라인으로 전환된 노드에서 rg1이 온라인 상태로 유지됩니다. 이 예에서는 두 리소스 그룹이 존재한다고 가정합니다.
# clresourcegroup set -p RG_affinities=+rg2 rg1
리소스 그룹 세트의 각 리소스 그룹은 클러스터에 동일한 로드를 부과할 수 있습니다. 이 경우 클러스터 노드 간에 균등하게 리소스 그룹을 분배하여 클러스터의 로드 균형을 조정할 수 있습니다.
클러스터 노드 간에 균등하게 리소스 그룹 세트를 분배하려면 각 리소스 그룹에서 세트의 다른 리소스 그룹에 대해 약한 부정적 유사성을 선언합니다.
# clresourcegroup set|create -p RG_affinities=neg-affinity-list source-rg
약한 부정적 유사성의 소스인 리소스 그룹을 지정합니다. 이 리소스 그룹은 다른 리소스 그룹에 대해 약한 부정적 유사성을 선언하려는 소스 리소스 그룹입니다.
약한 부정적 유사성의 대상인 리소스 그룹과 소스 리소스 그룹 간의 쉼표로 구분된 약한 부정적 유사성 목록을 지정합니다. 대상 리소스 그룹은 약한 부정적 유사성을 선언하려는 대상 리소스 그룹입니다.
특정 리소스 그룹에서 다른 리소스 그룹에 대해 약한 부정적 유사성을 선언하면 항상 리소스 그룹이 클러스터에서 가장 로드가 적은 노드에서 온라인으로 전환됩니다. 해당 노드에서는 가장 적은 수의 다른 리소스 그룹이 실행되고 있습니다. 따라서 약한 부정적 유사성의 최소 수가 위반됩니다.
예 58 클러스터 노드 간에 균등하게 리소스 그룹 세트 분배이 예에서는 클러스터의 사용 가능한 노드 간에 리소스 그룹이 균등하게 분배되도록 리소스 그룹 rg1, rg2, rg3 및 rg4를 수정하는 명령을 보여줍니다. 이 예에서는 리소스 그룹 rg1, rg2, rg3 및 rg4가 존재하는 것으로 가정합니다.
# clresourcegroup set -p RG_affinities=-rg2,-rg3,-rg4 rg1 # clresourcegroup set -p RG_affinities=-rg1,-rg3,-rg4 rg2 # clresourcegroup set -p RG_affinities=-rg1,-rg2,-rg4 rg3 # clresourcegroup set -p RG_affinities=-rg1,-rg2,-rg3 rg4
클러스터가 핵심 서비스와 비핵심 서비스의 조합을 실행하도록 구성되었을 수 있습니다. 예를 들어, 중요한 고객 서비스를 지원하는 데이터베이스가 비핵심 연구 작업과 동일한 클러스터에서 실행될 수 있습니다.
비핵심 서비스가 중요한 서비스의 성능에 영향을 끼치지 않도록 중요한 서비스가 우선하도록 지정합니다. 중요한 서비스가 우선하도록 지정하면 비핵심 서비스가 중요한 서비스와 동일한 노드에서 실행되지 않습니다.
모든 노드가 작동 중인 경우 중요한 서비스는 비핵심 서비스와 다른 노드에서 실행됩니다. 하지만 중요한 서비스가 실패하면 이로 인해 비핵심 서비스가 실행 중인 노드로 해당 서비스가 페일오버됩니다. 이 경우 노드의 컴퓨팅 리소스가 완전히 핵심 서비스에만 사용되도록 비핵심 서비스가 즉시 오프라인으로 전환됩니다.
핵심 서비스가 우선하도록 지정하려면 각 비핵심 서비스의 리소스 그룹에서 중요한 서비스를 포함하는 리소스 그룹에 대해 강한 부정적 유사성을 선언합니다.
# clresourcegroup set|create -p RG_affinities=--critical-rg noncritical-rg
비핵심 서비스를 포함하는 리소스 그룹을 지정합니다. 이 리소스 그룹은 다른 리소스 그룹에 대해 강한 부정적 유사성을 선언하려는 소스 리소스 그룹입니다.
중요한 서비스를 포함하는 리소스 그룹을 지정합니다. 이 리소스 그룹은 강한 부정적 유사성을 선언하려는 대상 리소스 그룹입니다.
리소스 그룹은 강한 부정적 유사성을 가지는 리소스 그룹에서 벗어납니다.
강한 부정적 유사성의 대상을 온라인으로 전환할 때 강한 부정적 유사성의 소스가 모든 노드에서 오프라인 상태일 수 있습니다. 이 경우 강한 부정적 유사성의 소스가 자동으로 온라인으로 전환됩니다. 일반적으로 노드 목록에서의 노드 순서와 선언된 유사성을 기반으로 가장 우선 순위가 높은 노드에서 리소스 그룹이 온라인으로 전환됩니다.
예를 들어, 리소스 그룹 rg1이 리소스 그룹 rg2에 대해 강한 부정적 유사성을 선언한다고 가정합니다. 처음에 리소스 그룹 rg1은 모든 노드에서 오프라인 상태이며, 리소스 그룹 rg2는 한 노드에서 온라인 상태입니다. 관리자가 rg2를 오프라인으로 전환하면 자동으로 rg1이 온라인으로 전환됩니다.
clresourcegroup suspend 명령을 사용하면 강한 유사성 또는 클러스터 재구성으로 인해 자동으로 강한 부정적 유사성의 소스가 온라인으로 전환되지 않도록 할 수 있습니다.
예 59 중요한 서비스가 우선하도록 지정이 예에서는 중요한 리소스 그룹 mcdbrg가 해당 리소스 그룹보다 우선하도록 비핵심 리소스 그룹 ncrg1 및 ncrg2를 수정하는 명령을 보여줍니다. 이 예에서는 리소스 그룹 mcdbrg, ncrg1 및 ncrg2가 존재한다고 가정합니다.
# clresourcegroup set -p RG_affinities=--mcdbrg ncrg1 ncrg2
강한 긍정적 유사성의 소스 리소스 그룹은 유사성의 대상이 실행되고 있지 않은 노드로 페일오버 또는 스위치오버될 수 없습니다. 강한 긍정적 유사성의 소스 리소스 그룹이 페일오버 또는 스위치오버되도록 허용해야 할 경우 대상 리소스 그룹으로 페일오버를 위임해야 합니다. 유사성의 대상이 페일오버되면 유사성의 소스가 대상과 함께 강제로 페일오버됩니다.
특정 리소스 그룹의 페일오버 또는 스위치오버를 다른 리소스 그룹으로 위임하려면 특정 리소스 그룹에서 다른 리소스 그룹에 대해 페일오버가 위임되는 강한 긍정적 유사성을 선언합니다.
# clresourcegroup set|create source-rg -p RG_affinities=+++target-rg
페일오버 또는 스위치오버를 위임하려는 리소스 그룹을 지정합니다. 이 리소스 그룹은 다른 리소스 그룹에 대해 페일오버가 위임되는 강한 긍정적 유사성을 선언하려는 소스 리소스 그룹입니다.
source-rg가 페일오버 또는 스위치오버를 위임하는 리소스 그룹을 지정합니다. 이 리소스 그룹은 페일오버를 위임하는 강한 긍정적 유사성을 선언하려는 대상 리소스 그룹입니다.
리소스 그룹이 최대 하나의 리소스 그룹에 대해 페일오버를 위임하는 강한 긍정적 유사성을 선언할 수 있습니다. 하지만 지정된 리소스 그룹이 여러 다른 리소스 그룹에 의해 선언되었으며 페일오버를 위임하는 강한 긍정적 유사성의 대상일 수 있습니다.
페일오버를 위임하는 강한 긍정적 유사성은 완전히 대칭되지 않습니다. 소스를 오프라인 상태로 유지하면서 대상을 온라인으로 전환할 수 있습니다. 하지만 대상이 오프라인 상태인 경우 소스를 온라인으로 전환할 수 없습니다.
대상이 세번째 리소스 그룹에 대해 페일오버가 위임되는 강한 긍정적 유사성을 선언하는 경우 추가로 페일오버 또는 스위치오버가 세번째 리소스 그룹으로 위임됩니다. 세번째 리소스 그룹이 페일오버 또는 스위치오버를 수행하면 다른 리소스 그룹이 강제로 페일오버 또는 스위치오버됩니다.
예 60 리소스 그룹 페일오버 또는 스위치오버 위임이 예에서는 리소스 그룹 rg2에 대해 페일오버가 위임되는 강한 긍정적 유사성을 선언하도록 리소스 그룹 rg1을 수정하는 명령을 보여줍니다. 이 유사성 관계로 인해 rg1은 페일오버 또는 스위치오버를 rg2로 위임합니다. 이 예에서는 두 리소스 그룹이 존재한다고 가정합니다.
# clresourcegroup set -p RG_affinities=+++rg2 rg1
여러 유사성을 결합하여 보다 복잡한 동작을 만들 수 있습니다. 예를 들어, 관련 복제 서버가 응용 프로그램 상태를 기록할 수 있습니다. 이 예에 대한 노드 선택 요구 사항은 다음과 같습니다.
복제 서버는 응용 프로그램의 다른 노드에서 실행되어야 합니다.
응용 프로그램이 현재 노드에서 페일오버되는 경우 복제 서버가 실행 중인 노드로 응용 프로그램이 페일오버되어야 합니다.
복제 서버가 실행 중인 노드로 응용 프로그램이 페일오버되는 경우 복제 서버는 다른 노드로 페일오버되어야 합니다. 사용 가능한 다른 노드가 없을 경우 복제 서버를 오프라인으로 전환해야 합니다.
다음과 같이 응용 프로그램 및 복제 서버에 대한 리소스 그룹을 구성하여 해당 요구 사항을 충족시킬 수 있습니다.
응용 프로그램을 포함하는 리소스 그룹이 복제 서버를 포함하는 리소스 그룹에 대해 약한 긍정적 유사성을 선언합니다.
복제 서버를 포함하는 리소스 그룹이 응용 프로그램을 포함하는 리소스 그룹에 대해 강한 부정적 유사성을 선언합니다.
이 예에서는 다음 리소스 그룹 간의 유사성을 결합하는 명령을 보여줍니다.
리소스 그룹 app-rg는 복제 서버에 의해 상태가 추적되는 응용 프로그램을 나타냅니다.
리소스 그룹 rep-rg는 복제 서버를 나타냅니다.
이 예에서는 다음과 같이 리소스 그룹이 유사성을 선언합니다.
리소스 그룹 app-rg는 리소스 그룹 rep-rg에 대해 약한 긍정적 유사성을 선언합니다.
리소스 그룹 rep-rg는 리소스 그룹 app-rg에 대해 강한 부정적 유사성을 선언합니다.
이 예에서는 두 리소스 그룹이 존재한다고 가정합니다.
# clresourcegroup set -p RG_affinities=+rep-rg app-rg # clresourcegroup set -p RG_affinities=--app-rg rep-rg
클러스터 관리자는 영역 클러스터의 특정 리소스 그룹과 영역 클러스터의 다른 리소스 그룹 또는 전역 클러스터의 리소스 그룹 간에 유사성을 지정할 수 있습니다.
다음 명령을 사용하여 영역 클러스터의 리소스 그룹 간에 유사성을 지정할 수 있습니다.
# clresourcegroup set -p RG_affinities=affinity-typetarget-zc:target-rg source-zc:source-rg
영역 클러스터의 리소스 그룹 유사성 유형은 다음 중 하나일 수 있습니다.
+(약한 긍정적)
++(강한 긍정적)
+++(페일오버가 위임되는 강한 긍정적)
-(약한 부정적)
--(강한 부정적)
이 예에서는 영역 클러스터의 리소스 그룹 간에 강한 긍정적 유사성을 지정하는 명령을 보여줍니다.
영역 클러스터 ZC1의 리소스 그룹 RG1은 영역 클러스터 ZC2의 리소스 그룹 RG2에 대해 강한 긍정적 유사성을 선언합니다.
영역 클러스터 ZC1의 리소스 그룹 RG1과 다른 영역 클러스터 ZC2의 리소스 그룹 RG2 간의 강한 긍정적 유사성을 지정해야 할 경우 다음 명령을 사용합니다.
# clresourcegroup set -p RG_affinities=++ZC2:RG2 ZC1:RG1예 63 영역 클러스터의 리소스 그룹과 전역 클러스터의 리소스 그룹 간에 강한 부정적 유사성 지정
이 예에서는 영역 클러스터의 리소스 그룹 간에 강한 부정적 유사성을 지정하는 명령을 보여줍니다. 영역 클러스터 ZC1의 리소스 그룹 RG1과 전역 클러스터의 리소스 그룹 RG2 간에 강한 부정적 유사성을 지정해야 할 경우 다음 명령을 사용합니다.
# clresourcegroup set -p RG_affinities=--global:RG2 ZC1:RG1