설치 및 구성

사전 준비사항

  • SQL Server 설치 / AD Join 및 SQL Server용 서비스 계정 생성
  • 방화벽 Port 1433,5022 해제
  • Cluster IP / AG Listner IP (AG수만큼 ) 할당

네트워크 설정 (공통)

  • 네트워크 설정 > 고급 TCP/IP 설정
    •  
    •  DNS탭
      • 주 DNS 접미사의 부모 접미사 추가 해제
      • DNS에 이 연결의 주소를 등록 해제
    •   WINS
      • NetBIOS over TCP/IP 사용 안함 체크
    •  IP설정 탭 (주서버만)
      • 클러스터서비스용 IP를 주서버내 추가 (ex 192.168.109.155)

장애조치클러스터 구성 (공통)

  • 서버관리자 > 기능 선택 > Failover Clustering 설치

클러스터 노드 구성 (주서버)

  • 클러스터관리자 ->  클러스터 만들기 클릭
      • 클러스터관리자 ->  클러스터 만들기 클릭
      • 서버선택 탭 -> 서버 이름 입력 : 찾아보기 선택 후 대상 서버 검색 (ex node1.jyoh.com / node2.jyoh.com)
      • 유효성 검사 진행 --> 완료시 마침 클릭
      • 클러스터 관리 엑세스 지점 -> 클러스터 이름 및 IP 입력 (ex CLUSTER /  192.168.109.160)
      • 다음 -> 완료
  • 파일 공유 기반 쿼럼 구성 (주서버)
    • AD서버 내 파일공유 디렉토리 설정 (ex : AD서버내 D:\Quorum_Share 디렉토리 공유)
    • 클러스터 -> 추가작업 -> 클러스터 쿼럼 설정 구성 클릭
      • 쿼럼 구성 옵션 선택 -> 고급 쿼럼 구성 -> 파일 공유 감시 구성 -> 파일공유경로 입력 (ex: \\AD\Quorum_Share )
  • 결과화면

SQL Server 클러스터 기능 활성화 (공통)

  • SQL Server 구성 관리자 -> SQL Server 서비스 -> SQL Server(MSSQLSERVER) ->속성 -> AlwaysOn 고가용성
      • AlwaysOn 가용성 그룹 사용 클릭 -> SQL Server 서비스 재시작

Alwayson 가용성 그룹 생성 (주서버)

  • AG 구성 대상 DB 생성 및 백업
  • 가용성 그룹 생성
    • AlwaysOn 고가용성 -> 가용성 그룹 -> 새 가용성 그룹 마법사 클릭 →이름지정
        • 데이터베이스 수준 상태 검색 클릭 / DTC는 내부에서 사용하지 않아 별도 구성 X
    • 데이터베이스선택-> AG 구성 DB 선택 (ex : AG1 : DW17 / AG2 : OLTP17,OLTP19
    • 복제본 지정 (수신기 및 읽기전용라우팅 구성을 위한)
        • 각 복제본/수신기/읽기전용라우팅에서 대상 선택 (수신기는 고유한 IP를 지정)
    • 데이터 동기화 선택
      • 자동 시딩 등 총 4개 방식 존재
        • 최초 구성시 자동시딩이 용이/ 운영or 이관시 조인만 용이 

구성 결과

 

스크립트

AG 그룹 생성

  • Listener가 없는 수동 Failover 모드 AG
  • 데이터 동기화 '조인만' 방식 - 사전에 보조노드내 Norecovery 모드 복원
USE [master]
 
GO
 
CREATE AVAILABILITY GROUP [AG2]
WITH (AUTOMATED_BACKUP_PREFERENCE = SECONDARY,
DB_FAILOVER = OFF,
DTC_SUPPORT = NONE,
REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT = 0)
FOR DATABASE [DW19]
REPLICA ON N'NODE1' WITH (ENDPOINT_URL = N'TCP://node1.jyoh.com:5022', FAILOVER_MODE = MANUAL, AVAILABILITY_MODE = SYNCHRONOUS_COMMIT, BACKUP_PRIORITY = 50, SEEDING_MODE = MANUAL, SECONDARY_ROLE(ALLOW_CONNECTIONS = READ_ONLY)),
N'NODE2' WITH (ENDPOINT_URL = N'TCP://node2.jyoh.com:5022', FAILOVER_MODE = MANUAL, AVAILABILITY_MODE = SYNCHRONOUS_COMMIT, BACKUP_PRIORITY = 50, SEEDING_MODE = MANUAL, SECONDARY_ROLE(ALLOW_CONNECTIONS = READ_ONLY));
 
GO
 
:Connect node2
 
ALTER AVAILABILITY GROUP [AG2] JOIN;
 
GO
 
:Connect node2
 
  
ALTER DATABASE [DW17] SET HADR AVAILABILITY GROUP = [AG2];
 
GO
 
--기 구성된 AG2에 DB 추가
alter AVAILABILITY GROUP [ag2] add database [Monitor_DB22];
 
GO

추가

    • 에러 ' ….주 복제본에 대한 연결이 활성화되어 있지 않습니다. 명령을 처리할 수 없습니다.' 발생시
      • 본 케이스에서 node1/node2.jyoh.com 조회가 되지 않아 DNS 역/정방향 설정 후 정상 조회 확인

 

Alwayson Advanced vs. basic

  • Alwayson 기능 비교
  Always on with advanced Always on with basic
최대 구성 가능 Node   최대 9개 복제본 구성 가능
동기 보조복제본 최대 2
최대 2개의 복제본 구성 가능
(주 복제본 포함)
Node 내 구성 가능 가용성그룹 (AG) 제한 없음 제한 없음
가용성 그룹(AG) 내 구성 가능 DB 제한 없음 1
보조복제본 부하분산 백업 및 읽기전용 보조복제본(동기 보조복제본한하여) 지원 미지원
  • Always on 구성시 필수 사항 (Basic Advanced 동일)
구분 내용
OS (서버) Level Windows server 2012 이상
대상 노드가 도메인 컨트롤러일 경우 구성 불가
각 서버가   WSFC (Windows Server Failover Clustering)의 노드로 구성
Instance Level 가용성 복제본을 호스팅하는 모든 인스턴스는 동일 SQL Server 계정 사용
가용성 복제본을 호스팅하는 모든 인스턴스는 동일 버전/데이터정렬 의 SQL Server 실행

 

+ Recent posts