W&B는 W&B Multi-tenant Cloud 또는 전용 클라우드 배포 유형과 같이 관리가 완전히 지원되는 배포 옵션을 권장합니다. W&B의 완전 관리형 서비스는 설정이 거의 또는 전혀 필요하지 않으며 안전하고 간편하게 사용할 수 있습니다.
필수 구성 요소를 배포합니다.
- Azure Resource Group
- Azure Virtual Network (VPC)
- Azure MySQL Flexible Server
- Azure Storage Account & Blob Storage
- Azure Kubernetes Service
- Azure Application Gateway
- Azure Cache for Redis
- Azure Event Grid
사전 필수 권한
AzureRM 프로바이더를 설정하는 가장 간단한 방법은 Azure CLI를 이용하는 것이지만, 자동화를 구현하는 경우에는 Azure Service Principal을 사용하는 것도 유용할 수 있습니다. 어떤 인증 방법을 사용하든, Terraform을 실행할 계정은 도입부에서 설명한 모든 구성 요소를 생성할 수 있는 권한이 있어야 합니다.일반 단계
이 섹션의 단계는 이 가이드에서 다루는 모든 배포 옵션에 공통적으로 적용됩니다.-
개발 환경을 준비합니다.
- Terraform을 설치합니다.
- 사용할 코드가 포함된 Git 저장소를 생성하는 것을 권장하지만, 파일을 로컬에 보관할 수도 있습니다.
-
terraform.tfvars파일 생성tfvars파일의 내용은 설치 유형에 따라 사용자 지정할 수 있지만, 권장되는 최소 구성은 아래 예시와 같습니다.여기에 정의된 변수들은 배포 전에 결정되어야 합니다.namespace변수는 Terraform이 생성하는 모든 리소스의 이름 앞에 붙는 접두사 문자열이 됩니다.subdomain과domain의 조합으로 W&B가 설정될 FQDN이 형성됩니다. 위의 예시에서 W&B FQDN은wandb-aws.wandb.ml이 되며, 이 FQDN 레코드가 생성될 DNSzone_id가 설정됩니다. -
versions.tf파일 생성 이 파일에는 Azure에 W&B를 배포하는 데 필요한 Terraform 및 Terraform 프로바이더 버전 정보가 포함됩니다.Azure 프로바이더 설정에 대한 자세한 내용은 Terraform 공식 문서를 참조하세요. 선택 사항이지만 강력히 권장되는 사항으로, 이 문서의 앞부분에서 언급한 원격 백엔드 설정을 추가할 수 있습니다. -
variables.tf파일 생성terraform.tfvars에 설정된 각 옵션에 대해 Terraform은 상응하는 변수 선언이 필요합니다.
권장 배포 방식
이는 모든필수 구성 요소를 생성하고 Kubernetes Cluster에 최신 버전의 W&B를 설치하는 가장 간단한 배포 옵션 설정입니다.
-
main.tf생성일반 단계에서 파일을 생성한 것과 동일한 디렉토리에 다음 내용으로main.tf파일을 생성합니다. -
W&B 배포
W&B를 배포하려면 다음 코맨드를 실행하세요.
REDIS 캐시를 포함한 배포
또 다른 배포 옵션은Redis를 사용하여 SQL 쿼리를 캐싱하고 Experiments의 메트릭을 로드할 때 애플리케이션의 응답 속도를 높이는 것입니다.
캐시를 활성화하려면 권장 배포 방식에서 사용한 것과 동일한 main.tf 파일에 create_redis = true 옵션을 추가해야 합니다.
외부 큐(External Queue)를 포함한 배포
세 번째 배포 옵션은 외부메시지 브로커(message broker)를 활성화하는 것입니다. W&B에 브로커가 내장되어 있으므로 이는 선택 사항입니다. 이 옵션이 반드시 성능 향상을 가져오는 것은 아닙니다.
메시지 브로커를 제공하는 Azure 리소스는 Azure Event Grid이며, 이를 활성화하려면 권장 배포 방식에서 사용한 것과 동일한 main.tf 파일에 use_internal_queue = false 옵션을 추가해야 합니다.