Azure SQL에서 네트워크를 구성하는 방법

 

·         Version : Azure SQL

 

Azure SQL Managed Instance Azure 클라우드에서 호스팅되고 Azure 가상 네트워크를 사용하는 완전히 관리되는 SQL Server 인스턴스이다. Managed Instance 가상 네트워크를 사용하기 때문에  Azure 관리 서비스에서 사용자가 네트워크 액세스 규칙을 정의할  있다잘못된 네트워크 구성은  Managed Instance  배포할때  오류가 발생하므로 아래 순서에 따라서 네트워크 환경을 구성하여 사용한다일반적으로 인스턴스용 가상 네트워크를 구성할  기본 5가지 단계로 정리할  있다.

1.       Managed Instance 사용할 가상 네트워크를 구성

2.       Managed Instance Azure 관리 서비스와 통신할  있도록Route 테이블 생성

3.       가상 네트워크 생성시 생성된 기본 서브넷을 사용하거나Managed Instance 전용 서브넷을생성

4.       서브넷에 Route 테이블 할당

5.       4단계 까지 올바르게 구성되었는지 확인

 

[1. 가성 네트워크 구성]

Managed Instance 사설 IP주소가 할당된 Azure Virtual network 사용한다가상 네트워크는 Managed Instance 만들기 전에 생성해야 한다가상 네트워크는 Azure Portal, PowerShell, Azure CLI등을 이용하여 생성할  있다. Azure Portal 사용하여 가상 네트워크를 생성할때 Resource Manager 배포 모델을 사용해야 한다클래식 가상 네트워크 모델은 지원되지 않는다가상 네트워크를 생성할  Virtual Network Blade  Service Endpoint 옵션이 Disable 설정되어 생성 되는데 는기본 옵션이므로 변경하지 않는 것을 권장한다.

 

Managed Instance 서브넷은 16 ~ 256개의 주소를 사용할  있다따라서 기본 서브넷의IP범위를 정의할  서브넷 마스크 /28 - /24 범위를 사용한다많은 인스턴스가 있을 경우 기본 서브넷에 (인스턴스  X 2) + 5개의 주소가 있는지 확인한다.

 

[2. Route 테이블 생성]

가성 네트워크 생성이 완료 되었으면 Managed Instance Azure 관리 서비스와 통신할  있도록 Route 테이블을 구성해야한다. Route 테이블은 Managed Instance 배포된 서브넷에 연결되며 서브넷을 통해서 나가는  패킷은 연결된 Route 테이블 기반으로 처리된다서브넷은 단일 Route 테이블에만 연결할  있다. (Azure에서 Route 테이블을 만드는데는 비용이 부과 되지 않는다.)

Azure Portal에서 ‘Route table’이라는  리소스를 추가하고 Route 규칙에 “0.0.0.0/0 Next Hop Internet” 경로를 추가한다 경로를 사용하면 가상 네트워크에 있는 Managed Instance 인스턴스를 관리하는 Azure 관리 서비스와 통신할  있다이렇게 하지 않으면 Managed Instance 배포   없다.

 

[3. 추가 서브넷 생성(선택사항)]

Managed Instance 서브넷에 배포되므로 Managed Instance 배포하기 전에 서브넷을 생성해야 한다기본 서브넷에 인스턴스를 배포하고 기본 경로를 사용하는경우  단계를 건너   있다서브넷은 Managed Instance 전용이며 다른 리소스를 포함할  없다서브넷에는 최소한 16개의 주소가 있어야 하고 5개의 주소는 Azure 내부 서비스용으로 예약되어 있다서브넷에 포함되는  모든 Managed Instance 에는 인스턴스당 2개의 주소가 필요하다서브넷에 Managed Instance 배치하면 서브넷의 크기를 변경할  없으므로 주의한다.

 

[4.서브넷 구성]

서브넷(기본값 또는 신규)에는 “0.0.0.0/0 Next Hop Internet” 정보를 포함한 User Route Table(UDR) 있어야 한다. “0.0.0.0/0 Next Hop Internet” Route 테이블을 생성하면 Managed Instance 서브넷에 할당   있다. Azure Portal에서 서브넷을 정보를 확인할  있으며 아래 항목을 확인한다.

1.       서브넷에 할당된 Managed Instance Route 테이블 있다.

2.       서브넷에는 네트워크 보안그룹이 없어야 한다.

3.       서브넷에는 서비스 엔드 포인트가 없어야 한다.

4.       서브넷에는 다른 리소스가 없다.

 

[5. 체크리스트]

4단계 까지 구성이 완료 되었으면 Managed Instance 배포할때 문제가 발생하지 않도록 아래 체크리스트 항목을 확인한다.

1.       가상 네트워크에서 서비스 끝점을 사용하지 않도록 설정한다.

2.       서브넷에는 16 ~256개의 IP 주소가 있어야 한다. (Masks from /28~ /24)

3.       Managed Instance 서브넷에는 다른 리소스가 없어야 한다.

4.       서브넷에는 0.0.0.0/0 Next Hop Internet 경로가 있어야 한다.

5.       서브넷에는 보안 그룹이 없어야 한다.

6.       서브넷에는 서비스 끝점이 없어야 한다.

 

모든 구성이 완료 되었어면 Azure Portal 사용하여  새로운 Managed Instance 만들고 사용자가 만든 가상 네트워크  서브넷을 할당   있다.

 

[참고자료]

https://blogs.msdn.microsoft.com/sqlserverstorageengine/2018/03/14/how-to-configure-network-for-azure-sql-managed-instance/

 

 

2018-06-14 / Sungwook Kang / http://sqlmvp.kr

 

SQL Server, Azure SQL, Azure Managed Instance, Azure network, Azure route table, Azure Virtual Network



출처: https://sqlmvp.tistory.com/1254?category=618825 [Database Lab]
No. Subject Author Date Views
Notice SQL강좌: 챗GPT와 함께 배우는 SQL Server 무료 강좌 목차와 소개 (2023년 9월 업데이트) 코난(김대우) 2023.08.18 36259
Notice Python 무료 강좌 - 기초, 중급, 머신러닝(2023년 6월 업데이트) 코난(김대우) 2021.01.01 18856
» Azure SQL에서 네트워크를 구성하는 방법 jevida(강성욱) 2019.03.25 297
2133 SQL Server 네이티브 컴파일된 저장 프로시저 성능 모니터링 jevida(강성욱) 2019.03.25 582
2132 SQL Server 2017 소규모 시스템에서 향상된 리소스 사용 jevida(강성욱) 2019.03.25 329
2131 클러스터 컬럼스토어 인덱스(Clusterd Columnstore Index)에서 대량 인서트 작업시 발생하는 래치 경합 최소화 트릭 jevida(강성욱) 2019.03.25 468
2130 클러스터 컬럼스토어 인덱스(Clusterd Columnstore Index)에서 대량 인서트 작업시 발생하는 래치 경합 최소화 트릭 jevida(강성욱) 2019.03.25 467
2129 SQL Server 2016 향상된 복제 기능 – 배포 데이터베이스 클린업 향상 jevida(강성욱) 2019.03.25 367
2128 SQL Server 2017향상된 복제 기능 – 배포 데이터베이스의 AG 지원 jevida(강성욱) 2019.03.25 518
2127 SQL Server 2017 향상된 복제 기능 - 복제에이전트 프로필 매개변수의 동적 새로 고침 jevida(강성욱) 2019.03.25 553
2126 SQL Server update on Docker jevida(강성욱) 2019.03.25 454
2125 SQL Server 2017에서 향상된 UDF 실행 계획 jevida(강성욱) 2019.03.25 419
2124 ETL data error with MariaDB ODBC 3.0 (from Aurora to MS SQL) jevida(강성욱) 2019.03.25 611
2123 Run the SQL Server 2017 with Docker jevida(강성욱) 2019.03.25 523
2122 SQL Server Configuration Manager 실행 오류 (WMI 공급자 연결 오류) jevida(강성욱) 2019.03.25 643
2121 BULK INSERT 동시에 여러개 실행 향지 2019.01.30 1088
2120 대용량 데이터 조인에 대한 고민 ( Hash Join VS Nested Loop Join ) 향지 2018.04.04 4540
2119 How to check if Azure SQL is using In-Memory jevida(강성욱) 2018.03.31 3322
2118 MSSQL-CLI를 활용한 크로스플랫폼에서 SQL Server 관리하기 jevida(강성욱) 2018.03.31 3733
2117 SSMS – Search for execution plan jevida(강성욱) 2018.03.31 3809
2116 SQL Server Parallelism and Wait change (CXAPCKET, CXCONSUMER) jevida(강성욱) 2018.03.31 4108
2115 SQL Server Statistics Update row sampling rate and histogram step jevida(강성욱) 2018.03.31 3748





XE Login