728x90

엘라스틱서치, 레디스, 스톰 그리고 스파크의 메트릭 정보를 수집하여서 그라파나에 보여주기 위해 프로메테우스를 사용하고있습니다. 어느날 엘라스틱서치에 오류가 발생하면서 셧다운 된 적이 있습니다. 다행이도 운영중인 서버가 아닌 테스트 서버의 디스크 용량이 꽉차서 운영에는 문제가 되지 않았습니다. 

 

어디서 용량을 많이 잡아 먹는지 보니 프로메테우스에서 대략 80퍼센트의 용량을 먹고 있었습니다.!! 

 

유로든 장소가 손상된 경우 문제결하는 전략은 Prometheus를 종료한 다음 전체 저장소 디렉터리를 제거하는 것입니다. 개별 블록 디렉터리나 WAL 디렉터리제거하여 제를 결할 수도 있습니다. 이는 렉터리당 약 2시간의 데이터실된다는 것을 미합니다. 시 말하지만, Prometheus의 토리지는 구성이 어난 장기 토리지가 아닙니다. 루션은 장된 보존이터 구성을 제공합니다.

주의: 구할 수 상이 발생할 수 있으므로 POSIX와 호환되지 않는 스템은 Prometheus의 컬 저장소에 대해 지원되지 않습니다. NFS 파일 시스템(AWS EFS 포함)은 원되지 않습니다. NFS는 POSIX와 호환될 수 있지만부분의 현은 렇지 않습니다. 정성을 위해 로컬 파일 시스템을 사용하는 것이 좋습니다.

 

 

 

일단 프로메테우스에서 제공하는 정보를 보시면 

저장

Prometheus에는 로컬 온디스크 시계열 데이터베이스가 포함되어 있지만 선택적으로 원격 스토리지 시스템과도 통합됩니다.

로컬 저장소

Prometheus의 로컬 시계열 데이터베이스는 로컬 스토리지에 매우 효율적인 맞춤형 형식으로 데이터를 저장합니다.

 

온디스크 레이아웃

취된? 샘플은 2시간 단위로 그룹화됩니다. 각 2시간 블록은 해당 시간창에 한 모든 계열 샘플이 포함된 Chunk 하위 디렉터리, 타데이터 파일 및 인덱스 파일(지표 이름 및 레이블을 청크 디렉터리의 시계열에 색인화함)이 함된 디렉터리로 구성됩니다. 크 디렉터리의 샘플은 기본적으로 각각 대 512MB 의 하나 이상의 세그먼트 일로 그룹화됩니다. 

 

API를 통해 리즈가 제되면 제 기록은 도의 삭제 표시 파일에 저장됩니다(청크 세그먼트에서 데이터를 즉시 삭제하는 대신).

어오는 플의 재 블록은모리에 보관되며전히 유지되지 습니다. Prometheus 버가 다시 작될 때 재생할 수 있는 WAL(미리 쓰기 로그)을 해 충돌로부터 보호됩니다. 미리 쓰기 그 파일은 wal128MB 그먼트로 디렉터리에 장됩니다. 이러한 파일에는 아직 압축되지 않은 시 데이터가 포함되어 있습니다. 따라서 일반 록 파일보다 훨씬 더 큽니다. Prometheus는 소 3개의 미리 쓰기그 파일을 보관합니다. 래픽이 많은 서버는 소 2시간의 시 데이터를 보관하기 위해 3개 이상의 WAL 파일을 보관할 수 있습니다.

Prometheus 버의 이터 렉터리는 다음과 같습니다.

시간 및 크기 보존 정책이 모두 지정된 경우 먼저 트리거되는 것이 사용됩니다.

만료된 블록 정리는 백그라운드에서 수행됩니다. 만료된 블록을 제거하는 데 최대 2시간이 걸릴 수 있습니다. 블록은 제거되기 전에 완전히 만료되어야 합니다.

./data
├── 01BKGV7JBM69T2G1BGBGM6KB12
│   └── meta.json
├── 01BKGTZQ1SYQJTR4PB43C8PD98
│   ├── chunks
│   │   └── 000001
│   ├── tombstones
│   ├── index
│   └── meta.json
├── 01BKGTZQ1HHWHV8FBJXW1Y3W0K
│   └── meta.json
├── 01BKGV7JC0RY8A6MACW02A2PJD
│   ├── chunks
│   │   └── 000001
│   ├── tombstones
│   ├── index
│   └── meta.json
├── chunks_head
│   └── 000001
└── wal
    ├── 000000002
    └── checkpoint.00000001
        └── 00000000
728x90
복사했습니다!