> ## Documentation Index
> Fetch the complete documentation index at: https://ai-kb.automationanywhere.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 온프레미스 설치 가이드

> 고객 환경에서 EKB 플랫폼을 설치하기 위한 요구 사항.

이 문서는 EKB 제품의 성공적인 온프레미스 설치 및 배포에 필요한 사전 배포 전제 조건, 확인 단계, 고려 사항을 설명합니다. 배포를 진행하기 전에 고객의 환경이 올바르게 구성되고 모든 필수 요구 사항을 충족하는지 확인하기 위한 포괄적인 체크리스트 역할을 합니다.

## 전제 조건

### 접근 요구 사항

* **서버 접근:**
  * sudo 권한으로 배포 서버에 접근할 수 있는지 확인합니다.
  * 모든 필요한 네트워크 경로가 안전한 VPN 또는 전용 네트워크 구성을 통해 설정되어 있는지 확인합니다.
* **사용자 권한:**
  * 배포 팀에 필요한 접근 권한이 부여되어 있는지 확인합니다.
  * 필요한 2-factor 인증(2FA) 또는 보안 토큰이 설정되어 있는지 확인합니다.

### 시스템 요구 사항

**운영 체계:**      
           Ubuntu 22 또는 RHEL 8.10

**하드웨어 사양:**     
      각 배포 티어별로 하드웨어가 다음 요구 사항을 충족하거나 초과하는지 확인합니다:

| 티어         | 코어  | RAM (GB) | SSD |
| :--------- | :-- | :------- | :-- |
| **SMALL**  | 16  | 64       | 1TB |
| **MEDIUM** | 32  | 128      | 2TB |
| **LARGE**  | 맞춤형 | 맞춤형      | 맞춤형 |

* **GPU** (EKB 플랫폼과 동일한 머신에 LLM을 배포하는 경우 필요)
* **SMALL:** \~500(100 동시) 사용자를 단일 VM 16 코어, 64gb ram, 1TB SSD로 지원할 수 있습니다. 이 머신은 월 \~\$600 비용이 듭니다. 이는 최소 규모 배포입니다.
* **MEDIUM:** \~2000(500 동시) 사용자를 더 큰 머신 32 코어, 128gb ram, 2TB SSD로 지원할 수 있습니다. 이 머신은 월 \~\$1,200 비용이 듭니다.
* **LARGE:** \~10000(1000+ 동시) 사용자는 인프라가 요구 사항을 지원할 수 있도록 컨테이너에 걸쳐 배포해야 합니다. 일반적으로 최소 월 \$2,000 비용이 듭니다. 추가 1,000 활성 사용자당 월 \$2,000를 계산하는 것이 좋습니다. 이는 완전히 분산된 배포입니다.

### 배포 도구 및 소프트웨어 의존성

* **배포 스크립트:**
  * 검증되고 버전 관리되는 Bash 배포 스크립트.
* **의존성 관리 도구:**
  * Python 3
  * Git (최신 버전)
  * Docker (v27.1.1) 또는 Podman
* **추가 도구 (선택 사항):**
  * 고객의 모니터링 요구 사항에 따른 로깅 및 모니터링 도구(예: ELK Stack, Prometheus, Grafana).

### 자격 증명 및 키

* **서버 자격 증명:**
  * 모든 서버 접근 자격 증명이 최신 상태이고 안전하게 저장되어 있는지 확인합니다.
* **애플리케이션 API 키 및 라이선스:**
  * 모든 애플리케이션별 API 키와 라이선스(예: OpenAI, SERP, Sentry)가 사용 가능하고 유효한지 확인합니다.

## 사전 배포 체크리스트

### **하드웨어 및 시스템 확인**

고객의 하드웨어 및 시스템 구성이 사양과 일치하는지 확인합니다:

```
# CPU 정보 확인

lscpu                         # Ubuntu와 RHEL 모두에서 작동

cat /proc/cpuinfo             # 더 자세한 CPU 정보


# 메모리 사용량 확인

free -h                       # 사람이 읽을 수 있는 형식의 메모리 사용량

cat /proc/meminfo             # 상세 메모리 정보


# 스토리지 사용량 확인
df -h                         # 디스크 사용량 표시

lsblk                         # 블록 디바이스 및 파티션 목록
```

#### **3.2 소프트웨어 및 의존성 확인**

모든 필요한 소프트웨어 구성 요소가 설치되고 올바르게 버전 관리되는지 확인합니다:

````

# Docker 버전 확인

docker --version              # Ubuntu와 RHEL 모두에 적용


# Docker Compose 버전 확인
docker compose version        # 최신 Docker 설정용

docker-compose --version      # 이전 설치용

```

# Python 버전 확인

python3 --version             # Python 3에 대한 선호 확인

python --version              # python3를 사용할 수 없는 경우 대체


# Git 버전 확인
git --version                 # Ubuntu와 RHEL 모두에 유효


````

#### **3.3 네트워크 및 연결 확인**

네트워크가 올바르게 구성되고 외부 의존성 또는 업데이트를 위한 충분한 인터넷 연결이 있는지 확인합니다:

```

# 인터넷 연결 가용성 확인

ping -c 4 google.com          # 네트워크 연결 확인을 위해 Google에 ping

curl -Is https://www.google.com | head -n 1  # curl을 사용한 대체 확인
```

#### **3.4 추가 확인**

**서비스 및 포트**

| 서비스                     | 경로         | 매개변수              | 내부 포트       | 외부 포트                     |
| :---------------------- | :--------- | :---------------- | :---------- | :------------------------ |
| 프론트엔드                   | /          | FRONTEND\_SUFFIX  | 3000        | —                         |
| Nginx                   | /          | —                 | —           | 80, 443                   |
| 백엔드                     | /backend   | BACKEND\_SUFFIX   | 8001        | —                         |
| 자동화 도구                  | /automator | AUTOMATOR\_SUFFIX | 8002        | —                         |
| Redis                   | —          | —                 | 6379        | —                         |
| RabbitMQ                | —          | —                 | 5672, 15672 | —                         |
| Supabase Kong API 게이트웨이 | /supabase  | SUPABASE\_SUFFIX  | 8000, 8443  | 8000, 8443 (관리자 전용)       |
| Supabase Postgres       | —          | —                 | 6543        | —                         |
| PostgreSQL (자동화 도구)     | —          | —                 | 5433        | —                         |
| Redis (자동화 도구)          | —          | —                 | 6380        | —                         |
| Ollama                  | —          | —                 | 11434       | — (로컬에 Ollama를 배포하는 경우에만) |

**프로토콜 지원**

| 서비스                     | HTTP | HTTPS | WebSocket |
| :---------------------- | :--- | :---- | :-------- |
| 프론트엔드                   | ✓    | ✓     | —         |
| Nginx                   | ✓    | ✓     | —         |
| 백엔드                     | ✓    | ✓     | —         |
| 자동화 도구                  | ✓    | ✓     | —         |
| Redis                   | ✓    | ✓     | —         |
| RabbitMQ                | ✓    | ✓     | —         |
| Supabase Kong API 게이트웨이 | ✓    | ✓     | ✓         |
| Supabase Postgres       | ✓    | ✓     | —         |
| PostgreSQL (자동화 도구)     | ✓    | ✓     | —         |
| Redis (자동화 도구)          | ✓    | ✓     | —         |
| Ollama                  | ✓    | ✓     | —         |

> **참고:** 모든 내부 머신은 서로 자유롭게 통신할 수 있어야 합니다. SSL(HTTPS) 연결을 사용하는 것이 좋습니다; PoC 중에는 HTTP가 지원됩니다.

**방화벽 및 보안 설정:**

방화벽 규칙이나 보안 그룹이 필요한 트래픽을 허용하는지 확인합니다.

## 일반 아키텍처

<img src="https://mintcdn.com/automationanywhere/OxdvKBG8xmNRyX4V/img/platform-admin/general-arc.png?fit=max&auto=format&n=OxdvKBG8xmNRyX4V&q=85&s=5907386003eea841271ca80eb72ae4ef" alt="general-arc.png" width="596" height="724" data-path="img/platform-admin/general-arc.png" />

### 아키텍처 다이어그램 – 온프레미스

명시된 전제 조건 리소스 할당이 있는 단일 가상 머신 박스의 배포 아키텍처 흐름

<img src="https://mintcdn.com/automationanywhere/OxdvKBG8xmNRyX4V/img/platform-admin/arc-diagram.png?fit=max&auto=format&n=OxdvKBG8xmNRyX4V&q=85&s=442fbcdaaba1f1f8538bdd21b3058a4a" alt="general-arc.png" width="1600" height="1229" data-path="img/platform-admin/arc-diagram.png" />

### AWS 클라우드 배포를 위한 배포 아키텍처 흐름

<img src="https://mintcdn.com/automationanywhere/OxdvKBG8xmNRyX4V/img/platform-admin/deployment-arc-1.png?fit=max&auto=format&n=OxdvKBG8xmNRyX4V&q=85&s=a43123dda4222c2c9dd4d58ab9fff1df" alt="general-arc.png" width="1600" height="1003" data-path="img/platform-admin/deployment-arc-1.png" />

<img src="https://mintcdn.com/automationanywhere/OxdvKBG8xmNRyX4V/img/platform-admin/deployment-arc-2.png?fit=max&auto=format&n=OxdvKBG8xmNRyX4V&q=85&s=89f281364970a9f7c616627cdd4cc51a" alt="general-arc.png" width="1600" height="1071" data-path="img/platform-admin/deployment-arc-2.png" />
