Как настроить Grafana на экземпляре EC2, используя аутентификацию IAM для экземпляра RDS mysql?

0

У меня есть стек ELK с графаной, установленным на экземплярах EC2. Я создал базу данных mysql в RDS, создал базу данных grafana и пользователь grafana с соответствующими разрешениями. Этот пользователь может получить доступ через mysql, используя соответствующую настройку роли IAM.

Однако, когда я пытаюсь запустить службу Grafana с использованием этой базы данных, я получаю следующую ошибку в журналах:

"Fail to initialize orm engine" logger=sqlstore error="Sqlstore::Migration 
failed err: Error 1045: Access denied for user 'grafana'@'SERVERIP' (using 
password: YES)\n"

Мой раздел базы данных grafana.ini выглядит так:

[database]
host = aurora-cluster-ClusterName.cluster-
RandomAWSSuppliedChars.Region.rds.amazonaws.com:3306
type = mysql
name = grafanaDbName
user = grafanaUserName
password = 'aws rds generate-db-auth-token --hostname aurora-cluster-
  ClusterName.cluster-RandomAWSSuppliedChars.Region.rds.amazonaws.com --
  username grafanaUserName --port 3306 --region
  Region'

Я пробовал также предоставить пароль, но я уверен, что мне нужен сгенерированный токен аутентификации. Я также попытался создать токен аутентификации и вставить его вручную в течение 15-минутного окна, в то время как это хорошо для тестирования, и я получил ту же ошибку отказа в доступе.

Поддерживается ли IAM Authentication? Если да, то каким образом я могу предоставить требуемый токен Auth?

Теги:
amazon-iam
amazon-rds
grafana

1 ответ

0
Лучший ответ

Для подключения файла конфигурации требуется несколько конкретных настроек. RDS требует как сертификата ssl, так и токена IAM. Токен - это длинная сгенерированная строка, которая лучше всего настраивается на переменную среды и затем передается. Сертификат должен быть загружен и сделан доступным.

[database]
host = ClusterUri:3306
type = mysql
name = grafanaDatabaseName
user = grafanaUserName
password = AwsSuppliedToken
ssl_mode=true
ca_cert_path=/CertificatePath/rds-combined-ca-bundle.pem
server_cert_name=ClusterName.cluster-RandomAwsSuppliedCharacters.AwsRegion.rds.amazonaws.com

Ещё вопросы

Сообщество Overcoder
Наверх
Меню