ClickCease 어떤 구성 관리 도구를 사용해야 할까요? Ansible 집중 조명 - TuxCare

인기 뉴스레터 구독하기

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

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

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

2019년 8월 16일 TuxCare 홍보팀

Ansible 소셜 게시물

IT 인프라가 클라우드로 이동하고 있으며 가상 머신과 컨테이너가 급증하고 있습니다. 라이브 애플리케이션의 양은 지속적으로 증가하고 있으며, 모든 애플리케이션은 서버에서 호스팅됩니다. 오늘날의 시스템 관리자 및 DevOps 팀은 몇 년 전보다 훨씬 더 많은 양의 서버를 관리해야 합니다.

이러한 기술적 과제를 해결하기 위해 구성 관리(CM) 및 원격 실행(RE) 도구가 개발되었습니다. 이러한 앱은 시스템 관리자가 서버 인프라에 대한 가시성을 유지하고 대규모로 배포하고 조치를 취할 수 있도록 도와줍니다. CM 및 RE 도구를 사용하면 여러 서버에서 한 번에 작업을 실행하고 원클릭 앱 배포를 할 수 있습니다. 이러한 작업은 프로그래밍 언어를 통해 IT 환경을 표현하는 IaC(인프라를 코드로)라는 프로세스를 통해 수행됩니다.

Puppet, Ansible, Chef, SaltStack은 이 기술 분야의 빅4입니다. (그리고 이들 모두 KernelCare를 배포하는 데 사용할 수 있습니다.) 다음은 Ansible에 대한 간략한 정보입니다.

장점: 가볍고 파이썬 기반

2012년에 처음 출시되어 현재 Red Hat이 소유하고 있는 Ansible은 오픈 소스이며 AnsibleWorks에서 지원합니다. 엔터프라이즈 버전은 Ansible Tower라고 불립니다. SaltStack과 마찬가지로 Ansible은 큰 인기를 끌었던 Puppet과 Chef의 결함에 대한 대응으로 만들어졌습니다. Ruby로 개발되는 Puppet과 달리 Ansible은 Python으로 개발됩니다.

- 가장 배우기 쉽고, 가장 빠르게 성장하며, 가장 인기 있는 프로그래밍 언어입니다. Puppet과 달리 앱 네이티브 DSL(도메인별 언어)을 사용해야 한다는 부담이 없습니다.

이러한 유연성은 Ansible의 가장 큰 장점입니다. Ansible은 가볍고 유연하며 배포가 빠릅니다. 오버헤드가 적고 온보딩이 매우 쉽습니다. 에이전트 없이 설치할 수 있으며 클라이언트 머신에서 실행되는 에이전트가 없습니다. 모든 기능은 SSH를 통해 수행되며, 루트 SSH를 지원하지 않는 구성의 경우 Ansible이 루트로 sudo할 수 있습니다. 소규모 작업의 경우 구성 파일을 사용하지 않고 CLI(명령줄 인터페이스)에서 Ansible을 실행할 수 있습니다. 더 큰 작업은 플레이북이라고 하는 구성 파일에서 YAML 구문을 사용하여 처리할 수 있습니다. Ansible은 클라우드 전반에서 멀티티어 애플리케이션에 대한 제로 다운타임 롤링 업데이트를 제공합니다.

가장 주목할 만한 점은 애니스블의 CLI 명령어는 거의 모든 프로그래밍 언어로 작성할 수 있다는 점입니다. (예를 들어 Puppet은 Ruby 또는 해당 DSL로 작성해야 합니다.) 이러한 명령은 범용 JSON 모듈로 배포됩니다.

기본 모듈을 사용하여 Ansible은 인프라를 프로비저닝하고 AWS, VMWare 및 Azure와 같은 제공업체에 연결할 수 있습니다.

7일간 지원되는 KernelCare 무료 체험판 받기 

Ansible: 더 원시적인 제품

Ansible의 UI가 모든 사람을 만족시키지는 못합니다. 엔터프라이즈급 Ansible Tower에는 전체 UI 버전이 제공되지만 퍼펫 인터페이스만큼 매끄럽지는 않습니다. 그래픽 사용자 인터페이스(GUI)는 상당히 원시적이며 CLI와 항상 동기화되지 않습니다. 수동으로 동기화해야 하는 경우가 많습니다.

구성 관리보다 오케스트레이션에 편향되어 있기 때문에 스크립팅 구성 요소 간의 구문이 다를 수 있습니다. 확장된 환경에서는 SSH 통신이 느려질 수 있습니다. 에이전트는 필요하지 않지만 루트 SSH 액세스는 필요합니다.

더 넓게 보면 Ansible은 소규모 회사로, Puppet과 같은 거대 기업의 지원이나 안심할 수 있는 서비스를 제공하지 못합니다. 지원은 더 빈약하며, Ansible은 글로벌 커뮤니티가 성장하고 있지만 여전히 Puppet보다 개발자 및 사용자 커뮤니티가 작고 문제 해결 리소스도 적습니다. Ansible의 무료 버전(즉, Ansible 타워가 아님)은 Puppet에 비해 훨씬 덜 강력합니다.

 

전체

매우 복잡하거나 장기적인 배포에 직면한 경우 Ansible이 최선의 선택이 아닐 수 있습니다. 대규모의 고정된 머신 세트에 대해서는 더 잘 알려진 Puppet이 더 안전한 선택으로 간주됩니다.

하지만 Ansible은 소규모의 빠른 배포 및/또는 임시 배포를 위한 환상적인 옵션입니다. 원격 실행이 쉽고, 설정 및 확장이 간단하며, 온보딩이 매우 쉽습니다. 노드 SSL 인증서를 관리해야 하는 번거로움을 피할 수 있으며 웹 서버 집합을 보다 원활하게 관리할 수 있습니다. Ansible은 정기적으로 머신을 다시 프로비저닝하는 환경에 잘 설정되어 있습니다. 일반적으로 Ansible은 인프라 프로비저닝에 더 뛰어나므로 스토리지 또는 네트워크 엔지니어가 선택하는 것이 좋습니다.


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

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

 

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

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

TuxCare 게스트 작가 되기

시작하기

메일

가입

4,500

Linux & 오픈 소스
전문가!


뉴스레터 구독하기