Skip to content

Cài đặt Device Management

Device Management là dịch vụ quản lý tập trung cho xác thực và cấu hình của các Agent và Forwarder trong hệ sinh thái BlackHole. Dịch vụ này cung cấp RESTful API để quản lý thiết bị, cấu hình và đồng bộ hóa dữ liệu.

Yêu cầu

  • Docker và Docker Compose đã được cài đặt
  • Quyền truy cập để tạo và quản lý Docker containers
  • Kết nối mạng để tải Docker image từ registry

Cài đặt bằng Docker Compose

Cách đơn giản nhất để cài đặt Device Management là sử dụng Docker Compose. Thực hiện theo các bước sau:

1. Tạo file docker-compose.yml

Tạo file docker-compose.yml với nội dung sau:

yaml
version: "3.8"

services:
  blackhole-devices-management:
    image: ghcr.io/gcsclabs/siem-devices-management:latest
    container_name: blackhole-devices-management
    ports:
      - "3000:3000"
    environment:
      - NODE_ENV=production
    networks:
      - bh-net
    restart: unless-stopped
    healthcheck:
      interval: 30s
      timeout: 10s
      retries: 3
      start_period: 40s

networks:
  bh-net:
    external: true
📝
"Lưu ý" Nếu bạn chưa có network `bh-net`, hãy tạo network trước bằng lệnh: ```bash docker network create bh-net ``` Hoặc nếu bạn muốn Docker Compose tự tạo network, hãy thay đổi phần `networks` như sau: ```yaml networks: bh-net: driver: bridge ```

2. Khởi động Device Management

Chạy lệnh sau để khởi động dịch vụ:

bash
docker compose up -d

Lệnh này sẽ:

  • Tải image ghcr.io/gcsclabs/siem-devices-management:latest nếu chưa có
  • Tạo và khởi động container blackhole-devices-management
  • Kết nối container vào network bh-net

3. Kiểm tra trạng thái

Kiểm tra xem container đã khởi động thành công chưa:

bash
docker compose ps

Hoặc xem logs của container:

bash
docker compose logs -f blackhole-devices-management

Cấu hình nâng cao

Thay đổi cổng

Nếu cổng 3000 đã được sử dụng, bạn có thể thay đổi mapping cổng trong docker-compose.yml:

yaml
ports:
  - "8080:3000" # Sử dụng cổng 8080 trên host

Biến môi trường

Bạn có thể thêm các biến môi trường tùy chỉnh trong phần environment:

yaml
environment:
  - NODE_ENV=production
  - PORT=3000
  - LOG_LEVEL=info

Volume mounts

Nếu cần lưu trữ dữ liệu bền vững, bạn có thể mount volume:

yaml
volumes:
  - ./data:/app/data

Dừng và xóa dịch vụ

Để dừng dịch vụ:

bash
docker compose down

Để dừng và xóa tất cả dữ liệu (bao gồm volumes):

bash
docker compose down -v

Sau khi Device Management đã được cài đặt và chạy, bạn cần cấu hình BlackHole Search để kết nối với dịch vụ này. Xem Hướng dẫn kết nối Device Management trong tài liệu cài đặt BlackHole Search.

Khắc phục sự cố

Container không khởi động

Kiểm tra logs để xem lỗi:

bash
docker compose logs blackhole-devices-management

Đảm bảo:

  • Cả hai container đều nằm trong cùng một Docker network
  • Tên container hoặc hostname trong cấu hình BlackHole Search khớp với tên service trong docker-compose.yml
  • Cổng đã được mở đúng cách

Kiểm tra network

Xem các container trong network:

bash
docker network inspect bh-net

Released under the MIT License.