DBA

개인 학습, 작업 기록용입니다. 올바르지 않은 정보가 있다면 댓글주시면 감사하겠습니다!

AWS 기타

[AWS] RDS Proxy 구성

DBnA 2025. 1. 21. 17:07

1. AWS Secrets Manager 생성

AWS 서비스 > AWS Secrets Manager > 보안 암호 저장

 

3단계 - default, 4단계 검토 생성

 

ㅇ생성확인

 

보안 암호 ARN 기억 ( IAM 정책 생성시 사용 )

 

 

2. IAM POLICY 생성

IAM > 정책 > 정책 생성

JSON 정책 편집기

 

{ "Version": "2012-10-17", "Statement": 
[ { "Sid": "VisualEditor0", 
"Effect": "Allow", 
"Action": [ "secretsmanager:GetRandomPassword",
                 
"secretsmanager:CreateSecret", 
                 "secretsmanager:ListSecrets" ], 
"Resource": "*" },
{ 
"Sid": "VisualEditor1", 
"Effect": "Allow",
 
"Action": "secretsmanager:*",
 
"Resource": [ "앞서생성한 보안 암호 ARN" ] } ] }

 

 

 

3. ROLE 생성

IAM > 역할 > 역할 생성

앞서 생성한 정책 체크 다음

이름 지정 나머지 default 생성

 

 

4. RDS PROXY 생성

연결 제한 연결 pool 상황에 맞게 설정

 연결 최대 연결 : DB max connection 특정 % 까지만 연결 제한

 

 

IAM, Secrets Manager 보안 암호 앞서 생성한것 입력

 

 

환경에 맞게 서브넷과 VPC 구성.

 

프록시 생성에 시간 어느정도 소요됨.

 

5. 확인

프록시 엔드포인트로 DB접속

[root@ip-10-0-10-185 ~]# mysql -u admin -htest-proxy-aurora-mysql-read-only.endpoint.proxy-.us-east-1.rds.amazonaws.com  -p
	Enter password:
	Welcome to the MySQL monitor.  Commands end with ; or \g.
	Your MySQL connection id is 4100536801
	Server version: 8.0.32 Source distribution
	
	Copyright (c) 2000, 2024, Oracle and/or its affiliates.
	
	Oracle is a registered trademark of Oracle Corporation and/or its
	affiliates. Other names may be trademarks of their respective
	owners.
	
	Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
	
mysql>

 

 

** 진행하면서 마주한 오류

[root@ip-10-0-10-185 ~]# mysql -u admin -h test-proxy-aurora-mysql.proxy-c.us-east-1.rds.amazonaws.com  -p
Enter password:
ERROR 2013 (HY000): Lost connection to MySQL server at 'reading initial communication packet', system error: 2

=> Cloud watch > 로그 그룹 > 생성한 proxy 명의 로그 이벤트 확인
IAM 정책 사용시 보안암호 arn 오기입으로 생긴 오류 

 

[root@ip-10-0-10-185 ~]# mysql -u admin -h test-proxy-aurora-mysql.proxy-c.us-east-1.rds.amazonaws.com  -p
Enter password:
ERROR 1045 (28000): Access denied for user 'admin'@'10.0.10.185' (using password: YES)

=> Vpc 설정에 inbound 규칙 추가함 

 

 

 

 

출처: <https://m.blog.naver.com/dorian0520/222035903869>