-
chef cookbook 구조기타 2015. 3. 26. 09:00ruby를 기본언어로 사용함.Attributes쿡북에서 사용하는 단순한 키-값 쌍.각 쿡북별로 default.rb에 있는 attribute이 먼저 로드되고 나머지 attribute 파일들이 사전순으로 로드됨.쿡북이나 레시피안에 정의해서 기본설정을 덮어쓸 수 있음.Recipes가장 기본적인 설정.- ruby로 작성.- 대부분 리소스들의 모음.- 시스템을 설정하는데 필요한 모든것을 정의해야 함.- 쿡북안에 저장되야함.- 검색 쿼리를 이용하거나 data bad에서 컨텐츠를 읽어옴.- 하나이상의 레시피에 의존성을 가지고 있음.- 그룹핑을위해 노드에 태그를 함.- chef-client가 사용하기전에 run-list에 추가되어야 함.- 항상 run-list에 있는 순선대로 실행됨.레시피에서 사용하는 리소스 타입- package : 노드의 패키지를 관리- service : 노드의 서비스를 관리- user : 노드의 유저를 관리- group : 그룹을 관리- template : 루비 템플릿 파일들을 관리- cookbook_file : 쿡북의 하위디렉토리에서 노드로 파일을 전송- file : 노드에 있는 파일의 내용을 관리- directory : 노드의 디렉토리를 관리- execute : 노드에서 명령어 실행- cron : 노드의 cron 파일을 편집Files쿡북에서 사용하는 정적파일들이 있는 디렉토리Templates.erb 확장자를 가지는 템플릿 파일들이 있는 디렉토리.보통 template에 port같은 걸 변수로 선언해 두고 attribute에서 가져와서 세팅하는 식으로 사용함.Metadata.rb패키지에 관한 메타데이터를 관리하는 파일.패키지 이름, 설명, 의존성등.기본 cookbook 템플릿 만들기knife cookbook create [cookbookname]참고
'기타' 카테고리의 다른 글
kafka 클러스터 구축 (0) 2015.10.19 Docker를 이용한 Jenkins 설정 (0) 2015.09.16 Ansible 설치 & 기본사용하기 (0) 2014.08.29 Puppet을 이용한 배포 (0) 2014.08.01 Puppet 설치 및 실행 (0) 2014.07.31 댓글