6.11. 유사성 그룹
6.11.1. 유사성 그룹
선호도 그룹을 생성하여 선택한 가상 머신이 서로 및 지정된 호스트와 관련하여 실행되는 위치를 결정할 수 있습니다. 이 기능은 라이센싱 요구 사항, 고가용성 워크로드, 재해 복구 등의 워크로드 시나리오를 관리하는 데 도움이 됩니다.
VM 유사성 규칙
Affinity Group 을 생성할 때 그룹에 속한 가상 머신을 선택합니다. 이러한 가상 머신을 서로 비교하여 실행할 수 있는 위치를 정의하려면 VM 선호도 규칙을 활성화합니다. Positive affinity 규칙은 단일 호스트에서 가상 머신을 함께 실행하려고 합니다. 부정 선호도 규칙은 별도의 호스트에서 가상 머신을 실행하려고 합니다. 규칙을 이행할 수 없는 경우 결과는 weight 또는 filter 모듈이 활성화되었는지에 따라 달라집니다.
호스트 유사성 규칙
선택적으로 Affinity Group 에 호스트를 추가할 수 있습니다. 그룹의 가상 시스템을 그룹의 호스트와 관련하여 실행할 수 있는 위치를 정의하려면 호스트 선호도 규칙을 활성화합니다. Positive affinity 규칙은 선호도 그룹의 호스트에서 가상 머신을 실행하려고 합니다. 부정 선호도 규칙은 선호도 그룹에 없는 호스트에서 가상 머신을 실행하려고 합니다. 규칙을 이행할 수 없는 경우 결과는 weight 또는 filter 모듈이 활성화되었는지에 따라 달라집니다.
기본 가중치 모듈
기본적으로 두 규칙은 클러스터의 스케줄링 정책에 weight 모듈을 적용합니다. weight 모듈을 사용하면 스케줄러에서 규칙을 이행하려고 하지만 규칙을 이행할 수 없는 경우 선호도 그룹의 가상 시스템을 실행할 수 있습니다.
예를 들어, 양의 VM 유사성 규칙과 weight 모듈이 활성화된 경우 스케줄러 는 단일 호스트에서 모든 선호도 그룹의 가상 시스템을 실행하려고 합니다. 그러나 단일 호스트에 이 작업에 대한 리소스가 충분하지 않은 경우 스케줄러는 여러 호스트에서 가상 시스템을 실행합니다.
이 모듈이 작동하려면 스케줄링 정책의 weight 모듈 섹션에 VmAffinityGroups 및
키워드가 포함되어야 합니다.
VmToHostsAffinityGroups
강제 옵션 및 필터 모듈
두 규칙에는 클러스터의 스케줄링 정책에 filter 모듈을 적용하는 Enforcing 옵션이 있습니다. filter 모듈은 weight 모듈을 재정의합니다. filter 모듈을 활성화하면 스케줄러 에서 규칙을 이행해야 합니다. 규칙을 이행할 수 없는 경우 filter 모듈은 선호도 그룹의 가상 시스템이 실행되지 않도록 합니다.
예를 들어, Positive Host Affinity Rule 및 Enforcing enabled(필터 모듈 활성화)를 사용하면 스케줄러에서 선호도 그룹의 일부인 선호도 그룹의 가상 머신을 실행해야 합니다. 그러나 이러한 호스트가 다운된 경우 스케줄러는 가상 시스템을 전혀 실행하지 않습니다.
이 모듈이 작동하려면 스케줄링 정책의 filter 모듈 섹션에 VmAffinityGroups 및
키워드가 포함되어야 합니다.
VmToHostsAffinityGroups
예
이러한 규칙 및 옵션을 서로 함께 사용할 수 있는 방법을 보려면 Affinity group 예제 를 참조하십시오.
-
선호도 레이블이 작동하려면 스케줄링 정책의 filter 모듈 섹션에
Label
(레이블)이 포함되어야 합니다. - 선호도 그룹 및 선호도 레이블이 서로 충돌하면 영향을 받는 가상 시스템이 실행되지 않습니다. 충돌을 방지, 문제 해결 및 해결하기 위해 Affinity 그룹 문제 해결을 참조하십시오.
각 규칙은 클러스터의 스케줄링 정책의 weight 및 filter 모듈의 영향을 받습니다.
-
VM 유사성 규칙 규칙이 작동하려면 스케줄링 정책에 Weight 모듈 및 Filter 모듈 섹션에
VmAffinityGroups
키워드가 있어야 합니다. -
Host Affinity 규칙이 작동하려면 스케줄링 정책에 Weight 모듈 및 Filter 모듈 섹션에
VmToHostsAffinityGroups
키워드가 있어야 합니다.
자세한 내용은 관리 가이드의 정책 예약을 참조하십시오.
- 선호도 그룹은 클러스터의 가상 시스템에 적용됩니다. 가상 시스템을 한 클러스터에서 다른 클러스터로 이동하면 원래 클러스터의 선호도 그룹에서 가상 시스템을 제거합니다.
- 선호도 그룹 규칙을 적용하기 위해 가상 시스템을 재시작할 필요가 없습니다.
6.11.2. 유사성 그룹 생성
관리 포털에서 새 선호도 그룹을 생성할 수 있습니다.
유사성 그룹 생성
-
)를 클릭하고 가상 시스템을 선택합니다. - 가상 시스템의 이름을 클릭하여 세부 정보 보기로 이동합니다.
- Affinity Groups(인터페이스 그룹 ) 탭을 클릭합니다.
- New (새로 만들기)를 클릭합니다.
- 선호도 그룹에 Name (이름) 및 Description (설명)을 입력합니다.
- VM Affinity Rule(VM 선호도 규칙) 드롭다운에서 Positive (확인)를 선택하여 양의 선호도를 적용하거나 부정적 선호도를 적용하여 부정적 선호도를 적용합니다. Disable(비활성화 )을 선택하여 선호도 규칙을 비활성화합니다.
- 강제 확인란을 선택하여 하드 적용을 적용하거나 소프트 적용을 적용하려면 이 확인란이 선택 취소되었는지 확인합니다.
- 드롭다운 목록을 사용하여 선호도 그룹에 추가할 가상 시스템을 선택합니다. + 및 - 버튼을 사용하여 가상 시스템을 추가 또는 제거합니다.
- 클릭합니다.
6.11.3. 유사성 그룹 편집
유사성 그룹 편집
-
)를 클릭하고 가상 시스템을 선택합니다. - 가상 시스템의 이름을 클릭하여 세부 정보 보기로 이동합니다.
- Affinity Groups(인터페이스 그룹 ) 탭을 클릭합니다.
- )를 클릭합니다.
- VM Affinity Rule( VM 유사성 규칙) 드롭다운 및 Enforcing (강제) 확인란을 선호하는 값으로 변경하고 + 및 - 버튼을 사용하여 가상 시스템을 선호도 그룹에 추가하거나 제거합니다.
- 클릭합니다.
6.11.4. 유사성 그룹 제거
유사성 그룹 제거
-
)를 클릭하고 가상 시스템을 선택합니다. - 가상 시스템의 이름을 클릭하여 세부 정보 보기로 이동합니다.
- Affinity Groups(인터페이스 그룹 ) 탭을 클릭합니다.
- 클릭합니다.
- 클릭합니다.
해당 선호도 그룹의 멤버인 가상 머신에 적용된 선호도 정책은 더 이상 적용되지 않습니다.
6.11.5. 유사성 그룹 예
다음 예제에서는 이 장에 설명된 선호도 그룹 기능의 다양한 기능을 사용하여 다양한 시나리오에 선호도 규칙을 적용하는 방법을 보여줍니다.
예 6.1. 고가용성
Dalia는 신생 기업을 위한 DevOps 엔지니어입니다. 고가용성을 위해 특정 시스템의 두 가상 시스템은 클러스터의 모든 위치에서 별도의 호스트에서 실행해야 합니다.
Dalia는 "고가용성"이라는 선호도 그룹을 생성하고 다음을 수행합니다.
- 두 개의 가상 시스템 VM01 및 VM02 를 선호도 그룹에 추가합니다.
- VM Affinity 를 Negative 로 설정하여 가상 시스템이 별도의 호스트에서 실행되도록 합니다.
- 중단 중에 하나의 호스트만 사용할 수 있는 경우 두 가상 시스템을 모두 계속 실행할 수 있도록 정리된 상태로 유지됩니다 ( 비활성화됨).
- 가상 시스템이 클러스터의 모든 호스트에서 실행되도록 Hosts(호스트 ) 목록을 비워 둡니다.
예 6.2. 성능
Sohni는 매일 두 개의 가상 시스템을 사용하여 소프트웨어를 여러 번 빌드 및 테스트하는 소프트웨어 개발자입니다. 이 두 가상 시스템 사이에는 네트워크 트래픽이 많이 있습니다. 동일한 호스트에서 시스템을 실행하면 빌드 및 테스트 프로세스에서 네트워크 트래픽과 네트워크 대기 시간이 모두 저하됩니다. 높은 특정 호스트(빠른 CPU, SSD 및 더 많은 메모리)를 사용하면 이 프로세스가 더욱 빨라집니다.
Sohni는 "빌드 및 테스트"라는 선호도 그룹을 생성하고 다음을 수행합니다.
- 빌드 및 테스트 가상 시스템인 VM01 및 VM02 를 선호도 그룹에 추가합니다.
- 높은 특정 호스트인 host03,host04 및 host05 를 선호도 그룹에 추가합니다.
- 가상 시스템이 동일한 호스트에서 실행하려고 시도하도록 VM 선호도 를 Positive 로 설정하여 네트워크 트래픽 및 대기 시간이 줄어듭니다.
- 호스트 선호도 를 Positive 로 설정하여 가상 시스템이 높은 사양 호스트에서 실행되도록 프로세스를 가속화합니다.
- 고급 대상 호스트를 사용할 수 없는 경우 가상 시스템을 실행할 수 있도록 두 규칙에 대해 모두 지우기(비활성화)를 유지합니다.
예 6.3. 라이센스
소프트웨어 자산 관리자인 Bandile은 조직이 3D 이미지 소프트웨어 벤더의 제한적인 라이센싱 요구 사항을 준수하는 데 도움을 줍니다. 이러한 용어를 사용하려면 동일한 호스트에서 실행하려면 라이센싱 서버, VM-LS 및 이미지 워크스테이션인 VM-WS# 이 필요한 가상 시스템이 필요합니다. 또한 물리적 CPU 기반 라이센스 모델을 사용하려면 워크스테이션이 두 개의 GPU로 준비된 호스트인 host-gpu-primary 또는 host-gpu -backup 중 하나에서 실행해야 합니다.
이러한 요구 사항을 충족하기 위해 Bandile은 "3D 지각 이미지"라는 선호도 그룹을 생성하고 다음을 수행합니다.
- 이전에 언급한 가상 시스템 및 호스트를 선호도 그룹에 추가합니다.
- VM 선호도를 Positive 에 설정하고 Enforcing (강제)을 선택하여 라이센스 서버 및 워크스테이션을 여러 호스트가 아닌 호스트 중 하나에서 함께 실행해야 합니다.
- 호스트 선호도 를 Positive 로 설정하고 가상 시스템이 클러스터의 다른 호스트가 아닌 GPU로 제거된 호스트에서 실행되어야 합니다.
6.11.6. 선호도 그룹 문제 해결
선호도 그룹 문제 방지를 위해
- 선호도 그룹을 사용할 때 기대하는 시나리오 및 결과를 계획하고 문서화합니다.
- 다양한 조건에서 결과를 확인하고 테스트합니다.
- 변경 관리 모범 사례를 따릅니다.
- 필요한 경우에만 Enforcing (강제) 옵션을 사용합니다.
실행되고 있지 않은 가상 머신의 문제를 관찰하는 경우
-
클러스터에
VmAffinityGroups
및VmToHostsAffinityGroups
가 포함된 weight 모듈 및 filter 모듈 섹션이 있는 예약 정책이 있는지 확인합니다. 자세한 내용은 관리 가이드 의 새 스케줄링 정책의 설정 설명 및 스케줄링 정책 창 편집 을 참조하십시오. - 선호도 레이블과 선호도 그룹 간 충돌이 있는지 확인합니다.
유사성 라벨과 선호도 그룹 간의 충돌을 위해
- 선호도 레이블 및 선호도 그룹이 서로 충돌하는 경우 가상 머신 간 세트가 실행되지 않습니다.
충돌이 가능한지 확인하려면 다음을 수행하십시오.
-
클러스터 예약 정책의 filter 모듈 섹션을 검사합니다. 여기에는
Label
키워드와VmAffinityGroups
또는VmToHostsAffinityGroups
키워드가 모두 포함되어야 합니다. 그렇지 않으면 충돌이 발생할 수 없습니다. (필드 모듈 섹션의레이블이
재정의되기 때문에 weight 모듈 섹션에VmAffinityGroups
및VmToHostsAffinityGroups
가 있는 것은 중요하지 않습니다.) - 선호도 그룹을 검사합니다. Enforcing 이 활성화된 규칙을 포함해야 합니다. 그렇지 않으면 충돌이 발생할 수 없습니다.
-
클러스터 예약 정책의 filter 모듈 섹션을 검사합니다. 여기에는
충돌이 가능한 경우 관련 가상 머신 세트를 확인합니다.
- 선호도 레이블 및 그룹을 검사합니다. 유사성 라벨 및 Enforcing 옵션이 활성화된 선호도 그룹 모두에 해당하는 가상 머신 목록을 만듭니다.
- 이 교차 세트의 각 호스트 및 가상 시스템에 대해 잠재적인 충돌이 발생하는 조건을 분석합니다.
- 실행되지 않은 실제 가상 시스템이 분석에 있는 가상 시스템과 일치하는지 여부를 확인합니다.
- 의도하지 않은 충돌을 방지하기 위해 선호도 그룹 및 선호도 레이블을 재구성합니다.
- 변경 사항이 광범위한 조건에서 예상 결과를 생성하는지 확인합니다.
- 선호도 그룹 및 선호도 레이블이 중복되어 있는 경우 한 위치에서 선호도 그룹으로 더 쉽게 볼 수 있습니다. Positive selected 및 Enforcing enabled를 사용하여 호스트 선호도 규칙이 있는 동등한 선호도 그룹으로 선호도 레이블을 변환하는 것이 좋습니다.