콘텐츠로 이동

신뢰성 검증


이 문서에서는 완전한 데이터 파이프라인을 통해 중앙 배포의 신뢰성을 검증합니다:

  • Datakit의 특정 수집기를 통해 대량의 데이터 수집
  • Dataway를 통해 Kodo로 데이터 업로드
  • Kodo는 기존 프로세스에 따라 데이터를 로그 스토리지에 기록

환경 준비

  • Datakit이 설치되어 있고 logstreaming 수집기가 활성화된 기본 Linux 머신 1대
  • Datakit의 logstreaming 수집기로 데이터를 푸시하는 테스트 스크립트 준비
  • 대량의 로그 데이터를 수용할 수 있도록 무제한 워크스페이스 1개 활성화

실행

  • 테스트 데이터 다운로드, 해당 데이터셋에는 10,000개의 로그가 포함되어 있으며 개별 길이는 모두 1KB입니다:
wget https://static.guance.com/testing-data/10000-1kb.log
  • 다음 스크립트를 수정하여 위에서 준비한 Datakit IP를 입력하고, 스크립트를 curl-log-streaming.sh로 저장합니다:
#!/bin/bash

# 매개변수가 제공되었는지 확인합니다
if [ $# -eq 0 ]; then
    echo "Usage: $0 <number_of_iterations>"
    exit 1
fi

# 명령줄 매개변수를 반복 횟수로 읽습니다
num_iterations=$1
file=$2

# for 루프를 사용하여 지정된 횟수만큼 반복합니다
for ((i=1; i<=num_iterations; i++)); do
        curl -v http://<YOUR-DATAKIT-IP>:9529/v1/write/logstreaming?source=drop-testing --data-binary "@$2"
        sleep 2.5 # 2.5초 대기
done
  • 위 스크립트를 실행합니다. 이 스크립트는 Datakit에 40,000번의 요청을 푸시하며 약 28시간 동안 지속됩니다:
bash curl-log-streaming.sh 40000 10000-1kb.log

결과 확인

위 단계를 완료한 후 Datakit의 monitor에서 logstreaming/drop-testing 수집을 확인할 수 있습니다:

datakit monitor -MI

다음 명령을 통해 Datakit이 Dataway로 보고하는 요청 지연 시간을 확인할 수 있습니다:

datakit monitor -MW

Guance의 로그 탐색기에서 로그 소스(source)를 drop-testing으로 선택하면, 상태 분포 차트의 각 막대(간격 1분) 높이는 약 22~24만(60s/2.5s*10000)입니다. 정상적인 경우 데이터는 매우 균일하게 나타나며, 급증이나 급감이 발생하지 않습니다(데이터 쓰기가 고정된 주기로 이루어지기 때문).

이 과정에서 내장 뷰로 이동하여 "dataway"를 검색하면 Dataway 자체의 메트릭 상태를 확인할 수 있으며, NSQ/GuanceDB/Kodo/Kodo-X 등 구성 요소의 탐색기로 이동하여 배포가 성공적으로 이루어졌는지 확인해야 합니다.

문서 평가

이 페이지가 도움이 되었나요?