Cloud Tasks 큐에 HTTP 대상 태스크 추가
이 빠른 시작에서는 Cloud Tasks API를 사용하여 Cloud Tasks 큐에 HTTP 대상 태스크를 추가하는 방법을 설명합니다.
시작하기 전에
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create or select a Google Cloud project.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_ID
with a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_ID
with your Google Cloud project name.
-
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Tasks API:
gcloud services enable cloudtasks.googleapis.com
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
-
Install the Google Cloud CLI.
-
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create or select a Google Cloud project.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_ID
with a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_ID
with your Google Cloud project name.
-
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Tasks API:
gcloud services enable cloudtasks.googleapis.com
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Cloud Tasks 큐 만들기
gcloud tasks queues create
명령어를 사용하여 큐를 만듭니다.
터미널에서 모든 작업을 로깅하는 큐를 만듭니다.
gcloud tasks queues create QUEUE_NAME \ --log-sampling-ratio=1.0 \ --location=REGION
다음을 바꿉니다.
QUEUE_NAME
: Cloud Tasks 큐의 이름REGION
: 서비스 또는 앱을 배포한 리전
큐가 초기화될 때까지 기다린 후 큐가 성공적으로 만들어졌는지 확인합니다.
gcloud tasks queues describe QUEUE_NAME \ --location=REGION
출력은 다음과 비슷하게 표시됩니다.
name: projects/PROJECT_ID/locations/LOCATION_ID/queues/QUEUE_NAME rateLimits: maxBurstSize: 100 maxConcurrentDispatches: 1000 maxDispatchesPerSecond: 500.0 retryConfig: maxAttempts: 100 maxBackoff: 3600s maxDoublings: 16 minBackoff: 0.100s state: RUNNING
Cloud Tasks 큐에 태스크 추가
gcloud tasks create-http-task
명령어를 사용하여 HTTP 엔드포인트를 대상으로 하는 태스크를 만들고 큐에 태스크를 추가합니다.
태스크를 만들고 만든 대기열에 추가한 다음 태스크를 HTTP 엔드포인트로 전달합니다.
gcloud tasks create-http-task \ --queue=QUEUE_NAME \ --url=URL_PATH \ --method=GET \ --location=REGION \ --project=PROJECT_ID
URL_PATH
를 요청이 전송될 전체 URL 경로로 바꿉니다. 예를 들면https://www.google.com
입니다.경로는
http://
또는https://
로 시작해야 합니다.로그를 읽어 태스크가 성공적으로 실행되었는지 확인합니다.
gcloud logging read --limit=3
로그는 다음과 비슷하게 표시됩니다.
jsonPayload: '@type': type.googleapis.com/google.cloud.tasks.logging.v1.TaskActivityLog task: projects/PROJECT_ID/locations/REGION/queues/QUEUE_NAME/tasks/TASK_ID taskCreationLog: scheduleTime: '2024-07-04T19:00:27.801837Z' status: OK targetAddress: GET https://www.google.com/ targetType: HTTP
삭제
이 페이지에서 사용한 리소스 비용이 Google Cloud 계정에 청구되지 않도록 하려면 리소스가 포함된 Google Cloud 프로젝트를 삭제하면 됩니다.
Delete a Google Cloud project:
gcloud projects delete PROJECT_ID
또는 Cloud Tasks 큐를 삭제할 수 있습니다.
gcloud tasks queues delete QUEUE_NAME \
--location=REGION