Azure에서 저수지 시뮬레이션 소프트웨어 실행

Azure CycleCloud
Azure Key Vault
Azure Virtual Machines

저수지 시뮬레이션은 데이터 집약적 컴퓨터 모델을 사용하여 지구 표면 아래의 석유, 물 및 가스와 같은 유체의 복잡한 흐름을 예측합니다. 이 예제에서는 Azure HPC(고성능 컴퓨팅) 인프라에서 저장소 시뮬레이션 소프트웨어를 설정합니다. Azure를 사용하면 최대의 성능, 확장성 및 비용 효율성으로 이러한 유형의 워크로드를 실행할 수 있습니다.

아키텍처

저수지 시뮬레이션 아키텍처를 보여 주는 다이어그램

이 아키텍처의 Visio 파일을 다운로드합니다.

워크플로

이 다이어그램은 예제에 사용된 아키텍처에 대한 개략적인 개요를 제공합니다. 워크플로는 다음과 같습니다.

  1. 사용자는 SSH를 통해 헤드 노드에 로그인하여 컴퓨팅 리소스에 대한 모델을 준비합니다.

  2. PBS Pro 19.1은 헤드 노드에서 실행되고 컴퓨팅 노드에서 작업을 예약합니다.

  3. OPM Flow는 컴퓨팅 노드에서 실행됩니다. 컴퓨팅 VM은 컴퓨팅 작업의 요구에 맞게 스케일링되는 동일한 VM의 그룹인 가상 머신 확장 집합으로 배포됩니다.

  4. OPM Flow는 계산된 결과를 헤드 노드의 파일 공유로 보냅니다. 프리미엄 디스크는 헤드 노드에 연결되며, 컴퓨팅 노드 및 시각화 VM에 대한 NFS 서버로 설정됩니다.

  5. Standard-NV6 Windows VM에서 실행되는 OPM ResInsight는 결과를 3D로 시각화하여 표시합니다. 사용자는 RDP를 통해 시각화 VM에 액세스할 수 있습니다.

구성 요소

이 아키텍처를 구현하는 데 사용되는 주요 기술:

시나리오 정보

이 예제의 아키텍처는 OPM(Open Porous Media) 이니셔티브의 인기 있는 오픈 소스 석유 및 가스 저수지 시뮬레이션 패키지인 OPM Flow를 지원합니다. OPM Flow 소프트웨어는 현재 온-프레미스 인프라에 근접하거나 더 나은 성능을 제공하는 Azure HPC VM(가상 머신)에서 실행됩니다.

사용자는 Linux 헤드 노드 VM에 연결하여 PBS Pro 19.1 작업 예약 소프트웨어를 통해 HPC 리소스에 모델을 제출합니다. HPC 리소스는 OPM Flow를 실행하고 계산된 결과를 파일 공유에 보냅니다. 이 예제에서 파일 공유는 헤드 노드 VM의 NFS(4TB) 네트워크 파일 시스템 공간입니다. 모델과 입력 및 출력(I/O) 요구 사항에 따라 다른 스토리지 옵션을 사용할 수 있습니다.

오픈 소스 시각화 도구인 OPM ResInsight를 실행하는 Windows Azure VM은 파일 공유에 액세스하여 계산된 결과를 모델링 및 시각화합니다. 사용자는 RDP(원격 데스크톱 프로토콜)를 통해 VM에 연결하여 시각화를 볼 수 있습니다.

Azure VM을 사용하면 고급 시각화 워크스테이션 비용이 절약됩니다. OPM 애플리케이션은 HPC 하드웨어와 입력 및 출력 파일의 공유 스토리지 위치를 활용합니다.

잠재적인 사용 사례

  • 지진 데이터의 3D 저수지 모델링 및 시각화를 수행합니다.

  • 슐럼버거의 고해상도 저수지 시뮬레이터인 INTERSECT를 테스트합니다. GitHub에서 샘플 INTERSECT 구현을 볼 수 있습니다.

  • Azure에서 유사한 설정을 사용하여 Landmark-Halliburton Nexus를 테스트합니다.

고려 사항

이러한 고려 사항은 워크로드의 품질을 향상시키는 데 사용할 수 있는 일단의 지침 원칙인 Azure Well-Architected Framework의 핵심 요소를 구현합니다. 자세한 내용은 Microsoft Azure Well-Architected Framework를 참조하세요.

이 예제에서는 고성능 VM의 HB 시리즈를 사용합니다. HB 시리즈는 CFD(계산 유체 역학)와 같은 메모리 대역폭으로 구동되는 애플리케이션에 최적화되어 있으며 Standard_HB120rs_v2 VM은 시리즈의 최신 버전입니다. 인텔 기반 하드웨어의 경우 Standard_HC44rs VM이 옵션입니다.

Azure에서 이 OPM Flow 아키텍처를 테스트하기 위해, GitHub 예제 구현은 실제 노르웨이해 유전의 오픈 벤치마크 사례인 Norne 사례를 설치합니다. 이 테스트 사례를 실행하려면 다음을 수행해야 합니다.

  • Azure Key Vault를 사용하여 GitHub 설정 스크립트의 요구 사항인 키와 비밀을 저장합니다.

  • 모든 컴퓨팅 노드에 LAPACK(Linear Algebra PACKage) 라이브러리를 설치합니다. GitHub 설치 스크립트에는 이 단계가 포함됩니다.

  • 시각화를 위해 수신기로 사용하려는 컴퓨터에 HP RGS(Remote Graphics Software)를 설치합니다. 이 예제에서는 사용자가 시각화 VM에 연결하여 ResInsight를 실행하고 Norne 사례를 봅니다.

작업 스케줄러

컴퓨팅 집약적 워크로드는 HPC 컴퓨팅 및 스토리지 인프라를 배포하고 관리할 수 있는 HPC 조정 소프트웨어를 활용합니다. 예제 아키텍처에는 컴퓨팅을 배포하는 두 가지 방법, 즉 azurehpc 프레임워크 또는 Azure CycleCloud가 포함됩니다.

Azure CycleCloud는 Azure에서 HPC 및 대형 컴퓨팅 클러스터를 만들고, 관리하고, 운영하고, 최적화하기 위한 도구입니다. 이를 사용하여 Azure HPC 클러스터를 동적으로 프로비전하고 하이브리드 및 클라우드 워크플로를 위한 데이터 및 작업을 조정할 수 있습니다. 또한 Azure CycleCloud는 Grid Engine, HPC Pack, HTCondor, LSF, PBS Pro, Slurm 및 Symphony와 같은 Azure의 HPC 워크로드를 위한 여러 워크로드 관리자를 지원합니다.

네트워크

이 예제 워크로드는 다른 서브넷 내에 VM을 배포합니다. 추가 보안을 위해 각 서브넷에 대한 네트워크 보안 그룹을 정의할 수 있습니다. 예를 들어 다양한 노드에서 네트워크 트래픽을 허용하거나 거부하는 보안 규칙을 설정할 수 있습니다. 이 수준의 보안이 필요하지 않은 경우 이 구현을 위해 별도의 서브넷이 필요하지 않습니다.

스토리지

데이터 스토리지 및 액세스 요구는 워크로드 규모에 따라 크게 달라집니다. Azure는 HPC 애플리케이션의 속도와 용량을 관리하는 데 여러 가지 방법을 지원합니다. azurehpc GitHub 리포지토리에는 예제 Azure HPC 스크립트가 포함되어 있습니다.

다음 접근 방식은 석유 및 가스 산업에서 일반적으로 사용되는 방법입니다. 고유한 I/O 및 용량 요구 사항에 가장 적합한 솔루션을 선택하세요.

  • 현재 예제와 같은 소규모 워크로드의 경우 요구 사항에 따라, 대형 임시 디스크가 있는 스토리지 최적화된 Lsv2 시리즈 VM 또는 Azure Premium Storage가 있는 D 시리즈 VM을 사용하여 헤드 노드에서 NFS를 실행하는 것이 좋습니다. 이 솔루션은 500개 이하의 코어, 초당 최대 1.5기가바이트(GiB/s)의 처리량, 최대 19TB의 RAM 및 100TB의 스토리지의 워크로드에 적합합니다.

  • 중간 규모에서 대규모까지의 읽기 집약적 워크로드:Avere vFXT for Azure(노드 6~24개)를 사용하는 것이 좋습니다. 이 솔루션은 최대 50,000개 코어의 워크로드, 쓰기에 대해 최대 2GiB/s 및 읽기에 대해 최대 14GiB/s의 처리량, 최대 192TB의 캐시 및 최대 2페타바이트(PB)의 파일 서버에 적합합니다.

  • 분산 또는 쓰기 집약적인 중간 규모 워크로드: 최대 4,000개 코어의 워크로드에 최대 6.5GiB/s의 처리량, 최대 100TB/볼륨의 스토리지, 최대 12TB의 파일 크기로 Azure NetApp Files 사용하는 것이 좋습니다.

  • 대규모 워크로드: Lustre 또는 BeeGFS와 같은 조정된 병렬 파일 서비스를 사용합니다. 이 방법은 최대 50,000개의 코어, 최대 50GiB/s의 읽기/쓰기 속도, 500TB의 스토리지에 적합합니다. 더 큰 클러스터의 경우 운영 체제 미설치 접근 방식이 비용 면에서 더 효율적일 수 있습니다. 예를 들어 Cray ClusterStor는 대규모 탄력적 클러스터를 즉시 지원할 수 있는 유연성을 갖춘 관리형 HPC 스토리지 솔루션입니다.

시나리오 배포

GitHub에서 이 OPM Flow 아키텍처의 구현 예제를 확인하세요.

다음 단계