KVM 가상화 완전 가이드 [클라우드 컴퓨팅을 위한 리눅스 가상화 시스템]
- 원서명Mastering KVM Virtualization: Dive in to the cutting edge techniques of Linux KVM virtualization, and build the virtualization solutions your datacentre demands (ISBN 9781784399054)
- 지은이험블 데바시 치라멀(Humble Devassy Chirammal), 프라사드 머크헤드카(Prasad Mukhedkar), 아닐 베타투(Anil Vettathu)
- 옮긴이공용준
- ISBN : 9791161750514
- 40,000원
- 2017년 09월 28일 펴냄 (절판)
- 페이퍼백 | 528쪽 | 188*235mm
- 시리즈 : acorn+PACKT
판매처
- 현재 이 도서는 구매할 수 없습니다.
책 소개
2018년 대한민국학술원 우수학술도서 선정도서
본문에 쓰인 컬러 이미지는 여기에서 내려 받으세요.
요약
잘 소개되지 않았던 KVM의 내부와 활용을 설명한 책이다. KVM의 내부 원리에 대해 소스코드까지와 함께 설명하고 있어 쉽지만 깊이 있게 이해할 수 있다. 활용 부분에서는 소프트웨어 네트워크와 KVM의 결합에 대해서도 심도 있게 설명하고 있으며, 스토리지와의 연결도 설명한다. 오픈스택 같은 클라우드 솔루션들이 KVM을 어떻게 사용하는지, 아키택처와 사용법에 대해서도 잘 설명하고 있다. 운영 시 필요한 KVM의 디버깅과 성능 향상도 자세히 설명한다.
이 책의 대상 독자
리눅스에 대한 실전 지식이 있고 오픈소스 가상화 기술을 향상시키고자 하는 시스템 관리자, 운영자 및 개발자를 대상으로 한다.
이 책의 구성
1장, ‘리눅스 가상화 이해’에서는 리눅스 가상화에 사용되는 일반적인 기술과 다른 기술에 비해 KVM이 뛰어난 부분을 설명한다. 먼저, 리눅스 가상화의 기본 개념과 리눅스 기반 가 상화 플랫폼의 이점을 살펴본 후 하이퍼바이저/VMM을 살펴본다. 끝으로 사설 및 공용 클라우드 인프라에서 리눅스가 사용되는 방법을 살펴본다.
2장, ‘KVM 내부 구조’에서는 libvirt, qemu 및 KVM의 내부 구현을 정의하는 중요한 데이터 구조와 함수를 다룬다. 또한 vCPU 실행의 생명주기와 qemu 및 KVM이 호스트 CPU에서 게스트 운영체제를 실행하는 방법을 살펴본다.
3장, ‘독립형 KVM 가상화 설정’에서는 KVM Kernel-based Virtual Machine 및 libvirt를 사용하도록 리눅스 서버를 설정하는 방법을 설명한다. KVM은 가상화를 위한 것이며 libvirt는 가상화 환경을 관리하기 위한 것이다. 또한 자신의 가상 환경을 만들기 위해 올바른 시스템 요구 사항(CPU, 메모리, 스토리지 및 네트워킹)을 결정하는 방법을 배운다.
4장, ‘libvirt 시작하기 및 가상머신 만들기’에서는 libvirt와 virt-manager 및 virsh 같이 지원되는 도구에 대해 자세히 설명한다. libvirt에서 사용할 수 있는 기본 설정을 자세히 살펴본다. virt-manager 및 virt-install을 사용해 새 가상 시스템을 설치하고 virt-builder나 oz 같은 고급 가상 시스템 배포 도구를 다룬다.
5장, ‘네트워크와 스토리지’에서는 가상 컴퓨터 배포의 QoS를 결정하는 가상 네트워킹 및 스토리지에 대해 설명하는 중요한 장 중 하나다. 가상 네트워킹에서는 다양한 브릿징 개념 및 가상 컴퓨터용 내결함성 네트워크 계층에 적용할 수 있는 방법을 자세히 설명한다. 태그가 지정된 vLan 브릿지를 사용해 네트워크를 분리하는 방법을 배울 수 있다. 스토리지에서는 파이버 채널(FC), ISCSI, NFS, 로컬 스토리지 등 스토리지 백엔드에서 가상 시스템용 스토리지 풀을 생성하는 방법을 배운다. 또한 가상 시스템에 적합한 스토리지 백엔드를 결정하는 방법을 배운다.
6장, ‘가상 시스템 생명주기 관리’에서는 가상 시스템 관리에 대해 설명한다. 스파이스(spice)와 VNC가 포함된 가상머신을 액세스하는 방법과 가상머신의 여러 상태에 대해 학습한다. 게스트 에이전트의 사용 방법도 살펴보며, 가상 컴퓨터의 오프라인 및 라이브 마이그레이션을 수행하는 방법을 배우게 된다.
7장, ‘템플릿과 스냅샷’에서는 빠른 VM 프로비저닝을 위해 윈도우와 리눅스에서 템플릿을 만드는 방법을 설명한다. 또한 외부 및 내부 스냅샷을 생성하고 스냅샷을 사용하는 시기에 대해 배운다. 스냅샷 모범 사례에서 병합 및 삭제를 비롯한 스냅샷 관리를 다룬다.
8장, ‘김치, KVM/libvirt용 HTML5 기반 관리 도구’에서는 libvirt 기반 웹 관리 도구를 사용해 원격으로 KVM 가상화 인프라를 관리하는 방법을 설명한다. 김치 웹UI를 사용해 인터넷으로 새로운 가상머신을 만들고, 기존 VM의 리소스 할당을 원격 조정하고, 사용자 액세스 컨트롤을 구현하는 방법을 배운다. 또한 안드로이드 모바일 또는 태블릿에서 원격으로 KVM 가상머신을 관리할 수 있는 안드로이드 애플리케이션인 VM킹(VM-King)을 소개한다.
9장, ‘KVM 가상화를 위한 소프트웨어 정의 네트워킹’에서는 Open vSwitch를 사용한 KVM 가상화에서의 SDN 방식을 설명하고, 오픈데이라이트(OpenDayLight) SDN 컨트롤러 등 지 원 도구에 대해 다룬다. Open vSwitch 설치 및 설정, KVM 가상 시스템용 vLan 생성, KVM VM에 세밀한 트래픽 및 정책 제어 적용, 오버레이 네트워크 생성 및 포트 미러링과 SPAN에 대해 배운다. 오픈데이라이트 SDN 컨트롤러를 사용해 Open vSwitch를 관리하는 방법도 배운다.
10장, ‘오버트를 이용한 가상 데이터 센터 설치 및 구성’에서는 가상 데이터 센터 관리자이며 VM웨어 vCenter의 오픈소스 대체품으로 간주되는 오버트(oVirt)에 대해 설명한다. 오버트는 가상머신, 호스트, 스토리지 및 가상화된 네트워크를 관리하며, 강력한 웹 관리 인터페 이스를 제공한다. 이 장에서는 오버트 아키텍처, 오버트 엔진 설치 및 오버트 노드 설치에 대해 설명한다.
11장, ‘오버트에서 첫 번째 가상머신 시작하기’에서는 첫 번째 가상머신을 시작하기 위해 오버트 데이터 센터를 시작하는 방법을 알려준다. 이 초기화 프로세스는 데이터 센터 생성, 데 이터 센터에 호스트 추가, 스토리지 도메인 추가 및 백엔드 과정을 설명한다. 네트워킹 구성에 대해도 배운다.
12장, ‘KVM 가상화를 기반으로 한 오픈스택’에서는 Private Cloud 배포, 공공 및 사설 IaaS 클라우드를 만들고 관리하기 위해 가장 많이 사용되는 오픈소스 소프트웨어 플랫폼을 다룬 다. 오픈스택의 여러 가지 구성 요소를 설명하며, 오픈스택 환경을 설정하고 첫 번째 인스턴스를 오픈스택 환경에서 시작한다.
13장, ‘KVM의 성능 튜닝 및 모범 사례’에서는 KVM 설정에서 성능을 튜닝하는 방법을 설명한다. 또한 성능을 향상시키기 위해 KVM 설정에 적용할 수 있는 모범 사례를 설명한다.
14장, ‘V2V 및 P2V 마이그레이션 도구’에서는 상용 하이퍼바이저에서 실행 중인 기존 가상머신을 virt-v2v를 사용해 오픈소스 KVM 하이퍼바이저로 마이그레이션하는 방법을 알려준다. 또한 실제 시스템을 가상 시스템으로 마이그레이션하고 클라우드에서 실행하는 방법을 배운다.
부록, ‘가상 컴퓨터를 하이퍼바이저로 변환’에서는 VM을 하이퍼바이저로 전환하는 특별한 방법을 알려준다.
목차
목차
- 1장. 리눅스 가상화 이해
- 2장. KVM 내부 구조
- 3장. 독립형 KVM 가상화 설정
- 4장. libvirt 시작하기 및 가상머신 만들기
- 5장. 네트워크와 스토리지
- 6장. 가상 시스템 생명주기 관리
- 7장. 템플릿과 스냅샷
- 8장. 김치, KVM/libvirt용 HTML5 기반 관리 도구
- 9장. KVM 가상화를 위한 소프트웨어 정의 네트워킹
- 10장. 오버트를 이용한 가상 데이터 센터 설치 및 구성
- 11장. 오버트에서 첫 번째 가상머신 시작하기
- 12장. KVM 가상화를 기반으로 한 오픈스택
- 13장. KVM의 성능 튜닝 및 모범 사례
- 14장. V2V 및 P2V 마이그레이션 도구
- 부록. 가상 컴퓨터를 하이퍼바이저로 변환