INFRA
mysql-exporter
댕칠이
2024. 8. 7. 16:47
1. spring boot 에서 해당 설정을 해줘야 exporter 를 container에 올릴 때 backend 서버에 문제가 안생김
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://url:3306/taffy?useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=Asia/Seoul&characterEncoding=UTF-8
username: root
password: e104_taffy_best
2. docker-compose.yml
services:
mysql:
image: mysql:8
command : --lower_case_table_names=1
environment:
MYSQL_ROOT_PASSWORD: root_password
MYSQL_DATABASE: myapp
MYSQL_USER: user
MYSQL_PASSWORD: password
volumes:
- mysql-data:/var/lib/mysql
ports:
- "3306:3306"
networks:
- app-network
mysql-exporter:
container_name: mysql-exporter
image: prom/mysqld-exporter
command:
- "--mysqld.username=exporter:password"
- "--mysqld.address=mysql:3306"
ports:
- "9104:9104"
depends_on:
- mysql
networks:
- app-network
networks:
app-network:
driver: bridge
volumes:
mysql-data:
redis-data:
3. mysql에 exporter 용 계정 만들어줘야함
CREATE USER 'exporter'@'%' IDENTIFIED BY 'password';
GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'exporter'@'%';
FLUSH PRIVILEGES;
님들은 최고예요
https://www.youtube.com/watch?v=cjIb-lKeN5s
https://velog.io/@roycewon/Spring-boot-%EB%AA%A8%EB%8B%88%ED%84%B0%EB%A7%81Prometheus-Grafana-docker