상세 컨텐츠

본문 제목

SITE-TO-SITE VPN 을 활용한 백업데이터센터 구축 -(2)

vpn을 활용한 백업데이터센터 구축

by drogva 2024. 3. 10. 15:03

본문

목표: 호스트의 rds 를 생성 후 서브넷을 프라이빗으로 구성 후 클라이언트의 mysql 로 데이터 마이그레이션 (dump, crontab 을 이용)

 

1. db 생성

호스트의 rds 의 서브넷을 프라이빗라우팅 테이블에 연결 - vpn 을 통해서만 접속 할 수 있도록 구성.

 

 

클라이언트에서 우선 접속되어야 하아 확인해야 하므로 앤드포인트 확인과  클라이언트 프라이빗 ip 에게만 포트 개방

 

2. 연결 확인  -  172-31-50-5 (클라이언트의 ip) 에서 호스트의 rds 앤드포인트로 접속 ( database-1.cg5x8ymzexwa.ap-northeast-2.rds.amazonaws.com)

 

3. 호스트에서 생성한 db 를 mysqldump 를 이용해 클라이언트 db 서버로 마이그레이션

 호스트의 db 생성 - kpop_music 

 호스트의 db 테이블과 내용 확인

 

 

- 덤프과정  -> mysql dump -> 터미널에  kpop_music.sql 생성 -> 클라이언트의 mysql 으로 마이그레이션 

클라이언트의 mysql 에는 kpop_music 이름의  데이터베이스는 있어야 데이베베이스 내부 테이블이 마이그레이션 된다.

 

 덤프 - 호스트의 rds 에서 sql 로 클라이언트의 인스턴스에 저장

mysqldump -h database-1.cg5x8ymzexwa.ap-northeast-2.rds.amazonaws.com  -u root -p***** kpop_music > /home/ec2-user/kpop_music.sql

 

backup_db.sh 로 작성 후 저장

 

#!/bin/sh

## yyyy-mm-dd_hh:mm format
TIME=$(date "+%Y-%m-%d-%H")

mysqldump -h database-1.cg5x8ymzexwa.ap-northeast-2.rds.amazonaws.com  -u root -p****** kpop_music > /home/ec2-user/kpop_music.sql

 

 클라이언트의 mysql 로 이관


mysql -h localhost -u root -p****** kpop_music < /home/ec2-user/kpop_music.sql

 

import_db.sh로 작성 후 저장

 

#!/bin/sh

## yyyy-mm-dd_hh:mm format
TIME=$(date "+%Y-%m-%d-%H")

mysql -h localhost -u root -p****** kpop_music < /home/ec2-user/kpop_music.sql

 

 

 크론텝으로 자동화

crontab -e   -> 등록후 wq!
49 * * * * /home/ec2-user/backup_db.sh      
50 * * * * /home/ec2-user/import_db.sh

-> 49분 마다 백업하고 50분에 마이그레이션

 

3. 확인 ->  클라리언트의 mysql 에서 확인

관련글 더보기