Puppet은 무엇입니까? – Puppet을 사용한 구성 관리



Puppet이란 무엇입니까? Puppet 블로그 시리즈의 첫 번째 블로그입니다. 사용 사례를 통해 Puppet 및 구성 관리의 필요성을 설명합니다.

오늘날 구성 관리를위한 가장 성숙한 도구는 Puppet입니다. 하지만 다른 구성 관리 도구와 비교할 때 Puppet이 왜 그렇게 인기가 있고 왜 고유한지 궁금해하실 것입니다.이 'What is Puppet'블로그에서는 이러한 질문에 답하고 .

꼭두각시 란?

Puppet은 서버 배포, 구성 및 관리에 사용되는 구성 관리 도구입니다. 다음 기능을 수행합니다.





  • 각 호스트 및 모든 호스트에 대해 고유 한 구성을 정의하고 호스트에서 필요한 구성이 제자리에 있고 변경되지 않았는지 지속적으로 확인 및 확인합니다 (변경된 경우 Puppet이 필요한 구성으로 되돌아갑니다).
  • 머신의 동적 확장 및 축소.
  • 구성된 모든 시스템에 대한 제어를 제공하므로 중앙 집중식 (마스터 서버 또는 리포지토리 기반) 변경 사항이 모든 시스템에 자동으로 전파됩니다.

Puppet은 마스터와 슬레이브가 SSL의 도움을 받아 암호화 된 보안 채널을 통해 통신하는 마스터 슬레이브 아키텍처를 사용합니다. Puppet 아키텍처는 내 퍼펫 튜토리얼 블로그.

더 나은 이해를 위해 Puppet에 대한이 비디오를 확인하십시오.



자바의 힘

꼭두각시 란 무엇입니까? | DevOps 교육 | Edureka

이제 Puppet이 무엇인지 알았으니, Puppet이 인기를 얻은 이유를 이해하겠습니다.

Puppet이란? – 주요 지표

다음은 Puppet에 대한 몇 가지 사실입니다.



  • 대규모 설치 기반 : Puppet은 Google, Red Hat, Siemens 등 전 세계 30,000 개 이상의 회사와 Stanford 및 Harvard 로스쿨과 같은 여러 대학에서 사용됩니다. 하루 평균 22 개의 새로운 조직이 처음으로 Puppet을 사용합니다.
  • 대규모 개발자 기반 : 꼭두각시는 너무 널리 사용되어 많은 사람들이 그것을 위해 개발합니다. Puppet에는 핵심 소스 코드에 많은 기여자가 있습니다.
  • 오랜 상업 실적 : Puppet은 2005 년부터 상업적으로 사용되었으며 지속적으로 개선되고 개선되었습니다. 매우 큰 인프라 (5,000 대 이상의 시스템)에 배포되었으며 이러한 프로젝트에서 얻은 성능 및 확장 성 교훈은 Puppet의 개발에 기여했습니다.
  • 선적 서류 비치: Puppet에는 수백 페이지의 문서와 언어 및 리소스 유형에 대한 포괄적 인 참조가있는 대규모 사용자 관리 위키가 있습니다. 또한 여러 메일 링리스트에서 활발히 논의되고 있으며 매우 인기있는 IRC 채널이 있으므로 Puppet 문제가 무엇이든 답을 쉽게 찾을 수 있습니다.
  • 플랫폼 지원 : Puppet Server는 CentOS, Microsoft Windows Server, Oracle Enterprise Linux 등의 루비를 지원하는 모든 플랫폼에서 실행할 수 있습니다. 새로운 운영 체제를 지원할뿐만 아니라 비교적 오래되고 오래된 OS 및 Ruby 버전에서도 실행할 수 있습니다. 게다가.

이제 Puppet이 전 세계적으로 엄청난 수요를 갖고 있음이 분명합니다. 그러나 Puppet에 대해 자세히 알아보기 전에 먼저 구성 관리가 무엇이며 왜 중요한지 설명하는 것이 공정합니다.

구성 관리

시스템 관리자는 일반적으로 서버 설치, 해당 서버 구성 등과 같은 반복적 인 작업을 수행합니다. 스크립트를 작성하여이 작업을 자동화 할 수 있지만 대규모 인프라에서 작업 할 때는 매우 바쁜 작업입니다.

이 문제를 해결하기 위해 구성 관리 소개되었습니다. 구성 관리는 시스템이 시간이 지남에 따라 무결성을 유지하도록 변경 사항을 체계적으로 처리하는 관행입니다. 구성 관리 (CM)는 시스템의 현재 설계 및 빌드 상태가 알려져 있고 양호하며 신뢰할 수 있으며 개발 팀의 암묵적인 지식에 의존하지 않도록합니다. 프로젝트 관리 및 감사 목적으로 시스템 상태의 정확한 기록 기록에 액세스 할 수 있습니다. 구성 관리는 다음과 같은 문제를 극복했습니다.

  • 요구 사항이 변경 될 때 변경할 구성 요소를 파악합니다.
  • 마지막 구현 이후 요구 사항이 변경 되었기 때문에 구현을 다시 실행합니다.
  • 새롭지 만 결함이있는 버전으로 교체 한 경우 구성 요소의 이전 버전으로 되돌립니다.
  • 어떤 구성 요소를 교체해야하는지 정확하게 확인할 수 없기 때문에 잘못된 구성 요소를 교체합니다.

유스 케이스를 통해 그 중요성을 이해합시다.

내가 아는 가장 좋은 예는 뉴욕 증권 거래소 (NYSE)입니다. 소프트웨어 '결함'으로 인해 NYSE가 거의 90 분 동안 주식을 거래 할 수 없었습니다. 이로 인해 수백만 달러의 손실이 발생했습니다. 새 소프트웨어 설치로 인해 문제가 발생했습니다. 이 소프트웨어는 20 개의 거래 터미널 중 8 개에 설치되었으며 시스템은 전날 밤 테스트되었습니다. 그러나 오전에는 8 개 단말기에서 제대로 작동하지 못했습니다. 따라서 이전 소프트웨어로 다시 전환해야했습니다. 이것이 NYSE의 구성 관리 프로세스의 실패라고 생각할 수 있지만 실제로는 성공했습니다. 적절한 구성 관리 프로세스의 결과로 NYSE는 90 분 만에 그 상황을 매우 빠르게 복구했습니다. 문제가 더 오래 지속 되었다면 그 결과는 더 심각했을 것입니다.

NYSE의 구성 관리-Puppet이란?-Edureka

자바 객체 복제 방법

이제 구성 관리의 중요성을 이해하시기 바랍니다. 구성 관리 단계는 DevOps의 백본으로 간주 할 수 있습니다. 가능한 가장 안전하고 신뢰할 수있는 방법으로 더 자주 소프트웨어를 릴리스 할 수 있습니다.

다음으로 Puppet의 몇 가지 응용 프로그램을 살펴 보겠습니다.

꼭두각시 란 무엇인가 – 꼭두각시의 응용

사례 연구를 사용하여 Puppet의 애플리케이션을 이해하겠습니다. 포커 애호가이거나 온라인 게임을 해본 적이 있다면 Zynga에 대해 들어 보셨을 것입니다. 세계 최대 규모의 소셜 게임 개발 업체입니다. Zynga의 인프라는 공용 클라우드 및 사설 데이터 센터 모두에서 수만 대의 서버를 사용합니다. 초기에는 킥 스타터 및 사후 설치를 포함한 수동 프로세스를 사용하여 수백 대의 서버를 온라인 상태로 만들었습니다.

Salesforce 서비스 클라우드 란?

이제이 프로세스에서 어떤 문제가 발생했는지 살펴 보겠습니다.

  • 확장 성 및 일관성 – Zynga는 경이로운 성장을 경험하고 있으며 업계에 발 맞춰야하는 인프라가 필요했습니다. 스크립트 기반 솔루션과 수동 접근 방식은 그들의 요구에 충분하지 않았습니다.
  • 휴대용 인프라 – Zynga는 퍼블릭 클라우드 인프라와 자체 데이터 센터 모두에서 일관된 구성 관리 접근 방식을 활용할 수있는 방법이 필요했습니다.
  • 적응성 – 다양한 Zynga 게임 속성의 다양성을 감안할 때, 팀이 올바른 컴퓨터에 적합한 구성을 신속하게 맞출 수있는 것이 중요했습니다.
  • 인프라 통찰력 – 조직이 성숙함에 따라 각 기계의 속성을 시각화하는 자동화 된 방법을 갖는 것이 더욱 중요해졌습니다.

이 회사는 빠른 확장에 도달하기 전에도 자동화 된 프로세스의 필요성을 신속하게 인식 할 수있을만큼 똑똑했습니다. 이때 Puppet이 등장했습니다. Puppet이 조직에 어떻게 기여하는지 이해하겠습니다.

  • 회복 속도 – 생산 운영 팀은 올바른 구성을 올바른 상자에 신속하게 배포 할 수 있습니다. 시스템이 부적절하게 재구성되면 Puppet은 자동으로 마지막 안정 상태로 되돌립니다. 상태,또는 시스템을 신속하게 수동으로 수정하는 데 필요한 세부 정보를 제공합니다.
  • 배포 속도 – Puppet은 운영 팀이 게임 스튜디오에 서비스를 제공하는 방식에서 상당한 시간을 절약했습니다.
  • 서버의 일관성 – Puppet의 모델 중심 프레임 워크는 일관된 배포를 보장합니다. 에 따르면 Mark Stockford, 생산 운영 부사장 , 징가 “우리가 시간을 절약 한 것은 분명합니다. Puppet 사용의 장점은 매번 단기간에 서버 전체에 일관된 구성을 제공 할 수 있다는 것입니다. '
  • 협동 – 모델 중심의 접근 방식을 사용하면 조직 전체에서 구성을 쉽게 공유 할 수 있으므로 개발자와 운영 팀이 함께 협력하여 새로운 서비스 제공의 품질을 매우 높일 수 있습니다. Zynga 팀의 12 명 이상이 Puppet 교육을 받았습니다..이 지식은 팀 전체와 각 게임 스튜디오의 운영 팀에 전파되었습니다.

Puppet 블로그 란? , Puppet Tutorial에 대한 내 다음 블로그를 방문하려면 여기를 클릭하십시오. 여기에는 Puppet 아키텍처 및 Puppet의 구성 요소가 포함됩니다. Puppet을 사용하여 MySQL 및 PHP를 배포하는 단계도 설명합니다. Puppet은 대규모 인프라가있는 조직에서 DevOps를 달성하는 데 가장 널리 사용되는 도구입니다.

이걸 찾았다면 블로그 ' 꼭두각시 란? ”관련, 체크 아웃 전 세계에 걸쳐 250,000 명 이상의 만족 한 학습자 네트워크를 보유한 신뢰할 수있는 온라인 학습 회사 인 Edureka에서 작성했습니다. Edureka DevOps 인증 교육 과정은 학습자가 SDLC의 여러 단계를 자동화하기 위해 Puppet, Jenkins, Nagios 및 GIT와 같은 다양한 DevOps 프로세스 및 도구에 대한 전문 지식을 습득하는 데 도움이됩니다.