1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

GCPにDjangoの環境を整えていく_Deployment Manager編

Posted at

こんにちは。
株式会社クラスアクト インフラストラクチャ事業部の大塚です。

今回はGCPのIaC(Infrastructure as Code)を担うDeployment Managerについてとなります。
折角なら手動で作成した環境をDeployment Managerを使って、一発でデプロイできるようにしよう、という事で用意したコードをここにまとめておきます。

Deployment Managerを使った環境デプロイ手順

GCP画面の左のツールの欄にDeployment Managerがあります。デプロイを押下します。
※もしくは上の検索窓でDeployment Managerと検索しても出てきます。こちらの方が楽かもしれません。
0001.png
例のごとくAPIを有効化してあげる必要があります。
0002.png
有効化後、以下のような管理画面が表示されます。どうもDeployment ManagerはAWSのCloudFormationのようにGUI操作でyamlをアップロードして、環境をデプロイするのではなく、Shell上でやる必要があるみたいです。
画面右上のCloud Shellを押下します。★みたいなマークの1つ右です。
0003.png
CLIが開きます。ここにyamlを配置します。
0004.png
ファイル名はdjango01_all.yamlとしました。
内容はこの記事の下にあるGitHubを参照ください。
用意したyamlを使ってデプロイしていきます。実際にデプロイした時のコマンドと出力結果が以下となります。
gcloud deployment-managerコマンドに--previewオプションを付けると、実際にデプロイする前にGCPのDeployment Managerの管理画面でレビューをはさむことが出来ます。

ohtsukaaws@cloudshell:~ (classact-420821)$ gcloud deployment-manager deployments create django01all --config django01_all.yaml --preview
The fingerprint of the deployment is b'WPIbZOLDpMBZi1-p8KiUTw=='
Waiting for create [operation-1714718465795-61787010b2564-1fbf195a-49d2ffee]...done.                                                             
Create operation operation-1714718465795-61787010b2564-1fbf195a-49d2ffee completed successfully.
NAME: cdm-fw-rule
TYPE: compute.v1.firewall
STATE: IN_PREVIEW
ERRORS: []
INTENT: CREATE_OR_ACQUIRE

NAME: cdm-public-subnet
TYPE: compute.v1.subnetwork
STATE: IN_PREVIEW
ERRORS: []
INTENT: CREATE_OR_ACQUIRE

NAME: cdm-vm-django
TYPE: compute.v1.instance
STATE: IN_PREVIEW
ERRORS: []
INTENT: CREATE_OR_ACQUIRE

NAME: cdm-vpc
TYPE: compute.v1.network
STATE: IN_PREVIEW
ERRORS: []
INTENT: CREATE_OR_ACQUIRE

NAME: cdm-vpc-allow-health-check
TYPE: compute.v1.firewall
STATE: IN_PREVIEW
ERRORS: []
INTENT: CREATE_OR_ACQUIRE

NAME: cdm-vpc-allow-health-check-ipv6
TYPE: compute.v1.firewall
STATE: IN_PREVIEW
ERRORS: []
INTENT: CREATE_OR_ACQUIRE

NAME: cdm-vpc-allow-http
TYPE: compute.v1.firewall
STATE: IN_PREVIEW
ERRORS: []
INTENT: CREATE_OR_ACQUIRE

以下がレビュー画面となります。デプロイを押してみます。
0005.png
yamlに問題が無ければデプロイすることが出来るはずです。
0006.png
今回立ち上げたVMを見てみます。外部IPアドレスを持っていることから、このサーバに対してローカルのPCから接続試験が出来そうです。この手順で使用しているyamlではVM起動時にapache2をインストール・起動するようなシェルを加えていますので、HTTP通信をしてみます。
0007.png
Apacheの画面が出てくれば成功です。
0008.png
DeployしたものはDeployment Managerの管理画面で一気に削除することが可能です。
image.png

Deployment Managerで使用するyaml

GCPにDjangoの環境を整えていく01(VPC/subnet/Internet Gateway/FW/VM)

以下記事の環境構築について

yamlはこちらになります。

今後更新予定

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?