가용성 그룹(Always On) 구축 [On Azure] (4) SQL Server 구축

Database/SQL Server / /
728x90

가용성 그룹의 계정을 AD로 이용하기 위한 VM 설치 및 설정을 진행한다.

해당 작업을 하는 이유는 온프레미스와 다르게 VM이 고정적인 IP 관리를 각 VM 내부가 아닌 Azure에서 관리하기 때문이다.

 

1.   VM 생성

VM은 총 3개의 VM을 사용할 것인데

1)      외부 방화벽에 오픈되고 Cluster Node 역할을 할 VM

2)      SQL Server VM 2

첫 번째 VM은 이전 ADVM과 같이 생성을 해준다.

1)      VM 생성 (AD용이 아닌 Cluster용 으로 선택)

2)      IP 고정으로 변경

3)     DNS 서버 부분은 진행하지 않는다.

가용성 그룹(Always On) 구축 [On Azure] (3) Active Directory(AD) :: 진윤호 개발 블로그 (tistory.com)

두 번째, 세 번째인 SQL Server VM은 다음과 같이 생성한다.

SQL Server VM Azure에서 기본으로 설정한 가상 머신 이미지를 사용하기 때문에 가상 머신 메뉴가 아닌 Azure SQL 메뉴에서 생성하게 된다.

Azure SQL에는 3개의 메뉴가 있는데 그 중 세 번째에 있는 SQL 가상 머신으로 선택하여 Enterprise 라이선스를 이용하는 VM을 생성하도록 한다.


 

기본사항에서 이 전에 만들어 놓은 리소스그룹을 선택하고 이미지가 선택한 Enterprise인지 확인 후 사용자 계정을 생성 후 다음으로 넘어간다.

 


 

디스크는 프리미엄 SSD를 기본 선택 후 네트워킹으로 넘어간다.

네트워크는 이전에 생성해두었던 가상 네트워크의 Always On 관련 Sub Net을 선택하고 이전에 DB서버 연결을 위해 만들어 두었던 Public IP를 각 각 VM에 매칭하여 선택해준다.

NIC 보안은 이 전에 생성해 두었던 각 서버에 맞는 NSG를 선택한다.


 

부하 분산 부분에 기본 부하 분산 솔루션 뒤에 이 가상 머신을 배치하겠습니까?”를 선택 후 이전에 생성해 두었던 r공용(또는 내부) 네트워크용 부하 분산 장치를 선택해 backend에 추가한다.


 

다음 SQL Server 설정으로 넘어가서 SQL 인증 사용으로 변경 후 VM을 생성한다.


 

네트워크 인터페이스에서 IP를 고정시킨다.


ipconfig1를 더블 클릭 후 고정으로 변경


 

2.   Active Directory (AD)에 편입

각 서버를 AD 계정으로 접근이 가능하도록 설정한다.

원격 테스트톱을 통해 해당 서버에 접속한다.

서버매니져에서 Local Server를 선택 후 작업 그룹을 클릭하여 한다.

팝업 창에서 컴퓨터명 변경을 선택하고

 

여기서 컴퓨터명을 절대 변경해선 안 된다.

Azure에서 제공한 해당 이미지로 VM을 생성하였다면 VM생성 시 정한 리소스명이

SQL Server의 인스턴스 서버명으로 인식되고 추후 가용성 그룹 구성 시

Failover Cluster와 가용성 그룹 내 Server Name이 일치되지 않아 사용할 수 없다.

 

 

이 후 도메인 확인란을 선택한 후

이 전에 AD 생성 시 입력했건 Root Address를 입력한다.

해당 도메인에 접속정보를 입력하고 확인한 후 다시 시작한다.


 

각 서버에 Cluster용으로 사용될 AD 계정을 추가한다.

각 서버를 메인 도메인(위 예제는 CORP\DomainAdmin)로 접속한다.

서버매니져에서 컴퓨터 관리로 이동


 

컴퓨터 관리에서 로컬 사용자 및 그룹의 그룹을 선택한다.

Administrator 그룹을 더블 클릭하고 팝업창에서 추가를 선택한 후

Cluster용으로 사용될 AD계정을 추가한다.(위 예제에서는 Install)


 

3.   SQL Server 계정 권한 설정

<컴퓨터 명>\root 계정(위 예제는 DomainAdmin)으로 원격 테스트톱을 접속한다.

SQL Server Management Studio를 열고 SQL Server의 로컬 인스턴스에 연결한다.

Cluster용 계정(위 예제에서는 (CORP\install) Sysadmin 계정으로 추가한다.


 

계정 검색에서 검색 장소를 DNS 서버로 접속을 Root AD 계정(위 예제는 DomainAdmin) 으로 한다.

검색 장소를 해당 도메인으로 변경 후 검색하여 install 계정을 추가 한다.


 

이 후 각 SQL Server 시스템 계정에 가용성 그룹 관련 권한을 부여한다.

Default로 생성되어 있지만 없을 시 다음과 같이 생성한다.

uSE [master]

GO

CREATE LOGIN [NT AUTHORITY\SYSTEM] FROM WINDOWS 

WITH DEFAULT_DATABASE=[master]

GO 

 

다음과 같이 권한을 설정한다.

 

GRANT ALTER ANY AVAILABILITY GROUP TO [NT AUTHORITY\SYSTEM]

GO

GRANT CONNECT SQL TO [NT AUTHORITY\SYSTEM]

GO

GRANT VIEW SERVER STATE TO [NT AUTHORITY\SYSTEM]

GO 

GRANT ALTER ANY DATABASE TO [NT AUTHORITY\SYSTEM]

GO

 

SQL 구성관리자를 실행시키고 SQL Server 서비스 계정을 이전에 생성해 놓은 도메인 계정

(위 예제는 각 각 SQLSvc1, SQLSvc2)으로 실행하도록 변경한다.


 

변경 후 SQL Server를 재시작 한다.

728x90
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기