Helm을 사용하여 Kubernetes에 자체 호스팅 게이트웨이 배포
적용 대상: 개발자 | 프리미엄
Helm은 Kubernetes 애플리케이션을 설치하고 수명 주기를 관리하는 오픈 소스 패키징 도구입니다. 사전 구성된 Kubernetes 리소스 패키지인 Kubernetes 차트를 관리할 수 있습니다.
이 문서에서는 Helm을 사용하여 Azure API Management의 자체 호스팅 게이트웨이 구성 요소를 Kubernetes 클러스터에 배포하는 단계를 제공합니다.
참고 항목
자체 호스팅 게이트웨이를 Azure Arc 지원 Kubernetes 클러스터에 클러스터 확장으로 배포할 수도 있습니다.
필수 조건
- Kubernetes 클러스터를 만들거나 기존 클러스터에 액세스할 수 있습니다.
팁
단일 노드 클러스터는 개발 및 평가 목적에 적합합니다. 프로덕션 워크로드에는 온-프레미스 또는 클라우드에서 Kubernetes 인증 다중 노드 클러스터를 사용하세요.
Helm 리포지토리 추가
Azure API Management를 새 Helm 리포지토리로 추가합니다.
helm repo add azure-apim-gateway https://azure.github.io/api-management-self-hosted-gateway/helm-charts/
최신 Helm 차트를 가져오려면 리포지토리를 업데이트합니다.
helm repo update
사용 가능한 모든 차트를 나열하여 Helm 구성을 확인합니다.
$ helm search repo azure-apim-gateway NAME CHART VERSION APP VERSION DESCRIPTION azure-apim-gateway/azure-api-management-gateway 1.0.0 2.0.0 A Helm chart to deploy an Azure API Management ...
Kubernetes에 자체 호스팅 게이트웨이 배포
배포 및 인프라 아래에서 게이트웨이를 선택합니다.
배포하려는 자체 호스팅 게이트웨이 리소스를 선택합니다.
배포를 선택합니다.
토큰 텍스트 상자의 새 토큰은 기본 만료 및 비밀 키 값을 사용하여 자동으로 생성되었습니다. 원하는 경우 둘 중 하나 또는 둘 다를 조정하고 생성을 선택하여 새 토큰을 만듭니다.
토큰 및 구성 URL을 기록해 둡니다.
Helm 차트를 사용하여 자체 호스팅 게이트웨이 설치
helm install azure-api-management-gateway \ --set gateway.configuration.uri='<your configuration url>' \ --set gateway.auth.key='<your token>' \ azure-apim-gateway/azure-api-management-gateway
명령을 실행합니다. 이 명령은 Kubernetes 클러스터에 다음을 지시합니다.
- Microsoft Container Registry에서 자체 호스팅 게이트웨이의 이미지를 다운로드하고 컨테이너로 실행합니다.
- HTTP(8080) 및 HTTPS(8081) 포트를 노출하도록 컨테이너를 구성합니다.
Important
기본적으로 게이트웨이는 ClusterIP 서비스를 사용하며 클러스터 내부에만 노출됩니다. 설치하는 동안 Kubernetes Service 형식을 지정하여 이를 변경할 수 있습니다.
예를 들어
--set service.type=LoadBalancer
를 추가하여 부하 분산 장치를 통해 노출할 수 있습니다.다음 명령을 실행하여 게이트웨이 Pod가 실행 중인지 확인합니다. Pod 이름이 달라집니다.
kubectl get pods NAME READY STATUS RESTARTS AGE azure-api-management-gateway-59f5fb94c-s9stz 1/1 Running 0 1m
다음 명령을 실행하여 게이트웨이 서비스가 실행 중인지 확인합니다. 서비스 이름과 IP 주소가 달라집니다.
kubectl get services NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE azure-api-management-gateway ClusterIP 10.0.229.55 <none> 8080/TCP,8081/TCP 1m
Azure Portal로 돌아가서 배포한 게이트웨이 노드가 정상 상태를 보고하는지 확인합니다.
팁
kubectl logs <gateway-pod-name>
명령을 사용하여 자체 호스팅 게이트웨이 로그의 스냅샷을 봅니다.
다음 단계
- 자체 호스팅 게이트웨이에 대한 자세한 내용은 Azure API Management 자체 호스팅 게이트웨이 개요를 참조하세요.
- 프로덕션의 Kubernetes에서 자체 호스팅 게이트웨이 실행 지침에 대해 자세히 알아봅니다.
- API Management 자체 호스팅 게이트웨이를 Azure Arc 지원 Kubernetes 클러스터에 배포하는 방법에 대해 알아봅니다.
- Azure API Management 게이트웨이의 관찰 기능에 대해 자세히 알아봅니다.