Kubernetes 및 Helm을 사용하는 Speech Service 컨테이너

음성 컨테이너 온-프레미스를 관리하는 한 가지 옵션은 Kubernetes 및 Helm을 사용하는 것입니다. Kubernetes 및 Helm을 사용하여 음성 텍스트 변환 및 텍스트 음성 변환 컨테이너 이미지를 정의하면서 Kubernetes 패키지를 만듭니다. 이 패키지는 온-프레미스 Kubernetes 클러스터에 배포됩니다. 마지막으로, 배포된 서비스와 다양한 구성 옵션을 테스트하는 방법을 살펴보겠습니다. Kubernetes 오케스트레이션을 사용하지 않고 Docker 컨테이너를 실행하는 방법에 대한 자세한 내용은 Speech Service 컨테이너 설치 및 실행을 참조하세요.

필수 조건

음성 컨테이너 온-프레미스를 사용하기 전에 다음 필수 조건을 충족해야 합니다.

Required 목적
Azure 계정 Azure 구독이 없는 경우 시작하기 전에 체험 계정을 만듭니다.
컨테이너 레지스트리 액세스 Kubernetes가 Docker 이미지를 클러스터로 가져오려면 컨테이너 레지스트리에 대한 액세스 권한이 필요합니다.
Kubernetes CLI Kubernetes CLI는 컨테이너 레지스트리에서 공유 자격 증명을 관리하는 데 필요합니다. Kubernetes는 Kubernetes 패키지 관리자인 Helm 이전에도 필요합니다.
Helm CLI Helm 차트(컨테이너 패키지 정의)를 설치하는 데 사용되는 Helm CLI를 설치합니다.
음성 리소스 이러한 컨테이너를 사용하려면 다음이 있어야 합니다.

연결된 청구 키 및 청구 엔드포인트 URI를 가져오기 위한 Speech Azure 리소스입니다. 두 값은 모두 Azure Portal의 음성 개요 및 키 페이지에서 제공되며 컨테이너를 시작하는 데 필요합니다.

{API_KEY}: 리소스 키

{ENDPOINT_URI}: 엔드포인트 URI 예제: https://eastus.api.cognitive.microsoft.com/sts/v1.0

참조로 Speech Service 컨테이너 호스트 컴퓨터 세부 정보를 참조하세요. 이 Helm 차트는 사용자가 지정하는 디코드(동시 요청) 수를 기준으로 CPU 및 메모리 요구 사항을 자동으로 계산합니다. 또한 오디오/텍스트 입력에 대한 최적화가 enabled로 구성되었는지 여부에 따라 조정됩니다. Helm 차트는 기본적으로, 두 개의 동시 요청 및 최적화 비활성화로 설정합니다.

서비스 CPU/컨테이너 메모리/컨테이너
음성 텍스트 변환 하나의 디코더에는 최소 1,150 밀리코어가 필요합니다. optimizedForAudioFile을 사용하도록 설정한 경우 1,950 밀리코어가 필요합니다. (기본값: 디코더 2개) 필수: 2GB
최대: 4GB
텍스트 음성 변환 하나의 동시 요청에는 최소 500 밀리코어가 필요합니다. optimizeForTurboMode을 사용하도록 설정한 경우 1,000 밀리코어가 필요합니다. (기본값: 동시 요청 2개) 필수: 1GB
최대: 2GB

Kubernetes 클러스터에 연결

호스트 컴퓨터에 사용 가능한 Kubernetes 클러스터가 있어야 합니다. Kubernetes 클러스터를 호스트 컴퓨터에 배포하는 방법에 대한 개념을 이해하려면 Kubernetes 클러스터 배포에 대한 이 자습서를 참조하세요.

배포에 대한 Helm 차트 값 구성

Microsoft에서 제공하는 모든 공개적으로 사용 가능한 Helm 차트를 보려면 Microsoft Helm Hub를 방문하세요. Microsoft Helm Hub에서 Azure AI 음성 온-프레미스 차트를 찾을 수 있습니다. Azure AI 음성 온-프레미스는 설치할 차트이지만, 먼저 명시적 구성으로 config-values.yaml 파일을 만들어야 합니다. 먼저 Microsoft 리포지토리를 Helm 인스턴스에 추가해 보겠습니다.

helm repo add microsoft https://microsoft.github.io/charts/repo

다음으로 Helm 차트 값을 구성합니다. 다음 YAML을 복사하여 config-values.yaml 파일에 붙여넣습니다. Azure AI 음성 온-프레미스 Helm 차트를 사용자 지정하는 방법에 대한 자세한 내용은 Helm 차트 사용자 지정을 참조하세요. # {ENDPOINT_URI}# {API_KEY} 주석을 원하는 값으로 바꿉니다.

# These settings are deployment specific and users can provide customizations
# speech to text configurations
speechToText:
  enabled: true
  numberOfConcurrentRequest: 3
  optimizeForAudioFile: true
  image:
    registry: mcr.microsoft.com
    repository: azure-cognitive-services/speechservices/speech-to-text
    tag: latest
    pullSecrets:
      - mcr # Or an existing secret
    args:
      eula: accept
      billing: # {ENDPOINT_URI}
      apikey: # {API_KEY}

# text to speech configurations
textToSpeech:
  enabled: true
  numberOfConcurrentRequest: 3
  optimizeForTurboMode: true
  image:
    registry: mcr.microsoft.com
    repository: azure-cognitive-services/speechservices/neural-text-to-speech
    tag: latest
    pullSecrets:
      - mcr # Or an existing secret
    args:
      eula: accept
      billing: # {ENDPOINT_URI}
      apikey: # {API_KEY}

Important

billingapikey 값이 제공되지 않은 경우 서비스는 15분 후에 만료됩니다. 마찬가지로, 서비스를 사용할 수 없게 되면 확인이 실패합니다.

Kubernetes 패키지(Helm 차트)

Helm 차트에는 mcr.microsoft.com 컨테이너 레지스트리에서 끌어올 Docker 이미지의 구성이 포함되어 있습니다.

Helm 차트는 Kubernetes 리소스의 관련 집합을 설명하는 파일 컬렉션입니다. 단일 차트를 사용하여 Memcached Pod와 같이 단순한 항목이나, HTTP 서버, 데이터베이스, 캐시 등이 포함된 전체 웹앱 스택과 같이 복잡한 항목을 배포할 수 있습니다.

제공된 Helm 차트는 텍스트 음성 변환 및 음성 텍스트 변환 서비스 둘 다 Speech Service의 Docker 이미지를 mcr.microsoft.com 컨테이너 레지스트리에서 끌어옵니다.

Kubernetes 클러스터에 Helm 차트 설치

helm install 명령을 실행하여 Helm 차트를 설치하고 <config-values.yaml>을 적절한 경로 및 파일 이름 인수로 바꿉니다. microsoft/cognitive-services-speech-onpremise Helm 차트는 Microsoft Helm Hub에서 사용할 수 있습니다.

helm install onprem-speech microsoft/cognitive-services-speech-onpremise \
    --version 0.1.1 \
    --values <config-values.yaml> 

성공적인 설치 실행에서 볼 수 있는 출력의 예는 다음과 같습니다.

NAME:   onprem-speech
LAST DEPLOYED: Tue Jul  2 12:51:42 2019
NAMESPACE: default
STATUS: DEPLOYED

RESOURCES:
==> v1/Pod(related)
NAME                             READY  STATUS             RESTARTS  AGE
speech-to-text-7664f5f465-87w2d  0/1    Pending            0         0s
speech-to-text-7664f5f465-klbr8  0/1    ContainerCreating  0         0s
neural-text-to-speech-56f8fb685b-4jtzh  0/1    ContainerCreating  0         0s
neural-text-to-speech-56f8fb685b-frwxf  0/1    Pending            0         0s

==> v1/Service
NAME            TYPE          CLUSTER-IP    EXTERNAL-IP  PORT(S)       AGE
speech-to-text  LoadBalancer  10.0.252.106  <pending>    80:31811/TCP  1s
neural-text-to-speech  LoadBalancer  10.0.125.187  <pending>    80:31247/TCP  0s

==> v1beta1/PodDisruptionBudget
NAME                                MIN AVAILABLE  MAX UNAVAILABLE  ALLOWED DISRUPTIONS  AGE
speech-to-text-poddisruptionbudget  N/A            20%              0                    1s
neural-text-to-speech-poddisruptionbudget  N/A            20%              0                    1s

==> v1beta2/Deployment
NAME            READY  UP-TO-DATE  AVAILABLE  AGE
speech-to-text  0/2    2           0          0s
neural-text-to-speech  0/2    2           0          0s

==> v2beta2/HorizontalPodAutoscaler
NAME                       REFERENCE                  TARGETS        MINPODS  MAXPODS  REPLICAS  AGE
speech-to-text-autoscaler  Deployment/speech-to-text  <unknown>/50%  2        10       0         0s
neural-text-to-speech-autoscaler  Deployment/neural-text-to-speech  <unknown>/50%  2        10       0         0s


NOTES:
cognitive-services-speech-onpremise has been installed!
Release is named onprem-speech

Kubernetes 배포를 완료하는 데 몇 분 정도 걸릴 수 있습니다. Pod와 서비스가 올바르게 배포되고 사용 가능한지 확인하려면 다음 명령을 실행합니다.

kubectl get all

다음과 비슷하게 표시됩니다.

NAME                                  READY     STATUS    RESTARTS   AGE
pod/speech-to-text-7664f5f465-87w2d   1/1       Running   0          34m
pod/speech-to-text-7664f5f465-klbr8   1/1       Running   0          34m
pod/neural-text-to-speech-56f8fb685b-4jtzh   1/1       Running   0          34m
pod/neural-text-to-speech-56f8fb685b-frwxf   1/1       Running   0          34m

NAME                     TYPE           CLUSTER-IP     EXTERNAL-IP      PORT(S)        AGE
service/kubernetes       ClusterIP      10.0.0.1       <none>           443/TCP        3h
service/speech-to-text   LoadBalancer   10.0.252.106   52.162.123.151   80:31811/TCP   34m
service/neural-text-to-speech   LoadBalancer   10.0.125.187   65.52.233.162    80:31247/TCP   34m

NAME                             DESIRED   CURRENT   UP-TO-DATE   AVAILABLE   AGE
deployment.apps/speech-to-text   2         2         2            2           34m
deployment.apps/neural-text-to-speech   2         2         2            2           34m

NAME                                        DESIRED   CURRENT   READY     AGE
replicaset.apps/speech-to-text-7664f5f465   2         2         2         34m
replicaset.apps/neural-text-to-speech-56f8fb685b   2         2         2         34m

NAME                                                            REFERENCE                   TARGETS   MINPODS   MAXPODS   REPLICAS   AGE
horizontalpodautoscaler.autoscaling/speech-to-text-autoscaler   Deployment/speech-to-text   1%/50%    2         10        2          34m
horizontalpodautoscaler.autoscaling/neural-text-to-speech-autoscaler   Deployment/neural-text-to-speech   0%/50%    2         10        2          34m

Helm 테스트를 사용하여 Helm 배포 확인

설치된 Helm 차트는 인증에 대한 편의를 제공하는 투구 테스트를 정의합니다. 이러한 테스트는 서비스 준비 상태에 대한 유효성을 검사합니다. 음성 텍스트 변환 기능과 텍스트 음성 변환 기능을 모두 확인하려면 Helm 테스트 명령을 실행합니다.

helm test onprem-speech

Important

POD 상태가 Running이 아니거나 배포가 AVAILABLE 열 아래에 나열되지 않은 경우 이러한 테스트는 실패합니다. 이 작업을 완료하는 데 10분 이상 걸릴 수 있으므로 조금만 기다려 주세요.

이러한 테스트는 다양한 상태 결과를 출력합니다.

RUNNING: speech to text-readiness-test
PASSED: speech to text-readiness-test
RUNNING: text to speech-readiness-test
PASSED: text to speech-readiness-test

Helm 테스트를 실행하는 대신 kubectl get all 명령에서 외부 IP 주소 및 해당 포트를 수집할 수 있습니다. IP 및 포트를 사용하여 웹 브라우저를 열고 http://<external-ip>:<port>:/swagger/index.html로 이동하여 API Swagger 페이지를 봅니다.

Helm 차트 사용자 지정

Helm 차트는 계층 구조입니다. 계층적으로 차트를 상속하는 경우에는 보다 구체적인 설정이 상속된 규칙을 재정의하는 특이성의 개념도 충족합니다.

음성(umbrella 차트)

최상위 “파라솔” 차트의 값은 해당 하위 차트 값을 재정의합니다. 따라서 모든 온-프레미스 사용자 지정 값을 여기에 추가해야 합니다.

매개 변수 설명 기본값
speechToText.enabled 음성 텍스트 변환 서비스 사용 여부를 나타냅니다. true
speechToText.verification.enabled 음성 텍스트 변환 서비스의 helm test 기능 사용 여부를 나타냅니다. true
speechToText.verification.image.registry helm test음성 텍스트 변환 서비스를 테스트하는 데 사용하는 Docker 이미지 리포지토리입니다. Helm은 테스트를 위해 클러스터 내부에 분리된 Pod를 만들고 이 레지스트리에서 test-use 이미지를 풀합니다. docker.io
speechToText.verification.image.repository helm test음성 텍스트 변환 서비스를 테스트하는 데 사용하는 Docker 이미지 리포지토리입니다. Helm 테스트 Pod는 이 리포지토리를 사용하여 test-use 이미지를 풀합니다. antsu/on-prem-client
speechToText.verification.image.tag 음성 텍스트 변환 서비스의 helm test에서 사용되는 Docker 이미지 태그입니다. Helm 테스트 Pod는 이 태그를 사용하여 test-use 이미지를 풀합니다. latest
speechToText.verification.image.pullByHash test-use Docker 이미지를 해시를 통해 풀할지 여부를 나타냅니다. true인 경우 유효한 이미지 해시 값과 함께 speechToText.verification.image.hash를 추가해야 합니다. false
speechToText.verification.image.arguments test-use Docker 이미지를 실행하는 데 사용되는 인수입니다. Helm 테스트 Pod는 helm test를 실행할 때 이 인수를 컨테이너에 전달합니다. "./speech-to-text-client"
"./audio/whatstheweatherlike.wav"
"--expect=What's the weather like"
"--host=$(SPEECH_TO_TEXT_HOST)"
"--port=$(SPEECH_TO_TEXT_PORT)"
textToSpeech.enabled 텍스트 음성 변환 서비스 사용 여부를 나타냅니다. true
textToSpeech.verification.enabled 음성 텍스트 변환 서비스의 helm test 기능 사용 여부를 나타냅니다. true
textToSpeech.verification.image.registry helm test음성 텍스트 변환 서비스를 테스트하는 데 사용하는 Docker 이미지 리포지토리입니다. Helm은 테스트를 위해 클러스터 내부에 분리된 Pod를 만들고 이 레지스트리에서 test-use 이미지를 풀합니다. docker.io
textToSpeech.verification.image.repository helm test음성 텍스트 변환 서비스를 테스트하는 데 사용하는 Docker 이미지 리포지토리입니다. Helm 테스트 Pod는 이 리포지토리를 사용하여 test-use 이미지를 풀합니다. antsu/on-prem-client
textToSpeech.verification.image.tag 음성 텍스트 변환 서비스의 helm test에서 사용되는 Docker 이미지 태그입니다. Helm 테스트 Pod는 이 태그를 사용하여 test-use 이미지를 풀합니다. latest
textToSpeech.verification.image.pullByHash test-use Docker 이미지를 해시를 통해 풀할지 여부를 나타냅니다. true인 경우 유효한 이미지 해시 값과 함께 textToSpeech.verification.image.hash를 추가해야 합니다. false
textToSpeech.verification.image.arguments test-use Docker 이미지에서 실행할 인수입니다. Helm 테스트 Pod는 helm test를 실행할 때 이 인수를 컨테이너에 전달합니다. "./text-to-speech-client"
"--input='What's the weather like'"
"--host=$(TEXT_TO_SPEECH_HOST)"
"--port=$(TEXT_TO_SPEECH_PORT)"

음성 텍스트 변환(하위 차트: charts/speechToText)

“Umbrella” 차트를 재정의하려면 매개 변수에 speechToText. 접두사를 추가하여 더 구체화합니다. 예를 들어, speechToText.numberOfConcurrentRequestnumberOfConcurrentRequest를 재정의하는 것처럼 해당 매개 변수를 재정의합니다.

매개 변수 설명 기본값
enabled 음성 텍스트 변환 서비스 사용 여부를 나타냅니다. false
numberOfConcurrentRequest 음성 텍스트 변환 서비스의 동시 요청 수입니다. 이 차트는 해당 값에 따라 CPU 및 메모리 리소스를 자동으로 계산합니다. 2
optimizeForAudioFile 서비스가 오디오 파일을 통해 오디오 입력에 대해 최적화해야 하는지 여부를 나타냅니다. true인 경우 이 차트는 더 많은 CPU 리소스를 서비스에 할당합니다. false
image.registry 음성 텍스트 변환 Docker 이미지 레지스트리입니다. containerpreview.azurecr.io
image.repository 음성 텍스트 변환 Docker 이미지 리포지토리입니다. microsoft/cognitive-services-speech-to-text
image.tag 음성 텍스트 변환 Docker 이미지 태그입니다. latest
image.pullSecrets 음성 텍스트 변환 Docker 이미지를 풀하기 위한 이미지 비밀입니다.
image.pullByHash Docker 이미지를 해시를 통해 풀할지 여부를 나타냅니다. true인 경우 image.hash가 필요합니다. false
image.hash 음성 텍스트 변환 Docker 이미지 해시입니다. image.pullByHash: true인 경우에만 사용됩니다.
image.args.eula(필수) 라이선스에 동의했음을 나타냅니다. 유효한 값은 accept뿐입니다.
image.args.billing(필수) 청구 엔드포인트 URI 값은 Azure Portal의 Speech 개요 페이지에서 제공됩니다.
image.args.apikey(필수) 청구 정보를 추적하는 데 사용됩니다.
service.type 음성 텍스트 변환 서비스의 Kubernetes 서비스 유형입니다. 자세한 내용은 Kubernetes 서비스 유형 지침을 참조하고 클라우드 공급자 지원을 확인하세요. LoadBalancer
service.port 음성 텍스트 변환 서비스의 포트입니다. 80
service.annotations 서비스 메타데이터의 음성 텍스트 변환 주석입니다. 주석은 키 값 쌍입니다.
annotations:
  some/annotation1: value1
  some/annotation2: value2
service.autoScaler.enabled Horizontal Pod Autoscaler가 사용되는지 여부를 나타냅니다. true인 경우 speech-to-text-autoscaler이 Kubernetes 클러스터에 배포됩니다. true
service.podDisruption.enabled Pod Disruption Budget이 사용되는지 여부를 나타냅니다. true인 경우 speech-to-text-poddisruptionbudget이 Kubernetes 클러스터에 배포됩니다. true

감정 분석(하위 차트: chars/speechToText)

음성 텍스트 변환 컨테이너 v2.2.0 및 Helm 차트 v0.2.0부터 Language 서비스 API를 사용하여 감정 분석에 다음 매개 변수가 사용됩니다.

매개 변수 설명 기본값
textanalytics.enabled text-analytics 서비스 사용 여부를 나타냅니다. true/false false
textanalytics.image.registry text-analytics Docker 이미지 레지스트리입니다. 유효한 Docker 이미지 레지스트리
textanalytics.image.repository text-analytics Docker 이미지 리포지토리입니다. 유효한 Docker 이미지 리포지토리
textanalytics.image.tag text-analytics Docker 이미지 태그입니다. 유효한 Docker 이미지 태그
textanalytics.image.pullSecrets text-analytics Docker 이미지를 풀하기 위한 이미지 비밀입니다. 유효한 비밀 이름
textanalytics.image.pullByHash 해시를 통해 Docker 이미지를 풀할지 여부를 지정합니다. yes인 경우 image.hash도 포함해야 합니다. no인 경우 ‘false’로 설정합니다. 기본값은 false입니다. true/false false
textanalytics.image.hash text-analytics Docker 이미지 해시입니다. image.pullByHash:true에서만 사용됩니다. 유효한 Docker 이미지 해시
textanalytics.image.args.eula 라이선스에 동의했음을 나타내는 text-analytics 컨테이너의 필수 인수 중 하나입니다. 이 옵션의 값은 accept로 설정해야 합니다. 컨테이너를 사용하려면 accept
textanalytics.image.args.billing 청구 엔드포인트 URI를 지정하는 text-analytics 컨테이너의 필수 인수 중 하나입니다. 청구 엔드포인트 URI 값은 Azure Portal의 Speech 개요 페이지에서 제공됩니다. 유효한 청구 엔드포인트 URI
textanalytics.image.args.apikey 청구 정보를 추적하는 데 사용되는 text-analytics 컨테이너의 필수 인수 중 하나입니다. 유효한 apikey
textanalytics.cpuRequest text-analytics 컨테이너의 요청된 CPU입니다. int 3000m
textanalytics.cpuLimit text-analytics 컨테이너의 제한된 CPU입니다. 8000m
textanalytics.memoryRequest text-analytics 컨테이너의 요청된 메모리입니다. 3Gi
textanalytics.memoryLimit text-analytics 컨테이너의 제한된 메모리입니다. 8Gi
textanalytics.service.sentimentURISuffix 감정 분석 URI 접미사, 전체 URI는 “http://:<service>:<port>/<sentimentURISuffix>” 형식입니다. text/analytics/v3.0-preview/sentiment
textanalytics.service.type Kubernetes의 text-analytics 서비스 유형입니다. Kubernetes 서비스 유형을 참조하세요. 유효한 Kubernetes 서비스 유형 LoadBalancer
textanalytics.service.port text-analytics 서비스의 포트입니다. int 50085
textanalytics.service.annotations 사용자가 text-analytics 서비스 메타데이터에 추가할 수 있는 주석입니다. 예를 들면 다음과 같습니다.
annotations:
some/annotation1: value1
some/annotation2: value2
주석, 줄당 하나
textanalytics.serivce.autoScaler.enabled Horizontal Pod Autoscaler가 사용되는지 여부를 나타냅니다. 사용되는 경우 text-analytics-autoscaler이 Kubernetes 클러스터에 배포됩니다. true/false true
textanalytics.service.podDisruption.enabled Pod Disruption Budget이 사용되는지 여부를 나타냅니다. 사용되는 경우 text-analytics-poddisruptionbudget이 Kubernetes 클러스터에 배포됩니다. true/false true

텍스트 음성 변환(하위 차트: charts/textToSpeech)

“Umbrella” 차트를 재정의하려면 매개 변수에 textToSpeech. 접두사를 추가하여 더 구체화합니다. 예를 들어, textToSpeech.numberOfConcurrentRequestnumberOfConcurrentRequest를 재정의하는 것처럼 해당 매개 변수를 재정의합니다.

매개 변수 설명 기본값
enabled 텍스트 음성 변환 서비스 사용 여부를 나타냅니다. false
numberOfConcurrentRequest 텍스트 음성 변환 서비스의 동시 요청 수입니다. 이 차트는 해당 값에 따라 CPU 및 메모리 리소스를 자동으로 계산합니다. 2
optimizeForTurboMode 서비스가 텍스트 파일을 통해 텍스트 입력에 대해 최적화해야 하는지 여부를 나타냅니다. true인 경우 이 차트는 더 많은 CPU 리소스를 서비스에 할당합니다. false
image.registry 텍스트 음성 변환 Docker 이미지 레지스트리입니다. containerpreview.azurecr.io
image.repository 텍스트 음성 변환 Docker 이미지 리포지토리입니다. microsoft/cognitive-services-text-to-speech
image.tag 텍스트 음성 변환 Docker 이미지 태그입니다. latest
image.pullSecrets 텍스트 음성 변환 Docker 이미지를 풀하기 위한 이미지 비밀입니다.
image.pullByHash Docker 이미지를 해시를 통해 풀할지 여부를 나타냅니다. true인 경우 image.hash가 필요합니다. false
image.hash 텍스트 음성 변환 Docker 이미지 해시입니다. image.pullByHash: true인 경우에만 사용됩니다.
image.args.eula(필수) 라이선스에 동의했음을 나타냅니다. 유효한 값은 accept뿐입니다.
image.args.billing(필수) 청구 엔드포인트 URI 값은 Azure Portal의 Speech 개요 페이지에서 제공됩니다.
image.args.apikey(필수) 청구 정보를 추적하는 데 사용됩니다.
service.type 텍스트 음성 변환 서비스의 Kubernetes 서비스 유형입니다. 자세한 내용은 Kubernetes 서비스 유형 지침을 참조하고 클라우드 공급자 지원을 확인하세요. LoadBalancer
service.port 텍스트 음성 변환 서비스의 포트입니다. 80
service.annotations 서비스 메타데이터의 텍스트 음성 변환 주석입니다. 주석은 키 값 쌍입니다.
annotations:
  some/annotation1: value1
  some/annotation2: value2
service.autoScaler.enabled Horizontal Pod Autoscaler가 사용되는지 여부를 나타냅니다. true인 경우 text-to-speech-autoscaler이 Kubernetes 클러스터에 배포됩니다. true
service.podDisruption.enabled Pod Disruption Budget이 사용되는지 여부를 나타냅니다. true인 경우 text-to-speech-poddisruptionbudget이 Kubernetes 클러스터에 배포됩니다. true

다음 단계

AKS(Azure Kubernetes Service)에서 Helm을 사용하여 애플리케이션을 설치하는 방법에 대한 자세한 내용은 여기를 참조하세요.