이전 글 : telegraf, influxdb, grafana를 사용하여 Docker Container 모니터링 환경 구성하기 (1) - Influxdb, Grafana docker-compose로 만들기
https://tifferent.tistory.com/6
1. 모니터링을 하고자 하는 서버에 telegraf를 설치
설치 방법 자세한 내용 참고 : https://docs.influxdata.com/telegraf/v1.19/introduction/installation/
- CentOS
# telegraf 패키지 다운로드
wget https://dl.influxdata.com/telegraf/releases/telegraf-1.13.4-1.x86_64.rpm
# telegraf 설치
yum install localinstall telegraf-1.13.4-1.x86_64.rpm
# telegraf 시작, 중지, 상태 확인
systemctl start telegraf
systemctl stop telegraf
systemctl status telegraf
- Ubuntu
wget -qO- https://repos.influxdata.com/influxdb.key | sudo apt-key add -
source /etc/lsb-release
echo "deb https://repos.influxdata.com/${DISTRIB_ID,,} ${DISTRIB_CODENAME} stable" | sudo tee /etc/apt/sources.list.d/influxdb.list
sudo apt-get update && sudo apt-get install apt-transport-https
wget -qO- https://repos.influxdata.com/influxdb.key | sudo apt-key add -
source /etc/os-release
test $VERSION_ID = "7" && echo "deb https://repos.influxdata.com/debian wheezy stable" | sudo tee /etc/apt/sources.list.d/influxdb.list
test $VERSION_ID = "8" && echo "deb https://repos.influxdata.com/debian jessie stable" | sudo tee /etc/apt/sources.list.d/influxdb.list
test $VERSION_ID = "9" && echo "deb https://repos.influxdata.com/debian stretch stable" | sudo tee /etc/apt/sources.list.d/influxdb.listtest $VERSION_ID = "10" && echo "deb https://repos.influxdata.com/debian buster stable" | sudo tee /etc/apt/sources.list.d/influxdb.list sudo apt-get update && sudo apt-get install telegraf
apt-get update 명령에서 에러 나는 경우 : https://tifferent.tistory.com/2?category=915096 참고
sudo apt-get install telegraf
sudo service telegraf start
2. telegraf 설정 변경 후 telegraf 재실행
Docker 정보(메모리 외 다수의 정보)를 input으로 받아 influxdb를 output하여 저장한다.
conf 파일을 수정하여 telegraf 서비스를 재시작하자.
- telegrafh 설정 파일 : /etc/telegraf/telegraf.conf
- [[outputs.influxdb]] : 수집 내용을 저장 할 influxdb 정보를 입력한다. 없는 database 이름이라면 새로 생성된다.
- [[inputs.docker]] : 아래 해당하는 부분의 주석을 풀어주고, 값이 다른 부분이 있다면 아래와 같이 수정한다.
[[outputs.influxdb]]
urls = ["http://10.120.10.10:8086"] # influx db가 설치된 모니터링 서버 ip 및 influx db port
database = "docker_info" # telegraf로 수집하는 정보를 저장할 database 명
timeout = "5s"
(생략)
[[inputs.docker]]
endpoint = "unix:///var/run/docker.sock"
gather_services = false
container_names = []
source_tag = false
container_name_include = []
container_name_exclude = []
timeout = "5s"
perdevice = true
total = false
tag_env = ["JAVA_HOME", "HEAP_SIZE"]
docker_label_include = []
docker_label_exclude = []
🔔 [Tip] telegraf status 확인 시 권한 문제 관련 로그가 발생하는 경우..
[root@localhost /]# systemctl status telegraf
(생략)
Jan 06 15:12:20 localhost.localdomain telegraf[11154]: 2021-01-06T06:12:20Z E! [inputs.docker] Error in plugin: Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdock...: permission denied
[root@localhost /]# sudo usermod -aG docker telegraf # docker group에 telegraf 유저를 추가
[root@localhost /]# systemctl restart telegraf
3. influxdb 확인
database, measurement가 잘 생성되었는지, 수집이 정상적으로 되는지 확인한다.
influxdb가 설치된 서버로 접속하여 아래 명령 실행
[root@localhost /]#docker exec -it influxdb-grafana_influxdb_1 bash #influxdb 컨테이너 진입
root@9a3e02467c50:/#influx #influxdb 실행
Connected to http://localhost:8086 version 1.8.3
InfluxDB shell version: 1.8.3
> show databases # database 목록 보기
name: databases
name
----
docker_info
telegraf
> use docker_info
> show measurements
name: measurements
name
----
cpu
disk
diskio
docker
docker_container_blkio
docker_container_cpu
docker_container_mem
docker_container_net
docker_container_status
kernel
mem
processes
swap
system
>
> select * from docker_container_mem limit 1 # 내가 모니터링에 사용 할 docker_container_mem measurement가 정상적으로 쌓이고 있는지 확인한다.
끝!
'Software QA' 카테고리의 다른 글
알파 테스팅과 베타 테스팅의 차이 (Difference Between Alpha Testing and Beta Testing) (0) | 2021.12.19 |
---|---|
Jenkins 설치 방법 (Docker-compose, 초기 설정) (0) | 2021.08.29 |
telegraf, influxdb, grafana를 사용하여 Docker Container 모니터링 환경 구성하기 (1) - Influxdb, Grafana docker-compose로 만들기 (0) | 2021.07.26 |
페어와이즈(pairwise) 테스트 케이스 생성 프로그램 PICT 사용 방법 (0) | 2021.07.10 |
SW 테스트 전문가 CSTS (일반등급) 특별완화시험 시험 후기 및 내용 정리 (1) | 2021.06.27 |