ClickCease 어떤 구성 관리 도구를 사용해야 하나요? 셰프 집중 조명 - TuxCare

인기 뉴스레터 구독하기

4,500명 이상의 Linux 및 오픈소스 전문가와 함께하세요!

한 달에 두 번. 스팸이 없습니다.

어떤 구성 관리 도구를 사용해야 하나요? Chef 집중 조명

2019년 8월 21일 TuxCare 홍보팀

어떤 구성 관리 도구를 사용해야 하나요? 파란색 배경에 Chef, KernelCare 및 Chef io 로고가 강조 표시됨

데브옵스가 부상하면서 엔지니어가 수백, 수천 대의 머신을 한 번에 관리할 수 있는 도구가 필요해졌습니다. 프로그래밍 언어를 통해 IT 환경을 선언하는 IaC(인프라스트럭처로서의 코드)라는 프로세스를 통해 시스템 관리자와 DevOps 팀은 구성 관리(CM) 도구를 사용하여 서버 인프라에 대한 가시성을 유지하고 대규모로 배포 및 조치를 취할 수 있습니다. CM 도구는 여러 서버에서 한 번에 작업을 실행하고 원클릭 앱 배포를 용이하게 합니다.

대규모 배포 및 CM과 관련하여 크게 네 가지 소프트웨어 플레이어가 있습니다: Puppet, Ansible, Saltstack, Chef입니다. KernelCare는 이 네 가지를 모두 통해 배포할 수 있습니다. Chef는 고유한 장단점이 있는 인기 있는 옵션입니다. 여기에 알아야 할 모든 것이 있습니다.

 

좋은 점: 프로그래머의 선택

OpsCode의 내부 엔드투엔드 서버 배포 도구로 시작된 Chef는 2009년에 오픈 소스 솔루션으로 처음 출시되었습니다. 클라이언트-서버 아키텍처 모델을 기반으로 구축된 CM 도구라는 점이 특징입니다. Chef는 명령형 프로그래밍 패러다임을 사용하며, 풀 기반 접근 방식을 사용하여 구성 정보를 에이전트와 함께 설치된 대상 노드로 전송합니다. 이는 Puppet의 마스터-에이전트 모델과 유사하지만, 마스터에서 에이전트까지 구성을 제어하기 위해 Chef 워크스테이션이 필요하다는 점이 다릅니다.

Chef의 명령형 모델은 명령이 순차적으로 실행되는 것을 확인하므로 엔지니어가 각 머신을 관리하는 데 필요한 개별 단계를 정확히 파악할 수 있습니다. 이 모델은 프로세스가 구조화되는 방식에서 이름을 따왔습니다: 정의 파일을 "레시피"라고 하며, 파일, 속성, 라이브러리 등과 병합하여 "쿡북"을 만들 수 있습니다. 레시피는 Chef 고유의 도메인별 언어를 사용하지만, 일반 Ruby로 작성된 스크립트도 지원합니다.

셰프는 인기가 많고 그럴만한 이유가 있습니다. 프로그래머를 위해 만들어졌기 때문입니다. 코드 중심 설정은 모듈 생성에 이르기까지 엄청난 양의 제어와 유연성을 제공하므로 모든 CM 솔루션 중에서 가장 사용자 정의가 가능하고 적응력이 뛰어납니다. Git에 뿌리를 둔 구성은 강력한 버전 관리 기능을 갖추고 있음을 의미합니다. 

프로그래밍 기반이기 때문에 유연성이 뛰어날 뿐만 아니라 매우 안정적입니다. 2009년은 소프트웨어 업계에서 오래된 해이며, 이러한 지속성은 Chef가 매우 안정적이고 성숙하다는 것을 의미합니다. Chef 커뮤니티는 활발하게 운영되고 있으며, 강력한 문서와 지원을 제공합니다. 구성 레시피와 모듈(900개 이상의 무료 모듈 포함)의 풍부한 기반이 있습니다. 또한 분석 및 보고를 원하는 경우 SaaS 버전의 Chef가 매우 유용합니다.

The Bad: 가파른 학습 곡선

셰프는 프로그래머를 위해 만들어졌습니다. 프로그래머라면 좋겠죠. 하지만 그렇지 않다면 매우 어려운 작업이 될 수 있습니다. 아직 기초를 배우는 중이거나 루비 사용자가 아니라면 Chef가 부담스러울 수 있습니다. 셰프를 구성하고 초기 설정을 수행하는 간단한 단계를 수행하더라도 익숙해지려면 많은 학습이 필요합니다. 코드베이스가 방대하고 환경이 복잡하며 문서가 분산되어 있습니다.

또한 Chef의 풀 기반 설정은 다음 예정된 폴링 시에만 서버에서 구성이 수집된다는 것을 의미합니다. 푸시가 없다는 것은 변경 사항에 대한 즉각적인 조치가 없다는 것을 의미합니다. 

 

전체 

Chef를 사용하면 아주 간단합니다. (루비) 프로그래밍에 능숙하다면 이 도구가 바로 여러분을 위한 CM 도구입니다. 완전히 프로그래밍이 가능하기 때문에 처리 및 사용자 지정 범위가 방대합니다. 또한 Chef는 매우 안정적이며 대규모 스토리지가 필요한 퍼블릭 및 프라이빗 환경 모두에 걸쳐 대규모 배포에 적합합니다. 하지만 더 민첩하고 민첩하며 쉽게 익히고 사용할 수 있는 솔루션이 필요하다면 Chef가 최선의 선택이 아닐 수도 있습니다. 

 

여기에서 KernelCare 팀의 솔루션 개요를 자세히 읽어보세요:

  1. 어떤 구성 관리 도구를 사용해야 하나요? Ansible 집중 조명
  2. 어떤 구성 관리(CM) 도구를 사용해야 할까요? SaltStack에 집중하기
  3. 어떤 구성 관리 도구를 사용해야 하나요? Puppet 집중 조명
  4. 어떤 취약점 관리 솔루션을 선택해야 할까요? Qualys에 집중하기
  5. 어떤 취약점 관리 솔루션을 선택해야 할까요? Rapid7에 집중하기

Kernel 재부팅, 시스템 다운타임 또는 예정된 유지 보수 기간 없이 취약성 패치를 자동화하고 싶으신가요?

TuxCare로 라이브 패치에 대해 알아보기

TuxCare 게스트 작가 되기

시작하기

메일

가입

4,500

Linux & 오픈 소스
전문가!


뉴스레터 구독하기