---
title: "Google CloudのBatch使ってみた | grasys blog"
url: "https://blog.grasys.io/post/izumi/google-cloud-batch"
description: "こんにちはエンジニアのいずみです。 Google Cloud (GCP)から2022/10/11にGAされたBatchを簡単に使ってみようと思います。 その前に正直なところBatchって、、、と思いませんでした？Cloud BatchでもなくBatchって？？まぁその辺はGoogleさんに何かこだわりでもあるんでしょ…"
---

# Google CloudのBatch使ってみた

-   ![](/_astro/noicon.CTHOhNiB_1HMs6A.webp)[izumi](/authors/izumi/)
-   公開日：2022年11月2日
-   カテゴリー：[Tech](/categories/tech/)
-   タグ：[#Google Cloud](/tags/google-cloud/)[#Batch](/tags/batch/)

![Google CloudのBatch使ってみた](/_astro/hero.BMpzl34A_Z2eTYJv.webp)

こんにちはエンジニアのいずみです。

Google Cloud (GCP)から2022/10/11にGAされたBatchを簡単に使ってみようと思います。

その前に正直なところBatchって、、、と思いませんでした？Cloud BatchでもなくBatchって？？まぁその辺はGoogleさんに何かこだわりでもあるんでしょう。。。

## Batchを利用する前に

執筆時点(10/25)で利用できる地域は北米(us-central1、us-west1、us-east1)、一部EU(europe-north1、europe-west6)、一部アジア(asia-southeast1)のみのようです。

東京(asia-northeast1)で利用したい場合はリリースまで待ちましょう。

## 実行

ものは試し、早速実行したいのですが始めにBatch APIを有効化します。

![ものは試し、早速実行したいのですが始めにBatch APIを有効化する画面](/_astro/01-batch_img_1-1024x688-dc20eb07.CBlMXUOg_Z251maw.webp)

jobの作成画面から必要な項目を設定して作成していきます。

![jobの作成画面から必要な項目を設定して作成する](/_astro/02-batch_img_2-1024x984-99e3a0a3.CR09x44S_Z1bJsG4.webp)

マシンファミリーはCompute Engine同様に選択できます。  
Spotインスタンスを選択できるのはコスト面から嬉しいですね！

![Spotインスタンスを選択できるのはコスト面から嬉しいですねの画面](/_astro/03-batch_img_3-737x1024-ef3bad5e.DxRSkHyC_Z1xLDSS.webp)

コンテナを起動することもできますが、今回は動かしてみるのを優先してscriptで作成ます。  
BATCH\_TASK\_COUNTとBATCH\_TASK\_INDEXを出力するだけの処理のTaskを作成してみます。  
BATCH\_TASK\_COUNT、BATCH\_TASK\_INDEXはデフォルトで利用できる環境変数で[ドキュメント](https://cloud.google.com/batch/docs/create-run-job#create-job-environment-variables)には以下の通り定義されています。

Plain textcontent\_copy

```
BATCH_TASK_COUNT: the number of tasks in a task group.
BATCH_TASK_INDEX: the index number of a task in a task group. The index numbering starts at 0.
```

バッチを作成すると「スケジュール設定済み」といったステータスでレコードが作成されます。

![スケジュール設定済みのバッチジョブ一覧画面](/_astro/04-batch_img_4-1024x186-4831fad2.m6d1tgJU_1zbDQQ.webp)

1 ~ 2分待っていると実行が完了されたようでステータスが「完了しました」となりました。  
実行を待っている間Compute Engineの一覧を確認していましたが、VMが作成されてその後削除されていました。

![実行を待っている間Compute Engineの一覧を確認していましたが、VMが作成されてその後削除されていました画面](/_astro/05-batch_img_5-1024x187-22320d55.DgXR_7Bu_1F2NSu.webp)

Cloud Loggingへログ出力されるので確認したところ以下のようなログが出力されました。  
Task countが1なので想定通りですね。

Plain textcontent\_copy

```
STDOUT: BATCH_TASK_COUNT: 1 BATCH_TASK_INDEX: 0
```

先ほどのjobを複製してTask count:3 Parallelism:3へ変更し実行したところ以下の出力になりました。  
こちらも想定通りですね。

Plain textcontent\_copy

```
STDOUT: BATCH_TASK_COUNT: 3 BATCH_TASK_INDEX: 2
STDOUT: BATCH_TASK_COUNT: 3 BATCH_TASK_INDEX: 1
STDOUT: BATCH_TASK_COUNT: 3 BATCH_TASK_INDEX: 0
```

## 終わり

今回はBatchを動かしてみることを目的として触ってみました。  
ディスクやGCSバケットをマウントも画面から設定できるようだったので今後は具体的な用途をイメージして使ってみようと思います。  
また、コンソールからは設定できませんでしたがgcloudコマンドでjobを作成する場合、VPCやサブネットの指定、instance templateの指定を行うこともできるようだったのでその辺りも検証していきたいと思います。  
今後の検証内容もブログでアップしていきます！

## この記事を書いた人

[![](/_astro/noicon.CTHOhNiB_Z24aAgM.webp)](/authors/izumi/)

### [izumi](/authors/izumi/)

izumiのプロフィールと執筆記事をご覧いただけます。

[プロフィールと記事一覧](/authors/izumi/)