IBM Spectrum Symphony 워크로드 배포

이 문서에서는 IBM Spectrum Symphony와 Google Cloud간의 통합을 제공하는 Google Cloud용 Symphony 커넥터에 대해 설명합니다. 이 통합을 사용하면 Google Cloud 리소스를 Symphony 클러스터의 유연한 컴퓨팅 용량으로 사용할 수 있습니다. 그런 다음 Symphony는 호스트 팩토리를 사용하여 클러스터를 관리합니다. 호스트 팩토리는 Symphony 클러스터의 리소스 수요를 충족하기 위해 Google Cloud 와 같은 클라우드 제공업체의 컴퓨팅 호스트로 클러스터를 확장하는 IBM Spectrum Symphony의 구성요소입니다.

Symphony 커넥터를 사용하여 Google Cloud 특히 고성능 컴퓨팅(HPC) 워크로드의 경우 유연한Google Cloud 리소스로 기존 클라우드 인프라를 보완하세요. Google Cloud 용 Symphony 커넥터는 Compute Engine과 Google Kubernetes Engine 서비스를 모두 지원합니다.

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

Google Cloud 용 Symphony 커넥터는 Symphony의 호스트 팩토리 서비스와 Google Cloud간의 격차를 해소하도록 설계되었습니다. 다음 시나리오에서는Google Cloud 에 Symphony 커넥터를 사용하세요.

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

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

  • 비용 최적화: 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 커넥터의 아키텍처를 보여줍니다.

Symphony 아키텍처 다이어그램

위 다이어그램에 표시된 것처럼 이 아키텍처에는 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에서 생성한 인터페이스로, IBM Spectrum Symphony의 호스트 팩토리 프레임워크와 통합됩니다. 이 Google Cloud 플러그인에는 Symphony가Google Cloud의 리소스를 요청하고 관리하기 위해 호출하는 CLI 도구가 포함되어 있습니다. Compute Engine 및 GKE 워크로드 모두에 사용할 수 있는 CLI 도구가 제공됩니다. Symphony 커넥터는 Google Cloud 다음 CLI 도구를 제공업체로 지칭합니다.

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

이러한 CLI 도구를 설치한 후 Python을 사용하여 Compute Engine 및 GKE 제공업체 CLI 도구를 수동으로 호출할 수도 있습니다. 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의 생성, 모니터링, 종료를 처리하여 컴퓨팅 노드로 Symphony 클러스터에 참여할 수 있도록 합니다.

GKE 제공업체

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

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

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

Google Cloud 서비스

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

Kubernetes 연산자

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

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

제한사항

Google Cloud 용 Symphony 커넥터에는 다음과 같은 제한사항이 있습니다.

  • Google Cloud 는 IBM Spectrum Symphony 워크로드를 만들거나, 관리하거나, 예약하거나, 실행하지 않습니다. Symphony 소프트웨어 내의 모든 워크로드 관리는 사용자가 담당합니다.

다음 단계

GitHub 문서를 방문하여 Google Cloud 호스트 팩토리 제공업체를 설치하고 구성하세요.