본문으로 건너뛰기

서비스 제어

mac pull, mac start, mac stop, mac restart, mac status, mac logs, mac info, mac clean.

mac pull

설정된 레지스트리에서 컨테이너 이미지를 받아옵니다. 모드는 반드시 지정해야 합니다.

~$ mac pull all # 마스터 + 에이전트 이미지 전체
~$ mac pull master # 마스터 이미지만
~$ mac pull agent # 에이전트 이미지만

이미지의 버전은 패키지 버전 (/usr/share/mango-ai-center/VERSION 참고)에 맞춰 고정됩니다. 프라이빗 미러를 쓰려면 MAC_REGISTRY를 설정하세요 — 환경 참고.

mac start

MAC 서비스를 기동합니다. 모드는 반드시 지정해야 합니다.

~$ mac start all # 이 호스트에서 마스터 + 에이전트
~$ mac start master # 마스터만 (웹 UI, API, Prometheus)
~$ mac start agent # 에이전트만 (익스포터, sdk-agent, bmc-agent)

mac start는 누락된 이미지를 자동으로 받아오고, 컨테이너를 detached 모드로 띄운 뒤, 접속 URL을 출력합니다. agent 모드에서는 MASTER_IP가 가리키는 마스터에 이 호스트를 함께 등록합니다.

~$ mac start agent
Registering with master 10.1.5.7 ...
Agent started successfully
Node ID: 4
Node name: gpu-server-04

mac stop

실행 중인 서비스를 중지합니다. 모드는 반드시 지정해야 합니다.

~$ mac stop all
~$ mac stop master
~$ mac stop agent

mac stop agent는 마스터에 통보해 노드를 인벤토리에서 해제 합니다. 서버를 폐기할 때 적절한 명령입니다. 재부팅이나 유지보수처럼 일시적인 정지라면 호스트를 그냥 재기동해도 됩니다 — 그저 오프라인이 된 에이전트는 등록 상태를 유지하므로 인벤토리도 그대로 보존됩니다.

mac restart

mac stop <mode>mac start <mode>를 묶어 실행하는 편의 명령입니다. 모드는 반드시 지정해야 합니다.

~$ mac restart all
~$ mac restart master
~$ mac restart agent

mac env set으로 변수를 수정한 뒤, 새 값이 컨테이너에 반영되도록 이 명령을 사용하세요.

mac status

~$ mac status
NAME STATUS PORTS
mac-api-server running 0.0.0.0:28080->28080/tcp
mac-web-ui running 0.0.0.0:23000->80/tcp
mac-prometheus running 0.0.0.0:29090->9090/tcp
mac-metrics-bridge running 0.0.0.0:29199->29199/tcp
mac-loki running 0.0.0.0:29210->3100/tcp
mac-switch-exporter running 0.0.0.0:29400->29400/tcp

mac logs

정확한 docker-compose 호출을 외우지 않고도 컨테이너 로그를 스트리밍할 수 있습니다.

~$ mac logs # 실행 중인 모든 MAC 컨테이너 tail
~$ mac logs api-server # 서비스 하나 tail
~$ mac logs api-server prometheus # 일부만 tail

mac info

현재 호스트의 설치 상태를 한 화면으로 요약합니다 — CLI 버전, 사용 중인 레지스트리, 설정 디렉터리, 관리 대상 환경 변수의 적용 값, 그리고 이 호스트에서 감지된 master / agent 모드. 노드가 이상 동작을 보일 때 가장 먼저 살펴볼 진단 명령입니다.

~$ mac info
mac version 0.4.0
config dir /etc/mango/mac
registry registry.example.com/mac
docker compose v2.27.0
master IP 10.1.5.7
node name gpu-server-04
node id 4

mac version

~$ mac version
mac version 0.4.0

~$ mac -v
~$ mac --version

CLI 버전만 출력하고 종료합니다 — 설치된 MAC 버전에 따라 동작을 분기해야 하는 스크립트에 유용합니다.

mac clean

모든 것을 제거합니다 — 컨테이너, MAC 도커 네트워크, 명명 볼륨 (Prometheus 시계열 DB와 Loki 로그 포함), 로컬에 캐시된 MAC 이미지까지. 완전히 새로 시작할 때 사용하세요.

~$ mac clean
경고

mac clean은 파괴적이며 되돌릴 수 없습니다. 과거 메트릭을 보존하려면 먼저 Prometheus 볼륨을 백업해 두세요.