qinshihu/itops-agent-platform
요약
LLM 기반의 기업급 IT 운영(ITOps) 자동화 플랫폼으로, 멀티 에이전트 협업과 시각화된 워크플로를 통해 서버 점검 및 장애 진단을 수행합니다. RAG와 AI Copilot을 결합하여 지능형 운영 관리를 지원하며, 강력한 보안 설계와 Docker 기반의 간편한 배포를 제공합니다.
핵심 포인트
- 9개의 사전 설정된 멀티 에이전트 협업 지원
- 드래그 앤 드롭 방식의 시각적 워크플로 오케스트레이션
- RAG 및 지식 베이스를 활용한 지능형 컨텍스트 주입
- OpenAI 및 로컬 LLM(Ollama 등) 멀티 모델 지원
- AES-256-GCM 및 JWT 기반의 기업급 보안 체계
기업급 IT 운영(ITOps) 멀티 에이전트 자동화 플랫폼 — 대규모 언어 모델 (LLM) 기반의 지능형 운영 관리 솔루션.
🌐 프로젝트 공식 웹사이트: https://www.zjzwfw.cloud/ITOpsAgentinfo
ITOps Agent Platform은 기업급 풀스택 운영 자동화 플랫폼으로, 시각화된 워크플로 (Workflow) 오케스트레이션을 통해 여러 AI 에이전트 (Agent)가 협업하도록 하여 서버 점검, 알람 처리, 장애 진단, 컴플라이언스 체크 등 운영 업무의 자동화를 실현합니다.
graph TB
Browser["브라우저"] --> Nginx["Nginx 리버스 프록시"]
Nginx --> React["React 프론트엔드<br/>30개 이상의 페이지 | Zustand | @xyflow/react"]
...
멀티 에이전트 (Multi-Agent) 협업 — 9개의 사전 설정된 운영 에이전트 제공, 사용자 정의 생성 지원, 알람·진단·점검·변경 등 시나리오 커버
시각화 워크플로 (Visual Workflow) — 드래그 앤 드롭 방식의 오케스트레이션, 직렬/병렬/조건 분기 지원, WebSocket을 통한 실시간 실행 진행 상황 푸시
Web SSH 터미널 — xterm.js 기반의 대화형 원격 터미널, 실시간 입출력, 창 크기 자동 조절, 양방향 실시간 통신 지원
호스트 관리 강화 — 다단계 그룹 트리 구조, CSV 일괄 가져오기, SSH 자동 정보 수집 (CPU/메모리/디스크/OS)
데이터 가져오기 및 내보내기 — CSV/JSON 형식으로 서버 일괄 가져오기 지원, 알람·감사 로그·보고서 데이터 내보내기 지원
백업 및 복구 — 완전한 데이터베이스 백업 및 복구 프로세스, 압축, 무결성 검증 및 복구 후 자동 우아한 재시작 (Graceful Restart) 지원
서버 관리 — SSH 원격 접속, 명령 실행 및 이력 감사, 13가지 컴플라이언스 체크
알람 센터 — Webhook을 통해 Prometheus/Zabbix/일반 알람 수신, 자동 노이즈 제거 및 워크플로 트리거
지식 베이스 + RAG — 22개의 사전 설정된 지식 항목, LLM 컨텍스트 주입을 위한 지능형 검색
AI Copilot — 자연어 대화형 운영 어시스턴트, 시스템 상태 자동 감지
멀티 모델 지원 — Doubao(豆包), OpenAI 및 로컬 배포 대규모 모델 (Ollama/LM Studio/vLLM 등 OpenAI 호환 인터페이스) 동시 지원, 데이터의 완전한 도메인 내 유지 가능
기업급 보안 — AES-256-GCM 민감 데이터 암호화, JWT 인증, 속도 제한 (Rate Limiting), 감사 로그, 메모리 누수 방지
Docker 원클릭 배포 — 프론트엔드와 백엔드의 컨테이너화, 5분 내 서비스 가동, 알리바바 클라우드(Aliyun) 이미지 레지스트리 및 로컬 개발 핫 리로드 지원
프로젝트는 다층 보안 설계를 채택하여 서버와 데이터의 안전을 보장합니다:
| 보안 조치 | 설명 |
|---|---|
| 🔐 AES-256-GCM 암호화 | 서버 비밀번호와 SSH 키는 은행급 암호화 방식으로 저장되며, 키는 자동으로 생성됩니다 |
| 🎫 JWT 이중 토큰 인증 | Access Token + Refresh Token 메커니즘, 자동 갱신, 블랙리스트 로그아웃 지원 |
| 📜 완전한 작업 감사 | 모든 로그인, 명령 실행, 설정 변경에 대해 상세한 감사 로그가 남으며 추적이 가능합니다 |
| 🚫 민감 정보 마스킹 | 비밀번호, API 키 등 민감한 정보는 로그 및 출력 시 자동으로 마스킹 처리됩니다 |
| 🛡️ 비 루트 (Non-root) 실행 | Docker 컨테이너는 최소 권한 원칙에 따라 비 루트 사용자로 실행됩니다 |
| 🧱 Nginx 보안 헤더 | HSTS, CSP, X-Frame-Options, XSS 방어 등 보안 설정 적용 |
| ⚡ API 속도 제한 | 악의적인 요청과 무차별 대입 공격(Brute-force)을 방지하여 인터페이스 보안을 보호합니다 |
| 🏠 로컬 AI 지원 | Ollama, LM Studio, vLLM 등 로컬 배포 모델을 지원하여 데이터가 100% 외부로 유출되지 않습니다 |
| 🔑 강제 비밀번호 변경 | 시스템 최초 로그인 시 기본 비밀번호 변경을 강제하여 취약한 비밀번호 리스크를 차단합니다 |
데이터 보안 목표: 모든 서버 자격 증명은 로컬에 암호화되어 저장되며, 어떠한 제3자 AI로도 전송되지 않습니다. 에이전트가 실행하는 명령과 출력 또한 귀하의 서버 내부에서만 흐릅니다.
| 유형 | 제공업체/프레임워크 | 지원 여부 | 추천 시나리오 |
|---|---|---|---|
| 국내 클라우드 API | Volcengine · Doubao (豆包) | ✅ 완전 지원 | 중국 내 사용자 추천, 안정적이고 빠름 |
| 국제 클라우드 API | OpenAI (GPT-4o 등) | ✅ 완전 지원 | 외부 네트워크 환경을 가진 사용자 |
| 로컬 배포 | Ollama / LM Studio / vLLM | ✅ 완전 지원 | 높은 데이터 보안 요구사항, 폐쇄망 배포 |
로컬 모델 추천: Qwen2.5, Llama3, DeepSeek-Coder, Yi, ChatGLM, Phi-3 등 오픈 소스 대규모 모델 (OpenAI 인터페이스 호환).
| 계층 | 기술 |
|---|---|
| 프론트엔드 | React 18 + TypeScript + Tailwind CSS + Vite |
| ... |
# Windows
.\deploy.ps1
# Linux/Mac
...
스크립트는 자동으로 알리바바 클라우드 이미지를 가져오고, 설정을 생성하며, 서비스를 시작하고 상태를 검증합니다.
# 1. 환경 변수 설정
cp .env.example .env
# 2. 빌드 및 실행 (로컬 소스 빌드)
...
# 이미지 풀(Pull)
docker pull registry.cn-hangzhou.aliyuncs.com/huluwa666/tsq-images-hub:IT_Onlin-ITOps-backend-latest
docker pull registry.cn-hangzhou.aliyuncs.com/huluwa666/tsq-images-hub:IT_Onlin-ITOps-frontend-latest
...
간소화된 버전을 사용할 수도 있습니다:
docker-compose -f docker-compose.simple.yml up -d --build
또는 원클릭 스크립트를 사용하세요:
# Windows
.\start.ps1
# Linux/Mac
...
# 로컬 개발 환경 사용 (권장)
cd local-dev
start-dev.bat # Windows
...
- 프론트엔드(Frontend): Vite Hot Reload 지원, 코드 수정 시 http://localhost:5173 즉시 반영
- 백엔드(Backend): tsx watch Hot Reload 지원, 코드 수정 시 자동 재시작 http://localhost:3001
- 데이터베이스(Database): Docker volume을 통한 데이터 영속화(Persistence), 컨테이너 중지 시에도 데이터 유실 없음
# 백엔드
cd backend && npm install && npm run dev
# 프론트엔드
...
기본 관리자: admin / admin
⚠️ 첫 로그인 후 시스템에서 비밀번호 변경을 강제합니다.
시스템 개요
서버, 알람(Alert), 작업(Task) 등 핵심 지표를 표시합니다.
SSH 터미널
- xterm.js 기반의 대화형 SSH 터미널
- 실시간 양방향 통신 (WebSocket)
- 창 크기 자동 조절 (Auto-resize)
- 연결 상태 시각화
서버 관리
- 다단계 그룹화 트리 구조, 그룹별 서버 필터링
- CSV 일괄 가져오기, SSH 연결성 자동 검증 및 중복 제거
- 호스트 정보(OS/CPU/메모리/디스크/IP) 원클릭 수집
- 서버 카드에 그룹 태그 및 하드웨어 정보 표시
- 서버 목록 CSV/JSON 형식 내보내기 지원
서버 제어
- 서버 추가/편집/삭제, SSH 비밀번호 또는 키(Key) 인증 지원
- 태그 필터링, 연결 테스트
- 온라인 Shell 명령 실행, 명령 이력 감사(Audit)
- 14가지 시스템 준수 사항 점검 (CPU/메모리/디스크/네트워크/서비스/보안 등)
- 명령 이력 및 준수 점검 이력 JSON 내보내기
에이전트 (Agent)
- 9개의 사전 설정된 Agent: 알람 처리, 장애 진단, 로그 분석, 시스템 순찰, 변경 실행, 문서 생성, 준수 점검, 서버 명령 실행, 자동 순찰
- 사용자 정의 Agent 생성 지원, 시스템 프롬프트(System Prompt), 모델, 온도(Temperature) 파라미터 설정 가능
- Agent 테스트 및 실행 이력 추적
워크플로우 (Workflow)
- 시각적 드래그 앤 드롭 에디터
- 6개의 사전 설정된 워크플로우 템플릿
- 컨텍스트 전달 및 서버 선택 지원
- 실행 순서 토폴로지 정렬, 시각적 위치 우선 적용
워크플로우 실행
- 실시간 WebSocket을 통한 실행 진행률 푸시
- 노드 하이라이트, 사고 과정(Thinking Process) 표시
- 일시정지/계속/취소 지원
- Markdown 실행 보고서 자동 생성
알람 (Alert)
- Webhook 수신: Prometheus Alertmanager / Zabbix / 일반 형식
- 알람 자동 노이즈 제거 및 중복 제거
- 알람 → 워크플로우 자동 매핑 및 트리거
- 상태 관리: 신규/확인됨/해결됨
알림 (Notification)
- Webhook, 이메일, 기업 위챗(WeChat), 딩톡(DingTalk) 알림 지원
- 알림 설정 관리
- 시스템 알림 자동 푸시
데이터 가져오기 및 내보내기
- CSV 형식의 서버 목록 일괄 가져오기 (표준 템플릿 다운로드 제공)
- 지능형 중복 제거: hostname+name 결합 중복 제거, 중복 서버 자동 건너뛰기
- 상세 오류 보고: 각 행의 오류 메시지를 개별 반환하여 문제 파악 용이
- 트랜잭션 보장: 전체 성공 또는 전체 실패 (부분 가져오기 방지)
- 내보내기 지원: 서버 목록, 알람 데이터, 감사 로그, 보고서
- 내보내기 형식: CSV (Excel에서 바로 열기 가능) 및 JSON
백업 및 복구
- 데이터베이스 자동/수동 백업, gzip 압축 지원
- 백업 무결성 검증 (파일 크기 검증)
- 백업 복구 후 데이터 일관성 보장을 위한 자동 우아한 재시작 (Graceful Restart)
- 백업 이력 관리 및 정리 정책
- 정기 자동 백업 지원
지식 베이스 (Knowledge Base)
- 22개의 사전 설정된 지식 항목
- 강화된 RAG 검색, 키워드 + 의미론적 유사도(Semantic Similarity) 정렬
- LLM 대화 컨텍스트 자동 주입
- 일괄 가져오기/내보내기
AI 운영 비서
- 자연어 대화형 운영 지원
- 시스템 알람, 서버, 작업 상태 자동 감지
- 규칙 기반의 빠른 응답 + LLM 심층 분석
작업 스케줄러
- 4개의 사전 설정된 예약 작업
- Cron 표현식 설정
- 지정된 워크플로우 자동 실행
권한 및 감사
- 사용자 관리 (admin/operator/viewer 역할)
- JWT 인증 + Token 블랙리스트
- 전체 작업 감사 로그 (Audit Log)
보고서
- 워크플로우 실행 시 Markdown 보고서 자동 생성
- 보고서 템플릿 관리
- 보고서 조회 및 다운로드
├── backend/
│ └── src/
│ ├── app.ts # Express 애플리케이션 엔트리
...
| 문서 | 설명 |
|---|---|
| 배포 매뉴얼 | 상세 배포 작업 설명 |
| ... | |
| 변수 | 설명 |
| --- | --- |
NODE_ENV | 실행 환경 |
PORT | 백엔드 포트 |
DATABASE_PATH | 데이터베이스 경로 |
JWT_SECRET | JWT 서명 키 |
JWT_EXPIRES_IN | Token 유효 기간 |
ALLOWED_ORIGINS | CORS 허용 출처 |
DOUBAO_API_KEY | Doubao API 키 |
DOUBAO_API_BASE | Doubao API 주소 |
DOUBAO_MODEL | Doubao 모델 |
OPENAI_API_KEY | OpenAI API 키 |
OPENAI_API_BASE | OpenAI API 주소 |
OPENAI_MODEL | OpenAI 모델 |
LOG_LEVEL | 로그 레벨 |
- 서버 비밀번호 및 SSH 키 AES-256-GCM 암호화 저장
- JWT 인증 + Token 블랙리스트 메커니즘 (데이터베이스 오류 시 안전한 다운그레이드: 거부)
- access_token + refresh_token 이중 토큰 (Dual Token) 메커니즘, 자동 갱신
- API 속도 제한 (Rate Limiting)
- bcrypt 비밀번호 해싱 (Cost Factor 12)
- 완전한 작업 감사 로그 (Audit Log)
- 민감 정보 자동 비식별화 (Masking)
- Nginx 보안 헤더 (HSTS/CSP/X-Frame-Options/XSS-Protection)
- 배포 스크립트 기본 admin/admin 초기 비밀번호, 첫 로그인 시 강제 변경
- 이메일 템플릿 XSS 방지 (HTML Escaping)
- Graceful Shutdown (우아한 종료, 30s 타임아웃 보호)
- 비 root 사용자 컨테이너 실행 + 최소 권한 파일 권한
본 프로젝트는 완전한 GitHub Actions CI/CD 파이프라인을 구성하고 있습니다:
| 파이프라인 | 트리거 조건 | 기능 |
|---|---|---|
| CI | main으로의 Push/PR | Lint + TypeScript 검사 + 테스트 + Docker 빌드 검증 |
| Release | 태그(v*) 푸시 또는 수동 | Docker 이미지 빌드 → 알리바바 클라우드(Aliyun) 푸시 → GitHub Release 자동 생성 |
| Mirror | main으로의 Push 또는 수동 | 코드를 Gitee/Gitcode로 자동 동기화 |
📖 상세 설정 가이드: docs/CICD_SETUP.md
谭策 (Tan Ce) — 독립 개발자 | AIOps 분야 탐구자
- 🌐 프로젝트 공식 웹사이트: ITOpsAgentinfo
- 📝 블로그: zjzwfw.cloud
- 📧 이메일: huawei_network@foxmail.com
- 💬 위챗 공식 계정:
IT Online
MIT © 谭策
AI 자동 생성 콘텐츠
본 콘텐츠는 GitHub AI Tools의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기