AWS RDS에 서울 리젼에서 PROXY가 가능해졌다.
테스트해보기로 한다.
secret manager
먼저 proxy는 secret manager를 사용하기 때문에 secret manager 탭으로 들어가 새 보안암호 저장을 눌러준다.
보안 암호 유형 선택에서 첫 번째 꺼 클릭
사용자 이름과 암호는 proxy 사용 시 코드상에서 사용하게 될 이름과 암호이다.
데이터 베이스 선택 해주고 다음을 눌러 작성한다
3단계 교체 구성은 비활성화해준다.
생성 후 정보를 보면
생성이 완료되고 보안 암호 값이 자동으로 입력되어 있다. (단, 호스트가 쓰기 밖에 없음)
여기서 기억해야 될 건 보안 암호의 ARN이다.
정책
IAM을 들어가 정책을 생성해준다.
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": [
"secretsmanager:GetResourcePolicy",
"secretsmanager:GetSecretValue",
"secretsmanager:DescribeSecret",
"secretsmanager:ListSecretVersionIds"
],
"Resource": [
"{secret manager ARN}"
]
},
{
"Sid": "VisualEditor1",
"Effect": "Allow",
"Action": [
"secretsmanager:GetRandomPassword",
"secretsmanager:ListSecrets"
],
"Resource": "*"
}
]
}
역할
역할에 들어가 역할을 생성해준다.
AWS 서비스 -> RDS -> RDS-Add Role to Database
위에 만든 정책 연결 검토후 생성 완료
완료 후에 생성한 역할에 들어가 신뢰 관계 탭에 신뢰 관계 편집을 누른다.
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "",
"Effect": "Allow",
"Principal": {
"Service": "rds.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
신뢰 정책 업데이트 해준다.
RDS proxy
RDS에 들어가 보면 Proxies 탭이 있다. 들어가자.
Secret Manager 보안 암호는 처음 생성한 Secret manager 보안암호를 선택하고 IAM 인증 필수,
서브넷과 VPC 보안 그룹은 RDS에 연결되어있는 걸로 체크해준다.
모든 준비는 끝났다.
코드상에서 접속할 때 기존의 접속 정보에서
host = {프록시 ARN}
user = {secret manager 생성 시 사용자 이름}
password = {secret manager 생성 시 암호}
입력하면 접속된다.
사용 후기
나의 RDS DB connec 모니터링이다.
proxy가 관리를 해주지만 기존에 150 언저리에서만 놀았는데 계단식으로 치솟는 거 보고 껐다.
아마도 proxy 세팅할 때 유휴 시간을 30분 준 게 문제였던 거 같다.
더 테스트해보겠지만 RDS proxy는 beta이니 조심해서 쓰자.
'개발 > AWS' 카테고리의 다른 글
AWS Lambda EFS 탑재 (0) | 2020.12.16 |
---|---|
AWS Lambda Create - 1 (0) | 2020.06.18 |
DMS - Database Migration Service - 3 - 테이블 매핑, 테이블 이름 변경 (0) | 2020.06.10 |
DMS - Database Migration Service - 2 - 타계정 DMS, VPC 라우팅 (0) | 2020.06.10 |
DMS - Database Migration Service - 1 - 시작하기 (0) | 2020.06.10 |