VMware vSphere: Operate, Scale and Secure[V8]_(1)
VMware vSphere: Operate, Scale, Secure 과정은 vSphere ICM이 선행되어야 하는 내용으로 구성되어 있습니다.
VMware vSphere: Install, Configure, Manage[V8] 복기
1. vSphere
- 서버 가상화에 가장 기초적인 VMware 제품
- ESXI(하이퍼바이저_컨테이너 기반 가상화 기술도 있음) + vCenter Server(photon OS+postgre DB+ 각종 서비스...)
- 가상화 기술은 클라우드 서비스를 제공하기 위해 필수적임
- vCenter: 7버전부터 vCenter Server Appliance VM으로 배포
2. 가상 Network
- VM 간 통신을 위한 Network
- 가상 Switch
- VM Kernel 생성
- VSS(표준스위치): host-level
- VDS(분산스위치): DC-level(최대 2000개의 호스트 붙일 수 있음)
- 포트/ 포트그룹
- VM 연결할 포트그룹: 가상 스위치가 VM끼리 연결해줌 (내부 네트워크)
- Uplink 포트 : 외부 물리 네트워크와 연결
- VM Kernel 포트: VM Kernel 작업을 하기 위한 포트 (SAN 스위치와 연결, vMotion.. 등)
2. 스토리지
- 공유스토리지
- VM의 자원 = 호스트 자원
- 모든 호스트의 엑세스가 가능하도록 공유 스토리지에 파일을 두는 형태로 운영 (호스트 다운 대비)
- SAN: 물리적인 디스크 어레이 기반으로 논리적인 디스크(LUN)을 생성해 사용하는 스토리지 형태
- 별도의 SAN 스위치가 필요함 (성능 Good)
- ESXI 호스트 측에서는 LUN이 보임
- LUN을 이용해 DataStore 생성(VMFS)
- FC/FC.E/ISCSI
- NAS: TCP/IP 이용해 연결되는 스토리지 형태
- NAS 기반의 DataStore = NFS
- SAN과 NAS는 기존 레거시 환경을 기반으로 한 스토리지 기술
- vSAN DataStore(VMware 자체)
- vVol DataStore(VMware 자체)
- VM을 배포하면 VM의 구성요소가 DataStore에 VM 이름과 같은 파일로 저장됨
VMware vSphere: Operate, Scale and Secure[V8] 아웃라인
1. 개별 VM 기반으로서의 매니징/VM Tools를 통한 관리
: VM tools를 공유스토리지에 올려서 모든 호스트가 함께 바라보는 곳에서 관리(버전 문제)
2. vSphere Replication
: VM 단위로 리커버리 관리
3. 클러스터 기반 관리
: 각각의 개별 리소스를 클러스터 기반으로 만들어 어떻게 관리할 것인지
4. 네트워크 관리
: 분산 스위치의 다양한 기능
5. vCenter Server
: HA 구성
6. 호스트 관리
: 기존 호스트에서 호스트를 추가할 때, 호환성
7. 인증서
: 머신 간 통신에서의 네트워크 암호화(인증된 암호화 채널 구성)
8. 성능 모니터링
: vCenter Server, esxi, VMs
9. 보안
: vCenter Server, esxi, VMs 보안 / VTA 환경 구성
Module2: Virutal Machine Operations
1. VM Tools Repository

- VMware Tools 중앙 관리의 장점
- 호스트 별 동일한 버전으로 툴 이용 가능

- VMware Tools 위치 변경 방법
- 호스트의 로컬에 위치한 VMware Tools 파일을 공유 스토리지로 옮김
- 옮긴 위치를 VM이 바라볼 수 있도록 파라미터 값 변경 작업
- 호스트 Reboot (만약 호스트를 다운시키고 싶지 않다면, MOB를 이용함)

- vSphere Client를 이용한 Repository
- vSphere Client에 접속해 Edit Advanced System Settings > UserVars.ProductLockerLocation의 값을 변경

- ESXI Shell을 이용한 Repository
- /productLocker의 변수를 변경해 VMware Tools가 위치한 곳을 가리키도록 함

- MOB(Managed Object Browser)
- 브라우저를 이용해 API를 호출하는 방식
- administrator@vsphere.local 계정으로 로그인
- updateProductLockerLocation vSphere API를 호출하여 각 ESXi 호스트에서 /productLocker를 업데이트
- 해당 작업을 위해서는 Host ID가 필요한데, vCenter Client URL에서 따올 수 있음


- Power CLI를 이용
- 클러스터의 모든 호스트에서 ProductLocker 심볼릭링크를 업데이트 할 수 있음
2. VM Backups
<기본 지식>
- VM 백업 작업도 VM Kernel이 수행
- 백업과 관련된 VMware의 API들이 동작
- 백업 환경에서 스토리지 업체에 VMware가 API를 제공

- 스토리지 백업 서버의 자원을 사용함
- 호스트의 자원을 사용하지 않음

- Changed-Block Tracking
- 초기의 백업본 생성 이후에는 변경된 내용만 체킹하여 기존 백업본과 달라진 사항만 기록해 파일을 생성
- 기록된 파일을 이용해 좀 더 효율적으로 빠른 백업과 복구가 가능

- SAN Transport Mode
- 빠른 백업이 장점인 모드
- SAN 스토리지에 액세스가 가능한 백업 서버에서 애플리케이션이 실행중이어야 함
- VM이 암호화된 경우에는 SAN 모드로 백업이 불가능

- HotAdd Tansport Mode
- SAN 백업이 불가능한 경우에 고려되는 구성
- 여러가지 유형의 백업 서버를 광범위하게 사용할 수 있음
- 하나의 OS 서버에 대상이 되는 프록시 서버를 1대 1 구성해야 함

- NBDSSSL Transport Mode
- SSL 기반 암호화 작업을 거친 후 백업하는 방식
- SAN/HotAdd 모드가 불가능할 때 고려되는 방식
- LAN을 이용해 전송하는 방식이므로 VMDK 파일이 크면 전송이 오래걸리는 단점
- 로컬 스토리지 백업 가능 / 원격 장치 백업 가능
- 백업 서버를 가상머신으로 구성할 수 있음

- Local File Access
- 로컬 파일 액세스 메소드는 가상 디스크 라이브러리에 내장되어 있으므로 로컬 스토리지에서 항상 사용 가능
- 네트워크 전송 방식 X
3. vSphere Replication
: vCenter Server의 확장 기능, 네트워크 기반의 Replication
- 특징 (Network 기반 Replication이기 때문에 생기는 장점)
- 별도의 기능이 아니라, 기본적으로 vCenter Server에 포함되어 있는 기능이므로 저렴함
- 소스-타겟 간 벤더 같을 필요 없음
- Array 기반 Replication: 중요한 정보를 다룰 때 추천(RPO 보장일 때)
* RPO(Recovery Point Objective): data-loss(Network Replication에서는 장담할 수 없음)
* RTO(Recovery Time Objective): down-time
- 기능
- 기본적으로 단방향 복구
- 싱글 vCenter
- 다대일 형태 가능

- Two Site Relication
- 각 Site의 vCenter에 VR Appliance 배포해야 함(OVF배포)
- SRM Appliance 배포 필요(두 Site의 싱크를 위한 작업)

- Single Site Replication

- 소스 여러개 - 타겟 하나
- 타겟 사이트 클라우드로 구성 가능
3-1. VM Replication

- Single VM Replication
- vCenter Server Client 접속 후, VM 메뉴 > All Site Recovery > Configuer Replication 탭에서 설정 가능

- 설정값
- RPO 설정: 복구 지점 목표 설정. 설정한 시간값 만큼 이상의 데이터가 손실되지 않도록 함
- 규모가 작은 RPO의 경우, 복구 시 손실되는 데이터가 적지만 복제본을 최신 상태로 유지하려면 큰 네트워크 대역폭이 요구됨

- Recovery VM
- vSphere Client에서 가상 시스템 복구 마법사 사용
- 한번에 하나의 VM Recovery 작업 가능

- VM Recovery
- 근본적인 Recovery의 목적은 완벽한 싱크 맞추기(풀싱크)
- 데이터 손실이 있는 경우/없는 경우 모두 Power Off 상태로 작업 요함
- Recovery 작업의 목적은 풀싱크지만, 데이터 손실의 가능성 있음
Module3: vSphere Cluster Operations
1. Resource

- 자원할당(CPU, Memory, DSK, Network)
- Reservation: 최소 보장량(0)
- Share: 경합이 발생했을 때, 상대적 우선순위
- Limit: 최대 사용량(unlimitted)
- 자원 모니터링
- VM 관점: VM의 게스트 OS에 따라 달라짐 => 작업관리자(윈도우), top 명령(리눅스)
- Host 관점: Chart기능, esxtop 명령
- 자원 조정
- 물리적인 자원 조정(비용up) 이전에 수행할 것이 자원 재활용
- Auto: DRS, Storage DRS
- 수동: vMotion, Storage vMotion
- 그 외
- Reservation: 보장된 자원량 만족하지 못하면 power on에 문제 생김
- Share 값은 자원이 경합됐을 때만 의미 있음
2. Memory

- 메모리 관리 기술: 하이퍼바이저가 수행
- Swapping(swap-out/swap-in): 메모리 용량을 넘어섰을 때, 가장 오래 적재된 데이터부터 제거
- Ballonning: 메모리를 사용하지 않는 만큼의 자원 회수(효율적 자원 운영) => Ballondriver(VM Tools)
- Reservation: 디폴트 0. 특수한 경우에만 잡아놓음.
- Limit: 디폴트 0. 특수한 경우에만 잡아놓음.
* Reservation, Limit: 자원 낭비를 막기 위해서 특수한 경우에만 사용
3. Resource Pools

- Resource Pools
- 물리적 호스트 리소스 단이 아닌, 리소스 풀 레벨(논리적)로 자원을 공유
- 무조건 클러스터로 묶여있어야 함.
- 클러스터로 묶으면 루트 리소스 풀이 하나 생성됨.
- 리소스 풀을 다시 쪼갤 수 있음.
- 그림: 4개 호스트를 하나의 리소스 풀로 묶어 2개의 리소스풀(RP-Finance, RP-HR)로 쪼갠 상황

- Resource Pools을 사용하는 이유
- 전체 레벨로 리소스 관리 가능
- 자원을 분할하여 조직별로 사용 가능
- 물리적 구성과 상관 없이 자원의 추상화로 상위레벨에서의 리소스 관리 가능
- 리소스 풀만 관리하는 계정을 만들어 관리 가능(보통 특정 작업만 수행하게끔 계정 만들어서 관리함)
- 밑 단에서 호스트 추가, 삭제에 영향 받지 않고 자원 관리 가능

- Expandable
- VM 단위에서는 설정할 수 없는 옵션
- 더이상 사용할 메모리가 없을 때, 상위 레벨에서 빌려와 사용. 상위 레벨의 서비스에 영향 줄 수 있으므로 주의해야 하는 작업
4. Share

- Share: High, Normal, Low 세 가지 미리 정의된 공유값을 이용
- High Share: 리소스 할당 우선순위가 높다는 것을 의미. 중요한 작업을 하는 Application에게 설정
- Normal Share: VM Share 기본 설정값. 특별한 우선순위가 필요없는 작업에 설정
- Low Share: 리소스 할당 우선순위가 낮은 작업에 설정. 중요도가 낮은 워크로드나 백그라운드 작업에 설정함

- Diluted Share(쉐어값 희석)
- 의도한 쉐어값으로 설정이 되지 않은 경우
- 높은 쉐어값을 주고자 설정해놓았지만, 리소스 풀 밑의 VM들이 쉐어값 퍼센테이지를 나눠가져 의도한 쉐어값보다 낮은 값을 VM이 갖게 되는 경우를 말함.
- 중요한 Application이 동작 중인 경우 주의가 필요

- Scalable Share
- 쉐어값 희석을 방지하여 자동으로 쉐어값 균형 맞춰주는 기능
- 리소스 풀 관리를 위해서는 DRS 기능 활성화 필수 => DRS의 Scalable Shares 기능 활성화
4. vCLS
: 클러스터 별(로컬)로 자체 관리


- vCLS
- vSphere의 원활한 클러스터 기반 서비스를 위해 도입된 기능(버전7 업데이트1부터 서비스 시작)
- vCLS VM을 클러스터 별로 배포함(vCenter Server가 자체적으로 배포)
- 호스트 수에 따라 vCLS VM의 개수가 달라짐(최소 1개 최대 3개)

- vCLS VM
- 별도의 NIC/IP가 할당되지 않음
- 가상 CPU 1개, 메모리 128기가, 디스크 씬프로비저닝 2기가로 구성
- Photon OS 최소 설치 구성으로 진행

- Workflow
- Rolling: one-by-one
- 최소한의 다운타임이 발생할 수 있도록 하나 깔고 하나 지우고 하나 깔고 하나 지우고(반복) -> 최종 스위치 작업 수행

- vCLS VM 주의사항
- 일반 VM 처럼 운영하면 안되기 때문에 주의사항들이 정해져있음
- Power off, 디스크 삭제 등

- Retreat Mode
- 수동 관리가 필요할 때 설정
- Retreat Mode 실행 시, 옛날 버전 환경으로 바뀌게 되므로 수동 작업 가능
- DRS 작동하지 않음
- HA 작동은 하나, 최적화된 작업은 불가능(DRS가 워크로드 밸런싱을 해줘야하는데, 작동하지 않기 때문)

- Retreat Mode 실행
- vCLS VM이 삭제됨
- 수동 작업 마친 후, 다시 원복 작업 진행하면 vCLS VM이 다시 생성됨
To be Continue...