美文网首页
Grafana 配置文件详解

Grafana 配置文件详解

作者: _fan凡 | 来源:发表于2018-10-08 13:13 被阅读0次

    Configuration

    Grafana后端有很多配置选项,可以在.ini配置文件或者通过环境变量指定。

    .ini文件的注释

    分号(;)是.ini文件中标准的注释行的方式。

    一个常见的问题就是忘记在custom.ini或者grafana.ini文件中取消注释行,这会导致配置项被忽略,不起作用。

    配置文件位置

    • 默认配置文件是在$WORKING_DIR/conf/defaults.ini

    • 用户配置文件是在$WORKING_DIR/conf/custom.ini

    • 用户配置文件中的配置信息可以被启动参数 --config参数覆盖。

    注意 如果使用deb或者rpm包安装Grafana,那么配置文件位于/etc/grafana/grafana.ini。这个路径是在Grafana的init.d脚本中使用--config参数指定的。
    
    

    使用环境变量

    所有如下在配置文件中的选项都可以使用环境变量覆盖,环境变量遵循如下规则:

    GF_<SectionName>_<KeyName>
    
    

    SectionName(选项名)是在括号(中括号[])中的文本。所有信息都需要大写,.应该使用_替代。例如如下的配置:

    # default section
    instance_name = ${HOSTNAME}
    
    [security]
    admin_user = admin
    
    [auth.google]
    client_secret = oldS3cretKey
    
    

    那么就可以使用如下的环境变量覆盖这些配置:

    export GF_DEFAULT_INSTANCE_NAME=my-instance
    export GF_SECURITY_ADMIN+USER=admin
    export GF_AUTH_GOOGLE_CLIENT_SECRET=oldS3cretKey
    
    

    instance_name

    设置grafana-server实例的名称。在日志记录、内置度量、集群信息中会被使用到。默认值是${HOSTNAME},即实例名称这可以使用系统变量HOSTNAME来替换。如果获得是是空值或者不存在,Grafana将尝试使用系统调用来获取机器名称。

    [paths]

    data

    Grafana存储sqlite3数据库文件的位置(如果已使用),sessions文件(如果已使用)以及其他数据。该路径通常在init.d脚本或者systemd服务文件在命令行中指定。

    temp_data-lifetime

    data目录中的临时副本需要保存多久。默认是24h。支持的模式有h(hours),m(minutes),例如168h30m10h30m。使用0表示永久保存。

    logs

    Grafana存储log的路径,该路径通常在init.d脚本或者systemd服务文件在命令行中指定。可以通过配置文件或者默认环境变量文件中覆盖。

    plugins

    Grafana自动搜索和查找插件的目录

    provisioning

    包含Grafana在启动时使用的提供配置文件的文件件。当json文件变化是仪表盘将被重新加载。

    [server]

    http_addr

    Grafana服务器将要绑定的ip地址,如果是空值则绑定所有的网卡接口。

    http_port

    Grafana服务器将要绑定的端口,默认是3000.如果使用80端口,需要给Grafana提供二进制权限例如:

    sudo  setcap 'cap_net_bind_service=+ep' /usr/sbin/grafana=server
    
    

    或者重定向80端口到Grafana的端口:

    sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 3000
    
    

    另一种方式是在Grafana前边放一台web服务器如Nginx或者Apache,然后代理请求到Grafana。

    protocal

    http or https

    注意 Grafana 3.0之前的版本易受POODLE的影响,所以强烈建议升级到3.x或者使用反向代理来终止ssl
    
    

    domain

    该设置只会作为root_url设置的一部分。如果使用了GitHub或者Google 的OAuth这这将很重要。

    enforce_domain

    如果主机头(host header)没有匹配域则重定向到正确的域。防止DNS重新绑定攻击。默认为false。

    root_url

    这是从web浏览器访问Grafana使用的完整的url。如果使用Google或者GitHub 的OAuth授权将非常重要(需要确保回调url的正确性)。

    注意 如果在Grafana之前使用反向代理,并通过子路径暴露出去,该设置也很重要。此时,子路径将被添加到此url的末尾。
    
    

    static_root_path

    该路径指向前端文件(HTML,JS, CSS)的目录默认指向public目录,这就是为什么二进制Grafana执行时需要把工作目录设置为安装目录的原因。

    cert_file

    证书文件的路径(如果protocal设置为https)

    cert_key

    证书秘钥文件的路径(如果protocal设置为https)

    router_logging

    设置为true则记录Grafana所有的http请求(不仅仅是错误)。这也就是说grafana日志的level设置为info。



    [database]

    Grafana需要一个数据库来粗出用户、仪表盘等其他信息。默认配置是使用sqlite3,是一个嵌入式数据库(包含在Grafana的二进制文件中)。

    url

    使用url或者下面的其他字段来配置数据库。例如:

    mysql://user:secret@host:port/database

    type

    可以为mysql,postgres或者sqlite3。自行决定

    path

    只适用于sqlite3数据库。数据库文件的存储路径。

    host

    只适用于mysql或者postgres。包括ip地址或者域名和端口号。例如,mysql和grafana在同一台机器上运行:

    host = 127.0.0.1:3306

    name

    Grafana数据库的名称。一般使用grafana或者其他名字。

    user

    数据库用户(不适用于sqlite3)

    password

    数据库用户的密码(不适用于sqlite3)。如果密码包含#或者;则必须使用双引号,如

    """#123456;"""

    相关文章

      网友评论

          本文标题:Grafana 配置文件详解

          本文链接:https://www.haomeiwen.com/subject/zsodaftx.html