Azure에서 고가용성 HPC 팩 클러스터 빌드
이 문서에서는 Azure에서 고가용성 HPC 팩 클러스터를 빌드하기 위한 단계와 고려 사항을 제공합니다.
클러스터 고가용성 고려 사항
일반적인 HPC 팩 클러스터는 HPC 작업을 저장하는 데이터베이스와
Azure 클라우드 환경에서 위의 구성 요소 중 어느 것이라도 실패할 수 있습니다. 예를 들어 Windows 업데이트를 위해 헤드 노드가 다시 부팅되면 우선 순위가 낮은 VM을 사용하므로 일부 컴퓨팅 노드가 다시 부팅될 수 있습니다. 따라서 다음을 충족하는 고가용성 HPC 팩 클러스터를 설정하는 방법은 다음과 같습니다.
위에서 언급한 구성 요소가 실패했으므로 사용자의 워크로드가 취소되거나 실패하지 않고도 계속 실행될 수 있습니다.
실패한 컴퓨팅 노드에서 실행되는 작업은 다른 컴퓨팅 노드로 다시 예약되어야 합니다.
클러스터는 클러스터 관리, 작업 관리 등의 기능을 계속 제공할 수 있어야 합니다.
따라서 모든 구성 요소 오류 상황 및 고가용성 솔루션에 대해 살펴보겠습니다.
데이터베이스 오류 처리
클라우드에서 고가용성 SQL 데이터베이스를 가져올 수 있는 몇 가지 옵션이 있습니다.
azure SQL Database
사용 ARM 템플릿을 사용하여 SQL AlwaysOn 클러스터를 배포하면 이 블로그
참조할 수 있습니다.
헤드 노드 오류 처리
3개 이상의 헤드 노드 클러스터를 설정합니다. 이 구성을 사용하면 헤드 노드가 실패하면 활성 HPC 서비스가 이 헤드 노드에서 다른 노드로 이동됩니다.
AD 오류 처리
HPC가 도메인 컨트롤러에 연결하지 못하면 관리자와 사용자가 HPC 서비스에 연결할 수 없으므로 작업을 관리하고 클러스터에 제출할 수 없습니다. 또한 NodeManager 서비스가 작업의 자격 증명의 유효성을 검사하지 못했기 때문에 도메인에 가입된 컴퓨터 노드에서 새 작업을 시작할 수 없습니다. 따라서 아래 옵션을 고려해야 합니다.
Azure에서 HPC 팩 클러스터를 사용하여 고가용성 도메인 컨트롤러 배포
Azure AD 도메인 서비스 사용. 클러스터를 배포하는 동안 모든 클러스터 노드를 이 도메인에 조인하면 Azure에서 고가용성 도메인 서비스를 얻을 수 있습니다.
HPC Pack Azure AD 통합 솔루션을 사용하면 클러스터 노드가 도메인에 가입하지 않고도. 따라서 HPC 서비스가 Azure AD 서비스에 연결되어 있는 한
네트워크 오류 처리
Azure 데이터 센터의 네트워크 자체는 고가용성이므로 백업 네트워크가 필요하지 않습니다.
고가용성 HPC 팩 클러스터 빌드
여기서는 다음과 같은 옵션을 사용하여 고가용성 HPC 클러스터를 배포할 수 있는 ARM 템플릿을
Azure SQL Database 만들기
기존 Active Directory 도메인에 연결
3개 헤드 노드 HPC 팩 클러스터 만들기
템플릿: 기존 Active Directory 도메인이 있는 Windows 워크로드용 Azure SQL 데이터베이스가 있는 고가용성 클러스터
이 템플릿은 기존 Active Directory 도메인 포리스트에서 Windows HPC 워크로드에 대한 고가용성이 있는 HPC 팩 클러스터를 배포합니다. 클러스터에는 3개의 헤드 노드, SQL Azure 데이터베이스 및 구성 가능한 수의 Windows 컴퓨팅 노드가 포함됩니다.
HPC 팩 클러스터 공유
현재 모든 HPC 팩 ARM 템플릿에서는 헤드 노드가 다운된 것처럼 고가용성이 아닌 헤드 노드 중 하나에 클러스터 공유를 만듭니다. 이 공유는 다른 헤드 노드에서 실행되는 HPC 서비스에 액세스할 수 없습니다. 기본적으로 작업 실행 및 노드 관리에는 영향을 주지 않습니다.
Azure Files를 사용하면 이러한 파일 공유를 SMB 권한이 있는 Azure Files 공유로 이동하여 고가용성으로 만들 수 있습니다. 이 문서
공유 이름 | 사용 | 기본 위치 | 다운 시 영향 | 고가용성 사용 가능으로 만드는 방법 |
---|---|---|---|---|
원격 설치 공유 | 클러스터를 설치한 후 클라이언트 컴퓨터와 컴퓨팅 컴퓨터가 이 공유에서 설치 디렉터리를 수행할 수 있도록 HPC 팩 설치 이진 파일을 이 공유 폴더에 배치합니다. | \\<HN3>\REMINST |
이 공유가 다운되었거나 액세스할 수 없는 경우 HPC 클러스터의 기존 기능에 영향을 주지 않습니다. | 클러스터 관리자는 다른 두 헤드 노드에서 동일한 공유를 만들고 설정된 이진 파일을 복사하여 헤드 노드를 다운하고 공유를 계속 사용할 수 있도록 할 수도 있습니다. |
HPC SOA 등록 공유 | 이 공유는 SOA 서비스 등록 파일을 저장합니다. | \\<HN3>\HpcServiceRegistration |
이 공유의 등록 파일을 사용하는 SOA 서비스 작업이 실행되지 않습니다. | 새 SOA 서비스 구성 파일을 등록할 때 등록 파일을 공유에 배치하지 말고 고가용성 구성 파일 가져오기를 사용합니다. 공유가 중단된 경우에도 등록 파일을 사용할 수 있도록 클러스터 관리자에서 SOA 서비스 등록 파일을 HPC 클러스터 신뢰할 수 있는 저장소로 가져오는. |
HPC SOA 런타임 공유 | 이 공유는 SOA 작업의 공통 데이터를 저장합니다. | \\<HN3>\Runtime$ |
공통 데이터가 있는 SOA 작업이 실패합니다. | SOA 클라이언트는 런타임 공유가 중단된 경우에도 공통 데이터를 계속 사용할 수 있도록 공통 데이터를 Azure Storage에 배치해야 합니다. |
HPC SOA TraceRepository | Soa 진단은 리포지토리를 추적합니다. | \\<HN3>\TraceRepository |
SOA 진단 추적이 켜져 있으면 추적이 수집되지 않습니다. | Azure Files 공유를 사용합니다. |
HPC 진단 공유 | 이 공유는 진단 테스트 결과를 저장합니다. | \\<HN3>\Diagnostics |
이 공유가 중단되면 HPC Diagnostics 작업은 테스트 결과를 작성할 곳이 없으므로 실패합니다. | 클러스터 관리자는 diag 테스트를 실행하려는 경우 새 다이아그 공유로 전환할 수 있습니다. 새 diag 공유로 변경하려면 HPC powershell cmd를 실행합니다. set-HpcClusterRegistry -PropertyName DiagnosticsShare -PropertyValue "\\<HN2>\diagnostics" |
CcpSpoolDir | 컴퓨팅 노드에 대한 출력 스풀 공유입니다. | \\<HN3>\CcpSpoolDir |
태스크 출력에 사용되는 경우 태스크는 출력 데이터를 작성하지 못합니다. | Azure Files 공유를 사용합니다. |