Terraform: Up and Running, 3rd Edition 会社の方が紹介されていて、おもしろそうだったので読んでみました。 出版日は2022年9月で、第3版を読みました。 sample codeのrepository まとめ非常におもしろく参考になりました。 AWS account作って実際にterraformでdeployするところから始まり、workspaceによるstate分割、環境ごとのstate分離、module化、multi region, multi account対応と進みます。secret管理についても環境変数経由からfileの暗号化、VaultやKMSとの連携まで具体例つきで解説があります。 また、planは通ったけどapplyで失敗した場合の説明や、Gihub ActionでのCI例ではOIDC対応されていたりと載っている具体例が非常に実践的です。
Terraform 1.5 のベータ版がリリースされています。 Terraform 1.5 で追加される機能の中には以下のようなものが含まれています。 import ブロック terraform plan の -generate-config-out オプション Terraform では手作業などで作成済みの既存リソースも terraform import コマンドを使用して Terraform の管理に追加することができます。 しかし、 import したリソースの HCL 自体は自分で書かなければいけません。 もしも既存リソースの HCL を自動で生成したい場合は GoogleCloudPlatform/terraformer などのサードパーティ製のツールを使用する必要があります。 ところが、 Terraform 1.5 で追加される import ブロックと terraform p
Imports your current Cloud infrastructure to an Infrastructure As Code Terraform configuration (HCL) or/and to a Terraform State. At Cycloid, Infrastructure As Code is in the company DNA since the beginning. To help our new customers adopting this best practice, we decided to build Terracognita to convert an existing infrastructure on Cloud Infrastructure into Terraform code in an automated way, r
blogではじめまして。札幌オフィス清掃員です。 COLSISでは業界一強のAWSにこだわることなく、数多のクラウドIaaSを利用しています。 これまでGCPに関しては、案件数が少ないこともあり、弊社CTOが手作業で環境を構築していたのですが、ちょっと真似できないのと、私はメイン業務が清掃であり、IT知識や技術に乏しい為、今ある環境をそのままコピーしたいなぁという事でTerraformer を用いて Terraform 化してみることにした顛末をお届けしたいと思います。 既に擦り尽くされた感のあるTerraformネタではあるのですが、ちょっと調べるだけだとAWSで利用しているという情報が多く、GCPでの利用についての情報を公開するのも無駄ではないかなと思いましてblogを書いてみる次第でございます。 お手柔らかにどうぞ。 GCP構成 弊社では大体下図のような構成をとっています。 もちろん
SREチームの今です。 カヤックでは、クラウドリソースの管理にはTerraformを利用することが多いです。 クラウドリソースの構成や設定をコードで管理することで、リソースの変更内容の差分をレビューできる、意図しない設定変更を発見できるなどの利点があり、SREの目的であるサービスを安定して提供する上で重要な要素の一つです。 実際の作業として、既に運用中のサービスを新たにTerraform管理下に置く場合や、多くのリソースが既にweb consoleから作成されているものをTerraform管理下に追加する場合も多いと思います。 その際にはTerraform importをする必要があります。しかし、Terraform importは単純作業とはいえ時間と手間がかかり、優先順位を下げてついつい後回しにしてしまうことも多いのではないでしょうか。 今回は、手作業でTerraform import
この記事はOpenSaaS Studio Advent Calendar 2019の20日目の記事です。 はじめに なんとなくplanとapplyが動かせるからいいかな〜ってノリでTerraformを使ってる人々(かつての自分)のためのメモです。 tfstateが分からないと、Terraformの構成を変えたい!と思ったときにリファクタリングすることもできない。 Terraformの構成を最初からうまいこと作るのって本当に難しい。。。 リファクタリングのしにくさがTerraformの課題のひとつだと思う。 ということでまとめてみました。 tfstateファイルはTerraformが管理しているリソースの現在の状態を表すファイルです。 デフォルトではローカルにtfstateファイルが生成されますが、多くの現場ではs3などのリモートバックエンドで管理していると思います。 tfstateの存在意
こんにちは、LayerX で主にインフラを担当している高江です。 今回は、一見地味ではありますが実はとても役に立つ機能である Terraform import についてお話したいと思います。 Terraform import とは 公式サイトでは次のように説明されています。 Terraform is able to import existing infrastructure. This allows you take resources you've created by some other means and bring it under Terraform management. 要するに、AWS 等のサービスプロバイダー上に既に存在する、Terraform 管理されていないリソースの情報を取得して Terraform 管理下に置く(tfstate ファイルに import する)
はじめに Terraform ではプラグインベースのアーキテクチャが採用されており、利用者はプラグインを利用することで自由に Terraform の機能拡張を行うことができます。プラグインとしては AWS などのインフラプロバイダーのリソースを制御する Provider と、作成されたリソースをセットアップする Provisioner の2種類がサポートされています。 Provisioner 1 は Terraform バイナリに含まれているのですが、Provider は含まれていないため 2 3、Terraform を初期化する際に HashiCorp が提供する Terraform Registry などの外部レジストリから必要に応じてインストールする仕様になっています。 具体的な処理フローとしては terraform init が実行されると、まず Terraform は作業ディレク
著者は、マイクロサービスを開発するためのプラットフォームを開発・運用するチームで2020年から働き始めました。それ以前の仕事は、バックエンドエンジニアとしてのマイクロサービス開発です。プラットフォームチームが開発したTerraformモジュールに設定を渡し、GCPやKubernetesのリソースを作成していました。 いざそのモジュールを作成したり、エラーのデバッグをする立場になってみると何もわかりません。つぎのような疑問がわきました。 * モジュールとは何か * 複数のリソースから構成されるアーキテクチャはどう組み立てるのか * なぜTerraformの状態と実際のクラウドリソースの状態はずれるのか Terraformの概念や個々のリソースの使い方、GCPを利用したサンプルのモジュールはたくさんあります。Terraformに関する書籍もあります。 しかし、Terraformの具体的な説明に
著者は、マイクロサービスを開発するためのプラットフォームを開発・運用するチームで2020年から働き始めました。それ以前の仕事は、バックエンドエンジニアとしてのマイクロサービス開発です。プラットフォームチームが開発したTerraformモジュールに設定を渡し、GCPやKubernetesのリソースを作成していました。 いざそのモジュールを作成したり、エラーのデバッグをする立場になってみると何もわかりません。つぎのような疑問がわきました。 ・モジュールとは何か ・複数のリソースから構成されるアーキテクチャはどう組み立てるのか ・なぜ Terraform の状態と実際のクラウドリソースの状態はずれるのか Terraformの概念や個々のリソースの使い方、GCPを利用したサンプルのモジュールはたくさんあります。Terraformに関する書籍もあります。 しかし、Terraformの具体的な説明に登
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く