클라우드 시스템과 오픈스택에 대한 개념과 구조는 핵심만 빠르게 익힌다 오프스택을 이용해서 클라우드 서비스를 구축하려면 클라우드 시스템을 지탱하는 인프라와 오픈스택을 구성하는 서비스들을 이해해야 한다. 각 내용을 간결한 설명과 그림으로 구성해서 쉽고 빠르게 익힐 수 있다.
오픈스택 서비스 구축 방법을 상황에 맞춰서 골라 익힌다 오픈스택을 학습하거나 버전 변경으로 인해 업그레이드된 내용을 체크할 때, 서비스 가능한 클라우드를 구축할 때, 리눅스 환경을 고려해서 구축해야 할 때와 같이 다양한 상황에서 서비스 구축 방법을 다루고 있다.
오픈스택 서비스 운영과 활용을 위해 곁에 두고 참고한다 운영체제 이미지 관리, 인스턴스 생성, IP 관리, 볼륨 스토리지 관리, 프로젝트/롤/사용자 관리 등 운영부터 블로그 서비스와 하둡 구축과 같은 실습까지 오픈스택 클라우드를 구축한 후에도 서비스 운영이 익숙해질 때까지 곁에 두고 참고할 수 있다.
첫째마당 클라우드와 오픈스택 기본기 다지기
1장 인프라 환경 변화의 시작, 클라우드 1.1 클라우드 컴퓨팅의 정의와 종류 01 클라우드 컴퓨팅의 정의 02 클라우드 서비스의 종류 03 클라우드 공개 범위 1.2 클라우드 핵심 서비스 컴퓨트와 스토리지 01 컴퓨트 서비스 02 스토리지 서비스 1.3 하이퍼바이저가 필요해! 01 하이퍼바이저의 정의 02 하이퍼바이저의 분류 03 가상화 방식에 따른 하이퍼바이저 04 클라우드 플랫폼에서 하이퍼바이저 05 하이퍼바이저별 이미지 포맷 1.4 클라우드에서 알아야 할 네트워크 상식 01 Fixed IP와 Floating IP 02 IP Class와 IP Range 03 예제로 알아보는 IP Class와 IP Range 04 SDN 05 오픈플로우 06 네트워크 장비 1.5 블록 스토리지와 오브젝트 스토리지의 차이 01 블록 스토리지 02 오브젝트 스토리지 03 대표적인 스토리지 서비스
2장 오픈스택이 뭐지?
2.1 오픈스택의 역사 살펴보기 01 오픈스택 탄생 배경 02 오픈스택 릴리즈 현황 2.2 오픈스택, 아키텍처로 알아보기 01 개념 아키텍처로 보는 오픈스택의 변화 02 논리 아키텍처로 보는 오픈스택의 변화 2.3 가상 서버를 생성하는 컴퓨트 Nova 01 논리 아키텍처에서 Nova 02 Nova가 지원하는 하이퍼바이저 종류 03 노드별로 설치되는 Nova 04 주요 사이트 2.4 오브젝트 스토리지 Swift 01 논리 아키텍처에서 Swift 02 Swift의 논리적 구성 요소 03 Swift Ring의 개념 04 Swift의 데이터 관리 방법 05 Swift와 Keystone의 관계 06 주요 사이트 2.5 운영체제 이미지를 관리하는 Glance 01 예로 이해하는 Glance 02 논리 아키텍처에서 Glance 03 VM 이미지 종류 04 Container 포맷 05 지원하는 운영체제 이미지 06 주요 사이트 2.6 인증을 관리하는 Keystone 01 예로 이해하는 Keystone 02 논리 아키텍처에서 Keystone 03 오픈스택에서 Keystone 위치 04 테넌트, 사용자, 롤의 개념과 관계 05 주요 사이트 2.7 네트워크를 관리하는 Neutron 01 논리 아키텍처에서 Neutron 02 Neutron이 지원하는 플러그인 종류 03 노드별로 설치되는 Neutron 04 주요 사이트 2.8 블록 스토리지를 관리하는 Cinder 01 논리 아키텍처에서 Cinder 02 Cinder가 지원하는 블록 스토리지 드라이버 03 주요 사이트 2.9 대시보드 Horizon 01 논리 아키텍처에서 Horizon 02 Horizon 대시보드 03 주요 사이트 2.10 기타 서비스 01 텔레미터 서비스 Ceilometer 02 오케스트레이션 서비스 Heat 03 데이터베이스 서비스 Trove
둘째마당 오픈스택 구축하기
3장 오픈스택은 어떻게 설치하는 거야?
3.1 가상 서버 준비하기 01 하이퍼바이저 설치 전 준비 02 VirtualBox 설치 3.2 우분투 서버 설치하기 01 우분투 서버 다운로드 02 VirtualBox에서의 가상 서버 생성 03 우분투 서버 설치 04 SSH Client 프로그램을 이용한 우분투 서버 접속 3.3 네트워크 테스트 베드 구성하기 01 네트워크 테스트 베드 구성 02 네트워크 구성도 3.4 데브스택을 이용해 오픈스택 설치하기 01 데브스택을 이용해 오픈스택 설치 전 준비 02 데브스택 설치 3.5 첫 번째 인스턴스 생성하기 01 첫 번째 인스턴스 생성 02 SSH 클라이언트 툴을 이용한 인스턴스 접속
4장 Neutron 서비스로 복잡한 네트워크를 해결해볼까?
4.1 Neutron 기본 플러그인 ML2 알아보기 01 ML2의 역할 02 ML2 타입 드라이버 이해 4.2 Neutron을 설치하기 위한 네트워크 구성도 그리기 4.3 데브스택을 이용해서 오픈스택 Neutron 설치하기 01 VirtualBox에서 가상 서버 생성 02 데브스택 설치 4.4 Neutron 네트워크 구성하기 01 Local 네트워크 구성 02 Private와 Public을 이어주는 라우터 생성 4.5 첫 번째 인스턴스 생성하기
5장 서비스가 가능한 오픈스택은 어떻게 구축하지?
5.1 시스템 구성도 그려보기 01 Neutron을 이용한 오픈스택 네트워킹 구성 02 Nova-network를 이용하는 오픈스택 네트워킹 구성 5.2 서버 준비하기 01 오픈스택을 설치할 수 있는 서버 최소 사양 02 우분투 설치 03 설치 방법 5.3 컨트롤러 노드 설치하기 01 네트워크 인터페이스 설정 02 NTP 설치 03 데이터베이스 설치 04 Packages 설치 05 RabbitMQ 설치 06 Keystone 설치 07 Keystone 사용자, 테넌트, 롤 그리고 endpoint 생성 08 Glance 설치 09 Nova Management 설치 10 Neutron 서버 설치 11 Horizon 설치 12 Cinder 서버 설치 13 Swift Proxy 서버 설치 14 Heat 설치 15 Ceilometer 설치 5.4 SDN을 위한 네트워크 노드 설치하기 01 네트워크 인터페이스 설정 02 NTP 설치 03 데이터베이스 설치 04 Packages 설치 05 Neutron 네트워킹 설치 5.5 인스턴스를 생성하는 컴퓨트 노드 설치하기 01 네트워크 인터페이스 설정 02 NTP 설치 03 데이터베이스 설치 04 Packages 설치 05 Nova 컴퓨트 설치 06 Neutron 컴퓨트 설치 07 Cinder 볼륨 설치 08 Swift Storage 서버 설치 09 Ceilometer 컴퓨트 에이전트 설치 5.6 제대로 설치했는지 테스트하기 01 Neutron 네트워크 생성 02 Cinder 볼륨 생성 테스트 03 Swift 테스트 04 Heat 테스트 05 Ceilometer 테스트
6장 CentOS도 오픈스택을 구축할 수 있어!
6.1 설치 환경 만들기 01 CentOS 다운로드 02 CentOS 설치를 위한 VisualBox 가상 서버 준비 6.2 All-in-One으로 오픈스택 설치하기 01 시스템 구성도 그리기 02 Network IP 설정 03 PackStack 설치를 위한 사전 준비 04 PackStack IceHouse 패키지와 PackStack 설치 05 대시보드 접속 06 Neutron 네트워크 생성 07 인스턴스 생성 6.3 Multi Node에서 오픈스택 설치하기 6.4 컨트롤러 노드 설치하기 01 네트워크 인터페이스 설정 02 NTP 설치 03 데이터베이스 설치 04 Packages 설치 05 Qpid 설치 06 Keystone 설치 07 keystone 사용자, 테넌트, 롤 그리고 endpoint 생성 08 Glance 설치 09 Nova Management 설치 10 Nova-network 설정 11 Horizon 설치 12 Cinder 설치 6.5 컴퓨트 노드 설치하기 01 네트워크 인터페이스 설정 02 NTP 설치 03 데이터베이스 설치 04 Packages 설치 05 Nova Compute 설치 06 Nova-network 설치 07 Nova-network 생성 08 인스턴스 생성
셋째마당 오픈스택 운영하기
7장 오픈스택 운영, 이 정도는 기본이지
7.1 Glance에 우분투 이미지 올리기 01 우분투 클라우드 이미지 다운로드 02 Glance 명령어로 우분투 이미지 다운로드와 업로드 03 대시보드로 우분투 이미지 다운로드와 업로드 04 받아 놓은 우분투 이미지 파일을 대시보드로 업로드 7.2 우분투 인스턴스 생성하기 01 Nova boot 명령어를 이용한 인스턴스 생성 02 대시보드에서 인스턴스 생성 7.3 인스턴스에 Floating IP 할당하기 01 콘솔을 이용해서 Floating IP 할당 02 대시보드에서 Floating IP 할당 7.4 볼륨 스토리지 생성하기 01 콘솔을 이용한 볼륨 스토리지 생성 02 대시보드에서 볼륨 스토리지 생성 7.5 프로젝트, 롤, 사용자 추가하기 01 콘솔을 이용한 사용자 생성 02 대시보드에서 사용자 생성 7.6 Help를 이용한 명령어 사용법 알아보기 01 Help를 이용해서 명령어를 알아보는 형식 02 Help 사용 예제
8장 오픈스택 운영, 기본을 넘어서
8.1 Keystone 토큰을 UUID 형태로 변경하기 01 Keystone 인증 토큰을 UUID 형태로 변경 02 REST API Client 툴로 인증 토큰 정보 확인 8.2 개발자라면 API를 활용하자 01 Curl을 이용한 REST API 사용법 02 REST API Client 툴을 이용한 사용법 8.3 Keystone에 CORS 적용하기 01 CORS 02 Keystone을 위한 CORS 환경설정 8.4 우분투 인스턴스에 VNC 서버 설치하기 01 VNC 접속을 위한 보안 그룹 설정 02 우분투 인스턴트에 VNC 서버 설치 03 VNC Client를 이용한 우분투 인스턴스 접속 04 우분투 인스턴스에서 한글 입력 설정 8.5 다른 운영체제로 인스턴스 생성하기 01 우분투 서버 버전을 데스크탑 버전으로 변경 02 KVM 설치 03 Window7 이미지 설치 04 생성된 이미지 Glance에 올리기 8.6 데브스택으로 오픈스택을 설치할 때 알아두면 좋은 것들 01 데브스택으로 오픈스택을 설치할 때 반드시 알아야 할 점 02 데브스택으로 오픈스택을 설치할 때 좋은 점 03 유형별로 다른 localrc 설정법
넷째마당 오픈스택 활용하기
9장 오픈스택 클라우드에 워드프레스로 블로그 구축하기
9.1 우분투 인스턴스 생성하기 01 키 패어 등록 및 시큐리티 그룹 생성 02 우분투 인스턴스 생성 9.2 웹 서비스 환경을 APM으로 설치하기 9.3 워드프레스 설치하기 01 워드프레스 설치 및 환경설정
10장 오픈스택과 하둡의 만남
10.1 하둡을 설치할 인스턴스 생성하기 01 키 패어 등록 및 시큐리티 그룹 생성 02 우분투 인스턴스 생성 10.2 하둡 설치하기 01 자바 설치 및 Key 생성 02 하둡 설치 10.3 하둡 테스트하기 01 하둡 맵 리듀스 웹 UI 02 하둡 HDFS 웹 UI 03 하둡 명령어를 찾아보는 help 04 하둡 명령어를 이용한 테스트
부록 오픈스택 명령어 사전
01 Keystone 명령어 02 Nova 명령어 03 Neutron 명령어 04 Cinder 명령어
ㆍ지은이
장현정
지은이 소개
10년 동안 자바개발자로 활동하다가 오픈소스 클라우드 플랫폼인 오픈스택을 접했고, 현재는 오픈스택 한국 커뮤니티 대표를 맡고 있다. 그리고 오픈스택을 처음 접했을 때 힘들고 어려웠던 기술 노하우들을 자신의 블로그인 naleejang.tistory.com에 연재하고 있다. 지금은 육아를 위해 잠시 쉬면서 Python, Node.js, SDN 같은 IT 기술들을 습득하고 있으며, 직장맘과 여성 개발자들을 위한 책을 출간하는 것이 꿈이다.
독자의견 남기기