앤서블 시작과 실행
도서명:앤서블 시작과 실행
저자/출판사:로린,혹스테인,르네,모저/에이콘출판
쪽수:548쪽
출판일:2019-06-28
ISBN:9791161753218
목차
이 책에 쏟아진 찬사
추천의 글
지은이 소개
감사의 글
옮긴이 소개
올긴이의 말
2판 서문
1판 서문
1장. 소개
__버전 정보
__앤서블: 어디에 사용하면 좋을까?
__앤서블의 동작 방식
__앤서블의 어떤 부분이 훌륭한가?
__앤서블이 너무 간단한가?
__내가 알아야 할 내용은 무엇인가?
__다루지 않는 내용
__앤서블 설치
__테스트용 서버 설정
__요약
2장. 플레이북: 시작
__준비 사항
__아주 간단한 플레이북
__플레이북 실행하기
__플레이북은 YAML이다
__플레이북 분석
__무엇이 변경됐는가? 호스트 상태 추적하기
__더 좋은 기능: TLS 지원
3장. 인벤토리: 서버 설명
__인벤토리 파일
__준비 사항: 여러 대의 베이그런트 머신
__동작 인벤토리 매개변수
__그룹과 그룹과 그룹
__호스트와 그룹 변수: 인벤토리 내부
__호스트 변수와 그룹 변수: 사용자 정의 파일을 갖는다
__동적 인벤토리
__여러 파일로 인벤토리 분할
__런타임에 add_host와 group_by 사용해 항목을 추가하기
4장. 변수와 팩트
__플레이북에서 변수 정의하기
__변숫값 보기
__변수 등록하기
__팩트
__새 변수를 정의하기 위해 set_fact를 사용하기
__내장 변수
__커맨드라인에서 변수 설정하기
__우선순위
5장. 메자닌 소개: 테스트 애플리케이션
__상용 환경에 배포하는 것이 복잡한 이유
____PostgreSQL: 데이터베이스
____Gunicorn: 애플리케이션 서버
____엔진엑스: 웹 서버
____수퍼바이저: 프로세스 관리자
6장. 앤서블을 사용해 메자닌 배포하기
__플레이북의 태스크 출력하기
__배포된 파일의 설정
__변수와 비밀 변수
__반복문(with_items)을 사용해 여러 패키지 설치하기
__태스크에 Become 절 추가하기
__apt-cache 업데이트하기
__깃을 사용해 프로젝트 ****하기
__메자닌과 기타 패키지를 virtualenv에 설치
__태스크의 복잡한 매개변수: 간략한 설명
__데이터베이스 설정하기
__템플릿에서 local_settings
__django-manage 커맨드 실행하기
__애플리케이션의 컨텍스트에서 사용자 지정 파이썬 스크립트 실행하기
__엔진엑스 설정 활성화하기
__TLS 인증서 설치
__트위터 크론잡 설치하기
__전체 플레이북
__베이그런트 머신에 플레이북 실행하기
__트러블 슈팅
__여러 머신에 메자닌 배포하기
7장. 플레이북 확장하기
__롤의 기본 구조
__예시: 데이터베이스와 mezzanine 롤
__플레이북에서 롤 사용하기
__사전 태스크와 사후 태스크
__데이터베이스 배포를 위한 데이터베이스 롤
__메자닌을 배포하기 위한 Mezzanine 롤
__ansible-galaxy을 사용해 롤 파일과 디렉터리 생성하기
__의존 롤
__앤서블 갤럭시
8장. 복잡한 플레이북
__잘못 처리된 커맨드 처리하기 : changed_when와 failed_when
__필터
__조회
__더 복잡한 루프
__루프 제어문
__include
__블록
__블록을 사용한 에러 처리
__볼트를 활용한 중요한 데이터의 암호화
9장. 호스트, 실행, 핸들러 사용자 정의
__호스트 지정 패턴
__실행 중인 호스트 제한
__제어 머신에서 태스크 실행하기
__특정 호스트가 아닌 다른 호스트에서 태스크 실행하기
__한 번에 한 호스트에서 실행하기
__한 번에 여러 호스트에 플레이 실행하기
__한 번만 실행
__실행 전략
__고급 핸들러
__팩트를 수동으로 수집하기
__호스트의 IP 주소 얻기
10장. 콜백 플러그인
__표준 플러그인
__기타 플러그인
11장. 앤서블을 가능한 빠르게 하기
__SSH 멀티플렉싱과 ControlPersist
__파이프 라이닝
__팩트 캐싱
__병렬
__비동기로 동시 작업
12장. 사용자 정의 모듈
__예시: 원격 서버에 연결할 수 있는지 확인
__사용자 정의 모듈 대신 script 모듈 사용하기
__can_reach 모듈
__사용자 정의 모듈을 저장할 위치
__앤서블이 모듈을 호출하는 방법
__매개변수를 사용해 스탠드얼론 파이썬 스크립트 생성(파이썬 기반 모듈만)
__호스트에 모듈 복사
__호스트에 매개변수 파일 생성(파이썬 기반이 아닌 모듈만)
__모듈 호출
__예상된 출력
__앤서블이 기대하는 출력 변수
__파이썬에서 사용자 정의 모듈 구현하기
__모듈 문서화
__사용자 정의 모듈 디버깅하기
__배시에서 모듈 구현하기
__배시에서 대체 경로 지정
__예시 모듈
13장. 베이그런트
__편리한 베이그런트 설정 옵션
__앤서블 프로비저너
__프로비저너가 실행될 때
__베이그런트가 생성한 인벤토리
__병렬 프로비저닝
__그룹 지정
__앤서블 로컬 프로비저너
14장. 아마존 EC2
__개념
__자격 증명 지정하기
__선행 조건: 파이썬의 Boto 라이브러리
__동적 인벤토리
__태그가 포함된 동적 그룹 정의하기
__EC2 가상 사설 클라우드와 EC2-Classic
__ec2 모듈을 사용해 ansible.cfg 설정하기
__새로운 인스턴스 시작하기
__EC2 키 쌍
__보****그룹
__최신 AMI 받기
__그룹에 새로운 인스턴스 추가하기
__서버가 동작될 때까지 기다리기
__멱등성을 지닌 앤서블 플레이북을 사용해 EC2 인스턴스 생성하기
__함께 실행하기
__가상 사설 클라우드 지정
__AMI 빌드하기
__기타 모듈
15장. 도커
__앤서블로 도커를 연결하는 사례
__도커 애플리케이션 수명 주기
__애플리케이션 예시: Ghost
__도커 데몬에 연결
__로컬 머신에서 컨테이너 실행하기
__Dockerfile로부터 이미지 빌드하기
__로컬 머신에서 여러 컨테이너를 오케스트레이션하기
__이미지를 도커 레지스트리에 푸시하기
__로컬 이미지 쿼리하기
__도커 애플리케이션 배포하기
__앤서블 컨테이너
16장. 앤서블 플레이북 디버깅하기
__사람이 실수하는 에러 메시지
__SSH 이슈 디버깅하기
__debug 모듈
__플레이북 디버거
__assert 모듈
__실행 전 플레이북 확인하기
__실행할 태스크 제어하기
17장. 윈도우 호스트 관리
__윈도우에 연결
__파워셸
__윈도우 모듈
__첫 번째 플레이북
__윈도우 업데이트
__로컬 사용자 추가하기
__결론
18장. 앤서블의 네트워크 장비 지원
__네트워크 모듈의 상태
__지원되는 네트워크 공급 업체 목록
__네트워크 장비 준비하기
__모듈의 동작 방법
__첫 번째 플레이북
__네트워크 모듈의 인벤토리와 변수
__파일에서 설정을 사용하기
__템플릿, 템플릿, 템플릿
__팩트 수집
__결론
19장. 앤서블 타워: 상용 앤서블
__가입 모델
__앤서블 타워가 해결할 수 있는 부분
__RESTful API
__앤서블 타워 CLI
__결론
부록 A. SSH 509
부록 B. EC2 자격 증명에 IAM 롤 사용하기
용어 사전
참고 문헌
찾아보기