Prometheus S3 Exporter - это сервис на Python, который собирает метрики о состоянии S3-совместимого хранилища и экспортирует их в формате, пригодном для сбора Prometheus. Сервис предоставляет эндпоинт /metrics с актуальными метриками о вашем S3-хранилище.
- Сбор метрик о S3-бакетах (размер, количество объектов)
- Гибкая конфигурация через переменные окружения
- Готовность к развертыванию в Kubernetes
- Поддержка GitOps-деплоя через ArgoCD
- Клонируйте репозиторий
git clone https://github.com/ArgArakelyan/prometheus-s3-exporter.git - Настройте
docker-compose.ymlс нужными переменными оркжуения (они описаны ниже) - Запустите сервис
docker compose up -d
Манифесты для деплоя через ArgoCD находятся в папке argocd-deploy.
- Убедитесь, что ArgoCD установлен в вашем кластере
- Заранее создайте нужные секреты в неймспейсе, куда будет деплоится сам сервис
- Создайте новое приложение в ArgoCD, указав:
- URL репозитория, и directory
argocd-deploy
- URL репозитория, и directory
AWS_ACCESS_KEY_ID- ключ доступа S3AWS_ACCESS_SECRET_KEY- секретный ключ S3S3_ENDPOINT- URL эндпоинта S3 хранилищаREGION_NAME- регион в котором доступно ваше хранилище
s3_bucket_size_bytes- Размер бакета в байтахs3_object_count- Количество объектов в бакетеs3_bucket_last_modified_timestamp_seconds- Время изменения последнего объекта- используется для отслеживания активности записи в бакет
s3_bucket_oldest_object_timestamp_seconds- Время самого последнего объекта в бакете- используется для отслеживания политик ротации