

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 온프레미스 SMTP 서버 및 Database Mail을 사용하여 Amazon RDS for SQL Server 데이터베이스 인스턴스에 대한 알림 전송하기
<a name="send-notifications-for-an-amazon-rds-for-sql-server-database-instance-by-using-an-on-premises-smtp-server-and-database-mail"></a>

*Nishad Mankar, Amazon Web Services*

## 요약
<a name="send-notifications-for-an-amazon-rds-for-sql-server-database-instance-by-using-an-on-premises-smtp-server-and-database-mail-summary"></a>

[Database Mail](https://learn.microsoft.com/en-us/sql/relational-databases/database-mail/database-mail?view=sql-server-ver16)(Microsoft 설명서)은 SMTP(단순 메일 전송 프로토콜) 서버를 사용하여 Microsoft SQL Server 데이터베이스에서 알림 또는 경고와 같은 이메일 메시지를 보냅니다. Microsoft SQL Server용 Amazon Relational Database Service(Amazon RDS) 설명서에는 Amazon Simple Email Service(Amazon SES)를 Database Mail용 SMTP 서버로 사용하는 방법에 대한 지침이 나와 있습니다. 자세한 내용은 [Amazon RDS for SQL Server에 Database Mail 사용](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/SQLServer.DBMail.html) 섹션을 참조하세요. 다른 구성으로서, 이 패턴은 온프레미스 SMTP 서버를 메일 서버로 사용하여 Amazon RDS for SQL Server 데이터베이스(DB) 인스턴스에서 이메일을 보내도록 Database Mail을 구성하는 방법을 설명합니다.

## 사전 조건 및 제한 사항
<a name="send-notifications-for-an-amazon-rds-for-sql-server-database-instance-by-using-an-on-premises-smtp-server-and-database-mail-prereqs"></a>

**사전 조건 **
+ 활성 상태의 AWS 계정
+ 표준 또는 엔터프라이즈 버전의 SQL Server를 실행하는 Amazon RDS DB 인스턴스
+ 온프레미스 SMTP 서버의 IP 주소 또는 호스트 이름
+ SMTP 서버의 IP 주소에서 Amazon RDS for SQL Server DB 인스턴스로의 연결을 허용하는 인바운드 [보안 그룹 규칙](https://docs.aws.amazon.com/vpc/latest/userguide/security-group-rules.html#working-with-security-group-rules)
+ 온프레미스 네트워크와 Amazon RDS DB 인스턴스가 포함된 가상 사설 클라우드(VPC) 간의 연결(예: [AWS Direct Connect](https://docs.aws.amazon.com/directconnect/latest/UserGuide/Welcome.html) 연결)

**제한 사항 **
+ Express 버전의 SQL Server는 지원되지 않습니다.
+ 제한 사항에 대한 자세한 내용은 Amazon RDS 설명서의 [Amazon RDS for SQL Server에 Database Mail 사용](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_SQLServer.html#SQLServer.Concepts.General.FeatureSupport.Limits) *제한* 섹션을 참고하십시오.

**제품 버전**
+ [RDS에서 지원되는 SQL Server 버전](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_SQLServer.html#SQLServer.Concepts.General.VersionSupport)의 스탠다드 및 엔터프라이즈 에디션

## 아키텍처
<a name="send-notifications-for-an-amazon-rds-for-sql-server-database-instance-by-using-an-on-premises-smtp-server-and-database-mail-architecture"></a>

**대상 기술 스택**
+ Amazon RDS for SQL Server 데이터베이스 인스턴스
+ Amazon Rou53 전달 규칙
+ 데이터베이스 메일
+ 온프레미스 SMTP 서버
+ Microsoft SQL Server Management Studio(SSMS)

**대상 아키텍처**

다음 이미지는 이 패턴의 대상 아키텍처를 보여줍니다. 데이터베이스 인스턴스와 관련된 알림 또는 경고를 시작하는 이벤트 또는 작업이 발생하면 Amazon RDS for SQL Server는 Database Mail을 사용하여 이메일 알림을 보냅니다. Database Mail은 온프레미스 SMTP 서버를 사용하여 이메일을 전송합니다.

![\[온프레미스 SMTP 서버를 사용하여 Amazon RDS for SQL Server에서 사용자에게 이메일 알림을 전송합니다.\]](http://docs.aws.amazon.com/ko_kr/prescriptive-guidance/latest/patterns/images/pattern-img/e5599724-43cf-4fe1-8c5a-8fca1a424993/images/47efb12f-3505-4a60-ac43-194a176e71c8.png)


## 도구
<a name="send-notifications-for-an-amazon-rds-for-sql-server-database-instance-by-using-an-on-premises-smtp-server-and-database-mail-tools"></a>

**서비스**
+ [Microsoft SQL Server용 Amazon Relational Database Service(Amazon RDS)](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_SQLServer.html)를 사용하여 AWS 클라우드에서 SQL Server 관계형 데이터베이스를 설정, 운영 및 확장할 수 있습니다.
+ [Amazon Route 53](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/Welcome.html)은 가용성과 확장성이 뛰어난 DNS 웹 서비스입니다.

**기타 도구**
+ [Database Mail](https://learn.microsoft.com/en-us/sql/relational-databases/database-mail/database-mail)은 SQL Server 데이터베이스 엔진에서 사용자에게 알림 및 경고와 같은 이메일 메시지를 보내는 도구입니다.
+ [Microsoft SQL Server Management Studio(SSMS)](https://docs.microsoft.com/en-us/sql/ssms/sql-server-management-studio-ssms)는 SQL 서버 구성 요소에 대한 액세스, 구성 및 관리를 포함하여 SQL Server를 관리하기 위한 도구입니다. 이 패턴에서는 SSMS를 사용하여 SQL 명령을 실행하는 방법으로 Amazon RDS for SQL Server DB 인스턴스에서 Database Mail을 설정합니다. 

## 에픽
<a name="send-notifications-for-an-amazon-rds-for-sql-server-database-instance-by-using-an-on-premises-smtp-server-and-database-mail-epics"></a>

### 온프레미스 SMTP 서버와의 네트워크 연결 활성화
<a name="enable-network-connectivity-with-the-on-premises-smtp-server"></a>


| 작업 | 설명 | 필요한 기술 | 
| --- | --- | --- | 
| RDS DB 인스턴스에서 다중 AZ를 제거합니다. | 다중 영역 RDS DB 인스턴스를 사용하는 경우 다중 AZ 인스턴스를 단일 AZ 인스턴스로 변환합니다. Database Mail 구성을 마치면 DB 인스턴스가 다시 다중 AZ 배포로 변환됩니다. 그러면 Database Mail 구성이 기본 노드와 보조 노드에서 모두 작동합니다. 지침은 [Microsoft SQL Server DB 인스턴스에서 다중 AZ 제거하기](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_SQLServerMultiAZ.html#USER_SQLServerMultiAZ.Removing)를 참조하세요. | DBA | 
| 온프레미스 SMTP 서버의 Amazon RDS 엔드포인트 또는 IP 주소에 대한 허용 목록을 생성합니다. | SMTP 서버는 AWS 네트워크 외부에 있습니다. 온프레미스 SMTP 서버에서 서버가 Amazon RDS에서 호스팅되는 Amazon RDS 인스턴스 또는 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스의 아웃바운드 엔드포인트 또는 IP 주소와 통신할 수 있도록 허용하는 허용 목록을 생성합니다. 이 절차는 조직마다 다릅니다. DB 인스턴스 엔드포인트에 대한 자세한 내용은 [DB 인스턴스 엔드포인트 및 포트 번호 찾기](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_ConnectToMicrosoftSQLServerInstance.html#sqlserver-endpoint)를 참고하십시오. | DBA | 
| 포트 25 제한을 제거합니다. | 기본적으로 AWS는 EC2 인스턴스에서 포트 25를 제한합니다. 포트 25 제한을 제거하려면 다음 작업을 수행합니다.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/prescriptive-guidance/latest/patterns/send-notifications-for-an-amazon-rds-for-sql-server-database-instance-by-using-an-on-premises-smtp-server-and-database-mail.html)[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/prescriptive-guidance/latest/patterns/send-notifications-for-an-amazon-rds-for-sql-server-database-instance-by-using-an-on-premises-smtp-server-and-database-mail.html) | 일반 AWS | 
| Route 53 규칙을 추가하여 SMTP 서버에 대한 DNS 쿼리를 해결합니다. | Route 53을 사용하여 AWS 리소스와 온프레미스 SMTP 서버 간의 DNS 쿼리를 해결할 수 있습니다. DNS 쿼리를 SMTP 서버 도메인으로 전달하는 규칙(예: `example.com`)을 생성해야 합니다. 지침은 Route 53 설명서의 [전달 규칙 생성](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resolver-rules-managing.html#resolver-rules-managing-creating-rules)을 참고하십시오. | 네트워크 관리자 | 

### Amazon RDS for SQL Server DB 인스턴스에서 Database Mail 설정하기
<a name="set-up-database-mail-on-the-amazon-rds-for-sql-server-db-instance"></a>


| 작업 | 설명 | 필요한 기술 | 
| --- | --- | --- | 
| Database Mail을 활성화합니다. | Database Mail용 매개변수 그룹을 만들고 `database mail xps` 매개변수를 `1`로 설정한 다음 Database Mail 매개변수 그룹을 대상 RDS DB 인스턴스와 연결합니다. 지침은 Amazon RDS 설명서의 [Database Mail 활성화](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/SQLServer.DBMail.html#SQLServer.DBMail.Enable)를 참고하십시오. 이 지침의 *Database Mail 구성* 섹션으로 진행하지 마십시오. 온프레미스 SMTP 서버의 구성은 Amazon SES와 다릅니다. | DBA | 
| DB 인스턴스에 연결합니다. | 배스천 호스트에서 Microsoft SQL Server Management Studio(SSMS)를 사용하여 Amazon RDS for SQL Server 데이터베이스 인스턴스에 연결합니다. 지침은 [Microsoft SQL Server 데이터베이스 엔진을 실행하는 DB 인스턴스에 연결하기](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_ConnectToMicrosoftSQLServerInstance.html)를 참조하세요. 오류가 발생하는 경우 [관련 리소스](#send-notifications-for-an-amazon-rds-for-sql-server-database-instance-by-using-an-on-premises-smtp-server-and-database-mail-resources) 섹션의 연결 문제 해결 참조를 참고하십시오. | DBA | 
| 프로필을 생성합니다. | SSMS에 다음 SQL 문을 입력하여 Database Mail 프로필을 생성합니다. 다음 값을 교체합니다.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/prescriptive-guidance/latest/patterns/send-notifications-for-an-amazon-rds-for-sql-server-database-instance-by-using-an-on-premises-smtp-server-and-database-mail.html)저장된 이 프로시저와 해당 인수에 대한 자세한 내용은 Microsoft 설명서의 [sysmail\$1add\$1profile\$1sp](https://learn.microsoft.com/en-us/sql/relational-databases/system-stored-procedures/sysmail-add-profile-sp-transact-sql)를 참고하십시오.<pre>EXECUTE msdb.dbo.sysmail_add_profile_sp<br /> @profile_name = 'SQL Alerts profile',<br /> @description = 'Profile used for sending outgoing notifications using OM SMTP Server.';</pre> | DBA | 
| 프로필에 보안 주체를 추가합니다. | 다음과 같은 SQL 문을 입력하여 Database Mail 프로필에 공용 또는 개인 보안 주체를 추가합니다. *보안 주체*는 SQL Server 리소스를 요청할 수 있는 엔터티입니다. 다음 값을 교체합니다.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/prescriptive-guidance/latest/patterns/send-notifications-for-an-amazon-rds-for-sql-server-database-instance-by-using-an-on-premises-smtp-server-and-database-mail.html)이 저장 프로시저와 해당 인수에 대한 자세한 내용은 Microsoft 설명서의 [sysmail\$1add\$1principalprofile\$1sp](https://learn.microsoft.com/en-us/sql/relational-databases/system-stored-procedures/sysmail-add-principalprofile-sp-transact-sql)를 참조하세요.<pre>EXECUTE msdb.dbo.sysmail_add_principalprofile_sp<br /> @profile_name = 'SQL Alerts profile',<br /> @principal_name = 'public',<br /> @is_default = 1 ;</pre> | DBA | 
| 계정을 생성합니다. | 다음 SQL 문을 입력하여 Database Mail 계정을 생성합니다. 다음 값을 교체합니다.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/prescriptive-guidance/latest/patterns/send-notifications-for-an-amazon-rds-for-sql-server-database-instance-by-using-an-on-premises-smtp-server-and-database-mail.html)이 저장 프로시저와 해당 인수에 대한 자세한 내용은 Microsoft 설명서의 [sysmail\$1add\$1account\$1sp](https://learn.microsoft.com/en-us/sql/relational-databases/system-stored-procedures/sysmail-add-account-sp-transact-sql)를 참조하세요.<pre>EXECUTE msdb.dbo.sysmail_add_account_sp<br /> @account_name = 'SQL Alerts account',<br /> @description = 'Database Mail account for sending outgoing notifications.',<br /> @email_address = 'xyz@example.com',<br /> @display_name = 'xyz@example.com',<br /> @mailserver_name = 'test_smtp.example.com',<br /> @port = 25,<br /> @enable_ssl = 1,<br /> @username = 'SMTP-username',<br /> @password = 'SMTP-password';</pre> | DBA | 
| 프로필에 계정을 추가합니다. | 다음과 같은 SQL 문을 입력하여 Database Mail 계정을 Database Mail 프로필에 추가합니다. 다음 값을 교체합니다.[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/ko_kr/prescriptive-guidance/latest/patterns/send-notifications-for-an-amazon-rds-for-sql-server-database-instance-by-using-an-on-premises-smtp-server-and-database-mail.html)이 저장 프로시저와 해당 인수에 대한 자세한 내용은 Microsoft 설명서의 [sysmail\$1add\$1profileaccount\$1sp](https://learn.microsoft.com/en-us/sql/relational-databases/system-stored-procedures/sysmail-add-profileaccount-sp-transact-sql)를 참조하세요.<pre>EXECUTE msdb.dbo.sysmail_add_profileaccount_sp<br /> @profile_name = 'SQL Alerts profile',<br /> @account_name = 'SQL Alerts account',<br /> @sequence_number = 1;</pre> | DBA | 
| (선택 사항) RDS DB 인스턴스에 다중 AZ를 추가합니다. | Database Mirroring(DBM) 또는 Always On 가용 그룹(AG)을 이용한 다중 AZ를 추가하려면 [Microsoft SQL Server DB 인스턴스에 다중 AZ 추가](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_SQLServerMultiAZ.html#USER_SQLServerMultiAZ.Adding)에 있는 지침을 참고하십시오. | DBA | 

## 관련 리소스
<a name="send-notifications-for-an-amazon-rds-for-sql-server-database-instance-by-using-an-on-premises-smtp-server-and-database-mail-resources"></a>
+ [Amazon RDS for SQL Server에서 Database Mail 사용하기](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/SQLServer.DBMail.html) (Amazon RDS 설명서)
+ [파일 첨부 작업](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/SQLServer.DBMail.html#SQLServer.DBMail.MAZ) (Amazon RDS 설명서)
+ [SQL Server DB 인스턴스에 대한 연결 문제 해결](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_ConnectToMicrosoftSQLServerInstance.html#USER_ConnectToMicrosoftSQLServerInstance.Troubleshooting)(Amazon RDS 설명서)
+ [Amazon RDS DB 인스턴스에 연결할 수 없음](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Troubleshooting.html#CHAP_Troubleshooting.Connecting) (Amazon RDS 설명서)