【问题标题】:How do I setup Grafana on an EC2 instance using IAM Auth for an RDS mysql instance?如何使用 RDS mysql 实例的 IAM Auth 在 EC2 实例上设置 Grafana?
【发布时间】:2018-02-26 20:52:20
【问题描述】:

我在 EC2 实例上安装了带有 grafana 的 ELK 堆栈。我在 RDS 中创建了一个 mysql 数据库,创建了一个 grafana 数据库和一个具有适当权限的 grafana 用户。可以使用适当设置的 IAM 角色通过 mysql 访问该用户。

但是,当我尝试使用该数据库启动 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 身份验证?如果是这样,我如何提供所需的身份验证令牌?

【问题讨论】:

    标签: mysql amazon-rds amazon-iam grafana


    【解决方案1】:

    配置文件需要几个特定的​​设置才能连接。 RDS 需要两者 ssl 证书和 IAM 令牌。令牌是一个生成的长字符串,最好设置为环境变量,然后传入。证书必须是downloaded 并且可以访问。

    [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
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-10-08
      • 2018-01-10
      • 2017-01-02
      • 2022-11-01
      • 2019-04-03
      • 2018-12-15
      • 1970-01-01
      相关资源
      最近更新 更多