앤서블 시작과 실행 - 바스 마이어|로린 혹스테인|르네 모저 지음
앤서블 시작과 실행

저자 : 바스 마이어 , 로린 혹스테인 , 르네 모저 번역 : 양정열

발행일 : 2024년 11월 13일 출간

분류 : 컴퓨터/IT > 프로그래밍/언어 > 프로그래밍일반 KDC : 총류(000)

정가 : 40,000원

신간안내문 : 다운받기

출판사
출판사연락처
출판사 주소
쪽수
608
ISBN
9791161759265
크기
188 * 235 mm

도서분류

컴퓨터/IT > 프로그래밍/언어 > 프로그래밍일반
컴퓨터/IT > 네트워크 > 네트워크일반 > Server

도서소개

IT 자동화 도구인 앤서블(Ansible)을 쉽게 이해하고 활용할 수 있도록 돕는 책이다. 초보자부터 전문가까지, 인프라 관리와 애플리케이션 배포를 자동화하는 방법을 단계별로 설명하며, 다양한 예제와 실습을 통해 실무에 적용할 수 있는 실질적인 지식을 제공한다. 또한 앤서블의 기본 개념부터 고급 기능까지 폭넓게 다루며, 최신 트렌드와 기술적 인사이트도 제공한다. 이 책은 IT 자동화의 필수 도구로서 앤서블을 배우고자 하는 모든 이에게 최적의 안내서가 될 것이다. ◈ 이 책에서 다루는 내용 ◈ ◆ 앤서블 구성 관리와 배포 ◆ 리눅스와 윈도우, 네트워크 장비 관리 ◆ 앤서블 모범 사례 적용 ◆ 새로운 컬렉션 형식의 사용 방법 ◆ 사용자 정의 모듈과 플러그인 제작 ◆ 오픈소스 미들웨어용 재사용 가능한 앤서블 콘텐츠 생성 ◆ 컨테이너 이미지와 클라우드 인스턴스용 이미지, 클라우드 인프라 ◆ CI/CD 개발 환경 자동화 ◆ 데브옵스를 위한 앤서블 오토메이션 플랫폼 사용 방법 ◈ 이 책의 대상 독자 ◈ 앤서블을 생산적으로 사용하려면 기본적인 유닉스, 리눅스 시스템 관리 작업에 익숙해야 한다. 앤서블은 작업을 쉽게 자동화해 주는 도구이지만 처리 방법을 모르는 부분까지 자동화해 주지는 않는다. 이 책에서는 적어도 하나의 리눅스 배포판(우분투나 RHEL/CentOS, SUSE 등)을 잘 알고 있으며 다음 내용을 알고 있다고 가정한다.

추천사

얀-피트 멘스(Jan-Piet Mens) (컨설턴트) "바스 마이어는 로린 혹스테인, 르네 모저에서 시작된 이미 좋은 책 내용의 최신화 작업을 진행했다. 초보자나 중급, 고급 앤서블 사용자에 관계없이 읽어야 할 책이다."

저자소개

저자 바스 마이어 (Bas Meijer) 프리랜서 소프트웨어 엔지니어이자 데브옵스 코치다. 암스테르담대학교에서 주전공을 졸업했으며, 1990년대 초부터 웹 개발을 선도해 왔다. 고주파 거래, 은행, 클라우드 보안, 항공, 하이테크와 정부 분야에서 일했다. 2014년부터 앤서블 대사로 활동하고 있으며 2020년부터 2021년까지 하시코프(HashiCorp) 대사로 활동했다. 저자 로린 혹스테인 (Lorin Hochstein) 넷플릭스(Netflix)의 카오스 팀에서 시니어 소프트웨어 엔지니어로 일하며 넷플릭스가 지속 가능한 상태를 유지할 수 있도록 노력하고 있다. 오라일리의 『OpenStack Operations Guide』 공동 저자이며 다수의 학술 논문을 발표했다. 저자 르네 모저 (René Moser) 스위스에 거주하며 아내와 세 아이와 함께 살고 있고, 동작하고 확장이 가능한 단순한 것을 좋아한다. IT 분야 학위를 취득했다. 지난 15년 동안 오픈소스 커뮤니티에 참여해왔으며, 최근에는 ASF CloudStack Committer(아파치 클라우드스택 프로젝트에 기여하는 개발자)로 활동하고 있고 앤서블 CloudStack 통합의 저자로 활동했다. 2016년 4월에 앤서블 커뮤니티 핵심 구성원이 되었으며, 현재 SwissTXT의 시니어 시스템 엔지니어로 활동하고 있다. 역자 양정열 국내 Telco SI/SM Software 개발자와 프로젝트 매니저로 일했다. 현재는 IT 및 정보보호, 개인정보보호 감사 업무를 하고 있으며, 강의/번역/저술 공동체 GoDev 멤버다. 풀스택 리액트, 타입스크립트, 노드 자바스크립트 스킬업 C# 7 and .NET Core 2.x Blueprints 동형 자바스크립트 웹 개발 Node.js로 봇 만들기 개발자도 알아야 할 안드로이드 UI 디자인

목차

1장. 소개 __버전 정보 __앤서블을 어디에 사용하면 좋은가? __앤서블의 동작 방식 __앤서블의 장점은 무엇인가? ____단순함 ____강력함 ____안전함 __앤서블은 너무 단순한가? __선수지식 __다루지 않는 내용 __요약 2장. 설치와 설정 __앤서블 설치 ____느슨한 의존성 ____컨테이너에서 앤서블 실행 ____앤서블 개발 __테스트용 서버 설정 ____베이그런트 테스트 서버 설정 ____앤서블에 서버 정보 제공하기 ____ansible.cfg 파일을 통한 단순화 ____익숙함과 결별하라 __편리한 베이그런트 설정 옵션 ____포트 포워딩과 사설 IP 주소 ____에이전트 포워딩 활성화 __도커 프로비저너 __앤서블 로컬 프로비저너 __프로비저너 실행 시점 __베이그런트 플러그인 ____hostmanager ____vbguest __버추얼박스 사용자화 __Vagrantfile은 루비다 __상용 환경 설정 __요약 3장. 플레이북 시작하기 __준비 단계 __아주 간단한 플레이북 ____엔진엑스 설정 파일 지정 ____웹 페이지 생성 ____그룹 생성 __플레이북 실행 __플레이북은 YAML ____문서의 시작 ____파일의 끝 ____주석 ____들여쓰기와 공백 ____문자열 ____불리언 ____리스트 ____딕셔너리 ____여러 줄 문자열 ____문자열 대신 순수 YAML __플레이북의 구조 __플레이 ____태스크 ____모듈 ____앤서블 모듈 문서 살펴보기 ____하나로 모으기 __변경되면 호스트 상태 추적 __고급 기능: TLS 지원 ____TLS 인증서 생성 ____변수 ____앤서블 문자열에 인용부호 사용 ____엔진엑스 설정 템플릿 생성하기 ____루프 ____핸들러 ____핸들러에서 알아둘 내용 ____테스트 ____검증 ____플레이북 ____플레이북 실행 __요약 4장. 서버를 기술하는 인벤토리 __inventory/hosts 파일 ____사전 작업: 여러 베이그런트 머신 준비 __동작 인벤토리 파라미터 ____동작 파라미터의 기본값 변경 __그룹, 그룹, 그룹 ____예제: 장고 앱 배포 ____에일리어스와 포트 ____그룹의 그룹 ____번호가 있는 호스트(반려동물과 가축) __인벤토리에서 호스트와 그룹 변수 __파일에서 호스트와 그룹 변수 __동적 인벤토리 ____인벤토리 플러그인 ____아마존 EC2 ____애저 리소스 매니저 ____동적 인벤토리 스크립트 인터페이스 ____동적 인벤토리 스크립트 작성 __인벤토리를 여러 파일로 분할 __런타임에 add_host와 group_by를 사용해 항목 추가 ____add_host ____group_by __요약 5장. 변수와 팩트 __플레이북에서 변수 정의 ____별도 파일에 변수 정의 ____디렉터리 배치 __변수의 값 확인 ____변수 보간 __변수 등록 __팩트 ____서버와 관련된 모든 팩트 보기 ____팩트의 하위 집합 보기 ____모든 모듈은 팩트나 인포를 반환한다 ____로컬 팩트 ____set_fact로 새로운 변수 정의 __내장 변수 ____hostvars ____inventory_hostname ____groups __명령줄에서 변수 설정 __우선순위 __요약 6장. 메자닌 소개: 테스트 애플리케이션 __상용 환경 배포가 복잡한 이유 __Postgres 데이터베이스 __거니콘 애플리케이션 서버 __엔진엑스 웹 서버 __Supervisor 프로세스 관리자 __요약 7장. 앤서블로 메자닌 배포 __플레이북 태스크 리스트 __배포된 파일 __변수와 비밀 변수 __여러 패키지 설치 __태스크에 Become 절 추가 __apt 캐시 갱신 __깃으로 프로젝트 체크아웃 __가상 환경에 메자닌과 나머지 패키지 설치 __태스크에서 복잡한 인수에 관한 짧은 이야기 __데이터베이스 구성 __템플릿에서 local_settings.py 파일 생성 __django-manage 명령 실행 __애플리케이션 컨텍스트에서 사용자 정의 파이썬 스크립트 실행 ____서비스 구성 파일 설정 __엔진엑스 구성 활성화 __TLS 인증서 설치 __트위터 크론 잡 설치 __전체 플레이북 __베이그런트 머신에 플레이북 실행 __트러블슈팅 ____깃 저장소를 체크아웃할 수 없는 문제 ____192.168.33.10.nip.io에 접속할 수 없는 오류 ____잘못된 요청(400) 발생 __요약 8장. 앤서블 플레이북 디버깅 __친화적인 오류 메시지 __SSH 문제 디버깅 __SSH에서 알아야 할 일반적인 사항 ____PasswordAuthentication no ____다른 사용자로 SSH 접속 ____호스트 키 확인 실패 ____내부 네트워크 __debug 모듈 __플레이북 디버거 __assert 모듈 __플레이북 실행 전 점검 ____문법 검사 ____호스트 리스트 ____태스크 리스트 ____점검 모드 ____Diff(파일 변경사항 표시) ____태그 ____limit __요약 9장. 롤: 플레이북 확장 __롤의 기본 구조 __롤을 사용한 메자닌 배포 예 ____플레이북에서 롤 사용 ____pre-tasks와 post-tasks ____데이터베이스를 배포하기 위한 database 롤 ____메자닌 배포용 mezzanine 롤 __ansible-galaxy를 사용해 롤 파일과 디렉터리 생성 __의존 롤 __앤서블 갤럭시 ____웹 인터페이스 ____명령줄 인터페이스 ____실무에서 롤 요구사항 ____직접 작성한 롤 제공 __요약 10장. 복잡한 플레이북 __오동작한 명령 처리 __필터 ____default 필터 ____등록된 변수용 필터 ____파일 경로에 적용하는 필터 ____사용자 정의 필터 작성 __룩업 ____file ____pipe ____env ____password ____template ____csvfile ____dig ____redis ____룩업 플러그인 작성 __더 복잡한 루프 ____룩업 플러그인 사용 ____with_lines ____with_fileglob ____with_dict ____룩업 플러그인으로 구조 반복 __루프 제어문 ____변수 이름 설정 ____출력에 레이블 지정 __임포트와 인클루드 ____동적 인클루드 ____롤 인클루드 ____롤 흐름 제어 __블록 __블록으로 오류 처리 __ansible-vault를 활용한 중요 정보 암호화 ____다중 비밀번호용 vault __요약 11장. 호스트, 실행, 핸들러 사용자 정의 __호스트 지정 패턴 __호스트 실행 제한 __제어 머신에서 태스크 실행 __수동 팩트 수집 __호스트 IP 주소 조회 __특정 호스트가 아닌 다른 호스트에서 태스크 실행 __한 번에 하나의 호스트에서 실행 __한 번에 여러 호스트에 대해 배치 실행 __한 번만 실행 __태스크 실행 제한 ____step ____start-at-task ____태그 실행 ____태그 건너뛰기 __실행 전략 ____linear ____free __고급 핸들러 ____태스크 전/후 핸들러 ____핸들러 강제 실행 ____메타 명령 ____핸들러 간 알림 ____listen 핸들러 ____SSL에서 listen 핸들러 사용 예 __요약 12장. 윈도우 호스트 관리 __윈도우에 연결 __파워셸 __윈도우 모듈 __자바 개발 머신 __로컬 사용자 추가 __윈도우 기능 __Chocolatey를 사용해 소프트웨어 설치 __자바 설정 __윈도우 업데이트 __요약 13장. 앤서블과 컨테이너 __쿠버네티스 __도커 애플리케이션 생명주기 __레지스트리 __앤서블과 도커 __도커 데몬 연결 __Ghost 애플리케이션 __로컬 머신에서 도커 컨테이너 실행 __Dockerfile로 이미지 생성 __도커 레지스트리에 이미지 푸시 __로컬 머신에서 여러 컨테이너 관리하기 __로컬 이미지 조회 __도커화된 애플리케이션 배포 ____MySQL 구성 ____고스트 데이터베이스 배포 ____프론트엔드 ____고스트 프론트엔드 ____엔진엑스 프론트엔드 ____컨테이너 초기화 __요약 14장. Molecule을 사용한 품질 보증 __설치와 설정 __Molecule 드라이버 설정 __앤서블 롤 생성 __시나리오 ____원하는 상태 ____Molecule 시나리오 구성 ____가상 머신 관리 ____컨테이너 관리 __Molecule 명령 __린트 ____YAMLlint ____ansible-lint ____ansible-later __검증 도구 ____앤서블 ____고스 ____테스트인프라 __요약 15장. 컬렉션 __컬렉션 설치 __컬렉션 리스트 __플레이북에서 컬렉션 활용 __컬렉션 개발 __요약 __16장. 이미지 생성 __패커로 이미지 생성 ____베이그런트 버추얼박스 VM ____패커와 베이그런트 조합 ____클라우드 이미지 ____GCP ____애저 ____아마존 EC2 ____플레이북 __도커 이미지 GCC 11 __요약 17장. 클라우드 인프라 __용어 ____인스턴스 ____아마존 머신 이미지 ____태그 __자격증명 지정 ____환경 변수 ____구성 파일 __전제 조건: Boto3 파이썬 라이브러리 __동적 인벤토리 ____인벤토리 캐시 ____그 밖의 구성 옵션 __태그를 사용해 동적 그룹 정의 ____기존 리소스에 태그 적용 ____더 나은 그룹 이름 __가상 사설 클라우드 __ec2와 함께 사용할 ansible.cfg 구성 __새 인스턴스 시작 __EC2 키 쌍 ____새 키 생성 ____공개 키 업로드 __보안 그룹 ____허용 IP 주소 ____보안 그룹 포트 __최신 AMI __새 인스턴스 생성과 그룹 추가 __서버 생성 대기 __하나로 통합 __VPC 지정 ____동적 인벤토리와 VPC __요약 18장. 콜백 플러그인 __stdout 플러그인 ____ARA ____debug ____default ____dense ____json ____minimal ____null ____oneline __notification과 aggregate 플러그인 ____파이썬 요구사항 ____foreman ____jabber ____junit ____log_plays ____logentries ____logstash ____mail ____profile_roles ____profile_tasks ____say ____slack ____splunk ____timer __요약 19장. 사용자 정의 모듈 __원격 서버에 접속 가능 여부를 점검하는 예제 ____script 모듈 사용 ____can_reach 모듈 __모듈을 개발해야 하는가? __사용자 정의 모듈의 위치 __앤서블에서 모듈 호출 방법 ____인수가 있는 독립 실행 파이썬 스크립트 생성(파이썬 모듈에 해당) ____모듈을 호스트로 복사 ____호스트에서 인수 파일 생성(비 파이썬 모듈에 해당) ____모듈 호출 __예상 출력 ____앤서블의 예상 변수 출력 __파이썬 모듈 구현 ____인수 파싱 ____파라미터 접근 ____AnsibleModule 헬퍼 클래스 불러오기 ____인수 옵션 ____AnsibleModule 초기화 파라미터 ____성공/실패 반환 ____외부 명령 호출 ____체크 모드 __모듈 문서화 __모듈 디버깅 __배시에서 모듈 작성 __배시용 대체 경로 지정 __요약 20장. 앤서블 성능 개선 __SSH 다중화와 ControlPersist ____SSH 다중화 수동 설정 ____앤서블의 SSH 다중화 옵션 __SSH 최적화 ____알고리듬 권장사항 __파이프라인 ____파이프라인 설정 ____파이프라인용 호스트 구성 __앤서블용 Mitogen __팩트 캐시 ____JSON 파일 팩트 캐시 ____레디스 팩트 캐시 ____멤캐시드 팩트 캐시 __병렬 처리 __비동기 동시 태스크 __요약 21장. 네트워크와 보안 __네트워크 관리 ____지원되는 공급사 ____네트워크 자동화를 위한 앤서블 연결 ____특권 모드 ____네트워크 인벤토리 ____네트워크 자동화 사용 예시 __보안 ____규정 준수 ____안전하지만 안전하지 않은 ____섀도 IT ____선샤인 IT ____제로 트러스트 __요약 22장. CI/CD와 앤서블 __CI ____CI 시스템의 구성 요소 ____젠킨스와 앤서블 ____앤서블 롤용 CI 실행 __스테이징 __앤서블 플러그인 __앤서블 타워 플러그인 __요약 23장. 앤서블 오토메이션 플랫폼 __구독 모델 ____앤서블 오토메이션 플랫폼 시험판 __앤서블 오토메이션 플랫폼의 기능 ____접근 통제 ____프로젝트 ____인벤토리 관리 ____잡 템플릿을 통한 잡 실행 __RESTful API __AWX.AWX ____설치 ____조직 생성 ____인벤토리 생성 ____잡 탬플릿을 통해 플레이북 실행 __컨테이너를 통해 앤서블 실행 ____실행 환경 생성 __요약 24장. 모범 사례 __단순성, 모듈화, 결합성 __콘텐츠 구조화 __프로젝트와 인벤토리 분리 __롤과 컬렉션 분리 __플레이북 __코드 스타일 __모두 태그 및 테스트 __원하는 상태 __지속적인 제공 __보안 __배포 __성과 지표 __성과 측정 근거 __맺는말
목록
장바구니 담기