...
| 코드 블럭 | ||
|---|---|---|
| ||
DB # influx
Connected to http://localhost:8086 version 1.7.7
InfluxDB shell version: 1.7.7
> use telegraf
Using database telegraf
> show measurements
name: measurements
name
----
cpu
disk
diskio
interface
kernel
mem
processes
swap
system
> select time, hostname, ifDescr, ifHCInOctets, ifHCOutOctets from interface limit 10
name: interface
time hostname ifDescr ifHCInOctets ifHCOutOctets
---- -------- ------- ------------ -------------
1564033501000000000 ........ Control Plane Interface 0 0
1564033501000000000 ........ EOBC0/0 523313485438 219027416263
1564033501000000000 ........ GigabitEthernet1/1 72976539034 13897483850
1564033501000000000 ........ GigabitEthernet1/10 0 0
1564033501000000000 ........ GigabitEthernet1/11 0 0
1564033501000000000 ........ GigabitEthernet1/12 0 0
1564033501000000000 ........ GigabitEthernet1/13 0 0
1564033501000000000 ........ GigabitEthernet1/14 0 0
1564033501000000000 ........ GigabitEthernet1/15 0 0
1564033501000000000 ........ GigabitEthernet1/16 0 0 |
| 코드 블럭 | ||
|---|---|---|
| ||
DB $ influx -database telegraf -execute "show series from interface limit 5" key --- interface,agent_host=...,host=localhost.localdomain,hostname=...,ifDescr=ae0 interface,agent_host=...,host=localhost.localdomain,hostname=...,ifDescr=ae0.0 interface,agent_host=...,host=localhost.localdomain,hostname=...,ifDescr=ae1 interface,agent_host=...,host=localhost.localdomain,hostname=...,ifDescr=ae1.0 interface,agent_host=...,host=localhost.localdomain,hostname=...,ifDescr=ae2 DB $ influx -database telegraf -execute "show series from interface" | wc -l 6018 |
...
duration : 0s → 보관주기 무한대
the duration of the retention policy is 0s which is an alias for infinite
https://stackoverflow.com/questions/41620595
| 코드 블럭 | ||
|---|---|---|
| ||
DB # influx
Connected to http://localhost:8086 version 1.7.7
InfluxDB shell version: 1.7.7
> show retention policies on telegraf
name duration shardGroupDuration replicaN default
---- -------- ------------------ -------- -------
autogen 0s 168h0m0s 1 true |
ifluxdb 용량
용량은 큰 의미가 없음
데이터를 쌓으면서 압축하는 듯
influx 사양
디스크는 SSD 추천
현재 VM 사양은 다음과 같음 ( CPU : 2.7GHz 4 코어 / RAM 32GB / DISK : 128GB HDD )
쿼리 속도가 느려 SSD 머신으로 옮기면 빨라질 듯
시리즈는 현재 3~4만개 정도로 적음 / 최소사양으로 가도 됨
| 코드 블럭 | ||
|---|---|---|
| ||
# date
Thu Jul 25 16:49:49 KST 2019
# du -h -d 0 /var/lib/influxdb/data/
63M /var/lib/influxdb/data/ |
...
$ influx -precision rfc3339
Connected to http://localhost:8086 version 1.7.7
> select * from _internal.."database" where "database"='telegraf' order by time desc limit 1;
name: database
time database hostname numMeasurements numSeries
---- -------- -------- --------------- ---------
2020-10-16T07:01:30Z telegraf kms-db 9 35946 |
ifluxdb 용량
용량은 큰 의미가 없음
데이터를 쌓으면서 압축하는 듯
| 코드 블럭 | ||
|---|---|---|
| ||
DB # date
Thu Jul 25 16:49:49 KST 2019
DB # du -h -d 0 /var/lib/influxdb/data/
63M /var/lib/influxdb/data/ |
| time | 용량 |
|---|---|
| 2019-07-25 16:49 | 63MB |
| 2019-07-26 08:35 | 56MB |
| 2019-07-26 08:57 | 77MB |
| 2019-07-29 10:39 | 428MB |
| 2019-08-05 10:45 | 858MB |
| 2019-10-15 21:39 | 4.4G |
| 2020-10-16 16:33 | 26G |
ifluxdb 백업
1달분 용량은 420MB 정도
| 코드 블럭 | ||
|---|---|---|
| ||
$ time influxd backup -host 150.183.100.58:8088 -portable -database telegraf -start 2020-09-01T00:00:00Z -end 2020-10-01T00:00:00Z /bak/2020/09/
real 1m53.771s
user 0m27.740s
sys 0m3.824s
$ du -h /bak/2020/09/
420M /bak/2020/09/
$ ls -1 /bak/2020/09/
20201016T072451Z.manifest
20201016T072451Z.meta
20201016T072451Z.s103.tar.gz
20201016T072451Z.s111.tar.gz
...
ls /bak/2020/09/ | wc -l
67 |
https://docs.influxdata.com/influxdb/v1.8/administration/backup_and_restore/
influxdb csv export
limit 를 주어서 실행할 것
| 코드 블럭 | ||
|---|---|---|
| ||
DB $ influx -database telegraf -format csv -execute "select * from interface limit 1000" > /tmp/influx.csv |
grafana 설치
yum repo 추가
yum 으로 설치
https://grafana.com/docs/installation/rpm/
3000번 포트 방화벽 해제
최초접속
기본비밀번호 admin / admin 변경
https://grafana.com/docs/guides/getting_started/
grafana 대시보드 구성
다음문서 참고
https://lkhill.com/telegraf-influx-grafana-network-stats/
time range 설정 : 우측 상단에 있음
https://grafana.com/docs/reference/timerange/
| 코드 블럭 | ||
|---|---|---|
| ||
SELECT
derivative(mean("ifHCInOctets"), 1s) *8 AS "in",
derivative(mean("ifHCOutOctets"), 1s) *8 AS "out"
FROM "autogen"."interface"
WHERE ("hostname" = '...' AND
(
"ifDescr" = 'irb.573' OR
"ifDescr" = 'irb.573' OR
"ifDescr" = 'xe-0/0/1' OR
"ifDescr" = 'xe-0/0/1' OR
"ifDescr" = 'xe-0/0/2' OR
"ifDescr" = 'xe-0/0/2'
)
)
AND $timeFilter
GROUP BY time($__interval), "ifDescr" fill(null) |
grafana 설치
yum repo 추가
yum 으로 설치
https://grafana.com/docs/installation/rpm/
3000번 포트 방화벽 해제
최초접속
기본비밀번호 admin / admin 변경
https://grafana.com/docs/guides/getting_started/
grafana 대시보드 구성
다음문서 참고
https://lkhill.com/telegraf-influx-grafana-network-stats/
...
비고
시계열 DB 1위 : influx db
https://db-engines.com/en/ranking/time+series+dbms
...

