Agentless Salt – 스테이트 적용

솔트 스테이트는 솔트 SSH와 완전히 호환되며 시스템 설정 및 구성을 신속하게 자동화하는 데 사용할 수 있습니다.

 Configuration Management 가이드에는 솔트 상태 생성에 대한 자세한 설명이 포함되어 있습니다. 이 설명서의 모든 정보(Salt pillar 및 Salt’s file server 포함)는 Salt SSH를 사용하여 상태를 적용하는 데 사용할 수 있습니다.

자습서: 스테이트

상태를 생성하고 적용하기 전에 Salt SSH 환경에 몇 가지를 추가하여 salt-ssh 디렉토리의 디렉토리를 가리키도록 상태 시스템 파일 위치를 구성하겠습니다(기본적으로 상태 파일은 /srv/salt에 저장됨).

이전에 생성한 Salt SSH 디렉토리(~/salt-ssh)에 있고 가상 환경(source venv/bin/activate)을 활성화했는지 확인합니다.

  1. 다음 내용으로 salt-ssh/master 파일을 생성하십시오.
YAML

2. states 이름이 지정된 디렉터리를 생성한 후 다음을 states/network.sls로 추가하고 저장하십시오:

YAML

3. 패키지를 설치 중이므로 이 상태를 적용하기 전에 상승된 권한을 사용하도록 설정해야 합니다. roster 파일을 열고 sudo: True를 추가합니다.

YAML

4. 다음 명령을 사용하여 상태를 적용합니다.

Shell

(이전에는 Saltfile에 config_dir 경로를 추가했으므로, salt-ssh는 salt-ssh/master 파일을 찾습니다.)

파일 관리

솔트 SSH 상태에서도 파일을 관리할 수 있습니다! Salt SSH는 모든 salt:// 파일 참조를 확인하고 에이전트 없는 시스템으로 파일을 자동으로 전송합니다.

  1. salt-ssh/states 디렉터리에서 이름이 files인 하위 디렉터리를 생성하십시오.
  2. 다음과 함께 salt-ssh/states/files/sample.conf 파일을 추가합니다.
Shell

3. 다음 내용이 포함된 salt-ssh/states/config.sls라는 새 상태 파일을 추가하고 저장합니다.

Shell

4. 다음 명령을 사용하여 상태를 적용합니다.

Shell

이 상태를 적용할 때마다 에이전트 없는 시스템의 구성 파일이 salt-ssh/status/files의 버전과 일치하도록 업데이트됩니다.

추가된 재미를 위해 원격 실행을 사용하여 구성 파일의 내용을 나열할 수 있습니다.

Shell

소스 제어

salt-ssh/states 디렉토리에 상태 파일을 배치하는 대신 salt-ssh/master의 내용을 다음과 같이 변경하여 GitHub repo에 액세스하도록 솔트를 쉽게 구성할 수 있습니다.

Shell

자세한 내용은 Git Fileserver Backend를 참조하십시오.

추가 예

다음은 시스템을 구성하기 위해 스테이트 파일에 추가할 수 있는 다른 명령의 몇 가지 예입니다.

Github에서 클론

Shell

서비스 실행

Shell

사용자 생성

YAML

이 가이드에서는 Salt SSH를 사용하여 서버 관리를 시작하는 간단한 방법을 보여 줍니다. Salt SSH에서 사용하는 모든 상태 파일과 명령은 마스터-미니언 모드에서 실행되는 Salt와 완전히 호환되므로 두 모드 간에 쉽게 전환할 수 있습니다.

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

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

You May Also Like