[노트] 데이터센터 가상화(2)

강의 개요

  • 강의명: Virtualizing your datacenter with Windows Server 2012 R2 & System Center 2012 R2
  • 강사: 꼬알라
  • 장소: LearningWay Korea
  • 일시: 2014년 9월 19일

강의 후기

지난 3월 18일에 들었던 데이터센터 가상화를 다시 들었다. 이제서야 지금 내가 무슨 작업(실습)을 하고 있는지 감이 온다. 완벽하게 들으려면 강의당 3번은 들어봐야 하는 것 같다. 옛날 포스트는 여기서 확인 가능.

VM 역할 구분

  • DC01: iscsi target 설치되어 있음
  • FS01: Storage
  • HV 01, 02: Hyper-V
  • SCVMM

(고립된 네트워크로 구성되어 있음)

가상화란?

오늘 배울 가상화는 Server Virtualization.

1PC로 n개의 PC 구현

  • 전체 가상화(Full Virtualization) – Part 1
    • Hyper-V, VMWare ESX
    • VM도 실제 OS와 같은 레이어에서 동작
  • 호스트 가상화(Host Virtualization)

[하이퍼바이저의 존재 확인하기]

▼ 맨밑에 Hypervisorlaunchtype 확인

clip_image001

▼ msinfo32에서 시스템 요약의 맨 밑에 하이퍼바이저가 검색되었다는 메시지가 뜬다.

clip_image002

▼ C:\Windows\System32 폴더에 HVAX64, HVIX64 파일 확인

clip_image003

▼ DC01 VM에서 장치 관리자를 열어보면 Microsoft Hyper-V network Adapter가 설치된 것을 확인 가능.

clip_image004

[Hyper-V 설정할 때 무조건 해야 할 것?]

▼ 고성능으로 바꾸세요!

clip_image005

VMWare vs Hyper-V

  • VMWare 대비 라이선스 부분이 가장 매력적.(Datacenter하나만 사면…^^)
  • 격렬한 경쟁에 사용자들은 행복

호텔 체크인하듯 OS들이 CPU자원에 액세스하도록 Intel-VT or AMD-V 기술 개발됨.

CPU, NIC, Disk가 1OS 대응하도록 설계됨. -> 점점 IO-Virtualization 이 지원되고 있음.

[NUMA]

CPU코어가 일을 처리할 때 메모리가 필요.

  • Multi Core CPU와 RAM 사이에 병목이 생김
  • CPU와 RAM을 그루핑해주는 기술
  • CPU코어가 4개 이상일 때 필요한 기술.

▼ 총 시스템 리소스 백분율?

현재 이 호스트의 CPU 중 25%를 쓰고 있다는 의미.

가상 컴퓨터 제한: 50%로 설정하면 코어 1개만 쓸 수 있음

clip_image006

CPU개수는 VM에서 쓰는 코어 개수와 일치하는 것이 일반적.

▼ 윈도우 서버는 최대한 같은 NUMA 노드를 VM에 바로 할당해 효율성을 꾀함

clip_image007

▼ 하드웨어 정보에 바뀌면 NUMA 정보를 업데이트해야 할 필요 있음.(위의 NUMA 정보와 Core수가 동일한 것을 확인가능)

clip_image008

▼가중치: 다른 VM과 경쟁해 누가 메모리를 받아갈지.

clip_image009

※ 동적 메모리를 선택하면 가상의 NUMA 노드를 만들지 못해 성능이 떨어질 수 있다는 경고가 나타남.

VDI 환경에서는 동적메모리를 쓰는 경우가 많은데(얼마 쓸지 모르니) 일반적인 Server 환경에서는 사용하지 않는 것이 좋음.

[VHD]

VM을 만들어 윈도우를 설치.

VHD 파일을 카피해서 여러 VM으로 배포.

문제 1. 컴퓨터 SID가 충돌됨

  • 윈도우는 Security ID(SID)가 있음
  • 언젠가 문제가 생김.
  • Sysprep을 해야 함.
  • 현재 잘 돌아가는 시스템에 반영하는 순간… 이벤트 뷰어가 불바다가 됨.
  • VHD 파일을 만든 뒤 바로 Sysprep 해주면 됨.

팁!!!

convert-windowsimage.ps1

  • 자동으로 ISO 파일을 VHD로 바꿔주는 툴
  • 옛날에 WIM2VHD가 했던 역할

▼ 가상 디스크 종류

고정 크기: 최대 성능을 얻고 싶다면

동적 확장: 최대 용량을 정해 놓고 조금씩 늘어남

차이점 보관용: 테스트용으로…

요즘은 SSD에 부모를 저장하고 SAS디스크에 차이점 보관용으로…(VDI용도로 쓰면 좋겠네!)

clip_image010

▼ VHD or Pass-Through

clip_image011

VHD: 최대 2TB.

VHDx: 최대 64TB까지.

VHD보다 VHDx가 1~2% 용량을 더 차지함.(로그를 기록하기 때문에)

[윈도우 서버를 스토리지로 사용하기]

스토리지는 어떻게 구성?

디스크 + 컨트롤러(Raid 등) + 커넥터(FC 등) + 운영체제(리눅스 등)

JBOD + Storage Pool을 활용해보자!

▼ Windows Server 2012 R2의 defrag를 보면(/G) 옵션 Tiered Disk를 위한 데이터 이동(최적화) 기능이 추가된 것을 볼 수 있다.

clip_image012

※ SQLIO.ps1 파일은 IO 측정 툴.

▼ 수동으로 티어링되는 데이터를 조절할 수 있다.

clip_image013

갑자기 VM을 많이 운영하거나 해서 Storming이 날 것을 우려해 Write-Back Cache(WBC)를 기본값인 1GB에서 10GB로 변경해 메모리를 미리 확보해 둘 수 있다.

SOFS(Scale-Out File Server)

  • VM을 늘려 관리하면 됨

대형 벤더들은 SMI-S를 대부분 지원한다.

iSCSI 대상 서버

  • 윈도우 서버가 iSCSI 스토리지가 됨.

Windows Storage Server

  • 스토리지 기능만 갖고 있는 제품.

Classification

  • 분류(금/은/동)
  • 예를 들어 금-FC, 은-SMB, 동-iSCSI 이런 식으로 매칭 가능.

Network Teaming

  • 상단의 스위치를 설정해야 묶인 것을 인식시킬 수 있음.

[Switch와 Hyper-V의 상관관계]

스위치와 스위치 사이를 크로스케이블로 묶듯, 실제 스위치와 가상 스위치 사이를 연결하는 데 있어 실제 PC에 있는 NIC이 uplink 개념으로 연결됨.

▼ 가상 스위치(외부 네트워크)를 만들 때, uplink 컨셉이 적용됨.

clip_image014

▼ vEthernet을 만든 모습.(실제 NIC을 매칭해 가상 스위치를 만들면 가상 ‘스위치’로 만들어짐.

clip_image015

[Network Virtualization: NV 네트워크 가상화]

Switch가 vlan으로 네트워크를 쪼갠다고 하면, 하나의 NIC을 여러 단위로 쪼개서 여러 개의 네트웍을 사용할 수 있음.

[팁] System Center Virtual Machine Manager Agent를 재시작하는 법

▼ Services.msc에서 오류가 나는 서버를 연결{좌측의 Services (HYPER-V01) 참고}하여 해당 서비스를 재시작.

clip_image016

[Storage]

  • DAS (로컬에서 쓰는)
  • iSCSI
  • FC
  • SMB Storage

**SLAT: CPU에서 지원하는지?

Second Level Adress Translation: 실제 메모리의 10번지에 있던 내용과 가상 메모리의 100번지에 있는 내용을 연결해 주는…

[클러스터링]

디스크 하나를 동시에 읽을 수 있어도 쓰기는 불가능

클러스터링에서 해당 디스크 단위(LUN)로 소유할 노드를 선택

1번이 죽었다는 것을 어떻게 알까? heartbeat 활용

죽어서 넘어오는 것: Fail-over

옛날엔… 클러스터링의 최소단위는 디스크 LUN 하나

장애는 planned와 unplanned가 있음.

같은 디스크라도 파일 단위로 권한을 주는 노드를 선택 가능.(write/read 권한을 선택적으로)

라이브(실시간) 마이그레이션이션: 장애 없이 넘어가는 것

  • 메모리 상태를 Lock
  • 넘어가는 중의 데이터를 Dirty안에 갖고 있음

클러스터링을 하려면 소유자를 정해 놔야 함.

**클러스터 인식 업데이트: 클러스터링에서 장애 없이 업데이트하는 기술

**클러스터 유효성 검사 도구: 클러스터링 문제 파악, 쓰레기 파일 정리

[SNLM]

Shared Nothing Live Migration

클러스터링으로 묶이지 않은 호스트들끼리 Live Migration

DO; Dynamic Optimization

  • SCVMM 동적 최적화
  • 밤에 서버가 놀 때 쫙 넘겨 최적화
  • 알아서 ^^

**System Center를 위한 SQL Server를 설치할 때 데이터 정렬(Data Collation)을 SQL_Latin1_General_CP1_CI_AS로 선택(영문에서 기본값임)해야 함.

**System Center는 설치할 때 영문을 설치하고, 관리 PC에서는 한글판을 설치해서 쓰는 것도 팁임.

[권한 부여 관리자]

RBAC로 검색해서 원하는 사람에게 필요한 VM만 관리하도록 권한을 줄 수 있다.(Hyper-v Services 노드를 확장하면 됨)

아주 세부적으로 설정 가능(VM을 끄고 켜는 것 이상 관리 가능)

[새 VM 만들기]

▼ 1세대와 2세대 차이점?

clip_image017

  • 1세대: BIOS & MBR & IDE
  • 2세대: UEFI & GPT & SCSI

1세대는 C드라이브를 2TB 이상 만들 수 없음, PXE 부팅이 안 됨.

2세대는 Secure Boot를 지원, Windows Server 2012 이상부터 지원, 고급 세션(VM을 원격 데스크탑으로 연결해주는 기능) 지원.

  • **세대를 서로 바꿀 수 없음
  • **고급 세션은 네트워크 카드가 아닌 메모리 영역으로 통신. RDP가 동작하지 않으면 쓸 수 없음.
  • **ProviderAddress와 VirtualSubnetID
  • **DAC(Data Application Tier) 패키지를 붙이면 기존에 템플릿으로 만들어 둔 SQL 서버 패키지와 또 다른 서버를 배포할 수 있음.

[Mobility]

OS를 들고 다닐 뿐 아니라, 위의 패키지(Exchange, Sharepoint 등)들도 Mobility가 확보되는 미래가 올 것임.

-> Web Application Profile이라고…

[Private Cloud]

App Controller와 Azure Pack까지.

이것도 살펴보세요!

WSL: Linux용 Windows 하위 시스템 배포 삭제하기

명령 프롬프트를 실행 현재 설치된 배포판 리스트를 확인 wsl -l 배포판을 삭제해갑시다 wsl --unregister 배포판이름 …

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다