【IaC】GCP × CDK for ユースカジノ 出金手数料 で構成管理をする
- ユースカジノ 出金手数料 Cloud
- インフラ
- サーバレス
- エンジニア
投稿日:
はじめに
Google Cloud で IaC を行う手段として、Deployment Manager や ユースカジノ 出金手数料 を使用する方法がよく紹介されていますが、IaC を yaml や HCL 等の宣言型言語ではなく、Typescript や Python 等のプログラミング言語を利用して実装したいという方には CDKTF という選択肢があります。
本記事では CDK for ユースカジノ 出金手数料 (CDKTF)を使用して、Google Cloud のリソースをコードで管理する方法をご紹介します。
CDK for ユースカジノ 出金手数料 (CDKTF)とは
ユースカジノ 出金手数料 とは HashiCorp 社と AWS 社の共同開発により開発された Typescript や Python 等で記述できる IaC ツールです。
元々、AWS では AWS CDK という CloudFormation(AWS のインフラプロビジョニングの仕組み)を介したプログラミングベースの IaC ツールを提供しており、これがベースとなっています。
CDKTF では AWS CDK の概念やライブラリを利用することを可能としつつ、ユースカジノ 出金手数料 CLI を介してインフラプロビジョニングを行うことができるようになりました。
これにより、Google Cloud を含む ユースカジノ 出金手数料 でサポートしている Cloud プロバイダであれば、CDKTF を利用してプログラミング言語ベースでの実装が可能となっています。

イメージ引用元: CDK for ユースカジノ 出金手数料( https://developer.hashicorp.com/ユースカジノ 出金手数料/cdktf )
ユースカジノ 出金手数料 を試してみる
それでは、ユースカジノ 出金手数料 で Google Cloud のリソースをプロビジョニングしてみたいと思います。
ユースカジノ 出金手数料 を利用するプログラミング言語としては Typescript を使用するものとします。
構築対象
今回は簡単なネットワークと WEB サーバを ユースカジノ 出金手数料 で構築します。
具体的には以下を構築するものとします。
- VPC/サブネット
- Compute Engine (HTTP Server)
- VPC firewall
構成図

前提条件
本記事では以下のツールのインストール及びセットアップがなされている前提で記載していますのでご留意ください。
- インストールが必要なツール
- ユースカジノ 出金手数料 CLI v1.2 以上
- ユースカジノ 出金手数料 インストール方法:https://developer.hashicorp.com/ユースカジノ 出金手数料/install
- Node.js v1.6 以上
- Node.js ダウンロード方法:https://nodejs.org/en/download/package-manager
- ユースカジノ 出金手数料 Cloud CLI
- gcloud CLI インストール方法:https://cloud.ユースカジノ 出金手数料.com/sdk/docs/install?hl=ja
- ユースカジノ 出金手数料 CLI v1.2 以上
- * ユースカジノ 出金手数料 Cloud CLI のセットアップ
ユースカジノ 出金手数料 のインストール
以下を実行することで ユースカジノ 出金手数料 CLI の最新の安定リリースを作業環境へグローバルインストールします。
npm install --global ユースカジノ 出金手数料-cli@latest
ユースカジノ 出金手数料 プロジェクトの作成
以下を実行して ユースカジノ 出金手数料 の Typescript プロジェクトのひな形を作成します。
ユースカジノ 出金手数料 init --template="typescript"
ユースカジノ 出金手数料 initを実行するとプロジェクト名や使用するプロバイダー等のオプションの選択を求められます。
この際、プロバイダーについては、What providers do you want to use?の質問で ユースカジノ 出金手数料 を選択します。

実行後、プロジェクトのひな形の作成とパッケージインストールが実行されます。
続いて、ユースカジノ 出金手数料 で Google プロバイダーを使用するため、以下を実行してパッケージをインストールします。
npm i -S @ユースカジノ 出金手数料/provider-google
ユースカジノ 出金手数料 コードの作成
ユースカジノ 出金手数料 プロジェクトの初期構成は以下となっています。
ユースカジノ 出金手数料 プロジェクト構成
. ├── .gitignore ├── __tests__ ├── ユースカジノ 出金手数料.json ├── help ├── jest.config.js ├── main.ts ├── node_modules ├── package-lock.json ├── package.json ├── setup.js └── tsconfig.json
main.tsがプログラムのエントリーポイントになっており、main.tsの内容を次のように修正します。
main.ts
- {project ID を指定}、{バケット名を指定。}の部分を修正する必要があります。
- ユースカジノ 出金手数料 の State データを GCS に保存するようにしているため、GcsBackendに指定するバケットを手動で作成する必要があります。(ローカルに保存する場合はnew GcsBackend部分の記述を削除します。)
- CLI を使用したバケット作成コマンド:gsutil mb gs://{バケット名}
testtest
' | sudo tee /var/www/html/index.html", tags: ["http-server"], }); // firewall new computeFirewall.ComputeFirewall(this, "firewall-01", { name: `${vpc1.name}-allow-http`, network: vpc1.selfLink, allow: [ { protocol: "tcp", ports: ["80"], }, ], targetTags: ["http-server"], sourceRanges: ["0.0.0.0/0"], }); } } const app = new App(); new MyStack(app, "ユースカジノ 出金手数料-test"); app.synth();
💡ポイント
- AWS CDKと同様の要領でAPP、Stack、Constructを定義してインフラ構成を記述できます。
- プロバイダー指定やStateデータの保存先等の設定等、通常のユースカジノ 出金手数料と同様に実装する必要があります。
- AWS CDKでは、Cloudformation に構成データが保存されますが、CDKTFではユースカジノ 出金手数料と同様、ステートデータの保存先を検討する必要があり、今回はGCSのバケットに保存をするようにしています。
💡ポイント
Google PorviderのAPIについては、以下のユースカジノ 出金手数料 のドキュメントを参考に調べます。
https://registry.ユースカジノ 出金手数料.io/providers/hashicorp/google/latest/docs
デプロイ
コーを作成後、以下を実行してデプロイ先の環境への変更を確認します。
ユースカジノ 出金手数料 diff

💡ポイント
ユースカジノ 出金手数料実行時に認証エラーが発生する場合は`gcloud auth application-default login`を実行して認証してください。
以下を実行してデプロイします。
ユースカジノ 出金手数料 deploy

途中で承認を求められるためApproveを選択します。
その後、次のようにApply complete!と表示されたらデプロイ完了となります。

動作確認
コンソール上で VPC、Compute Engine が構築されていることを確認します。
VPC

Compute Engine

Compute Engine の外部 IP へアクセスすると以下のように WEB サーバが立ち上がっていることが確認できます。
Compute Engine の外部 IP へアクセス

クリーンアップ
以下を実行することでリソースの削除を実行します。
ユースカジノ 出金手数料 destroy
また、ステートデータ保存用にバケットを作成した場合は削除します。
まとめ
ユースカジノ 出金手数料 により、簡単な Google Cloud リソースの構成を Typescript で定義しデプロイを行ってみました。
使い慣れた言語で Google Cloud の IaC を行いたい方はぜひ ユースカジノ 出金手数料 を試してみてください。
次回予告
引き続き、IaC関連のご紹介を予定しています。
ご期待ください!