Ansible 책을 보다가, 갑자기 SaltStack에 대한 관심이 생겼다. 테라폼에 대한 관심이 점점 커져가던 중이고, 책도 주문한 상태였다. 테라폼을 하기는 해야겠다는 생각을 종종 하지만, SaltStack에 대한 관심이 그리 큰건 아니었다.

결정적인 동기는 “테라폼에 비해서 ESXi를 좀 더 적극적으로 다룰 수 있다”는 점이었던 것 같다.

SaltStack 소개

30초 요약

솔트는 다음과 같습니다.

  • 구성 관리 시스템. Salt는 원격 노드를 정의된 상태로 유지할 수 있습니다. 예를 들어 특정 패키지가 설치되어 있고 특정 서비스가 실행 중인지 확인할 수 있습니다.
  • 원격 노드에서 명령을 실행하고 데이터를 쿼리하는 데 사용되는 분산 원격 실행 시스템입니다. Salt는 개별 노드에서 또는 임의 선택 기준을 사용하여 명령을 쿼리하고 실행할 수 있습니다.

이 솔루션은 원격 실행의 세계에서 가장 우수한 솔루션을 하나로 결합하여 더 낫고, 더 빠르며, 더 잘 활용할 수 있도록 하기 위해 개발되었습니다. Salt는 단순하고 관리 가능한 인터페이스를 통해 수십 대뿐만 아니라 수백 대 심지어 수천 대의 개별 서버를 신속하게 처리할 수 있는 능력을 통해 이러한 목표를 달성합니다.

단순성

대규모 배포와 소규모 시스템 간에 다재다능한 기능을 제공하는 것은 어려워 보일 수 있지만 Salt는 프로젝트 규모에 관계없이 설정 및 유지 관리가 매우 간단합니다. 솔트의 아키텍처는 소수의 로컬 네트워크 시스템에서부터 서로 다른 데이터 센터 간의 국제 배치에 이르기까지 모든 수의 서버와 함께 작동하도록 설계되었습니다. 토폴로지는 데몬의 단일 집합에 필요한 기능을 내장한 단순한 서버/클라이언트 모델입니다. 기본 구성은 거의 또는 전혀 수정 없이 작동하지만, Salt는 특정 요구에 맞게 미세 조정할 수 있습니다.

병렬 실행

솔트의 핵심 기능:

  • 명령을 원격 시스템에 직렬이 아닌 병렬로 호출할 수 있도록 설정
  • 보안 및 암호화된 프로토콜을 사용합니다.
  • 가능한 최소의 가장 빠른 네트워크 페이로드를 사용합니다.
  • 간단한 프로그래밍 인터페이스를 제공하다

또한 Salt는 원격 실행 영역에 보다 세분화된 제어를 도입하여 호스트 이름뿐만 아니라 시스템 속성으로도 시스템을 대상으로 할 수 있게 한다.

검증된 기술을 기반으로 구축

소금은 많은 기술과 기술을 이용한다. 네트워킹 계층은 우수한 ZeroMQ 네트워킹 라이브러리로 구축되므로 Salt 데몬은 실행 가능하고 투명한 AMQ 브로커를 포함한다. Salt는 마스터 데몬과의 인증을 위해 공개 키를 사용한 다음 페이로드 통신을 위해 더 빠른 AES 암호화를 사용합니다. 인증과 암호화는 Salt에 필수적이다. 솔트는 msgpack을 통한 통신을 이용하여 빠르고 가벼운 네트워크 트래픽을 가능하게 한다.

파이썬 클라이언트 인터페이스

간단한 확장을 위해, 솔트 실행 루틴은 플레인 파이썬 모듈로 작성될 수 있다. Salt 실행에서 수집된 데이터는 마스터 서버 또는 임의의 프로그램으로 다시 전송할 수 있습니다. Salt는 단순한 Python API 또는 명령줄에서 호출할 수 있으므로 Salt는 일회성 명령을 실행하는 데뿐만 아니라 더 큰 애플리케이션의 필수적인 부분으로 작동할 수 있다.

빠르고, 유연하고, 확장 가능

그 결과 하나에서 매우 많은 서버에 이르는 대상 서버 그룹에서 빠른 속도로 명령을 실행할 수 있습니다. Salt는 매우 빠르고, 설정하기 쉽고, 놀라울 정도로 다양한 서버 요구사항을 관리할 수 있는 단일 원격 실행 아키텍처를 제공합니다. Salt 인프라는 원격 실행 세계 최고의 기능을 통합하고 기능을 확장하며 범위를 확장하여 모든 네트워크에 적합한 실용적인 시스템을 제공합니다.

오픈

솔트는 아파치 2.0 라이센스로 개발되었으며, 오픈 및 독점 프로젝트에 사용할 수 있다. 솔트가 성장함에 따라 우리 모두가 함께 이익을 볼 수 있도록 솔트 프로젝트에 당신의 확장을 다시 제출해 주세요. 시스템에 솔트를 뿌리고 맛있는 음식이 나오도록 하세요.

SaltStack 관련 URL 정리

vRealize Automation에서 SaltStack Config

vRealize Automation 8.3 교육 내용을 보면 Module 15에 SaltStack Config가 당당히 자리 잡고 있는 것을 볼 수 있다. 아마 실 교육에서는 Lab 포함해서 1시간~1시간 30분 정도 분량일 것 같다.

SaltStack 자체에 대한 구체적인 사용법 보다는 소개, 기본적인 용어 등을 설명하고, Lab을 통해 SaltStack Config에 대한 맛보기를 제공한다 하겠다.

VMware Docs에서 SaltStack Config

현재 다음 두가지 문서자료가 제공되고 있다.

Salt Master 용어 개선 진행 중

VMware Docs 사이트의 SaltStack 관련 문서에서 다음과 같은 문구를 볼 수 있다.

문제가 되는 용어를 제거하려는 VMware 이니셔티브의 일환으로 Salt 마스터라는 용어는 SaltStack Config 및 관련 제품과 문서에서 더 나은 용어로 대체될 예정입니다. 용어 업데이트가 완전히 완료되기까지 몇 번의 릴리스 주기를 거칠 수 있습니다.

Salt Master라고 사용하던 용어를 시작으로 일부 용어에 대한 변화가 있는 것으로 보인다. 예전 자료와 비교해볼 때 신경써야할 것 같다.

답글 남기기

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

You May Also Like

SaltStack 기초 – 명령 실행

SaltStack을 설치하면 즉시 셸 명령을 실행하고 패키지를 업데이트하며 모든 중앙 관리 시스템에 파일을 배포할 수 있습니다. 또한 모든…

SaltStack 이해 – 파이썬

파이썬 아까 우리가 솔트를 사용하기 위해서 파이썬이나 다른 코드를 쓸 필요가 없다고 말한 것을 압니다. 사실입니다. 그러나 파이썬,…

Agentless Salt – 원격 실행

시스템이 목록에 추가되면 즉시 셸 명령을 실행하고 패키지를 업데이트하고 모든 대상 시스템에 파일을 배포할 준비가 됩니다. 또한 모든…

솔트(Salt) 시스템 아키텍처

솔트란 무엇인가? 솔트(Salt)는 파이썬 기반 오픈 소스 원격 실행 프레임워크이다. 구성 관리 자동화 프로비저닝 오케스트레이션 솔트 시스템 아키텍처…