Opsview 설정 · 4 min read · Oct 20, 2025
Amazon RDS로 Opsview 설정하기
Amazon RDS로 Opsview 설정하기
아마존의 공식 웹사이트에 따르면 RDS(관계형 데이터베이스 서비스)는 “… 클라우드에서 관계형 데이터베이스를 쉽게 설정하고 운영하며 확장할 수 있게 해주는 웹 서비스입니다. 비용 효율적이고 크기를 조정할 수 있는 용량을 제공하며, 시간 소모적인 데이터베이스 관리 작업을 처리하여 애플리케이션과 비즈니스에 집중할 수 있도록 합니다.”
다시 말해, 아마존 웹 서비스 콘솔을 통해 “클라우드”에 데이터베이스를 배포하고 “인스턴스 클래스”(얼마나 강력해야 하는지?), 자동 백업, 다중 존 배포 등과 같은 다양한 변수를 지정할 수 있습니다(고가용성과 복원력을 보장하려는 사람들에게 많은 멋진 기능이 있습니다. 이는 클라우드 사용자들의 주요 걱정거리입니다).
새로운 RDS 데이터베이스를 배포하는 데는 매우 적은 시간이 소요됩니다. 먼저(AWS 계정이 있다고 가정하고) RDS 섹션으로 이동하여 “DB 인스턴스 시작”을 클릭하면 아래와 같은 페이지가 제공됩니다:

우리의 예에서는 MySQL을 사용하고 있습니다(Oracle이나 Microsoft SQL Server는 지원하지 않기 때문입니다). “선택”을 클릭한 후, 아래와 같이 “DB 인스턴스 세부정보”를 입력해야 합니다:

위에서 볼 수 있듯이, 우리는 “MySQL 5.6.12”와 인스턴스 클래스 db.m1.medium(현재 이 시점에서 순전히 임의의 선택)을 선택했습니다. 또한 10GB의 스토리지, 프로비저닝된 IOPS는 없으며 몇 가지 매개변수(인스턴스 ID, 사용자 이름 및 비밀번호)를 아래와 같이 선택했습니다:
- DB 인스턴스 식별자: opsviewdbseperate
- 마스터 사용자 이름: opsviewrw
- 마스터 비밀번호: opsview123
다음으로, “추가 구성”에서 존, 데이터베이스 포트, VPC(Opsview Pro/Enterprise를 사용하는 경우 VPC를 사용해야 함) 등과 같은 몇 가지 세부정보를 추가해야 합니다.
모든 설정이 완료되면 아래와 같이 완전히 프로비저닝된 10GB MySQL 5.6 데이터베이스가 실행됩니다:

이 DB를 사용하기 전에 데이터베이스에 대한 액세스를 허용해야 하므로 “보안 그룹: 기본”을 클릭한 다음 “확대경”을 클릭하면 “보안 그룹 세부정보”라는 제목의 페이지로 이동합니다. 여기에서 CIDR 범위를 확인하거나 인바운드 액세스를 허용하기 위해 적용할 보안 그룹을 선택해야 합니다. 그리고 이것이 RDS 측의 구성이 완료된 것입니다!
Opsview를 위한 RDS DB 구성하기
다음으로 Opsview 서버에 SSH로 접속하고 데이터베이스를 RDS DB로 마이그레이션해야 합니다 – 여기에서 마이그레이션 가이드를 따릅니다.
먼저, “일관된 스냅샷”을 얻기 위해 Opsview를 중지해야 합니다:
/etc/init.d/opsview stop
/etc/init.d/opsview-web stop다음으로, 백업 및 복원을 수행해야 합니다. 문서에는 mysqldump를 사용하여 DB 호스트로 전송한 다음 MySQL로 gunzip해야 한다고 명시되어 있지만, RDS에서는 서버에 대한 셸 액세스가 없기 때문에 이를 수행하는 방법에 대해 조금 더 스마트해야 합니다.
먼저, Opsview에서 RDS DB에 로그인할 수 있는지 테스트해 보겠습니다:
root@opsview-master:/home/ubuntu# mysql -u opsviewrw -p -h opsviewdbseperate.ctw1cn2efche.eu-west-1.rds.amazonaws.com -P 3306비밀번호 입력:
MySQL 모니터에 오신 것을 환영합니다. 명령은 ; 또는 \g로 끝납니다.
당신의 MySQL 연결 ID는 141입니다.
서버 버전: 5.6.12 MySQL 커뮤니티 서버 (GPL)
저작권 (c) 2000, 2013, Oracle 및/또는 그 계열사. 모든 권리 보유.
Oracle은 Oracle Corporation 및/또는 그 계열사의 등록 상표입니다. 다른 이름은 해당 소유자의 상표일 수 있습니다.
도움이 필요하면 'help;' 또는 '\h'를 입력하세요. 현재 입력 문장을 지우려면 '\c'를 입력하세요.
mysql>좋아 보입니다! 다음으로, RDS 데이터베이스에 데이터베이스를 생성해야 합니다 – 매우 간단합니다:
create database opsview;
create database odw;
create database runtime;
create database dashboard;이렇게 하면 필요한 4개의 데이터베이스가 생성됩니다. 이제 RDS DB에 대한 셸 액세스를 종료하고 Opsview 서버에서 mysqldump를 실행하여 데이터베이스를 덤프하고 원격 RDS 데이터베이스로 출력을 파이프할 수 있습니다:
mysqldump -u root -p opsview | mysql -u opsviewrw -popsview123 --host=opsviewdbseperate.ctw1cn2efche.eu-west-1.rds.amazonaws.com -P 3306 -C opsview
mysqldump -u root -p runtime | mysql -u opsviewrw -popsview123 --host=opsviewdbseperate.ctw1cn2efche.eu-west-1.rds.amazonaws.com -P 3306 -C runtime
mysqldump -u root -p odw | mysql -u opsviewrw -popsview123 --host=opsviewdbseperate.ctw1cn2efche.eu-west-1.rds.amazonaws.com -P 3306 -C odw
mysqldump -u root -p dashboard | mysql -u opsviewrw -popsview123 --host=opsviewdbseperate.ctw1cn2efche.eu-west-1.rds.amazonaws.com -P 3306 -C dashboardmysqldump -u root -p opsview | mysql -u opsviewrw -popsview123 --host=opsviewdbseperate.ctw1cn2efche.eu-west-1.rds.amazonaws.com -P 3306 -C opsview
mysqldump -u root -p runtime | mysql -u opsviewrw -popsview123 --host=opsviewdbseperate.ctw1cn2efche.eu-west-1.rds.amazonaws.com -P 3306 -C runtime
mysqldump -u root -p odw | mysql -u opsviewrw -popsview123 --host=opsviewdbseperate.ctw1cn2efche.eu-west-1.rds.amazonaws.com -P 3306 -C odw
mysqldump -u root -p dashboard | mysql -u opsviewrw -popsview123 --host=opsviewdbseperate.ctw1cn2efche.eu-west-1.rds.amazonaws.com -P 3306 -C dashboard다음으로, Opsview 마스터의 /usr/local/nagios/etc/opsview.conf 파일을 편집하여 새로운 RDS DB를 가리키도록 해야 합니다:
root@opsview-master:/home/ubuntu# cat /usr/local/nagios/etc/opsview.conf#
# 이 파일은 opsview.defaults의 변수를 재정의합니다.
# 이 파일은 업그레이드 시 덮어쓰이지 않습니다.
#
$dbhost = "opsviewdbseperate.ctw1cn2efche.eu-west-1.rds.amazonaws.com";
$odw_dbhost = "opsviewdbseperate.ctw1cn2efche.eu-west-1.rds.amazonaws.com";
$runtime_dbhost = "opsviewdbseperate.ctw1cn2efche.eu-west-1.rds.amazonaws.com";
$reports_dbhost = "opsviewdbseperate.ctw1cn2efche.eu-west-1.rds.amazonaws.com";
$dashboard_dbhost = "opsviewdbseperate.ctw1cn2efche.eu-west-1.rds.amazonaws.com";거의 다 왔습니다! 다음으로 RDS 데이터베이스에 대한 액세스 권한을 설정해야 합니다. 다시 말해, 파일로 내보내고, 파일을 전송하고, 가져올 수 없으므로 파이프를 사용하여 스마트하게 처리해야 합니다:
/usr/local/nagios/bin/db_mysql -t | mysql -u opsviewrw -popsview123 -h opsviewdbseperate.ctw1cn2efche.eu-west-1.rds.amazonaws.com -P 3306이렇게 하면 우리의 자격 증명이 RDS DB에 가져와집니다(아래는 이러한 자격 증명이 어떻게 생겼는지의 스냅샷입니다):
GRANT ALL ON opsview.* TO opsview@localhost IDENTIFIED BY '508E67C6-DA75-11E2-882D-94E35B00F56E' WITH GRANT OPTION; GRANT ALL ON opsview.* TO opsview@'%' IDENTIFIED BY '508E67C6-DA75-11E2-882D-94E35B00F56E' WITH GRANT OPTION; GRANT SELECT ON opsview.* TO odw@'%' IDENTIFIED BY '508E67C6-DA75-11E2-882D-94E35B00F56E';마지막으로, Opsview 구성을 재생성하고 웹 서비스를 다시 시작해야 합니다. 명령어는 다음과 같습니다:
/usr/local/nagios/bin/rc.opsview gen_config /etc/init.d/opsview-web start이로써 구성이 완료되었습니다. 이제 로컬에서 실행 중인 MySQL 서버를 중지할 수 있습니다(운영 체제에 따라 service mysql stop 등) 그리고 Opsview에 로그인하여 RDS 스토리지에서 모든 영광을 보실 수 있습니다:

위와 같은 예를 사용하여 역사적 데이터가 마이그레이션되었음을 보여주고(증명), 데이터에 중단이 없음을 보여줍니다(대규모 손실 없음 등).
마무리 생각
그래서 이것이 Opsview DB를 Amazon RDS로 마이그레이션하는 빠르고 간단한 방법입니다 – 클라우드에서 실행할 경우 데이터베이스 백엔드의 확장성, 신뢰성 및 사용 용이성을 개선할 수 있습니다. 다음에는 VPC에서 Opsview를 실행하는 방법과 그 설정 방법을 살펴보겠습니다.
새 게시물을 받은 편지함에서 받기
스팸은 없습니다. 언제든지 구독 해지 가능합니다.