zoukankan      html  css  js  c++  java
  • influxDB使用小结

    在集群中安装influxdb

    influxdb提供了官方镜像,因此在集群中安装influxdb十分方便,只需要指定镜像名为influxdb即可自动下载运行,只需要配置环境变量就可以进行初始化设置

    以下是官方文档提供的可配置环境变量

    INFLUXDB_DB

    以这个环境变量作为名字自动初始化一个数据库

    INFLUXDB_HTTP_AUTH_ENABLED

    允许身份验证。必须设置此选项或必须在配置文件中设置auth-enabled = true才能使后续的任何身份验证相关选项生效。

    INFLUXDB_ADMIN_USER

    以这个环境变量作为名字自动初始化一个管理员用户

    INFLUXDB_ADMIN_PASSWORD

    以这个环境变量作为管理员用户的密码

    INFLUXDB_USER

    以这个环境变量作为名字自动初始化一个普通用户,如果初始化了数据库,则自动获得该数据库的读写权限

    INFLUXDB_USER_PASSWORD

    使用INFLUXDB_USER配置的用户的密码。如果未设置,则生成随机密码并打印到标准输出。

    INFLUXDB_READ_USER

    要在INFLUXDB_DB上使用读取权限创建的用户的名称。如果未设置INFLUXDB_DB,则此用户将没有授予权限。

    INFLUXDB_READ_USER_PASSWORD

    使用INFLUXDB_READ_USER配置的用户的密码。如果未设置,则生成随机密码并打印到标准输出。

    INFLUXDB_WRITE_USER

    要在INFLUXDB_DB上使用写权限创建的用户的名称。如果未设置INFLUXDB_DB,则此用户将没有授予权限。

    INFLUXDB_WRITE_USER_PASSWORD

    使用INFLUXDB_WRITE_USER配置的用户的密码。如果未设置,则生成随机密码并打印到标准输出。

    使用HTTP API与数据库通信

    influxDB自带HTTP接口,可以轻松编写代码读写数据库

    首先观察官方文档中使用curl操作数据库的样例:

    Create your first database

    curl -XPOST "http://localhost:8086/query" --data-urlencode "q=CREATE DATABASE mydb"
    

    Insert some data

    curl -XPOST "http://localhost:8086/write?db=mydb" 
    -d 'cpu,host=server01,region=uswest load=42 1434055562000000000'
    
    curl -XPOST "http://localhost:8086/write?db=mydb" 
    -d 'cpu,host=server02,region=uswest load=78 1434055562000000000'
    
    curl -XPOST "http://localhost:8086/write?db=mydb" 
    -d 'cpu,host=server03,region=useast load=15.4 1434055562000000000'
    

    Query for the data

    curl -G "http://localhost:8086/query?pretty=true" --data-urlencode "db=mydb" 
    --data-urlencode "q=SELECT * FROM cpu WHERE host='server01' AND time < now() - 1d"
    

    Analyze the data

    curl -G "http://localhost:8086/query?pretty=true" --data-urlencode "db=mydb" 
    --data-urlencode "q=SELECT mean(load) FROM cpu WHERE region='uswest'"
    

    看起来有一些麻烦,但是influxDB官方同时给出了HTTP client代码库

    使用GO Client

    连接客户端

    c, err := client_v2.NewHTTPClient(client_v2.HTTPConfig{
    		Addr:     "http://192.168.102.238:8086",
    		Username: "kubespy",
    		Password: "kubespy",
    	})
    	if err != nil {
    		log.Fatal(err)
    	}
    	defer c.Close()
    
  • 相关阅读:
    算法笔记_148:有向图欧拉回路求解(Java)
    算法笔记_147:有向图欧拉回路判断应用(Java)
    算法笔记_146:TarJan算法的应用(Java)
    算法笔记_145:拓扑排序的应用(Java)
    第十六章、例行性工作排程 (crontab)
    第十五章、磁碟配额(Quota)与进阶文件系统管理
    第十四章、Linux 账号管理与 ACL 权限配置
    第十三章、学习 Shell Scripts
    第十二章、正规表示法与文件格式化处理
    第十一章、认识与学习 BASH
  • 原文地址:https://www.cnblogs.com/bforever/p/10601229.html
Copyright © 2011-2022 走看看