markdown Terraformについて调べた
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了markdown Terraformについて调べた相关的知识,希望对你有一定的参考价值。
# Terraformのついて
## 機能について
### バージョン
- v0.10以降で大きく仕様が変わった
### 動作の特徴
- *.trファイル
- HashiCorp Configuration Language (HCL)で記述
- カレントディレクトリの*.trファイルが全て実行される
- 機能別にディレクトリを分ける方法が良い
- 共通の機能をモジュール化
- 条件分岐が出来ない
- 三項演算子を変わりに使う
- `count`を`0`にすることで、実行しない事に出来る
- terraformから別のシェル等を実行する場合は、`provisioner`を使う
- 利用出来るのは、`chef`,`file`,`remote-exec`,`connection`
- 以下の例の様に`when = "destroy"`とした場合、この処理は、`terraform destroy`時にしか実行されない様に出来る
```
resource "null_resource" "fuga" {
provisioner "local-exec" {
command = "echo Hello"
when = "destroy"
}
}
```
- State(`terraform.tfstate`)について
- Stateの状態、カレントディレクトリ内に、`terraform.tfstate`ファイルにjson形式で出力される
- `terraform state pull`で保存されているStateの内容が確認できる
- trファイル側で、項目名を変更した場合、`terraform state mv <修正前> <修正後>`で、State側も変更が必要
- パスワードもStateに残るので、以下の様にする
```
lifecycle {
ignore_changes = ["password"]
}
```
- Terraform以外の操作で、環境の変更を行う場合も`ignore_changes`で対象外にする
- StateをS3側で管理するのがベスト
```
terraform {
backend "s3" {
bucket = "mybucket"
key = "path/to/my/key"
region = "us-east-1"
}
}
```
- Stateが分かれてる場合は `terraform_remote_state`の`Data Source`を使う
- Stateに出力されるので、セキュリティに気をつける必要はある
- 実行結果は、`terraform show`
- `tainted`と出ると注意
## 注意点
- 以上から、`terraform.tfstate`ファイルの取扱が重要となります
- インスタンスの削除は行えるが停止は出来ない(思想的に)
- 勿論再開も出来ない
- 環境を作成して、廃棄する事を目指している
以上是关于markdown Terraformについて调べた的主要内容,如果未能解决你的问题,请参考以下文章
sh GCCのsysrootオプションについて调べてみたref:http://qiita.com/maskedw/items/e73df32007934e75d9e3
markdown 树莓派について
markdown pytorchについての情报
markdown ブロックとPROCについて
markdown 对于ループの挙动について
text 20181029 config.rbについて