본문 바로가기

리눅스

우분투에서 InfluxDB를 설치하고 설정하는 방법

728x90

우분투에서 InfluxDB를 설치하고 설정하는 방법

InfluxDB는 시계열 데이터를 저장하고 조회하는 데이터베이스입니다.

테스트 환경

$ lsb_release -d
Description:	Ubuntu 22.04.2 LTS

InfluxDB 저장소 추가

echo "deb https://repos.influxdata.com/ubuntu `lsb_release -sc` stable" | tee /etc/apt/sources.list.d/influxdb.list
curl -sL https://repos.influxdata.com/influxdb.key | sudo apt-key add -

패키지 목록 업데이트

apt update

 

InfluxDB 설치

apt install -y influxdb

 

InfluxDB 서비스 실행

InfluxDB 서비스를 시작하고 활성화합니다.

systemctl enable --now influxdb
ps -ef | grep -v grep | grep influxd
$ ps -ef | grep -v grep | grep influxd           
influxdb    2192       1  0 05:36 ?        00:00:00 /usr/bin/influxd -config /etc/influxdb/influxdb.conf
netstat -nlpt | grep influxd
$ netstat -nlpt | grep influxd
tcp        0      0 127.0.0.1:8088          0.0.0.0:*               LISTEN      2192/influxd        
tcp6       0      0 :::8086                 :::*                    LISTEN      2192/influxd

 

InfluxDB 버전 정보 확인

  • InfluxDB version
influxd version
$ influxd version
InfluxDB v1.6.7~rc0 (git: unknown unknown)
  • InfluxDB shell version
influx -version
$ influx -version
InfluxDB shell version: 1.6.7~rc0
728x90

InfluxDB 설정 파일 편집

vim /etc/influxdb/influxdb.conf

필요한 경우, 설정 파일에서 다양한 옵션을 수정할 수 있습니다. 기본 설정으로도 작동하며, 필요한 경우 특정 설정을 변경할 수 있습니다. 수정이 완료되면 설정 파일을 저장하고 나가세요.

 

InfluxDB CLI에 액세스

influx
$ influx
Connected to http://localhost:8086 version 1.6.7~rc0
InfluxDB shell version: 1.6.7~rc0
>

InfluxDB CLI에 액세스하여 데이터베이스를 생성하고 데이터를 쿼리할 수 있습니다.

 

위의 단계를 따라하면 InfluxDB가 우분투 시스템에 설치되고 설정됩니다. InfluxDB는 기본적으로 localhost:8086에서 실행되며, 이를 통해 데이터베이스 및 데이터를 관리할 수 있습니다. 추가적인 설정 변경이 필요한 경우, InfluxDB의 공식 문서를 참조하는 것이 좋습니다.

 

curl 명령은 InfluxDB에 대한 HTTP API를 사용하여 데이터베이스의 측정값을 조회하는 명령입니다. localhost:8086은 InfluxDB가 실행 중인 호스트와 포트를 나타내며, dbname은 조회할 데이터베이스의 이름입니다.

 

아래는 curl 명령어를 설명하는 내용입니다.

 

  • -G: GET 요청을 사용합니다.
  • -i: 서버 응답 헤더를 출력합니다.
  • -u anonymous:anonymous: 사용자 인증을 위해 사용자 이름과 비밀번호를 지정합니다. 이 명령에서는 anonymous 사용자를 사용하고 있습니다.
  • --data-urlencode "db=dbname": 데이터베이스 이름을 URL 인코딩하여 요청에 추가합니다.
  • --data-urlencode "q=SHOW MEASUREMENTS": 측정값을 조회하기 위한 쿼리를 URL 인코딩하여 요청에 추가합니다. 이 예제에서는 모든 측정값을 조회하기 위해 SHOW MEASUREMENTS를 사용하고 있습니다.
curl -G -i http://localhost:8086/query -u anonymous:anonymous --data-urlencode "db=dbname" --data-urlencode "q=SHOW MEASUREMENTS"
$ curl -G -i http://localhost:8086/query -u anonymous:anonymous --data-urlencode "db=dbname" --data-urlencode "q=SHOW MEASUREMENTS"
HTTP/1.1 200 OK
Content-Type: application/json
Request-Id: 2f1d763f-102d-11ee-8002-000000000000
X-Influxdb-Build: OSS
X-Influxdb-Version: 1.6.7~rc0
X-Request-Id: 2f1d763f-102d-11ee-8002-000000000000
Date: Wed, 21 Jun 2023 12:14:34 GMT
Transfer-Encoding: chunked

{"results":[{"statement_id":0}]}

 

실제로 명령을 실행하려면 터미널에서 해당 curl 명령을 실행하면 됩니다. 응답은 InfluxDB에서 반환한 결과를 표시할 것입니다.

 

728x90