본문 바로가기
Virtualization & Cloud/Virtualization

서버 가상화(Server Virtualization) - vSphere 분산 스위치 구성, ESXi 호스트 확장성, DRS(Distributed Resources Scheduler), FT(Fault Tolerance) 개요 및 실습

by TwoJun 2024. 10. 10.
728x90
반응형

2024-10-08(TUE)

 

 

 

(1) 금일 진행

- vSphere Configuration - 분산 스위치 구성

- DRS(Distributed Resource Scheduling(Scheduler))

- FT(Fault Tolerance)

 

 

 

01. 전일 내용 - 서버 가상화 : vApp 생성

01-1. vApp의 정의와 특성

(1) 다수의 가상 머신을 집합해 놓은 컨테이너라고 볼 수 있으며 vCenter Server에서만 관리하는 인벤토리 객체다.

 

(2) 관련된 응용 Application을 패키징하거나 관리할 수 있다.

 

(3) 프로세서, 메모리 할당, IP 주소 할당, 기타 고급 설정을 사용할 수 있다.

 

(4) 가상 머신의 시작 & 종료 순서를 지정하고 vApp 단위 시작 & 종료도 가능하다.

 

 

 

 

02. 전일 내용 - 서버 가상화 : Distributed Switch Configuration

02-1. 분산 스위치 구성 

(1) 분산 스위치(Distributed Switch)는 가상 네트워크 환경에서 여러 호스트에 걸쳐 가상 머신(VM) 간의 네트워크 연결을 관리하는 기능이다.

 

(2) 다수의 ESXi 호스트를 묶어서 분산 스위치 환경을 구성할 수 있다.

 

(3) 분산 스위치 구성을 사용하면 네트워크에 대한 통일성을 부여할 수 있다.

 

 

 

 

03. 전일 내용 - 서버 가상화 : 고가용성(HA, High Availability)

03-1. vSphere HA(High Availability)

(1) vSphere HA는 VMware의 가상화 플랫폼에서 제공하는 고가용성 기능으로, VM의 다운타임을 최소화하고 자동으로 복구할 수 있는 기능을 의미한다.

* VM의 Down-time : 가상 머신이 정상적으로 작동하지 않는 상태

 

(2) VM의 가용성을 얼마나 유지해 줄 것인지에 대한 부분을 담당하는 기능이다.

 

 

 

03-2. Failure Scenario

(1) ESXi Host Failure

(2) VM Failure : VMware Tools 설치 필요

(3) Application Failure : VMware Tools 설치 필요

 

 

 

03-3. 구성

(1) 클러스터 구성

- 클러스터에  ESXi 호스트를 추가, 클러스터 내부에 HA 환경을 구성했다.

 

 

(2) 이렇게 되면 Master나 Slave 호스트를 선정해서 관리하게 된다.

- Master 호스트에게 Heart-Beat 신호를 주고 받게 함으로써 호스트 Running 상태인지 체크하게 된다.

 

 

(3) 네트워크 설정

- Management Network에 HA 기능을 Enable 했다.

 

- Shared Storage도 구성하였는데 Shared Storage에 VM을 위치시켰다.

 

- VM 패키징 정보가 Shared Storage 내부에 있기 때문에 동일 클러스터에 있는 VM이라면 해당 VM이 다운되더라도 VM이 다른 곳에서 Running 상태로 변경된다.

 

- 위와 같은 특성 때문에 VM이 Internal Disk에 존재한다면 VM은 HA 구현이 불가능해진다.

 

 

 

 

 

 

1. 분산 스위치 구성 LAB (ESXi-02, 03 기준으로 실습 진행)

(1) 분산 스위치 환경을 위한  ESXi-02, 03 기준으로 NIC 카드 인터페이스 2개씩 추가 후 작업

 

(2) 현재 HA 기능의 경우 VM Network에서 통신하기 때문에 별도로 vMotion VMKernel 포트를 필요로 하지 않는다.

 

(3) 따라서 현재 클러스터 구성을 초기화한 후 새롭게 클러스터를 구성할 때 생성한 분산 스위치 환경에서 작업하도록 구성한다.

 

(4) 이후 DCUI에서 NIC 인터페이스를 활성화한다.

 

(5) 작업 후 관련 내용을 해당 파트에 정리한다.

 

 

 

 

 

 

2. 호스트 확장성(Host Scalability)

2-1. DRS 클러스터 사전 요구사항

(1) DRS는 VM이 VMware vSphere vMotion 마이그레이션 요구 사항을 충족할 때 가장 원활하게 동작한다.

 

(2) 로드 밸런싱 과정에서 DRS를 사용하려면 클러스터의 호스트가 vMotion 마이그레이션 네트워크의 일부여야 한다.

 

(3) 공유 스토리지를 사용하려면 클러스터의 모든 호스트를 구성한다.

- 모든 호스트에서 볼륨에 액세스 가능해야 함.

- 가상 머신의 모든 가상 디스크를 저장할 수 있을만큼 볼륨이 충분해야 한다.

 

 

 

 

2-2. 설정 옵션 : DRs cluster 설정 : Automation Level(자동화 수준)

(1) Manual

- 가상 머신의 초기 배치 및 가상 머신을 실행하는 동안의 동적 밸런싱에 대한 자동화 수준 구성을 구성하는 옵션이다.

 

(2) Migration Threshold

- 마이그레이션 임계값은 마이그레이션할 가상 머신을 선택하도록 도와준다.

 

 

 

 

2-3. 기타 Cluster 설정 :DRS에 대한 EVC

(1) EVC는 호환되지 않는 프로세서로 인해 vSphere vMotion Migration이 실패하는 것을 방지해 주는 클러스터 기능이다.

 

 

 

 

2-4. EVC 클러스터의 프로세서 기준

(1) EVC 클러스터 수준에서 작동하는 기능이며 CPU 기준을 사용해서 클러스터에 포함된 모든 프로세서에 대해 EVCf를 사용할 수 있도록 구성할 수 있다.

 

(2) 기준은 클러스터의 모든 호스트에서 지원하는 CPU 기능 세트이다.

 

 

 

 

2-5. EVC 클러스터 요구 사항

- 클러스터의 모든 호스트는 다음과 같은 요구 사항을 충족해야 한다.

(1) 단일 공급 업체의 프로세서 사용(Intel 또는 AMD)

 

(2) Core 2 마이크로 아키텍처 이상의 인텔 CPU 사용

 

(3) AMD 1세대 Opteron CPU 이상 사용

 

(4) 하드웨어 가상화 사용(Intel-VT 또는 AMD-V)

 

(5) 실행 방지 기술(AMD NX(No Execute) 또는 Intel XD(Execute Disable)) 사용

 

(6) vSphere vMotion 마이그레이션 구성

 

(7) VM의 애플리케이션은 CPUID와 호환되어야 한다.

 

 

 

 

2-6. 기타 클러스터 설정 : DRS 스왑 파일 위치

(1) 가상 머신 또는 지정된 데이터 스토어에 가상 머신 스왑 파일을 저장할 수 있다.

 

(2) 가상 머신과 동일한 디렉터리에 스왑 파일을 저장하는 것이 좋다.

 

 

 

 

2-7. .DRS 클러스터 설정 : 가상 머신 선호도에 대한 DRS 규칙

(1) DRS 선호도 규칙은 선택한 가상 머신이 동일한 호스트(선호도) 또는 다른 호스트(비선호도)에 배치되도록 지정한다.

 

(2) 선호도 규칙

- 서로 자주 통신하는 가상 머신의 성능 향상을 위해 다중 가상 머신 시스템에서 사숑된다.

 

(3) 비선호도 규칙

- 로드 밸런싱 또는 고가용성이 필요한 다중 가상 머신 시스템에서 사용된다.

 

(4) 옵션 : Keep Virtual Together

- 가상 머신을 함께 유지

 

(5) 옵션 : Separate Virtual Machines

- 가상 머신 분리

 

(6) 옵션 : Virtual Machines to Hosts

- 가상 머신 호스트

 

 

 

 

2-8. 클러스터 작업 관련된 호스트 설정 : 유지 보수 및 대기 모드

(1) 클러스터의 호스트에 서비스를 제공하거나(예시 : 메모리 설치) 클러스터에서 호스트를 제거하려면 유지 보수 모드로 전환한 뒤 작업이 필요하다.

- 유지 보수 모드(Maintenance Mode) : VM이나 호스트 유지 보수 작업을 위해 호스트를 안전한 상태로 유지하는 모드

- 대기 모드(Standby Mode) : 특정 호스트를 일정 기간 동안 사용하지 않도록 전력 소비를 줄이는 기능

 

 

(2) 호스트의 가상 머신을 다른 호스트로 마이그레이션하거나 종료해야 한다.

 

(3) 유지 보수 모드로 전환되는 호스트로 가상 머신을 마이그레이션하거나 가상 머신의 전원을 켤 수 없다.

 

(4) 유지 보수 모드에 있는 동안, 호스트에서 가상 머신을 배포하거나 전원을 켤 수 없다.

 

(5) 호스트가 대기 모드로 전환되면 호스트의 전원이 종료된다. 해당 모드는 VMware vSphere Distributed Power Management에서 전원 사용을 최적화하는데 사용된다.

 

 

 

 

2-9. DRS 클러스터에서 호스트 제거

(1) DRS 클러스터에서 호스트 제거 전 다음과 같은 사항을 고려해 본다.

- 리소스 풀 계층은 클러스터와 함께 유지된다. 

 

- 호스트가 유지 보수 모드에 있어야 하므로 해당 호스트에서 실행 중인 모든 vm의 전원이 종료된다.

 

- 클러스터에 사용할 수 있는 리소스가 감소한다.

 

 

 

 

2-10. 가상 머신의 성능 향상

 

 

 

 

2-11. vSphere HA와 DRS를 함께 사용

(1) VMWare vSphere HA에서 가상 머신을 Fail-Over(페일 오버)하지 못할 수 있는 경우가 존재한다.

- vSphere HA 승인 제어를 사용하지 않는 경우

 

- 필수 가상 머신 호스트 선호도 규칙이 vSphere HA 페일 오버를 방지하는 경우

 

- 집계된 리소스가 충분하지만 호스트에서 단편화된 경우

 

- 이러한 케이스들에 대해서 vSphere HA는 DRS를 통해 VM을 마이그레이션하여 리소스 조각 모음을 실행하는 방식으로 클러스터를 조정하려고 한다.

 

 

 

 

2-12. vSphere DRS LAB 준비

(1) 공유 폴더에서 cpubusy 파일 압축 해제

 

(2) 압축 해제 파일을 ESXi-02, 03 호스트 내부 VM, DB WEB, APPServer VM에 다운로드

 

(3) (1)-(2) 파트는 임의로 VM에 부하를 주기 위한 프로그램을 준비하는 것이다.

 

 

 

 

 

 

 

 

3. 가상 머신 부하 테스트 LAB

3-1. AppServer, DBServer, WebServer 기존 클러스터에서 해제

 

 

 

 

3-2. 부하를 준 후 ESXi-12 호스트의 자원 점유율 비교

(2) 각 VM에 부하를 주기 이전의 호스트 자원 점유율 

 

 

(3) 각 VM에 부하를 준 후의 호스트 자원 점유율

 

 

 

 

 

 

4. ESXi-12, 13 기준으로 vMotion VMKernel 포트 생성 & DRS LAB

(1) 추후 분산 스위치도 추가할 예정이라 ESXi 클라이언트에서 esxi-12, 13에 대해 NIC 포트를 5개로 증설했다.

 

 

(2) 새로운 분산 스위치를 구성한다.

 

 

(3) 분산 스위치에 새로운 호스트를 추가한다.

 

 

(4) 그림처럼 두 호스트를 선택하고 다음으로 넘어간다.

 

 

(5) 분산 스위치에서 사용할 두 가지 NIC 포트를 지정한다.

 

 

 

 

4-2. 물리적 NIC를 추가한 후 ESXi-12, 13 호스트 기준 가상 스위치 재설정 완료(vMotion VMKernel 간 마이그레이션 여부까지 확인)

(2) ESXi-12 호스트 기준 가상 스위치 재구성이 완료되었다. (기존 실습 토폴로지 참고) 

 

 

 

(3) ESXi-13 호스트에 대해서도 가상 스위치 구성을 완료했다.

 

(4) 직접 포스팅 이미지로 넣지 않았지만, 각 호스트 별로 가상 스위치 환경 구성 & 포트 할당 후 호스트 간 VM 마이그레이션까지 확인되었다.

 

 

 

 

4-3. 실습을 위한 새로운 클러스터 추가 & 클러스터 내부에 ESXi-12, 13 호스트 추가

(1) 새로운 클러스터를 위와 같이 추가한다. DRS 기능을 사용하기 위해 vSphere DRS 옵션을 활성화한다.

 

 

(2) 클러스터에 호스트를 추가한다. 

 

 

 

 

4-4. 클러스터 구성 후 자원 관리 테스트

(1) vSphere DRS 설정 옵션

 

(2) 현재 클러스터를 우클릭해서 호스트를 추가하면 제대로 호스트가 추가되지 않는다 따라서 구성 > 빠른 시작 메뉴에서 

호스트를 추가한 후 클러스터를 구성하여 리소스 사용량에 따른 VM 마이그레이션 여부를 수동 모드 기준으로 확인한다.

 

(3) 확인 시 특정 호스트의 사양을 다운시키고 모든 가상 머신을 활성화시키면 DRS 점유율이 상승하게 되며 다른 호스트에서 VM을 동작시킬 건지에 대한 경고문이 나타나게 된다. 경고 메시지는 DRS 옵션을 수동으로 설정했기 때문에 관리자에게 한 번 확인을 받는 과정인데 만약 DRS 옵션을 자동화했다면 관리자에게 마이그레이션 여부를 묻는 메시지가 나타나지 않고 다른 호스트에서 가상 머신이 실행된다.

 

 

 

 

 

 

5. vSphere FT(Fault Tolerance) 개요 & LAB

5-1. vSphere FT 정보 

(1) vSphere FT(Fault Tolerance)란 가상 머신의 가용성을 높이기 위한 기술이다. FT를 사용하면 하나의 가상 머신의 실시간 복제본을 생성하여, 주 가상 머신에 장애가 발생할 경우 자동으로 복제본으로 전환하여 서비스가 운영될 수 있도록 하는 기술이다.

 

(2) 예상치 못한 운영 중단이 발생했을 때 서비스 손실 없이 백업 가상 머신이 즉시 작업을 수행 수 있도록 설계되었다.

 

(3) vSphere HA보다 더 높은 수준의 비즈니스 연속성을 제공한다.

 

(4) 애플리케이션에 대해 제로 다운타임과 제로 데이터 손실을 제공한다.

- 제로 다운 타임(Zero Down Time): 시스템이나 서비스가 중단 없이 계속 운영될 수 있는 상태를 의미

- 제로 데이터 손실(Zero Data Loss) : 데이터 손실이 전혀 발생하지 않는 상태를 말하며 데이터베이스나 스토리지 시스템에서 모든 데이터가 항상 안전하게 유지되고, 장애가 발생하더라도 데이터를 복구할 수 있는 방법이 마련되어 있는 것을 의미한다.

 

(5) 항상 가용성이 유지되어야 하는 애플리케이션용으로 설계되었다,

 

(6) 백업 가상 머신을 보조 가상 머신이라고도 한다.

 

 

 

 

5-2. vSphere FT 특성

 

 

 

 

5-3. 작동 중인 vSphere FT

(1) vSphere FT는 vSphere HA 클러스터의 가상 머신에 다운 타임이 없고 데이터 손실이 없는 보호 기능을 제공한다.

 

 

 

 

5-4. vSphere FT 지침

- vSphere FT의 요구 사항 및 제한 사항을 확인한다.

 

(1) 무장애 기능 VM에 충분한 ESXi 호스트 보장

- 호스트당 무장애 기능 VM은 4대를 넘지 않아야 한다.

 

(2) 연속적인 접근을 위해 공유 스토리지에 ISO 이미지를 저장한다.

- 특히 중요한 작업을 위해 사용되는 상황

 

(3) BIOS 기반 전원 관리 바활성화

- 보조 가상 머신의 프로세서 리소스가 부족하지 않도록 도와준다.

 

 

 

 

5-5. vSphere Fault Tolerance LAB 

(1) FT 실습을 위한 새로운 클러스터를 등록한다.

 

 

(2) ESXi-12, 13 호스트를 기존 클러스터에서 해제(유지보스 모드 설정 후)시킨다.

 

 

(3) FT-TEST 클러스터에서 빠른 시작 메뉴에서 호스트 ESXI-12, 13을 추가한다.

 

 

(4) 이후 클러스터를 구성하면 되는데, 나중에 네트워킹 설정 구성 옵션을 활성화하고 넘어간다.

 

 

(5) 호스트 실제 모니터링, 승인 제어, 가상 시스템 모니터링 옵션을 활성화한다.

- 이후 별도 설정은 건드리지 않고 클러스터 구성을 완료한다.

 

 

(6) 작업 이전 유지 보수 모드를 해제하고 vMotion vmkernel이 가상 스위치 환경으로 구성되어 있는지 esxi-12, 13 호스트에 대해 확인이 필요하다. 확인했다면 스위치 vMotion VMKernel 설정 편집에서 Fault tolerance Logging 옵션을 활성화시킨다.

 

 

(6) appserver를 기준으로 우클릭해서 fault tolerance 설정에 들어간다.

- 보조 vm 디스크 및 구성 파일을 배치할 데이터스토어(  iscsi-share-01 )를 지정한다.

- 보조 vm의 호스트를 지정한다.

 

 

(7) 만약 이런 메시지가 확인된다면 해당 데이터 스토어에 VM을 기준으로 하는 스토리지 마이그레이션을 진행해 본다.

 

(8) 현재 위와 같은 메시지가 확인되어 esxi-12, 13 호스트가 아닌 esxi-02, 03 호스트를 FT-TEST 디렉터리로 옮긴 뒤 실습해 볼 계획이다.

- 위와 동일하게 FT-test 디렉터리에 esxi-02, 03 호스트를 추가 & 클러스터 재구성 & 스위치 VMKernel Fault Tolerance Logging 활성화를 진행한다.

 

 

(9) esxi-02-win10 VM을 기준으로 FT 설정을 진행한다.

 

 

(10) 보조 가상 머신을 위한 데이터 스토어를 지정한다.

 

 

(11) 보조 가상 머신의 호스트를 지정한다.

 

 

(12) 보조, 기본 가상 머신이 지정된 것을 확인할 수 있다.

 

 

(13) 기본으로 설정된 가상 머신을 부팅한다. 이 상태에서 ESXi-02 호스트의 전원을 내리면 위와 같이 호스트 내부에 존재하는 보조 VM이 실행되며 호스트에 예상치 못한 장애 발생 시 서비스 중단 없이 백업 VM이 실행되게 된다.

 

(14) 만약 VM 구동 과정에서 vSphere Fail-Over 리소스 오류가 뜨는 경우 디스크 용량 부족 문제일 수 있으니 대상 호스트의 데이터스토어를 내부 로컬 데이터스토어로 변경한다.

 

(15) 10/10 당일 NAT 서버만을 남겨두고 모든 작업 내용을 초기화시킨다. 이후에 처음부터 지금까지 배웠던 서버 가상화 내용을 전체적으로 실습한다.

 

 

 

 

 

 

 

 

※ 해당 포스팅을 기준으로 내용 추가가 필요하다고 생각되면 기존 내용에 다른 내용이 추가될 수 있습니다.

개인적으로 공부하며 정리한 내용이기에 오타나 틀린 부분이 있을 수 있으며, 이에 대해 댓글로 알려주시면 감사하겠습니다!

728x90
반응형

댓글