InfluxDB
Configuration
/etc/influxdb/influxdb.conf
[http]
auth-enabled = true
Management
Create a new user and database
influx
> CREATE USER admin WITH PASSWORD 'adminpass' WITH ALL PRIVILEGES
> exit
influx -username admin -password adminpass
> set password for admin = 'newpass'
>
> create database mmap_nmon
> create user mon with password 'thisispassword'
> grant all on mmap_nmon to mon
Login to InfluxDB
# In the shell
influx -username admin -password thisispass
# In the InfluxDB CLI
> auth
username:
password
InfluxQL
> show databases
name: databases
name
----
_internal
nmon_reports
nmon2influxdb_log
> show users
user admin
---- -----
admin true
mon false
> use nmon_reports
Using database nmon_reports
> show measurements
name: measurements
name
----
CPU_ALL
DISKAVGRIO
DISKAVGWIO
DISKBSIZE
DISKBUSY
DISKREAD
DISKREADSERV
DISKRIO
DISKRXFER
DISKSERV
...
Retention Policy
# for current database
> show retention policies
name duration shardGroupDuration replicaN default
---- -------- ------------------ -------- -------
autogen 8760h0m0s 168h0m0s 1 true
# for specified database
> show retention policies on nmon2influxdb_log
name duration shardGroupDuration replicaN default
---- -------- ------------------ -------- -------
autogen 0s 168h0m0s 1 false
log_retention 48h0m0s 24h0m0s 1 true
# Create a policy
> CREATE RETENTION POLICY "one_day_only" ON "NOAA_water_database" DURATION 1d REPLICATION 1
# Alter the policy
> ALTER RETENTION POLICY "what_is_time" ON "NOAA_water_database" DURATION 3w SHARD DURATION 2h DEFAULT
# Delete a policy
> DROP RETENTION POLICY "what_is_time" ON "NOAA_water_database"
Verify the account
curl -G http://localhost:8086/query -u mon:thisispassword --data-urlencode "q=SHOW DATABASES"
{"results":[{"statement_id":0,"series":[{"name":"databases","columns":["name"],"values":[["mmap_nmon"]]}]}]}
Services
systemctl start influxdb
systemctl enable influxdb