環境の設定

cron ジョブをスケジュールして実行する前に、Cloud Scheduler 用に Google Cloudプロジェクトと環境を設定する必要があります。

Cloud Scheduler API を有効にします

次の手順に沿って、 Google Cloud プロジェクトを作成または選択し、Cloud Scheduler API を有効にします。

コンソール

  1. Google Cloud アカウントにログインします。 Google Cloudを初めて使用する場合は、 アカウントを作成して、実際のシナリオでの Google プロダクトのパフォーマンスを評価してください。新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the Cloud Scheduler API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  6. Verify that billing is enabled for your Google Cloud project.

  7. Enable the Cloud Scheduler API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

gcloud

  1. Google Cloud アカウントにログインします。 Google Cloudを初めて使用する場合は、 アカウントを作成して、実際のシナリオでの Google プロダクトのパフォーマンスを評価してください。新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。
  2. Google Cloud CLI をインストールします。

  3. 外部 ID プロバイダ(IdP)を使用している場合は、まず連携 ID を使用して gcloud CLI にログインする必要があります。

  4. gcloud CLI を初期化するには、次のコマンドを実行します。

    gcloud init
  5. Google Cloud プロジェクトを作成または選択します

    プロジェクトの選択または作成に必要なロール

    • プロジェクトを選択する: プロジェクトの選択に特定の IAM ロールは必要ありません。ロールが付与されているプロジェクトであれば、どのプロジェクトでも選択できます。
    • プロジェクトを作成する: プロジェクトを作成するには、resourcemanager.projects.create 権限を含むプロジェクト作成者ロール(roles/resourcemanager.projectCreator)が必要です。ロールを付与する方法を確認する
    • Google Cloud プロジェクトを作成します。

      gcloud projects create PROJECT_ID

      PROJECT_ID は、作成する Google Cloud プロジェクトの名前に置き換えます。

    • 作成した Google Cloud プロジェクトを選択します。

      gcloud config set project PROJECT_ID

      PROJECT_ID は、 Google Cloud プロジェクトの名前に置き換えます。

  6. Google Cloud プロジェクトに対して課金が有効になっていることを確認します

  7. Cloud Scheduler API を有効にします。

    API を有効にするために必要なロール

    API を有効にするには、serviceusage.services.enable 権限を含む Service Usage 管理者 IAM ロール(roles/serviceusage.serviceUsageAdmin)が必要です。ロールを付与する方法を確認する

    gcloud services enable cloudscheduler.googleapis.com
  8. Google Cloud CLI をインストールします。

  9. 外部 ID プロバイダ(IdP)を使用している場合は、まず連携 ID を使用して gcloud CLI にログインする必要があります。

  10. gcloud CLI を初期化するには、次のコマンドを実行します。

    gcloud init
  11. Google Cloud プロジェクトを作成または選択します

    プロジェクトの選択または作成に必要なロール

    • プロジェクトを選択する: プロジェクトの選択に特定の IAM ロールは必要ありません。ロールが付与されているプロジェクトであれば、どのプロジェクトでも選択できます。
    • プロジェクトを作成する: プロジェクトを作成するには、resourcemanager.projects.create 権限を含むプロジェクト作成者ロール(roles/resourcemanager.projectCreator)が必要です。ロールを付与する方法を確認する
    • Google Cloud プロジェクトを作成します。

      gcloud projects create PROJECT_ID

      PROJECT_ID は、作成する Google Cloud プロジェクトの名前に置き換えます。

    • 作成した Google Cloud プロジェクトを選択します。

      gcloud config set project PROJECT_ID

      PROJECT_ID は、 Google Cloud プロジェクトの名前に置き換えます。

  12. Google Cloud プロジェクトに対して課金が有効になっていることを確認します

  13. Cloud Scheduler API を有効にします。

    API を有効にするために必要なロール

    API を有効にするには、serviceusage.services.enable 権限を含む Service Usage 管理者 IAM ロール(roles/serviceusage.serviceUsageAdmin)が必要です。ロールを付与する方法を確認する

    gcloud services enable cloudscheduler.googleapis.com

認証を設定する

Cloud Scheduler に対する認証方法は、API へのアクセスに使用するインターフェースと、コードが実行されている環境によって異なります。

詳細については、Cloud Scheduler に対する認証HTTP ターゲットで認証を使用するをご覧ください。

App Engine アプリケーションを追加する

App Engine HTTP ターゲットを使用する場合は、プロジェクトに App Engine アプリケーションを追加する必要があります。このアプリは、Cloud Scheduler サービスの場所とジョブハンドラ自体の両方として機能します。ジョブハンドラは、Cloud Scheduler ジョブに関連付けられた処理を実行し、レスポンスとして確認応答を返します。

プロジェクトにない App Engine ジョブ ハンドラを使用する場合は、代わりに HTTP ターゲットを選択する必要があります。この場合、プロジェクトに App Engine アプリは必要ありません。

コンソール

  1. Google Cloud コンソールで、[App Engine] ページに移動します。

    App Engine に移動

  2. [App Engine へようこそ] ダイアログで、次のいずれかを行います。

    • App Engine アプリケーションをすでに作成していて、[App Engine アプリケーションが作成されました] というメッセージが表示されている場合は、このセクションの残りの手順をスキップできます。

      または

    • App Engine アプリケーションをまだ作成していない場合は、[アプリケーションを作成] をクリックして、このセクションの残りの手順に進みます。

  3. アプリケーションのリージョンを選択します。

    europe-westus-central は、Cloud Scheduler コマンドではそれぞれ europe-west1us-central1 と呼ばれます。

    App Engine アプリのリージョンを設定した後は、変更できません

  4. サービス アカウントを選択しない。デフォルトの App Engine サービス アカウントが使用されます。

  5. [次へ] をクリックします。

    アプリケーションが構成され、作成されます。これには数分かかることがあります。

  6. Cloud SDK はダウンロードせずに、[後で行う] をクリックします。

    App Engine アプリケーションが作成されました」というメッセージが表示されます。

gcloud

  1. App Engine アプリを作成するには、gcloud app create コマンドを実行します。

    gcloud app create --region=REGION
    

    REGION は、アプリが実行されるロケーションに置き換えます。europe-westus-central は、Cloud Scheduler コマンドではそれぞれ europe-west1us-central1 と呼ばれます。

    App Engine アプリのリージョンを設定した後は、変更できません

  2. 次のコマンドで既存のアプリのリージョンを確認できます。

    gcloud app describe
    

    locationId はリージョンを示します。例: locationId: us-central