influxDB 설치

현승빈·2023년 7월 28일

개요

운영체제는 ubuntu 20.04 버전입니다.
먼저 오픈소스 버전에 influxDB를 설치할 수 있는 링크입니다.
[참조 문서]
https://docs.influxdata.com/influxdb/v1.8/introduction/install/

wget을 사용하여 설치법

## wget 이 설치되어 있지않다면
## sudo apt update && sudo apt install wget
## 위 명령어를 통해 wget을 설치하고 진행하시기 바랍니다.

wget -q https://repos.influxdata.com/influxdata-archive_compat.key
echo '393e8779c89ac8d958f81f942f9ad7fb82a25e133faddaf92e15b16e6ac9ce4c influxdata-archive_compat.key' | sha256sum -c && cat influxdata-archive_compat.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/influxdata-archive_compat.gpg > /dev/null
echo 'deb [signed-by=/etc/apt/trusted.gpg.d/influxdata-archive_compat.gpg] https://repos.influxdata.com/debian stable main' | sudo tee /etc/apt/sources.list.d/influxdata.list

## 위에 명령어로 레포지토리 등록후에 InfluxDB를 설치 및 실행합니다.
sudo apt-get update && sudo apt-get install influxdb
sudo service influxdb start

설치가 마무리 되고 influxDB 서비스가 실행되었는지 확인해봅니다.

$ sudo service influxdb status

● influxdb.service - InfluxDB is an open-source, distributed, time series database
     Loaded: loaded (/lib/systemd/system/influxdb.service; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2023-07-28 04:16:10 UTC; 50min ago
       Docs: https://docs.influxdata.com/influxdb/
    Process: 2593 ExecStart=/usr/lib/influxdb/scripts/influxd-systemd-start.sh (code=exited, status=0/SUCCE>
   Main PID: 2594 (influxd)
      Tasks: 8 (limit: 4020)
     Memory: 20.6M
     CGroup: /system.slice/influxdb.service
             └─2594 /usr/bin/influxd -config /etc/influxdb/influxdb.conf

Jul 28 04:16:09 ubuntu-monitors influxd-systemd-start.sh[2594]: ts=2023-07-28T04:16:09.540339Z lvl=info msg>
Jul 28 04:16:09 ubuntu-monitors influxd-systemd-start.sh[2594]: ts=2023-07-28T04:16:09.540537Z lvl=info msg>
Jul 28 04:16:09 ubuntu-monitors influxd-systemd-start.sh[2594]: ts=2023-07-28T04:16:09.540729Z lvl=info msg>

influxDB 데이터베이스 생성 및 쿼리실행

[참조 문서]
https://docs.influxdata.com/influxdb/v1.8/introduction/get-started/

influxDB가 실행이 되고있다면
influx -precision rfc3339 를 통해 해당 influxDB에 접속합니다.

$ influx -precision rfc3339

Connected to http://localhost:8086 version 1.8.10
InfluxDB shell version: 1.8.10
>

위와 같은 명령줄이 나온다면
Influx Query Language을 사용할 수 있습니다.
해당 명령줄은 exit 나 Ctrl + D 를 통해 종료할 수 있습니다.

> SHOW DATABASES
name: databases
name
----
_internal
>

SHOW DATABASES 명령어를 통해서 해당 influxDB 서비스에 데이터베이스를 조회가 가능합니다.
하지만 지금은 데이터베이스를 생성하지 않았기 때문에 기본적으로 구성되어있는 _internal (시스템) 을 제외하고는 데이터베이스가 없습니다.

## CREATE DATABASE <db-name>. 
## <db-name> 는 만들고자하는 데이터베이스의 이름입니다.

> CREATE DATABASE hyundb
> SHOW DATABASES
name: databases
name
----
_internal
hyundb
>

데이터베이스가 생성이 되었고 해당 데이터베이스를 사용하기 위해서는
USE hyundb 명령어를 통해서 사용하고자 하는 데이터베이스를 사용할 수 있습니다.

## USE <db-name> 을 통해 이제부터 모든 실행은 <db-name>에서 실행됩니다.
> USE hyundb
Using database hyundb
>

influxdb line에는 정해진 포인트 프로토콜들이 있고 해당 프로토콜에 대해서 설명하는 docs입니다.

[참조 문서]
https://docs.influxdata.com/influxdb/v1.8/write_protocols/line_protocol_reference/#line-protocol-syntax

다음 줄은 모두 InfluxDB에 쓸 수 있는 포인트의 예입니다.

cpu,host=serverA,region=us_west value=0.64
payment,device=mobile,product=Notepad,method=credit billed=33,licenses=3i 1434067467100293230
stock,symbol=AAPL bid=127.46,ask=127.48
temperature,machine=unit42,type=assembly external=25,internal=37 1434067467000000000

INSERT 문으로 실행되고있는 db에서 cpu라는 측정값에 host=서버이름 region=지역, value=값 으로 라인을 생성합니다.
SELECT "host", "region", "value" FROM "cpu" 명령어로 Insert로 입력했던 데이터를 조회합니다.

> INSERT cpu, host=testserver, region=kr_central, value=7.21

> SELECT "host", "region", "value" FROM "cpu"
name: cpu
time                           host    region  value
----                           ----    ------  -----
2023-07-28T05:51:30.304567328Z serverA us_west 0.64
profile
클라우드 엔지니어

0개의 댓글