GCPのサービス Cloud functions のクイックスタートチュートリアルをやってみました。
対象
- Cloud Functions について概要をさらっと確認したい方
- GCPのサービスに興味のある方
環境
- GCP
Cloud Functions について
Cloud Functions は サーバーレス環境で関数を実行できるサービスです。
AWSでは、AWS Lambda でしょうか。
Cloud Functions の利用方法
Cloud Functions には 3つの利用方法があります。
https://cloud.google.com/docs/overview?hl=ja#ways_to_interact_with_the_services
- Cloud Console
- gcloud コマンドライン インターフェース
- SDK クライアント ライブラリ
Cloud Console から Cloud Functions を作成する
今回は、Cloud Console から Cloud Functions を作成します。
Cloud Console の Cloud Functions の概要ページに移動
GCPプロジェクトを作成
GCPのリソース管理画面からプロジェクトの作成を行います。
リソース管理
プロジェクトが作成されたら、作成されたプロジェクトを選択しておきます。
関数の作成
左メニューから「Clous Functions」を選択します。
関数のデプロイ
デプロイでは、関数のソースコードを含むアーカイブが Google Cloud Storage バケットにアップロードされます。ソースコードがアップロードされると、Cloud Build は自動的にコードをコンテナ イメージに構築し、そのイメージを Container Registry に push します。Cloud Functions はこのイメージを使用して、関数を実行するコンテナを作成します。
前段で作成した関数をデプロイします。
画面にインラインエディタが表示されてサンプルのコードが表示されます。
ランタイムはデフォルトの Node.js 14、ソースコードはインラインエディタが選択されています。
今回はそのままの設定でデプロイします。
Cloud Build API の有効化
Cloud Functionsで作成した関数をデプロイするには、Cloud Build を利用します。
APIを有効にするを押下します。
再びCloud Functionsの画面に戻り、デプロイを押下します。
デプロイの実行
Cloud Functuinsで作成した関数は、Cloud Build APIを利用してビルドされて、コンテナイメージとして作成されます。
https://cloud.google.com/build/docs/deploying-builds/deploy-functions?hl=ja
デプロイ画面に遷移します。
スピナーが緑に変わったらデプロイが成功です。
関数のテスト
デプロイ画面の右の操作メニューから、関数をテストを選択します。
関数のテスト画面が表示されます。「トリガーとなるイベント」は空のまま、「関数をテストする」を押下します。
出力フィールドに「Hello World!」を出力結果が表示されて、完了が表示されます。
ログの確認
ログ画面にてログを確認します。ステータスコード200が表示されていれば成功です。
生成されたリソースの確認
Cloud Functions は Cloud Build を利用してデプロイされます。
GCPのサービスにファイル等が作成されるので確認してみます。
Cloud Storage
メニューからCloud Strageを選択します。
Cloud Functions で作成したソースコードのZipがアップロードされていることが確認できます。
Cloud Build の確認
Cloud Build の画面で、Cloud Functionsを作成したリージョンを選択します。
Container Registry の確認
Cloud Build で生成されたコンテナイメージは、Container Registry に保存されます。
メニューからContainer Registryを選択します。
Cloud Functions の削除
Cloud Functions の作成で作ったリソースを削除します。
削除方法は、プロジェクトを削除する方法と関数を生成した際に生成されるリソースを削除していく方法があります。
今回はリソースを1つづつ削除していきます。
Cloud Functions の削除
関数を削除すると、同時に Container Registry にコンテナイメージも削除されます。
Cloud Functions の関数一覧で、削除対象にチェックを入れて、削除を選択します。
Cloud Storage の削除
Cloud Buildメニューからビルドリソースの一覧を表示します。
リージョンを選択して、ビルドファイルのストレージリンクを選択します。
Cloud Storageのオブジェクト 詳細が表示されます。削除を選択します。
以上でチュートリアルは終わりです。