Monitoring/Grafana

Grafana 설치

Dragonfog.net 2021. 6. 18. 13:06
반응형

Grafana는 시각화 툴로 시계열 데이터를 수집하여 시각화 하여 사용자에게 보여주는 오픈소스 Dashboard 툴이다.

여러 datasource 와 plugin을 지원하여 다양한 용도로 사용 할수 있습니다.

 

아래 사이트에서 Grafana 다운로드 및 설치 방법을 확인 할 수 있습니다.

 

Download Grafana

Overview of how to download and install different versions of Grafana on different operating systems.

grafana.com

Grafana TEST 환경은 CentOS 7.x 입니다.

 

Grafana 설치

Grafana최신 버전을 다운로드 합니다. (2021-06-18 기준)

wget https://dl.grafana.com/oss/release/grafana-8.0.2-1.x86_64.rpm

 

현재 디렉토리에 다운받은 Grafana 설치 파일을 yum을 사용하여 설치를 진행합니다.

sudo yum localinstall grafana-8.0.2-1.x86_64.rpm

 

설치가 완료되었으면 systemctl start grafana-server 로 grafana 프로세스를 구동합니다.

 

설치후 브라우저를 통하여 다음 주소로 접근해봅니다.

 

http://{서버아이피}:3000 

초기 패스워드는 admin / admin 입니다.

 

Grafana 와 maradb 연동

사전 mariadb가 설치 되어 있어야 합니다.

# mysql -u root -p  // DB Console로 접근

 

Database 생성 및 권한 부여

MariaDB [(none)]> create database grafana default character set utf8;

MariaDB [(none)]> create user grafana@localhost identified by 'grafana'

-- Grafana와 같은 서버를 사용 --

MariaDB [(none)]> GRANT USAGE ON grafana.* to 'grafana'@'localhost' identified by 'grafana';

MariaDB [(none)]> GRANT ALL PRIVILEGES ON grafana.* to 'grafana'@'localhost' with grant option;

-- Remote에 있는 DB 서버를 사용 --

MariaDB [(none)]> GRANT USAGE ON grafana.* to 'grafana'@'192.168.1.%' identified by 'grafana';

MariaDB [(none)]> GRANT ALL PRIVILEGES ON grafana.* to 'grafana'@'192.168.1.%' with grant option;
MariaDB [(none)]> flush privileges;

 

grafana.ini 컨피그 수정


[database]
# Example: mysql://user:secret@host:port/database
url = mysql://grafana:grafana@192.168.1.100:3306/grafana

여기까지 설정후 Grafana를 재기동 하시면 Mariadb에 관련 table이 생성되며 연동되게 됩니다.

아래와 같이 테이블이 정상적으로 생성되었습니다.

 

MariaDB [(none)]> use grafana
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
MariaDB [grafana]> show tables;
+----------------------------+
| Tables_in_grafana          |
+----------------------------+
| alert                      |
| alert_configuration        |
| alert_instance             |
| alert_notification         |
| alert_notification_state   |
| alert_rule                 |
| alert_rule_tag             |
| alert_rule_version         |
| annotation                 |
| annotation_tag             |
| api_key                    |
| cache_data                 |
| dashboard                  |
| dashboard_acl              |
| dashboard_provisioning     |
| dashboard_snapshot         |
| dashboard_tag              |
| dashboard_version          |
| data_source                |
| library_element            |
| library_element_connection |
| login_attempt              |
| migration_log              |
| org                        |
| org_user                   |
| playlist                   |
| playlist_item              |
| plugin_setting             |
| preferences                |
| quota                      |
| server_lock                |
| session                    |
| short_url                  |
| star                       |
| tag                        |
| team                       |
| team_member                |
| temp_user                  |
| test_data                  |
| user                       |
| user_auth                  |
| user_auth_token            |
+----------------------------+
42 rows in set (0.000 sec)

 

이후 다른서버 그라파나도 위의 디비에 연동 하시게 되면 동일한 데이터를 보실수 있습니다.

다만 plugin 은 각 서버에서 관리됨으로 설치 하실때 양쪽 노드에 모두 설치를 해주시고 

운영하시면됩니다.

 

반응형

'Monitoring > Grafana' 카테고리의 다른 글

Grafana + Zabbix 연동하기  (0) 2021.06.21
Grafana의 Slack 알람 메세지에 차트 이미지 넣기  (0) 2021.06.18