Google Cloud Console Marketplace에서 애플리케이션 배포
이 섹션에서는 Google Cloud Console을 사용하여 Anthos GKE 클러스터 온프레미스에 애플리케이션을 배포하는 방법을 자세히 설명합니다.
필수 조건
-
온프레미스에 배포되고 Google Cloud Console에 등록된 Anthos 클러스터
-
Anthos 클러스터에 구성된 MetalLB 로드 밸런서
-
클러스터에 애플리케이션을 배포할 수 있는 권한이 있는 계정
-
관련 비용이 있는 애플리케이션을 선택하는 경우 Google Cloud의 청구 계정(선택 사항)
애플리케이션 배포
이 사용 사례에서는 Google Cloud Console을 사용하여 Anthos 클러스터 중 하나에 간단한 WordPress 애플리케이션을 배포합니다. 배포에는 NetApp ONTAP 이 제공하는 사전 정의된 스토리지 클래스의 영구 스토리지가 사용됩니다. 그런 다음 MetalLB 부하 분산 장치가 애플리케이션 기본 서비스에 IP 주소를 제공하고 이를 전 세계에 공개하도록 수정하는 두 가지 방법을 보여줍니다.
이런 방식으로 애플리케이션을 배포하려면 다음 단계를 완료하세요.
-
배포하려는 클러스터가 Google Cloud Console에서 접근 가능한지 확인하세요.
-
왼쪽 메뉴에서 애플리케이션을 선택하고, 상단의 세 점 옵션 메뉴를 선택한 다음, 마켓플레이스에서 배포를 선택하면 Google Cloud Marketplace에서 애플리케이션을 선택할 수 있는 새 창이 나타납니다.
-
설치하려는 애플리케이션(이 경우 WordPress)을 검색합니다.
-
WordPress 애플리케이션을 선택하면 개요 화면이 표시됩니다. 구성 버튼을 클릭합니다.
-
다음 페이지에서는 배포할 클러스터를 선택해야 합니다. 우리의 경우 Demo-Cluster를 선택합니다. 새로운 네임스페이스와 애플리케이션 인스턴스 이름을 선택하거나 만들고, WordPress 애플리케이션과 이를 지원하는 MariaDB 데이터베이스 모두에 필요한 스토리지 클래스와 영구 볼륨 크기를 선택합니다. 두 경우 모두 ONTAP-NAS-CSI 스토리지 클래스를 선택했습니다.
공용 IP 액세스 사용을 선택하지 마세요. 그렇게 하면 온프레미스 Anthos 배포에서 액세스할 수 없는 NodePort 유형의 서비스가 생성됩니다. -
배포 버튼을 클릭하면 애플리케이션 세부 정보를 제공하는 페이지가 나타납니다. 이 페이지를 새로 고치거나 CLI를 사용하여 클러스터에 로그인하여 배포 상태를 확인할 수 있습니다.
-
CLI를 사용하면 명령을 실행하여 애플리케이션 네임스페이스에서 Pod 정보를 가져와서 애플리케이션이 배포되는 동안 해당 애플리케이션의 상태를 확인할 수 있습니다.
kubectl get pods -n anthos-wp
.이 스크린샷에서는 배포자 포드가 오류 상태에 있음을 알 수 있습니다. 이는 정상적인 현상입니다. 이 포드는 다른 포드가 초기화 프로세스를 시작한 후 자동으로 종료되는 애플리케이션을 배포하기 위해 Google Cloud Console에서 사용하는 도우미 포드입니다. -
잠시 후에 애플리케이션이 실행 중인지 확인하세요.
애플리케이션 노출
애플리케이션이 배포된 후에는 두 가지 방법을 통해 전 세계에서 접근 가능한 IP를 할당할 수 있습니다.
Google Cloud Console 사용
Google Cloud Console을 사용하고 브라우저에서 서비스의 YAML 출력을 편집하여 공개적으로 접근 가능한 IP를 설정하여 애플리케이션을 노출할 수 있습니다. 그렇게 하려면 다음 단계를 수행하세요.
-
Google Cloud Console의 왼쪽 메뉴에서 서비스 및 Ingress를 클릭합니다.
-
클릭
wordpress-wordpress-svc
서비스. 서비스 세부정보 화면이 열립니다. 위쪽의 편집 버튼을 클릭하세요. -
편집 서비스 세부 정보 페이지가 열리고 해당 서비스에 대한 YAML 정보가 포함됩니다. 아래로 스크롤하여 다음을 확인하세요.
spec:
섹션 및type:
값으로 설정됨ClusterIP
. 이 값을 다음으로 변경하세요LoadBalancer
저장 버튼을 클릭하세요. -
서비스 세부 정보 페이지로 돌아가면
Type:
이제 나열하다LoadBalancer
그리고External endpoints:
필드에는 MetalLB 풀에서 할당된 IP 주소와 애플리케이션에 액세스할 수 있는 포트가 나열됩니다.
Kubectl을 사용하여 서비스 패치
CLI를 사용하여 애플리케이션을 노출할 수 있습니다. kubectl patch
배포를 수정하고 공개적으로 접근 가능한 IP를 설정하는 명령입니다. 그러려면 다음 단계를 완료하세요.
-
네임스페이스에 있는 포드와 연관된 서비스를 나열하세요.
kubectl get services -n anthos-wp
명령. -
서비스 유형을 수정하세요
ClusterIP
타이핑하다Loadbalancer
다음 명령을 사용합니다.kubectl patch svc wordpress-wordpress-svc -p '{"spec": {"type": "LoadBalancer"}}' -n anthos-wp'.
이 새로운 서비스 유형에는 MetalLB 풀에서 사용 가능한 IP 주소가 자동으로 할당됩니다.
노출된 외부 IP에서 애플리케이션을 방문하세요
이제 공개적으로 접근 가능한 IP 주소로 애플리케이션을 노출했으므로 브라우저를 사용하여 WordPress 인스턴스를 방문할 수 있습니다.