GCP環境構築-Functions,Schedule
gcloudコマンドラインツールのインストール
Functionsは使用PCのコマンドプロンプト(ターミナル)からコマンドでデプロイを行います。 下記リンクのドキュメントに従ってGoogle Cloud SDKをインストールし、画面の指示に従ってGCP用Googleアカウントの認証を行ってください。
なお、本手順ではWindowsの表記で示します
GCPアカウントログイン、プロジェクト設定
ログインアカウント確認
gcloud config list
アカウントが異なる場合は下記コマンドで再設定します
gcloud auth login
Functionのデプロイ
cloudのソース(納品物)を適当なディレクトリに展開します。 コマンドプロンプトを開き、展開したソースのfunctionディレクトリに移動します
cd (展開先ディレクトリ)\cloud\function
env.yamlをエディタで開き、プロジェクトID、バケットをGCPで作成したものに変更します
PROJECT_ID: jeweler-amethyst-dev
BUCKET: ja_bucket_8wndyniw
(他の項目は省略)
データのストレージファイル出力、BigQuery登録用Functionをデプロイします。
gcloud --project=ja-deploy-sample1 functions deploy store_bigquery_and_storage --trigger-topic ja_pubsub --region=asia-northeast1 --env-vars-file env.yaml --runtime python37
データの日次ファイル出力用Functionをデプロイします。
gcloud --project=ja-deploy-sample1 functions deploy output_concatenated_daily --trigger-topic ja_schedule_pubsub --region=asia-northeast1 --env-vars-file env.yaml --runtime python37
スケジューラ設定
データの日次ファイル出力用Functionの起動トリガを設定します。
①ナビゲーションメニューから、「Cloud Scheduler」を選択
②「ジョブを作成」を選択
①リージョンで「asia-northeast1」を選択
②「次へ」を選択
①名前に「ja_output_csv_daily」を入力
②説明に「CSVデータファイル日次出力(GZIP形式)」を入力
③頻度に0:00実行を示す下記を入力
0 0 * * *
④タイムゾーンに「日本標準時(JST)」を選択
⑤ターゲット「Pub/Sub」を選択
⑥トピックに「ja_schedule_pubsub」を入力
⑦ペイロードに「wakeup」を入力
⑧「作成」を選択
以上でFunctionおよびScheduleの設定は完了です。


