Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Table of Contents

일반 환경

여기서 일반 환경이라 함은,
salt-minion이 이미 설치되어 다른 salt-master에 연결되어 있지 않은 환경을 말합니다.

즉, salt-minion이 이미 가동되고 있지 않은 환경을 뜻합니다.

Yum install

Info

Salt official installation guide (https://repo.saltproject.io/3001.html#rhel)
→ Enter into the linked page, and then choose “Redhat / CentOS 7 PY3” tab button.

  1. SaltStack 저장소 등록

    Code Block
    languagebash
    $ yum install -y epel-release
    $ rpm --import https://repo.saltproject.io/py3/redhat/7/x86_64/archive/3001.4/SALTSTACK-GPG-KEY.pub
    $ curl -fsSL https://repo.saltproject.io/py3/redhat/7/x86_64/archive/3001.4.repo | sudo tee /etc/yum.repos.d/salt.repo
    $ yum clean expire-cache
  2. Salt-Minion 설치

    Code Block
    languagebash
    $ yum install -y salt-minion
  3. Config 설정

    • Salt-Minion : $ vim /etc/salt/minion.d/minion.conf

      • master : Salt-Master IP를 넣는다. Ex) 192.168.45.1

      • id : Salt 에서 확인하는 Unique ID. 다른 Salt-minion ID와 중복되면 안된다. Ex) minion1, minion2

        Code Block
        languageyaml
        ## log_level ##
        # One of 'garbage', 'trace', 'debug', info', 'warning'(default), 'error', 'critical'.
        log_level: info
        master: <master ip address>
        id: <생략 시, hostname = minion id>
  4. 서비스 시작

    Code Block
    languagebash
    $ systemctl enable salt-minion
    $ systemctl start salt-minion
    $ systemctl status salt-minion

Warning

Windows에서는 Python fork 지연 이슈로 인해, 아래와 같이 salt-minion 설정 파일에서
multiprocessing: False로 바꿔야 한다.

> C:\salt\conf\minion
####### Thread settings ########
###########################################
# Disable multiprocessing support, by default when a minion receives a
# publication a new process is spawned and the command is executed therein.
# WARNING: Disabling multiprocessing may result in substantial slowdowns
# when processing large pillars. See https://github.com/saltstack/salt/issues/38758
# for a full explanation.

multiprocessing: False

Note

Agent의 Hostname 확인

수집 Agent(Telegraf)의 Hostname이 초기 설정 “localhost.localdomain”이면 다른 수집 Agent와 Hostname이 중복되지 않게 변경하기를 권고합니다.
수집 Agent의 데이터 수집 후 InfluxDB에 저장할 때 데이터 중복 오류가 발생할 수 있습니다.

CH 1.0.1이상에서는 minion id와 telegraf의 hostname이 같도록 강제 적용합니다. (UI를 통해 설정할 경우에만)

...

CloudHub v1.0.1부터는 “install_conda.sh”가 “install_salt_on_conda.sh”로 파일명이 변경되었습니다.
v1.0.0 이전 버전은 “install_conda.sh”를 사용해야 합니다.

...

  1. Argument

    • -m : Salt-Master의 IP address (혹은 domain)를 입력합니다.

    • -i : Salt-Minion의 ID를 입력합니다.

      • 입력하지 않을 경우 hostname으로 등록

    • -h : Argument의 설명

      Code Block
      [root@localhost ~]# ./install_salt_on_conda.sh -h
      
      usage: install_salt_on_conda.sh [options]
      
      Installs Miniconda3 & Salt-Minion
      
      -m          Set salt-master ip address, -m [ip address]
      -i          Set salt-minion ID (default : hostname), -i [minion id]
  2. 설치항목 선택

    • 'N' 입력 (Salt-Minion만 설치)

      Code Block
      $ Do you install Salt-Master?' [y/N] N
  3. Conda 설치경로

    • 기본 설치경로 : /opt/miniconda3

    • 설치경로 변경 예제

      Code Block
      languagebash
      [root@localhost ~]# ./install_salt_on_conda.sh -m 192.168.56.101 -i minion1
      
      --------------------------------------------------
      Salt-Master : 192.168.56.101
      Salt-Minion ID : minion1
      --------------------------------------------------
      
      Miniconda3 will now be installed into this location:
      /opt/miniconda3
      
        - Press ENTER to confirm the location
        - Press CTRL-C to abort the installation
        - Or specify a different location below
      
      [/opt/miniconda3] >>> "설치경로 입력 (미입력 시 기본설치 폴더에 설치)"
  4. Salt-Minion 서비스 시작

    • 설치 완료 후 Salt-Minion 서비스를 자동으로 시작할 수 있습니다.

      Code Block
      languagebash
      Do you want to start the 'snet-salt-minion.service' [y/N]?

...