Skip to content

kiyomaryu/iac

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 

Repository files navigation

About

Terraform及びAnsibleの定義を記載しています。 GCPにてインスタンスの立ち上げ→インスタンスのプロビジョニングまでを自動化しています。

Usage

Pre-work

Terraformの実行状態を保持するtfstateファイルを実行する環境で共通化するためにGCS上のバケットに格納します。事前作業としてバケットを作成します。

# Googleの認証設定(切れている場合)
$ gcloud auth application-default login 

# バケットの作成
# バケット名はURIになるためユニークなものでは無いとだめ。既に他のユーザが使っているものがある場合は403エラーで作成できない
$ gsutil mb -c Standard -l us-east1 gs://{バケット名}

Procedure

terraform

# Terraformのバックエンドを開発環境用の定義に変更
$ terraform init -reconfigure -backend-config=backends/dev.tfvars

# Terraformの実行(確認がでたらyesで実行)
$ terraform apply -var-file=vars/dev.tfvars

ansible

# sa_123456789はダミーであるためプロビジョニング用にGCPで作成したアカウントで行うこと
$ ansible-playbook --inventory=inventories/dev.gcp.yml --private-key secrets/ssh-key-ansible-sa --user sa_123456789 site.yml --diff --check

packer

# packerの実行
$ packer build -var "stage=dev" -var "gcp_project=GCPのプロジェクトID" packer.template.json

Note

KnowHow

Link

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages