IBM Spectrum Symphony를 Google Cloud와 통합

이 문서에서는 Google Cloud용 Symphony 커넥터를 사용할 때 적용되는 요구사항과 제한사항을 설명합니다.

Google Cloud 용 IBM Spectrum Symphony 커넥터를 사용하면 Google Cloud 의 컴퓨팅 리소스를 Symphony 클러스터에 추가할 수 있습니다. 고성능 컴퓨팅 (HPC) 워크로드에 기존 인프라에서 제공하는 것보다 더 많은 용량이 필요한 경우 커넥터를 사용하면 Symphony의 호스트 팩토리 서비스가 Google Kubernetes Engine (GKE)에서 Compute Engine 가상 머신 (VM) 인스턴스 또는 포드를 자동으로 프로비저닝할 수 있습니다. 이 접근 방식을 사용하면 HPC 워크로드의 최대 수요를 충족하도록 Symphony 환경을 Google Cloud 로 확장할 수 있습니다.

Google Cloud에 Symphony 커넥터를 사용해야 하는 경우

Google Cloud 용 Symphony 커넥터는 Symphony의 호스트 팩토리 서비스를 Google Cloud와 통합하여 Symphony 클러스터에서 Google Cloud리소스를 사용할 수 있도록 합니다. 다음 시나리오에서는Google Cloud 에 Symphony 커넥터를 사용하세요.

  • 클라우드 버스팅: 온프레미스 클러스터 리소스가 부족한 경우 Symphony 워크로드를 Google Cloud 로 동적으로 확장하여 추가 컴퓨팅 용량에 액세스합니다. Google Cloud용 Symphony 커넥터는 기존 Symphony 작업 예약과 통합되어 필요에 따라 리소스 프로비저닝을 자동화합니다.

  • 하이브리드 클라우드 배포: 온프레미스 및 Google Cloud 인프라 모두에서 Symphony 워크로드를 실행하는 경우 이 솔루션을 사용하여 Symphony 호스트 팩토리 프레임워크를 통해 리소스 관리를 통합할 수 있습니다. 이 접근 방식을 사용하면 단일 인터페이스에서 온프레미스 및 Google Cloud 리소스를 관리하여 작업 제출, 모니터링, 리소스 관리를 간소화할 수 있습니다.

  • 비용 최적화: Google Cloud의 유연한 인스턴스 유형과 가격 모델(예: 스팟 VM(선점형 VM))을 사용하여 비용에 민감한 워크로드를 실행합니다.

  • 개발 및 테스트: 개발 또는 테스트 워크플로를 위한 임시 컴퓨팅 리소스를 프로비저닝하려면 Symphony 커넥터를 사용하여 Google Cloud환경을 빠르게 만들고 삭제하세요. 자동 리소스 정리로 비용이 최적화됩니다.

  • 통합 관리: 호스트 팩토리를 사용하여 GKE 포드와 Symphony에서 사용하는 Compute Engine 인스턴스를 모두 관리하는 일관된 인터페이스를 만듭니다.

  • 원활한 엔터프라이즈 통합: 이 솔루션을 사용하여 기존 Symphony 배포를 Google Cloud 로 확장할 수 있으며, 이를 위해 아키텍처를 크게 변경할 필요가 없습니다.

Google Cloud 용 Symphony 커넥터 작동 방식 알아보기

Google Cloud 용 Symphony 커넥터는Google Cloud 를 호스트 팩토리 서비스의 제공자로 만드는 데 필요한 구성요소를 제공합니다.

다음 다이어그램은Google Cloud용 Symphony 커넥터의 아키텍처를 보여줍니다.

IBM Spectrum Symphony 환경, Google Cloud 호스트 팩토리 제공업체 레이어, Compute Engine 및 GKE와 같은 Google Cloud 서비스 간의 상호작용을 보여주는 아키텍처 다이어그램

이 아키텍처에는 IBM Spectrum Symphony 환경, Google Cloud 호스트 팩토리 제공업체 레이어, Google Cloud 서비스라는 세 가지 기본 그룹이 포함되어 있습니다. Symphony 환경에는 호스트 팩토리 및 제공업체 스크립트가 포함되어 있습니다. 이 아키텍처는 Google Cloud 호스트 팩토리 제공업체 CLI 도구 레이어를 사용하여 요청을 변환하므로 Symphony 스크립트가 Compute Engine 리소스와 GKE에서 실행되는 Kubernetes 연산자를 제어할 수 있습니다.

다음 섹션에서는 Google Cloud용 Symphony 커넥터의 주요 구성요소를 설명합니다.

IBM Spectrum Symphony 호스트 팩토리

워크로드 수요에 따라 다양한 제공업체의 컴퓨팅 호스트 수명 주기를 관리하는 IBM Spectrum Symphony 서비스입니다. 이 Symphony 구성요소는 Google Cloud 와 통합되는 소프트웨어입니다.

제공업체 스크립트

Symphony 호스트 팩토리 서비스는 셸 스크립트 집합을 사용하여 클라우드 제공업체와 통합됩니다. 이러한 스크립트는 리소스를 요청하고 반환합니다.

기본적으로 Symphony에는 Google Cloud용 호스트 팩토리 제공자가 포함되어 있지 않습니다.

Google Cloud 호스트 팩토리 제공자를 사용하면 Symphony 호스트 팩토리 프레임워크가 Google Cloud와 통신할 수 있습니다.

다음 표에는 Google Cloud 용 Symphony 커넥터에서 사용하는 스크립트가 나와 있습니다.

이름 설명 IBM 문서
getAvailableTemplates.sh 공급자 구성에 정의된 사용 가능한 리소스 템플릿을 가져옵니다. 호스트 팩토리는 getAvailableTemplates.sh를 호출하여 요청할 수 있는 리소스 유형을 알아냅니다. getAvailableTemplates
requestMachines.sh Google Cloud에서 새 컴퓨팅 리소스를 프로비저닝합니다. 템플릿과 수량을 지정하는 JSON 페이로드를 수신합니다. requestMachines
requestReturnMachines.sh 호스트 팩토리는 Symphony 클러스터에서 사용하는 컴퓨팅 리소스를 프로비저닝 해제합니다. 반환할 머신을 식별하는 JSON 페이로드를 수신합니다. requestReturnMachines
getRequestStatus.sh 호스트 팩토리는 requestMachines.sh로 시작된 진행 중인 프로비저닝 요청의 상태를 폴링합니다. 요청 ID가 포함된 JSON 페이로드를 수신합니다. getRequestStatus
getReturnRequests.sh 호스트 팩토리는 requestReturnMachines.sh로 시작된 진행 중인 프로비저닝 해제 요청의 상태를 폴링합니다. 요청 ID가 포함된 JSON 페이로드를 수신합니다. getReturnRequests

Google Cloud 호스트 팩토리 제공업체

Google Cloud 호스트 팩토리 제공자는 IBM Spectrum Symphony의 호스트 팩토리 프레임워크를 Google Cloud에 연결합니다. 이 플러그인에는 Symphony가 다음 워크로드의 리소스를 요청하고 관리하기 위해 호출하는 명령줄 인터페이스(CLI) 도구(제공업체라고 함)가 포함되어 있습니다.

  • Compute Engine의 경우 Compute Engine 제공업체를 사용합니다.

  • GKE 워크로드의 경우 GKE 제공업체를 사용합니다. GKE 워크로드의 경우 추가 Kubernetes 연산자를 설치해야 합니다. 이 연산자는 GKE 클러스터 내에서 실행되어 GKE 제공자를 사용하여 요청된 IBM Spectrum Symphony 컴퓨팅 포드의 수명 주기를 관리합니다.

CLI 도구는 Python 모듈이므로 Python 인터프리터를 사용하여 수동으로 실행할 수도 있습니다. 자세한 내용은 GitHub의 Python에서 실행을 참고하세요.

Compute Engine 제공업체

Compute Engine 제공업체(hf-gce)는 Symphony의 호스트 팩토리를 Compute Engine과 통합하도록 설계된 CLI 도구입니다. Compute Engine 제공자를 설치한 후 Symphony 호스트 팩토리에서 구성해야 합니다. 이 구성이 완료되면 호스트 팩토리에서 hf-gce CLI를 사용하는 스크립트를 자동으로 호출합니다.

Compute Engine 제공업체는 Google Compute Engine API와 직접 상호작용하여 Symphony의 요구사항과 제공자 인스턴스 및 템플릿에 정의된 구성을 기반으로 VM 인스턴스의 수명 주기를 관리합니다. 제공자는 Compute Engine VM을 만들고 모니터링하고 종료하며, 그러면 VM이 컴퓨팅 노드로 Symphony 클러스터에 참여합니다.

GKE 제공업체

GKE 제공업체(hf-gke)는 Symphony의 호스트 팩토리 서비스를 GKE에 연결하는 CLI 도구입니다. 호스트 팩토리에서는 hf-gke CLI를 호출하는 스크립트를 사용합니다.

GKE 제공자는 GKE 클러스터의 API와 상호작용하여 커스텀 리소스, 특히 GCPSymphonyResourceMachineReturnRequest 리소스를 만들고, 쿼리하고, 삭제합니다.

GKE 클러스터 내에서 실행되는 Kubernetes 연산자는 이러한 커스텀 리소스를 기반으로 포드 수명 주기 관리를 처리합니다. GKE 제공자는 Symphony의 리소스 요청을 Kubernetes 커스텀 리소스 기반 오케스트레이션에 연결합니다.

Google Cloud 서비스 통합

Compute Engine 및 GKE에 연결할 수 있습니다. Compute Engine 연결에 필요한 추가 구성요소는 없습니다. GKE 연결에는 Kubernetes 연산자가 있습니다.

Kubernetes 연산자

이 연산자는 GKE 제공업체를 사용하여 실행하는 GKE 워크로드에만 필요합니다. 이 연산자는 GKE 클러스터 내에서 실행되어 GKE 제공자를 사용하여 요청된 Symphony 컴퓨팅 포드의 수명 주기를 관리합니다. GKE 연산자에는 다음과 같은 기능이 있습니다.

  • 비동기 작업: 대규모 배포에 적합한 고성능 비동기 처리를 지원합니다.
  • 선점 처리: 스팟 VM 선점의 자동 감지 및 관리가 포함됩니다.
  • 커스텀 리소스 정의: GCPSymphonyResourceMachineReturnRequest 커스텀 리소스를 사용하여 리소스를 관리합니다.
  • 리소스 정리: 구성 가능한 보관 기간을 사용하여 완료된 리소스의 정리를 자동화합니다.
  • 상태 모니터링: 기본 제공 상태 점검 및 상태 보고를 통해 통합 상태를 모니터링합니다.

제한사항

Symphony 커넥터는 Google Cloud Symphony 클러스터의 기본 컴퓨팅 인프라 (VM 인스턴스 및 GKE 포드)를 프로비저닝하고 관리하며 새 Symphony 워크로드를 만들지 않습니다. Symphony 소프트웨어를 계속 사용하여 워크로드를 만들고, 관리하고, 예약하고, 실행합니다.

다음 단계