Files
proxmox-loki-terraform/install_promtail.sh

78 lines
2.6 KiB
Bash
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#!/bin/bash
set -e
echo "=== Установка Promtail ==="
# Версия Promtail (должна совпадать с версией Loki)
PROMTAIL_VERSION="2.9.3"
# Создание пользователя для Promtail
echo "Создание пользователя promtail..."
if ! id -u promtail > /dev/null 2>&1; then
sudo useradd --system --no-create-home --shell /bin/false promtail
fi
# Создание директорий
echo "Создание необходимых директорий..."
sudo mkdir -p /etc/promtail
sudo mkdir -p /var/lib/promtail
# Скачивание Promtail
echo "Скачивание Promtail ${PROMTAIL_VERSION}..."
cd /tmp
wget -q "https://github.com/grafana/loki/releases/download/v${PROMTAIL_VERSION}/promtail-linux-amd64.zip"
unzip -o promtail-linux-amd64.zip
sudo mv promtail-linux-amd64 /usr/local/bin/promtail
sudo chmod +x /usr/local/bin/promtail
rm promtail-linux-amd64.zip
# Копирование конфигурационного файла
echo "Установка конфигурации Promtail..."
sudo cp /tmp/promtail-config.yaml /etc/promtail/promtail-config.yaml
# Установка прав доступа
sudo chown -R promtail:promtail /etc/promtail
sudo chown -R promtail:promtail /var/lib/promtail
# Добавление promtail в группу adm для чтения системных логов
sudo usermod -a -G adm promtail
# Создание systemd service файла
echo "Создание systemd service для Promtail..."
sudo tee /etc/systemd/system/promtail.service > /dev/null <<EOF
[Unit]
Description=Promtail service
Documentation=https://grafana.com/docs/loki/latest/clients/promtail/
After=network-online.target loki.service
[Service]
Type=simple
User=promtail
Group=promtail
ExecStart=/usr/local/bin/promtail -config.file=/etc/promtail/promtail-config.yaml
Restart=on-failure
RestartSec=10s
LimitNOFILE=65536
[Install]
WantedBy=multi-user.target
EOF
# Перезагрузка systemd и запуск сервиса
echo "Запуск Promtail service..."
sudo systemctl daemon-reload
sudo systemctl enable promtail
sudo systemctl start promtail
# Проверка статуса
echo "Проверка статуса Promtail..."
sleep 3
sudo systemctl status promtail --no-pager || true
echo "=== Установка Promtail завершена ==="
echo "Promtail доступен на порту 9080"
echo "Проверить статус: sudo systemctl status promtail"
echo "Проверить логи: sudo journalctl -u promtail -f"
echo "Проверить метрики: curl http://localhost:9080/metrics"