[vsphere] vMotion - DRS 실습2
서버 부하로 인한 Migrate 실습
1. DRS EDIT 선택

2. DRS 설정 파일 창 확인

- Automation Level
· Manual : VM Power, Migration 두 가지를 모두 자동화하지 않는다.
· Partically Automated : VM Power을 자동화하지만 Migration은 자동화하지 않는다.
· Fully Automated : VM Power과 Migration 두 가지를 모두 자동화한다.
+) 다른 서버에 넘어가도 성능에 별 효과가 없을 수 있어 Migration Threshold로 참여의 난이도를 결정한다.
- Protective DRS : 혼자서 쓰지 않으며 vRealize Operations에 의해 예측되어 미래에 대해 알려주는 것을 의미

- Addtional Options
· VM Distribution : VM 균등하게 VM의 자원이 배포될 수 있게 강제로 설정
· CPU Over-Commitment : core : vCpu 비율을 따져 물리적 core 대비 vCPU의 할당량 지정
3. 테스트용 가상머신 2개 제작

DRS를 사용하여 가상머신을 제작하니 과거 자원을 사용할 서버를 고르지 않으면 나왔던 경고문이 사라지고 사용 가능하다는 다른 문구가 출력됨

4. 가상머신 Power On
- 현재 상황

⑴ Automation Level = Manually인 경우

가상머신 실행을 하니 가동해도 되는 서버를 추천하여 출력됨(VM Power on)
VM Power on과 Migration을 사용자가 직접 수동으로 지정해 주어야 함
⑵ Automation Level = Partially Automated
- 부하 테스트를 위한 도커 실행
systemctl start docker // 도커 시작
systemctl enable docker // 도커 서비스 사용 가능
sysstemctl status docker // 도커 상태 확인

- 도커 허브에서 stress 이미지 다운로드
docker pull progrium/stress // 서버에 부하를 주기 위해 도커 허브에서 이미지 다운로드

- 다운로드한 도커 이미지 확인
docker images

- 도커 옵션 확인
docker run progrium/stress // 도커 옵션 확인

- 3개의 가상머신 모두에게 아래 명령어 작성
docker run progrium/stress --cpu -i --timeout 500s

- VM-01의 cpu 및 Memory 사용 확인 가능

- DRS Recommendation

VM-01을 ESXi-02에서 ESXi-01로 전환하라고 추천해 줌

Apply Recommendations 선택 시 추천 서버로 migrate 됨
= 자동으로 자원을 사용할 서버 선택 및 migrate 할 수 있는 서버를 추천해 줌
⑶ Automation Level = Fully
- 3개의 가상머신 모두에게 아래 명령어 작성
docker run progrium/stress --cpu -i --timeout 500s

- 결과


과도한 서버 부하로 인해 VM-01이 ESXi-03에서 ESXi-01로 mIgrate 됨
자동으로 자원을 사용할 서버 선택 및 부하가 많은 서버에서 다른 서버로 옮겨감
+) Partically는 Fully와 달리 Recommendation 항목이 추가
특정 서버-특정 가상머신 실습
+) 만약, DRS를 사용하면서 특정 가상머신들이 특정 서버들에서 동작하게 하려면?
1. VM/Host Groups에서 Add 선택

- 특정 서버 그룹 제작



+) Rack-1 : ESXi01, Rack-2 : ESXi02, Rack-3 : ESXi03
- 가상 머신 그룹 제작



+) VMs on Rack-1 : VM-01, VMs on Rack-2 : VM-02, VMs on Rack-3 : VM-03
2. Create VM/Host Rule 제작

- Enable rule : 룰 활성화 여부 결정
- Type
· Keep Virtual Machines Together : 특정 서버가 아닌 가상머신을 함께 운영(가상머신끼리 통신할 경우)
· Seperate Virtual Machines : 가상머신을 분리하여 작동
· Virtual Machines to host : 특정 가상머신이 특정 호스트에서 작동
- VM Group
· Must run on hosts in group : 가상머신이 특정 호스트에서만 작동
· Should run on hosts in group : 가상머신 특정 호스트에서 작동하도록 권장하지만 오류 발생 시 다른 곳 가능
· Must not run on hosts in group : 가상머신이 특정 호스트에서 작동 x
· Should not run on hosts in group : 가상머신 특정 호스트에서 작동하도록 권장하지 않지만 오류 발생 시 다른 곳 가능
+) ⑴에서 제작한 그룹만 출력 됨
- Rule 생성 완료 및 확인


⑴ Must run on hosts in group
- ESXi-03 장애 발생
vsish -e set /reliability/crashMe/Panic 1 //ESXi PSOD 발생
- 확인

그룹에 지정된 정책으로 인해서 해당 서버에서 작동 중인 가상 서버 사용 불가
⑵ Should run on hosts in group
- ESXi-02 장애 발생
vsish -e set /reliability/crashMe/Panic 1 //ESXi PSOD 발생
- 확인

일정한 시간이 지난 후 ESXi-2에 연결되었던 VM-02 가상머신이 ESXi-01 서버를 옮겨 정상작동함
+) 오랜 시간이 걸릴 수 있으니 기다리기(3~4분 이상)
=> DRS가 HA보다 우선 적용됨
+) VM Override
클러스터 내 특정 가상머신들에게 vMotion 설정을 원한다면 사용


특정 가상머신 Empty-01,02만 vMotion 관리 가능