SaltStack 기초 – 적용 및 대상 스테이트

지금까지 배운 내용을 다시 살펴보겠습니다.

  • 하나 이상의 Salt minion에 대해 명령줄에서 단일 명령을 실행하는 방법.
  • 여러 명령을 그룹화하고 새 명령을 사용하여 재사용 가능한 상태를 정의합니다.

이전 섹션에서 생성한 솔트 스테이트는 구성을 받아야 하는 솔트 미니언에 대한 정보가 포함되어 있지 않습니다. 솔트 스테이트는 설계상 일반적이며 구성을 수행하는 방법만 설명합니다.

이 섹션에서는 스테이트를 적용해야 하는 위치를 설명하는 Top 파일이라는 다른 파일에 대해 알아봅니다.

SaltStack의 구성 관리 기능의 핵심을 만들기 위해 States와 Top 파일이 함께 작동합니다.

솔트스택 공식 Repo

솔트 커뮤니티는 https://github.com/saltstack-formulas에서 방대한 공식 저장소를 제공합니다.

배치 크기

연결된 미니언 수가 많은 경우 한 번에 업데이트되는 시스템 수를 제한할 수 있습니다. 이 작업은 –batch-size 옵션을 사용하여 수행할 수 있습니다.

salt --batch-size 10 '*' state.apply

Top 파일 소개

Top 파일은 높음 상태 동안 여러 상태 파일을 Salt minion에 적용하는 데 사용됩니다. 각 시스템에 적용되는 상태는 탑 파일에 지정된 대상에 따라 결정됩니다.

사용자 고유의 탑 파일 생성

Top 파일을 생성하기 전에 시스템 구성이 어떤지 잠시 생각해 보는 것이 유용할 수 있습니다. 설정하는 다양한 시스템 유형과 공통적이고 고유한 시스템 유형을 고려합니다. 각 시스템은 여러 구성을 수신할 수 있으므로 가장 일반적인 구성부터 시작하여 구체적인 구성까지 진행하십시오.

예를 들어 다음과 유사한 간단한 설명으로 시작할 수 있습니다.

SaltStack 패러다임에서 목록 자체는 탑 파일이 되며 목록의 각 항목은 상태가 됩니다. 대상은 상단 파일 내에서 각 솔트 미니언에 적용되는 상태를 정의하는 데 사용됩니다.

다음 예에서는 구성을 YAML로 변환하여 상위 파일로 표시하는 방법을 보여 줍니다.

탑 파일을 평가할 때 솔트 미니언은 일치하는 모든 대상에 대해 정의된 모든 스테이트를 실행합니다. 예를 들어 atl-web4-prod의 솔트 미니언 ID를 가진 시스템은 vim, scripts, users, Apache, python, django 스테이트를 적용합니다.

이제 탑 파일의 용도를 이해했으므로 이제 상위 파일을 만들어 보겠습니다. Vagrant 데모 파일을 사용하는 경우 saltstack/salt 디렉토리에 top.sls 파일이 이미 있다는 것을 알 수 있으므로 이 파일만 업데이트하겠습니다. 그렇지 않으면 새 파일을 생성할 수 있습니다. top.sls 파일에 다음을 추가하십시오.

base:
  '*':
    - common
  'minion1':
    - nettools

이 방법이 적용되면 어떤 일이 일어날지 분명해졌으면 좋겠으니 한번 시도해 봅시다. Salt Master에서 다음 명령을 실행하여 상위 파일을 적용합니다.

salt '*' state.apply
#calling state.apply with no arguments starts a highstate.

예상대로 minion1과 minion2는 모두 공통 상태를 적용했고 minion1은 nettools 상태도 적용했습니다.

이제 타겟팅 시스템에 대해 알고 있는 정보를 사용하여 스테이트를 생성하고 탑 파일을 사용하여 올바른 Salt minion에서 실행할 수 있습니다.

다음은 무엇입니까?

이제 SaltStack 원격 실행 기능, 단순 상태 생성 방법 및 이러한 상태를 중앙 관리 시스템에 적용하는 방법을 기본적으로 이해해야 합니다.

계속할 준비가 되었으면 Configuration Management Get Started Guide를 계속하십시오.

출처 : https://docs.saltproject.io/en/getstarted/fundamentals/top.html
답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

You May Also Like
Read More

SaltStack 속도

SaltStack에서 속도는 부산물이 아니라 디자인 목표입니다. SaltStack은 원격 실행 엔진을 위한 기반을 제공하기 위해 매우 빠르고 가벼운 통신…