출고예상일 안내
주문하신 상품이 한국에서 현지 배송을 위한 출고단계가 이루어질 것으로 예상되는 날짜입니다. 상품을 준비하는 과정에서 내부적인 사정으로 인해 출고예상일에 다소 오차가 생길 수 있습니다.
여러 상품(예약상품포함)을 함께 주문하신 경우 출고예상일이 가장 늦은 날짜에 맞춰 함께 배송됩니다.

Chef Solo 입문 인프라스트럭처 자동화 프레임워크
원제 : 入門Chef Solo Infrastructure as Code
ISBN : 9788994506890 / 176쪽 170 x 225 (㎜)
이 상품에 궁금하신점이 있으세요? 1:1상담문의

-
성구(강성규)
-
김영욱
- 21,600
- 20,700
- 21,600
- 23,400
출판사 리뷰
출판사 서평 도서 소개 《서버/인프라를 지탱하는 기술》의 저자 이토 나오야의 신작! DevOps 시대에 갖춰야 할 필수 지식, Chef 가이드! Chef Solo를 시작하기 위한 최적의 서적이자 인프라 담당자의 필독서! 최근 클라우드의 본격적인 보급이 이루어지면서 서버 관리 자동화가 주목받고 있다. Chef(셰프)는 그 자동화 툴/프레임워크 중 하나로, 페이스북에서도 Chef를 도입했다는 소식이 전해지면서 많은 기업과 서버 관리자들에게 더욱 각광을 받고 있다. 하지만 Chef에 관해 어느 정도 정리된 정보가 많이 부족한 게 현실이다.... 도서 소개 《서버/인프라를 지탱하는 기술》의 저자 이토 나오야의 신작! DevOps 시대에 갖춰야 할 필수 지식, Chef 가이드! Chef Solo를 시작하기 위한 최적의 서적이자 인프라 담당자의 필독서! 최근 클라우드의 본격적인 보급이 이루어지면서 서버 관리 자동화가 주목받고 있다. Chef(셰프)는 그 자동화 툴/프레임워크 중 하나로, 페이스북에서도 Chef를 도입했다는 소식이 전해지면서 많은 기업과 서버 관리자들에게 더욱 각광을 받고 있다. 하지만 Chef에 관해 어느 정도 정리된 정보가 많이 부족한 게 현실이다. 이 책은 국내에서 처음으로 출간되는 Chef 서적이자, 초보자도 쉽게 사용할 수 있는 Chef 단독형 버전인 Chef Solo의 기본적인 내용에 초점을 맞췄다. 또한, 이 책은 서버 관리자들의 필독서로 인식되고 있는 《서버/인프라를 지탱하는 기술》의 공동 저자 이토 나오야가 매월 수만 명의 사용자가 이용하는 웹 사이트 관리 경험을 바탕으로 집필하였기 때문에 믿고 읽을 수 있는 Chef 가이드로 다가갈 것이다. 이 책의 특징 - 적당한 시간에 독파할 수 있도록 페이지 수를 조절하였다. - Chef Solo로 기본적인 서버 관리를 조작할 수 있도록 하였다. - 읽기에 편하도록 하나의 주제를 블로그 포스트 하나 정도의 분량으로 구성하였다. - 책의 구성은 나중에 참고하기 쉽도록 차례에서 보듯이 실제 사례를 기반으로 하였다.






국내에서도 클라우드 사업자 및 대규모 포털 업체에서 대규모 시스템 운용을 위해 Chef를 적용하여 사용하는 것으로 알고 있으며, 이 책에서도 소개되었지만 페이스북과 같은 상상 이상의 대규모 시스템에서도 사용하고 있다. 그리고 앞으로도 계속 이런 자동화 툴은 진화할 것이고, 자동화에 대한 요구 또한 늘어날 것으로 예상한다.
_XIII
Emacs나 vim을 사용해 Ruby로 코드를 만든 후 그 파일을 Git에 올려 둔다. 이후 과정은 Chef에게 맡겨둔다. 어떤 방법이든 사람의 손으로 설정해야만 했던 서버나 인프라를 Chef를 이용하면, 애플리케이션 코드를 쓰는 것과 같이 코드를 통해 설정을 자동화할 수 있다.
_3
knife solo init로 리포지터리를 만들고, 로컬 환경에서 원하는 에디터로 레시피를 편집하고, knife solo prepare로 원격지의 Chef Solo 환경을 구축하고, knife solo cook으로 실행하는 것이 일련의 작업 순서다.
_41
td-agent 레시피는 여러 플랫폼에 설치할 것을 고려하여 사용자, 그룹, 디렉터리 등을 레시피 내에 작성해 놓고 있다. 그러나 이 부분은 일반적인 RPM 또는 deb 패키지가 사용자 생성 및 그 외의 작업을 실행해 준다. 따라서 단순히 nginx를 설치할 거라면 package Resource로 설치하면 된다. 여기서는 어디까지나 ‘문법 참고’용으로만 td-agent의 레시피를 소개하고 있다는 점에 주의하길 바란다.
_56
Cookbook File을 사용하면 쿡북에 들어 있는 파일을 임의의 경로로 전송하고 배치할 수 있다. #11에서 소개한 Template도 같은 동작을 하지만 Template은 변수를 사용할 때, Cookbook File은 정적 파일을 조작할 때로 용도를 구분하길 바란다.
_82
필자는 과거에 1,000대 이상 규모의 서버 관리 경험이 있다. 그 작업은 재미도 있었지만, 동시에 정말 귀찮고 힘든 일이었다. 처음 Chef를 접하면서 ‘당시에 Chef가 있었다면 그렇게 고생하지 않았을 텐데’라고 느꼈고, 많은 엔지니어에게 이 툴을 알리고 싶어졌다.
_155
목차
1장 Chef란 무엇인가? 개요 1
Infrastructure as Code 2
‘서버의 상태’ 관리 4
Chef는 어렵다? 4
CFEngine, Puppet, Chef 5
Chef 사용법 5
Chef Server와 Chef Solo 6
표준 Resource의 사용 방법만 안다면 OK! 8
2장 Chef Solo 설치 Hello Chef! 9
Chef 설치 10
리포지터리(키친), 쿡북, 레시피 11
리포지터리 생성 11
knife 명령어로 쿡북 생성 12
레시피 편집 12
Chef Solo 실행 13
패키지 설치 15
Ruby의 힘을 발휘하자 16
멱등성이란? 16
Resource란? 17
3장 nginx를 Chef Solo로 설치 19
레시피 20
템플릿 파일 21
JSON 파일(Node Object) 23
쿡북 내의 디렉터리 24
Chef Solo 실행 25
Vagrant + CentOS에서의 문제점 25
4장 3분 만에 Chef Solo 테스트 환경 준비하기 Vagrant 27
Vagrant의 도입 28
가상 서버의 가동 29
ssh 접속 설정 방법 1 31
ssh 접속 설정 방법 2 31
정지와 삭제 32
응용: OS 롤백이 가능하게 설정 - sahara 32
정리 33
5장 원격에서 chef-solo를 실행 knife-solo 35
knife-solo의 도입 36
knife-solo 37
knife-solo에서의 solo.rb 및 JSON 파일 처리 38
knife solo prepare로 Chef Ready! 39
knife-solo에서 Chef Solo 환경 생성 39
knife solo init로 생성한 리포지터리의 디렉터리 구성 40
여러 호스트로의 knife solo 실행 41
정리 41
6장 레시피를 만들어 실행 순서 연습 43
vagrant up 44
Chef 리포지터리 생성 44
knife solo prepare 45
쿡북 생성과 레시피 수정 45
Chef Solo 실행 45
레시피의 업그레이드 46
7장 서드파티 Chef 쿡북 사용 47
사전 설정 48
yum의 EPEL을 yum 쿡북으로 활성화 49
직접 만들 것인가? 서드파티를 사용할 것인가? 50
8장 대표적인 레시피 예제 확인 td-agent 레시피 53
td-agent 레시피 54
그룹 생성 57
사용자 생성 57
디렉터리 생성 58
패키지 배포 사이트 등록 58
Attribute와 Ohai 59
템플릿에서 설정 파일 생성 61
td-agent 패키지 설치 61
서비스 가동 62
공식 문서 참조 62
왜 “Resource?” 63
9장 패키지 설치 Package 65
Package 66
gem_package 67
10장 서비스 가동 Service와 Notification 69
Service 70
Notification과 Service의 조합 71
Notification 시점 72
Subscribe - Notification 역방향 통지 72
11장 템플릿에서 설정 파일 배포 Template 75
Template 76
템플릿 내에서는 Attribute를 사용할 수 있다 77
템플릿은 기존의 모든 것을 가지고 오는 곳에서 시작 79
12장 파일 및 디렉터리 조작 Cookbook File, Directory 81
Cookbook File 82
Directory 83
패키지를 파일로 설치 84
13장 사용자 생성 User, Group 85
User 86
Group 86
14장 git 리포지터리에서 파일 불러오기 Git 89
Git 90
git으로 불러온 파일 설치 91
15장 임의의 쉘 스크립트 실행 Execute, Script 93
Script(bash) 94
creates 95
not_if, only_if 96
EC2 마이크로 인스턴스에 스왑 영역 생성 예 97
16장 그 외의 Resource 99
Cron 100
Deploy 100
File 100
http_request 101
Ifconfig 101
Link 102
Mount 102
Route 102
ruby_block 103
정리 103
17장 몇 가지 레시피 run_list, 파일 분할, include_recipe 105
run_list의 작성 방법 106
레시피의 파일 분할 107
include_recipe 108
18장 Resource를 사용자가 정의 Definition 109
Definition으로 cpanm의 Resourece를 정의 110
보다 범용적인 레시피를 작성할 때 - LWRP 112
19장 Attribute와 Data Bag 113
Attribute 114
Attribute를 사용하는 곳 115
Data Bag 116
20장 노드를 역할별로 그루핑하여 관리 Role 119
Role 120
Role에 Attribute 정의 121
21장 서드파티 쿡북을 Bundler처럼 관리 Berkshelf 123
Berkshelf의 사용법 124
Berkshelf와 Vagrant의 연계 126
정리 128
22장 Chef Server란? 개요부터 설정까지 129
Chef Server의 아키텍처 130
Chef Server 환경에서의 각종 조작 예제 132
Vagrant의 멀티 VM을 이용한 환경 구축 135
Chef Server 설치 137
knife 설정 139
Work Station 설정 141
Chef Client 설치 143
레시피 실행 144
knife bootstrap을 이용한 노드 설정 145
정리 147
23장 어디까지를 Chef로 할 것인가? 149
서버 관리는 가능한 한 Chef로 한다 150
서버별로 리포지터리를 만들어야 하는가? 아니다 150
복수 노드에 대한 Chef Solo 실행 151
Chef Solo와 Chef Server 151
배포 툴과의 차별성 152
필자가 Chef를 사용하기 시작한 이유 153
에필로그 155
찾아보기 156






































