서비스 관리

이 페이지에서는 서비스를 만들고 서비스에 대한 정보를 확인하는 방법을 설명합니다. 서비스는 Knative serving의 기본 리소스입니다.

서비스 만들기

컨테이너 이미지를 처음으로 배포하여 새 서비스와 버전을 만듭니다. 서비스를 만드는 방법에 대한 자세한 내용은 새 서비스 배포를 참조하세요.

프로젝트의 서비스 목록 보기

Google Cloud 콘솔 또는 Google Cloud CLI를 사용하여 프로젝트에서 사용 가능한 서비스 목록을 볼 수 있습니다.

콘솔

서비스 목록을 보려면 다음 안내를 따르세요.

  1. Google Cloud 콘솔에서 Knative serving으로 이동합니다.

    Knative serving으로 이동

  2. 프로젝트에 대해 표시된 서비스 목록을 검토합니다.

명령줄

프로젝트의 서비스 목록을 표시하려면 다음 명령어를 사용하세요.

gcloud run services list

이 목록을 할당된 라벨과 같은 서비스 정의 속성별로 필터링할 수 있습니다.

서비스 복사

Google Cloud 콘솔 또는 YAML을 사용하여 기존 서비스의 사본을 만들 수 있습니다. 이름과 리전을 포함하여 사본에서 원하는 사항을 변경할 수 있습니다.

콘솔

서비스를 복사하려면 다음 안내를 따르세요.

  1. Google Cloud 콘솔에서 Knative serving으로 이동합니다.

    Knative serving으로 이동

  2. 표시된 프로젝트의 서비스 목록에서 복사할 서비스를 선택합니다.

    1. 복사를 클릭합니다.

    2. 서비스 사본 페이지에서 리전 등 변경할 값을 설정하거나 변경합니다. 동일한 리전을 유지할 경우 서비스에 새 이름을 제공해야 합니다.

    3. 만들기를 클릭하여 사본을 만들고 새 서비스 이름을 사용하여 배포합니다.

YAML

--format=export 플래그를 사용하여 gcloud run services describe 명령어로 YAML 파일에 기존 서비스 구성을 다운로드할 수 있습니다. 그런 다음 gcloud run services replace 명령어로 YAML 파일을 수정하고 변경사항을 배포할 수 있습니다. 지정된 속성만 수정해야 합니다.

  1. 서비스 구성을 로컬 작업공간의 service.yaml 파일에 다운로드합니다.

    gcloud run services describe SERVICE --format export > service.yaml

    SERVICE를 Knative serving 서비스의 이름으로 바꿉니다.

  2. 다양한 구성 페이지의 설명대로 서비스 구성을 원하는 대로 변경합니다.

     apiVersion: serving.knative.dev/v1
     kind: Service
     metadata:
       annotations:
         ...
       name: SERVICE
       ...
     spec:
       template:
         metadata:
           annotations:
           ...
           name: REVISION-NAME
    
    • 복사본을 동일한 Kubernetes 클러스터에 배포하는 경우 SERVICE를 복사본에 사용할 이름으로 바꿉니다. 복사본을 다른 Kubernetes 클러스터에 배포하는 경우에는 같은 이름을 사용해도 됩니다.

    • REVISION-NAME 값이 서비스 이름(SERVICE)으로 시작하는지 확인합니다. 예를 들어 새 서비스 이름이 mynewfoo이면 버전 이름은 mynewfoo-whatever 형식이어야 합니다. 원하는 경우 값을 모두 삭제합니다. 그러면 새 버전 이름이 자동으로 생성됩니다.

  3. 다음 명령어를 사용하여 서비스를 복사합니다.

    gcloud run services replace service.yaml

    --region 플래그를 사용하여 다른 리전에 사본을 배포합니다.

서비스 세부정보 보기

서비스에 대한 세부정보를 보는 방법은 다음과 같습니다.

콘솔

서비스 세부정보를 보려면 다음 안내를 따르세요.

  1. Google Cloud 콘솔에서 Knative serving으로 이동합니다.

    Knative serving으로 이동

  2. 프로젝트에 대해 표시된 서비스 목록에서 원하는 서비스를 클릭하여 서비스 세부정보 뷰를 엽니다.

  3. 버전, 로그, 세부정보 탭을 확인합니다. 버전 탭에는 버전 목록이, 로그 탭에는 서비스 로그가, 세부정보 탭에는 현재 인증 또는 연결 설정이 표시됩니다.

명령줄

서비스에 대한 세부정보를 보려면 다음 명령어를 실행하세요.

gcloud run services describe SERVICE
SERVICE를 서비스 이름으로 바꿉니다.

--format 플래그를 사용하여 출력 형식을 지정할 수 있습니다. YAML 형식의 예시는 다음과 같습니다.

gcloud run services describe SERVICE --format yaml

--format export를 사용하면 자동으로 생성된 라벨이나 상태 없이 YAML로 내보낼 수 있습니다.

gcloud run services describe SERVICE --format export

--format 플래그를 사용하여 서비스의 URL을 가져올 수도 있습니다.

gcloud run services describe SERVICE --format='value(status.url)'

서비스 버전에 대한 자세한 내용은 버전 관리를 참조하세요.

서비스 연결 설정 변경

Knative serving 서비스의 연결 옵션에는 두 가지가 있습니다.

  • 외부: 서비스에 대한 외부 액세스를 허용합니다.

  • 내부: 클러스터의 다른 서비스로만 액세스를 제한합니다.

Console 또는 Google Cloud CLI를 사용하여 설정을 변경할 수 있습니다.

콘솔

서비스 연결 설정을 변경하려면 다음 안내를 따르세요.

  1. Google Cloud 콘솔에서 Knative serving으로 이동합니다.

    Knative serving으로 이동

  2. 프로젝트에 대해 표시된 서비스 목록에서 원하는 서비스를 클릭하여 서비스 세부정보 뷰를 엽니다.

  3. 트리거 탭을 클릭합니다.

  4. 원하는 설정을 선택하고 저장을 클릭합니다.

명령줄

서비스 연결 설정을 변경하려면 다음 명령어를 실행하여 원하는 연결 설정으로 서비스를 업데이트합니다.

gcloud run services update [SERVICE] --connectivity=[OPTION]
  • [SERVICE]를 업데이트할 서비스의 이름으로 바꿉니다. 이 매개변수를 완전히 생략할 수 있지만 생략하면 서비스 이름을 입력하라는 메시지가 표시됩니다.

  • [OPTION]internal 또는 external로 바꿉니다.

기존 서비스 삭제

서비스를 삭제하면 트래픽 제공 여부에 관계없이 해당 서비스의 모든 버전을 포함하여 서비스와 관련된 모든 리소스가 삭제됩니다.

서비스를 삭제할 때 삭제된 버전에서 사용되는 컨테이너 이미지는 Container Registry에서 자동으로 삭제되지 않습니다. Container Registry에서 컨테이너 이미지를 삭제하려면 이미지 삭제를 참조하세요.

서비스 삭제는 영구적이므로 실행취소하거나 복원할 수 없습니다. 하지만 서비스를 삭제한 후 동일한 클러스터에 동일한 이름으로 새 서비스를 배포하면 엔드포인트 URL이 동일하게 지정됩니다.

콘솔

서비스를 삭제하려면 다음 안내를 따르세요.

  1. Google Cloud 콘솔에서 Knative serving으로 이동합니다.

    Knative serving으로 이동

  2. 서비스 목록에서 삭제할 서비스를 찾은 다음 체크박스를 클릭하여 선택합니다.

  3. 삭제를 클릭합니다. 이렇게 하면 서비스의 모든 버전이 삭제됩니다.

명령줄

서비스를 삭제하려면 다음 명령어를 사용하세요.

gcloud run services delete [SERVICE]

[SERVICE]를 서비스 이름으로 바꿉니다.