크론 작업 예약 및 실행

이 빠른 시작에서는 Cloud Scheduler를 사용하여 몇 가지 기본 작업을 수행하는 방법을 설명합니다.

이 빠른 시작에서는 다음을 수행합니다.

  1. Cloud Scheduler를 사용하여 크론 작업을 만듭니다.
  2. 작업에 반복되는 일정을 설정합니다.
  3. Pub/Sub 주제를 작업 대상으로 지정합니다.
  4. 작업을 실행합니다.
  5. 작업이 성공적으로 실행되었는지 확인합니다.

Cloud Scheduler에는 무료 등급이 있어서 이 빠른 시작을 실행해도 비용이 발생하지 않습니다. 자세한 내용은 가격 책정을 참조하세요.


Google Cloud 콘솔에서 이 태스크에 대한 단계별 안내를 직접 수행하려면 둘러보기를 클릭합니다.

둘러보기


시작하기 전에

  1. Google Cloud 계정에 로그인합니다. Google Cloud를 처음 사용하는 경우 계정을 만들고 Google 제품의 실제 성능을 평가해 보세요. 신규 고객에게는 워크로드를 실행, 테스트, 배포하는 데 사용할 수 있는 $300의 무료 크레딧이 제공됩니다.
  2. Google Cloud Console의 프로젝트 선택기 페이지에서 Google Cloud 프로젝트를 선택하거나 만듭니다.

    프로젝트 선택기로 이동

  3. Google Cloud 프로젝트에 결제가 사용 설정되어 있는지 확인합니다.

  4. Google Cloud CLI를 설치합니다.
  5. gcloud CLI를 초기화하려면 다음 명령어를 실행합니다.

    gcloud init
  6. Google Cloud Console의 프로젝트 선택기 페이지에서 Google Cloud 프로젝트를 선택하거나 만듭니다.

    프로젝트 선택기로 이동

  7. Google Cloud 프로젝트에 결제가 사용 설정되어 있는지 확인합니다.

  8. Google Cloud CLI를 설치합니다.
  9. gcloud CLI를 초기화하려면 다음 명령어를 실행합니다.

    gcloud init
  10. Cloud Shell을 사용하지 않으면 Google Cloud CLI 구성요소를 업데이트합니다.
    gcloud components update
  11. 계정을 사용하여 로그인합니다.
    gcloud auth login
  12. Cloud Scheduler 및 Pub/Sub API를 사용 설정합니다.

    gcloud services enable cloudscheduler.googleapis.com pubsub.googleapis.com

Pub/Sub 주제 및 구독 만들기

Pub/Sub 주제는 게시자가 메시지를 보낼 수 있는 리소스입니다. 주제에 게시된 메시지를 받으려면 해당 주제에 대한 구독을 만들어야 합니다.

  1. 크론 작업 대상으로 사용하도록 Pub/Sub 주제를 설정합니다.

    gcloud pubsub topics create cron-topic
    

    이렇게 하면 cron-topic이라는 주제가 생성됩니다.

  2. 작업 결과를 보려면 Pub/Sub 구독을 만드세요.

    gcloud pubsub subscriptions create cron-sub --topic cron-topic
    

Cloud Scheduler를 사용하여 크론 작업 만들기

반복 일정으로 대상에 전송되는 예약 작업 단위(크론 작업이라고 함)를 설정합니다.

  1. Google Cloud 콘솔에서 Cloud Scheduler 페이지로 이동합니다.

    Cloud Scheduler로 이동

  2. 작업 만들기를 클릭합니다.

  3. 작업에 이름을 지정합니다.

  4. 리전 목록에서 작업의 리전을 선택합니다.

  5. unix-cron을 기반으로 하는 형식을 사용하여 작업의 빈도를 지정합니다. 예를 들면 다음과 같습니다.

    30 16 * * 7
    

    자세한 내용은 크론 작업 일정 구성을 참조하세요.

  6. 시간대 목록에서 시간대를 선택합니다.

    일부 시간대의 경우 일광 절약 시간으로 인해 작업이 예기치 않게 실행되거나 실행되지 않을 수 있습니다. 자세한 내용은 시간대를 참조하세요.

  7. 계속을 클릭합니다.

  8. 대상 유형 목록에서 Pub/Sub를 선택합니다.

  9. 앞서 만든 주제(cron-topic)를 선택합니다.

  10. 메시지 본문 필드에 Pub/Sub 대상 주제로 전송할 문자열을 입력합니다. 'Hello world!'를 예로 들 수 있습니다.

  11. 만들기를 클릭합니다.

일요일 오후 4시 30분에 Pub/Sub 주제에 메시지를 전송하는 작업을 만들었습니다. 이제 작업을 실행할 수 있습니다.

작업 실행

지정된 일정에 따라 실행하는 것 외에도 작업을 강제로 즉시 실행할 수 있습니다.

  1. Google Cloud 콘솔에서 Cloud Scheduler 페이지로 이동합니다.

    Cloud Scheduler로 이동

    작업이 표시되어야 합니다.

  2. 작업 행에서 작업 > 작업 강제 실행을 클릭합니다.

    초기 구성때문에 프로젝트에서 만든 첫 번째 작업을 실행하는 데 몇 분 정도 걸릴 수 있습니다.

  3. 최종 실행 상태 열에서 Success 상태는 크론 작업이 성공적으로 실행되었음을 나타냅니다.

그런 다음 Pub/Sub에서 메시지를 수신했는지 확인할 수 있습니다.

Pub/Sub에서 결과 확인

Pub/Sub 주제가 해당 작업의 메시지를 수신하는지 확인하세요.

  1. 구독에서 Pub/Sub 메시지 가져오기:

    gcloud pubsub subscriptions pull cron-sub --limit 5
    

    처음에 가져온 메시지가 없으면 명령어를 다시 실행합니다.

  2. 작업 실행 결과를 봅니다. 출력은 다음과 비슷하게 표시됩니다.

    DATA: Hello world!
    MESSAGE_ID: 5028933846601543
    ORDERING_KEY:
    ATTRIBUTES:
    DELIVERY_ATTEMPT:
    ACK_ID: RFAGFixdRkhRNxkIaFEOT14jPzUgKEUQAgVPAihdeTFXLkFacGhRDRlyfWB9[...]
    

삭제

이 페이지에서 사용한 리소스 비용이 Google Cloud 계정에 청구되지 않도록 하려면 다음 단계를 수행합니다.

  1. 생성된 크론 작업을 삭제합니다.

    1. Google Cloud 콘솔에서 Cloud Scheduler 페이지로 이동합니다.

      Cloud Scheduler로 이동

    2. 작업의 체크박스를 선택합니다.

    3. 삭제를 클릭하고 삭제되었는지 확인합니다.

  2. Pub/Sub 주제를 삭제합니다.

    1. Google Cloud 콘솔에서 Pub/Sub 페이지로 이동합니다.

      Pub/Sub로 이동

    2. 주제의 체크박스를 선택합니다.

    3. 삭제를 클릭하고 삭제되었는지 확인합니다.

  3. 프로젝트를 삭제합니다.

    1. Google Cloud 콘솔에서 리소스 관리 페이지로 이동합니다.

      리소스 관리로 이동

    2. 프로젝트 목록에서 삭제할 프로젝트를 선택하고 삭제를 클릭합니다.
    3. 대화상자에서 프로젝트 ID를 입력한 후 종료를 클릭하여 프로젝트를 삭제합니다.

다음 단계