Store Gateway#
Store Gateway позволяет хранить меньше данных на локальном хранилище и дает возможность уменьшить время хранения метрик Prometheus и повторно запрашивать все данные и метрики облачного хранилища.
Store Gateway действует как API-шлюз и не требует значительных объемов локального дискового пространства. Он присоединяется к кластеру Thanos при запуске и объявляет данные, к которым он может получить доступ. Store Gateway хранит небольшой объем информации обо всех удаленных блоках на локальном диске и синхронизирует ее с облачным хранилищем.
Последовательность выполнения#
Запустите Thanos:
thanos store \
--data-dir "/local/state/data/dir" \
--objstore.config-file "bucket.yml"
Пример содержимого bucket.yml:
type: GCS
config:
bucket: ""
service_account: ""
prefix: ""
Как правило, для каждого блока базы данных временных рядов, находящегося в хранилище объектов, требуется в среднем 6 МБ локального дискового пространства, но для блоков высокой мощности с большим набором меток оно может достигать 30 МБ и более.
Это справедливо для предварительно вычисленного индекса, который включает в себя символы и записи смещений (указывающие на количество байтов или битов, на которое нужно сдвинуть или сместить определенные данные), а также метаданные JSON.
Разделение по времени#
По умолчанию Store Gateway просматривает все данные в хранилище объектов и возвращает их на основе запроса временного диапазона.
Флаги Thanos --min-time, --max-time позволяют сегментировать хранилище Thanos на основе постоянного времени или продолжительности по отношению к текущему времени.
Например, установка: --min-time=-6w & --max-time=-2w заставит Store Gateway возвращать метрики, попадающие в диапазон от now - 6 weeks до now - 2 weeks (недель).
Постоянное время необходимо задать в формате RFC3339. Например, --min-time=2018-01-01T00:00:00Z, --max-time=2019-01-01T23:59:59Z.
Store Gateway может не получать новые блоки немедленно, поскольку разделение по времени частично выполняется в задании асинхронной синхронизации блоков, которое по умолчанию выполняется каждые 3 минуты.
Для повышения устойчивости к сбоям используйте перекрывающиеся временные диапазоны Sidecar и других компонентов Thanos
Querier обрабатывает перекрывающиеся временные ряды путем их объединения.
Результат#
Store Gateway настроен и готов к использованию.