소개
AWS는 클라우드에서 완전관리형 관계형 데이터베이스 서비스(RDS)를 제공합니다. 하드웨어, 백업, 패치를 관리하고 응용 프로그램 작업에 집중할 필요가 없습니다. 다음과 같은 데이터베이스 시스템을 제공합니다. 안전하고 안정적이며 확장 가능하며 가용성이 높으며 비용이 저렴합니다.
- MySQL
- 마이크로 소프트 SQL 서버
- 오라클
- 마리아DB
- 아마존 오로라
- 포스트그레SQL
AWS RDS SQL Server – 새 데이터베이스 인스턴스를 시작하여 새 Amazon RDS SQL 인스턴스를 생성하는 문서를 사용할 수 있습니다.
AWS는 또한 간소화된 스토리지 서비스라는 객체 스토리지 솔루션을 제공합니다. RDS SQL Server에서 데이터를 가져오거나 내보내야 한다고 가정합니다. 이 목적을 위해 S3 버킷을 사용할 수 있습니다. S3 버킷에 텍스트, CSV, XML과 같은 모든 종류의 객체를 저장할 수 있습니다. 이 기사에서는 AWS S3 버킷을 RDS SQL Server와 통합하는 단계를 살펴봅니다.
S3 버킷에서 RDS 인스턴스로 파일을 다운로드하여 업로드할 수 있습니다.
RDS는 RDS 인스턴스에서 이 목적을 위해 D:\S3 폴더를 사용합니다.
우리는이 기사의 뒷부분에서 더 자세히 다룰 것입니다.
필수 구성 요소
- AWS RDS SQL Server – RDS에서 새 DB 인스턴스를 만들기 위해 새 데이터베이스 인스턴스 시작 문서를 따라야 합니다.
- 다중 AZ 인스턴스에서는 RDS S3 통합을 사용할 수 없습니다. (타블로그에서는 다중AZ 사용 가능하다고 함!!)
AWS RDS SQL Server에 대한 다중 AZ 구성 문서를 따라 단일 및 다중 AZ 인스턴스의 차이점을 이해할 수 있습니다.
S3 버킷 및 IAM 정책
S3 버킷과 RDS SQL 인스턴스는 리전에 있어야 한다는 점을 기억해야 합니다. 예를 들어 RDS 인스턴스가 us-east-1f 리전에 있으므로 RDS 리전에 속하지 않는 S3 버킷을 사용할 수 없습니다.
다음 이미지에서는 S3 버킷과 AWS RDS SQL Server를 통합하는 데 필요한 단계에 대한 개략적인 개요를 제공합니다.
AWS S3 버킷 생성
이 문서에 대한 새 S3 버킷을 만들어 보겠습니다. 서비스에서 S3로 이동하여 버킷 생성을 클릭하십시오.
이 문서에서는 기본 속성을 사용하여 버킷을 만듭니다. 아래와 같이 버킷 이름(고유)과 리전을 지정합니다.
확인을 클릭하면 이 SQLShackDemo를 기본 설정으로 구성합니다.
S3와 RDS를 통합하기 위해 IAM(자격 증명 액세스 관리) 정책을 생성해야 합니다. 서비스에서 IAM으로 이동하고 정책 생성을 클릭합니다.
정책 만들기 창에서 시각적 편집기를 사용하거나 JSON (자바 스크립트 객체 표기법)을 지정할 수 있습니다. SQLShack에 대한 문서를 참조하여 JSON 언어를 배울 수 있습니다.
AWS S3 버킷에 사용할 수 있는 많은 권한이 있습니다. 이 문서에서는 다음 사용 권한을 사용합니다.
액세스 수준 범주 | 액세스 명령 | 묘사 |
목록 | ListAllMyBuckets | 인증된 AWS 사용자에 대한 S3 버킷 목록을 반환합니다. |
목록 | 리스트버킷 | AWS S3 버킷의 객체 목록을 반환합니다. |
읽다 | GetBucketACL | 버킷에 대한 액세스 제어 목록(ACL)을 반환합니다. |
읽다 | 버킷 위치 가져오기 | 버킷 AWS 리전을 반환합니다. |
읽다 | GetObject | S3 버킷에서 객체를 검색해야 합니다. 우리는 S3에서 D로 파일을 다운로드하는 데 사용합니다 : \ S3 폴더 |
쓰다 | 풋오브젝트 | D:\S3 폴더에서 S3 버킷으로 파일을 업로드해야 합니다. |
이제 정책 마법사 만들기로 돌아가서 다음 매개 변수를 선택합니다.
- 서비스: S3
- 작업: 여기서는 이 정책을 사용하여 AWS S3 버킷에 필요한 작업을 지정합니다.마찬가지로 위의 권한 테이블에 정의된 다른 액세스 수준을 선택합니다. 모든 S3 작업 확인란을 사용하여 이 버킷에 대한 모든 권한을 부여할 수 있습니다.
- 리소스
- IAM 정책에서 ARN을 클릭하고 이전에 복사한 ARN을 붙여넣습니다.
- 여기서 S3 버킷에 대한 Amazon 리소스 이름(ARN)을 지정해야 합니다. S3 객체의 고유한 이름이며 S3 버킷 속성에서 가져옵니다. 이 ARN의 경우 버킷으로 이동하여 버킷을 선택한 다음 ARN 복사 옵션을 사용합니다.
추가하면 아래와 같이 구성이 표시됩니다. object 매개 변수는 특정 객체에 대한 액세스를 제한 할 수있는 유연성을 제공하기 때문에 건너 뜁니다.
정책 검토를 클릭하고 이 정책의 이름을 지정합니다.
정책을 만들고 이를 고객 관리 정책으로 볼 수 있습니다.
이 정책을 클릭하면 해당 JSON 문을 볼 수 있습니다. JSON을 쉽게 변경하거나 복사하여 다른 정책을 만들 수 있습니다.
S3 정책을 사용하기 위한 IAM 역할
다음 단계에서는 S3 버킷에 대해 정의한 IAM 정책을 사용하는 IAM 역할을 정의합니다. IAM 콘솔에서 역할로 이동합니다. 또한 역할의 홈 페이지에서 IAM 역할에 대한 간략한 설명을 볼 수 있습니다.
역할 생성을 클릭합니다. 이 페이지에서 IAM 역할을 사용하는 AWS 서비스를 선택합니다. AWS RDS SQL Server에 대한 IAM 역할이 필요합니다.
사용자 사례를 RDS – 데이터베이스에 역할 추가로 선택합니다.
다음 단계에서는 이전에 만든 S3 버킷 정책을 검색합니다.
다음을 클릭합니다. 검토 페이지에서 이 사용자 지정 역할에 적절한 이름을 지정해야 합니다.
역할 만들기를 클릭하면 사용자 정의 역할이 생성됩니다.
AWS RDS SQL Server에 IAM 역할 연결
IAM 역할을 SQL 인스턴스와 연결해야 합니다. 이 IAM 역할에는 이미 IAM 정책이 연결되어 있습니다.
RDS 인스턴스로 이동하여 연결 및 보안으로 이동합니다.
이 연결 및 보안에서 아래로 스크롤하여 IAM 역할 관리를 찾습니다. RDS 인스턴스는 IAM 역할을 추가할 수 있는 사용 가능한 상태여야 합니다. RDS가 중지된 상태인 경우 IAM 역할 관리에서 역할 추가 옵션이 활성화되지 않습니다.
사용 가능해지면 드롭다운에서 적합한 역할을 찾고 역할 추가를 클릭합니다. SQL 인스턴스를 다시 시작하지 않고 IAM 역할에 적용됩니다.
RDS SQL 인스턴스와 S3 통합 사용
RDS 인스턴스에서 IAM 역할을 적용한 후에는 RDS SQL 인스턴스를 사용하여 S3 버킷에 연결할 수 있습니다.
RDS는 S3 버킷에서 데이터를 업로드하고 다운로드하기 위한 저장 프로시저를 제공합니다.
S3 ARN을 사용하여 S3 버킷과 그 안의 객체에 액세스해야합니다.
한 번에 대기열에 두 개의 진행 중인 작업을 가질 수 있습니다.
우리가 어떤 일을 계획한다면, 우리는 그것이 서로를 무시해서는 안된다는 것을 조심해야합니다.
AWS S3 버킷을 AWS RDS SQL Server와 통합 (sqlshack.com)
<실습추천>
RDS Amazon S3에서 SQL Server 데이터 가져오기 (mssqltips.com)
'[AWS] > AWS 활용' 카테고리의 다른 글
[AWS] MMOG 서버 아키텍처 구성 시 주요 고려사항!! (0) | 2022.11.03 |
---|---|
[AWS] SQL Mirroring Endpoint 생성하기 (0) | 2022.10.26 |
[AWS] [OKY] RDS SQL Server 생성 – 읽기 전용 복제본 생성편 (0) | 2022.10.14 |
[AWS] RDS for SQL Server Enterprise 읽기 전용 복제본 정리 (0) | 2022.10.14 |
[AWS] 교차 계정 액세스란 (0) | 2022.10.14 |
[AWS][활용] Windows AMI / 키페어 복사 (Region간 복사) (0) | 2022.08.03 |
[AWS] S3를 이용한 정적 웹사이트 호스팅 3. CloudFront, Route 53 연동시키기 (0) | 2022.07.29 |
[AWS] S3를 이용한 정적 웹사이트 호스팅 2. Route53과 S3 연동 (0) | 2022.07.29 |
댓글