blob: a27364f2db72bc1b31cd61f5be2bcfd5e20c23d2 [file] [log] [blame]
Filip Pytlound6fa6ab2016-08-03 15:59:49 +02001
2========
3InfluxDB
4========
5
6InfluxData is based on the TICK stack, the first open source platform for managing IoT time-series data at scale.
7
8Sample pillars
9==============
10
11Single-node influxdb, enabled http frontend and admin web interface:
12
13.. code-block:: yaml
14
15 influxdb:
16 server:
17 enabled: true
18 http:
19 enabled: true
20 bind:
21 address: 0.0.0.0
22 port: 8086
23 admin:
24 enabled: true
25 bind:
26 address: 0.0.0.0
27 port: 8083
28
29Single-node influxdb, SSL for http frontend:
30
31.. code-block:: yaml
32
33 influxdb:
34 server:
35 enabled: true
36 http:
37 bind:
38 ssl:
39 enabled: true
40 key_file: /etc/influxdb/ssl/key.pem
41 cert_file: /etc/influxdb/ssl/cert.pem
42
Guillaume Thouvenin1091d462016-11-14 11:53:10 +010043Single-node influxdb where you specify paths for data and metastore directories. You
44need to ensure that directories exist:
45
46.. code-block:: yaml
47
48 influxdb:
49 server:
50 enabled: true
51 data:
52 dir: '/opt/influxdb/data'
53 wal_dir: '/opt/influxdb/wal'
54 meta:
55 dir: '/opt/influxdb/meta'
56
Simon Pasquier8fa8f712017-06-22 12:04:05 +020057InfluxDB server with customized parameters for the data service:
58
59.. code-block:: yaml
60
61 influxdb:
62 server:
63 enabled: true
64 data:
65 max_series_per_database: 20000000
Simon Pasquier9ae08ff2017-06-22 12:28:29 +020066 cache_max_memory_size: 524288000
67 cache_snapshot_memory_size: 26214400
68 cache_snapshot_write_cold_duration: "5m"
69 compact_full_write_cold_duration: "2h"2h"
70 max_values_per_tag: 5000
Simon Pasquier8fa8f712017-06-22 12:04:05 +020071
Guillaume Thouvenin071a93e2016-10-24 17:22:23 +020072Single-node influxdb with an admin user:
73
74.. code-block:: yaml
75
76 influxdb:
77 server:
78 enabled: true
79 http:
80 enabled: true
81 bind:
82 address: 0.0.0.0
83 port: 8086
84 admin:
85 enabled: true
86 bind:
87 address: 0.0.0.0
88 port: 8083
89 user:
90 enabled: true
91 name: root
92 password: secret
93
94Single-node influxdb with new users:
95
96.. code-block:: yaml
97
98 influxdb:
99 server:
100 user:
101 user1:
102 enabled: true
103 admin: true
104 name: username1
105 password: keepsecret1
106 user2:
107 enabled: true
108 admin: false
109 name: username2
110 password: keepsecret2
111
112Single-node influxdb with new databases:
113
114.. code-block:: yaml
115
116 influxdb:
117 server:
118 database:
119 mydb1:
120 enabled: true
121 name: mydb1
122 mydb2:
123 enabled: true
124 name: mydb2
125
Swann Croiset1eaf3612016-12-02 14:42:48 +0100126Manage the retention policies for a database:
127
128.. code-block:: yaml
129
130 influxdb:
131 server:
132 database:
133 mydb1:
134 enabled: true
135 name: mydb1
136 retention_policy:
137 - name: rp_db1
138 duration: 30d
139 replication: 1
140 is_default: true
141
142Where default values are:
143
144* name = autogen
145* duration = INF
146* replication = 1
147* is_default: false
148
149
Guillaume Thouvenin071a93e2016-10-24 17:22:23 +0200150Here is how to manage grants on database:
151
152.. code-block:: yaml
153
154 influxdb:
155 server:
156 grant:
157 username1_mydb1:
158 enabled: true
159 user: username1
160 database: mydb1
161 privilege: all
162 username2_mydb1:
163 enabled: true
164 user: username2
165 database: mydb1
166 privilege: read
167 username2_mydb2:
168 enabled: true
169 user: username2
170 database: mydb2
171 privilege: write
172
Filip Pytlound6fa6ab2016-08-03 15:59:49 +0200173InfluxDB relay:
174
175.. code-block:: yaml
176
177 influxdb:
178 server:
179 enabled: true
180 http:
181 enabled: true
182 output:
183 idb01:
184 location: http://idb01.local:8086/write
185 timeout: 10
186 idb02:
187 location: http://idb02.local:8086/write
188 timeout: 10
189 udp:
190 enabled: true
191 output:
192 idb01:
193 location: idb01.local:9096
194 idb02:
195 location: idb02.local:9096
196
Filip Pytloune93852a2016-08-03 16:42:42 +0200197InfluxDB cluster:
198
199.. code-block:: yaml
200
201 influxdb:
202 server:
203 enabled: true
204 meta:
205 bind:
206 address: 0.0.0.0
207 port: 8088
208 http_address: 0.0.0.0
209 http_port: 8091
210 cluster:
211 members:
212 - host: idb01.local
213 port: 8091
214 - host: idb02.local
215 port: 8091
216 - host: idb03.local
217 port: 8091
218
Filip Pytlound6fa6ab2016-08-03 15:59:49 +0200219Deploy influxdb apt repository (using linux formula):
220
221.. code-block:: yaml
222
223 linux:
224 system:
225 os: ubuntu
226 dist: xenial
Guillaume Thouveninfa42e982016-10-21 12:23:23 +0200227 repo:
228 influxdb:
229 enabled: true
230 source: 'deb https://repos.influxdata.com/${linux:system:os} ${linux:system:dist} stable'
231 key_url: 'https://repos.influxdata.com/influxdb.key'
Filip Pytlound6fa6ab2016-08-03 15:59:49 +0200232
Simon Pasquierf6169652017-07-17 14:04:19 +0200233InfluxDB client for configuring databases, users and retention policies:
234
235.. code-block:: yaml
236
237 influxdb:
238 client:
239 enabled: true
240 server:
241 protocol: http
242 host: 127.0.0.1
243 port: 8086
244 user: admin
245 password: foobar
246 user:
247 user1:
248 enabled: true
249 admin: true
250 name: username1
251 database:
252 mydb1:
253 enabled: true
254 name: mydb1
255 retention_policy:
256 - name: rp_db1
257 duration: 30d
258 replication: 1
259 is_default: true
260 grant:
261 username1_mydb1:
262 enabled: true
263 user: username1
264 database: mydb1
265 privilege: all
266
Simon Pasquier6f515562017-08-29 11:55:02 +0200267InfluxDB relay with HTTP outputs:
268
269.. code-block:: yaml
270
271 influxdb:
272 relay:
273 enabled: true
Simon Pasquier91782662017-09-08 11:36:06 +0200274 telemetry:
275 enabled: true
276 bind:
277 address: 127.0.0.1
278 port: 9196
Simon Pasquier6f515562017-08-29 11:55:02 +0200279 listen:
280 http_backend:
281 type: http
282 bind:
283 address: 127.0.0.1
284 port: 9096
285 output:
286 server1:
287 location: http://server1:8086/write
288 timeout: 20s
289 buffer_size_mb: 512
290 max_batch_kb: 1024
291 max_delay_interval: 30s
292 server2:
293 location: http://server2:8086/write
294
Filip Pytlound6fa6ab2016-08-03 15:59:49 +0200295Read more
296=========
297
298* https://influxdata.com/time-series-platform/influxdb/
Filip Pytloun1523e422017-02-02 13:02:03 +0100299
300Documentation and Bugs
301======================
302
303To learn how to install and update salt-formulas, consult the documentation
304available online at:
305
306 http://salt-formulas.readthedocs.io/
307
308In the unfortunate event that bugs are discovered, they should be reported to
309the appropriate issue tracker. Use Github issue tracker for specific salt
310formula:
311
312 https://github.com/salt-formulas/salt-formula-influxdb/issues
313
314For feature requests, bug reports or blueprints affecting entire ecosystem,
315use Launchpad salt-formulas project:
316
317 https://launchpad.net/salt-formulas
318
319You can also join salt-formulas-users team and subscribe to mailing list:
320
321 https://launchpad.net/~salt-formulas-users
322
323Developers wishing to work on the salt-formulas projects should always base
324their work on master branch and submit pull request against specific formula.
325
326 https://github.com/salt-formulas/salt-formula-influxdb
327
328Any questions or feedback is always welcome so feel free to join our IRC
329channel:
330
331 #salt-formulas @ irc.freenode.net