並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 131件

新着順 人気順

terraformの検索結果1 - 40 件 / 131件

  • MCPでLLMに行動させる - Terraformを例とした tfmcp の紹介 - じゃあ、おうちで学べる

    はじめに こんにちは!今回は、私が最近開発した tfmcp というツールを紹介します。これは Terraform を LLM(大規模言語モデル)から操作できるようにするツールで、Model Context Protocol (MCP) を活用しています。 github.com このブログが良ければ読者になったり、GitHub リポジトリにStarをいただけると開発の励みになります。nwiizoをフォロワーしてくれるのもありがたいです。より良いツール開発のためのフィードバックもお待ちしています! MCP とは何か? 記事を始める前に、まず MCP (Model Context Protocol) について簡単に説明しましょう。MCP についてより詳しい情報は、公式ドキュメント modelcontextprotocol.io や Anthropic の Model Context Protoc

      MCPでLLMに行動させる - Terraformを例とした tfmcp の紹介 - じゃあ、おうちで学べる
    • Google CloudのTerraform職人が失職する機能が出てしまった……

      Google CloudがApplication Design Centerという、構成図を書けばTerraformを書いて、デプロイまで行う機能をリリースしました。[1] どうやらGoogle CloudはTerraform職人を失職に追い込みたいようです。 Application Design Centerの概要 アプリケーション デザイン センターは、Google Cloud アプリケーション インフラストラクチャの設計、共有、デプロイに役立ちます。アプリケーション デザイン センターを使用すると、アプリケーション テンプレートを設計し、開発者と共有し、インスタンスをデプロイして、設計を進化させることができます。 つまりApplication Design Centerはインフラ構成図の設計・共有・デプロイを補助するツールで、アプリケーション開発者やプラットフォーム管理者が効率的に管

        Google CloudのTerraform職人が失職する機能が出てしまった……
      • さくらの開発チームにおけるTerraform/Ansibleの活用 | さくらのナレッジ

        はじめに さくらのクラウドにはいくつかの開発チームがありますが、その中で私が所属しているガンマチームにおけるTerraformやAnsibleの活用というテーマで川井が発表させていただきます。 内容としては、まずこの発表の目的を説明し、IaC (Infrastructure as Code)とはそもそも何かという話をして、それからさくらのクラウドでTerraformをどのように活用しているか、またAnsibleをどのように活用しているかを発表します。 目的 今回はIaCの勉強会ということで、IaCの理解と実践を目的としています。この勉強会に参加することで皆さんがTerraformやAnsibleを理解し、インフラ構築に活用できるようになることを目指したいと思います。 IaCの理解と実践 この発表ではIaCを以下のように定義します。 「IaC(Infrastructure as Code)と

          さくらの開発チームにおけるTerraform/Ansibleの活用 | さくらのナレッジ
        • Terraform担当大臣 - laiso

          “Platform Engineering”という私的よく見かけるが意味を調べたことのない用語No.1のトピックについて書かれた本がO'Reillyからearly releaseされているので読んでる。まだ第一部しか公開されてない。 learning.oreilly.com その中に出てくるアプリケーションチームがTerraformコードを管理することで起きがちな問題について共感したので紹介する アプリケーションエンジニアリングチームがIaaSクラウドのあらゆるものを求めるようになったとき、多くの企業は、各チームに独自のクラウドインフラストラクチャを独自の構成でプロビジョニングする権限と責任を与えることが、摩擦の少ない方法だと判断しました。 実際には、これは、構成管理とインフラストラクチャプロビジョニングに精通した、兼業のクラウドエンジニアリングチームになることを意味していました。 繰り返

            Terraform担当大臣 - laiso
          • Terraformを採用する前に知っておくべき6つの課題

            クラウドインフラのシステム基盤構築にTerraformを採用している組織は多いですね。村上自身は特別な要件がない限り、”どのクラウドを使う場合でも” システム基盤構築にはTerraformを使いたいと考えているインフラエンジニアです。 私は、Terraformを3年間使用する中で、6つの課題に直面してきました。 このブログでは、実際の開発現場でどのような問題が起こったのか、またその問題をどのように回避、あるいは対策すべきだったのかについて、綴ってみました。 【課題1】プロジェクト始動直後にTerraform開発を開始したため、後工程で改修タスクが多発 SI案件では、クライアントが提案する調達要件RFPをもとに、ITベンダーがヒアリングを行いながら要件定義を進めていきます。 要件定義の一例として以下のようなものがあります。 クラウド・ミドルウェアの選定(事前に指定される場合もあるが、基本的に

              Terraformを採用する前に知っておくべき6つの課題
            • 【AWS】Terraform導入時に考えておきたい4つのこと - NRIネットコムBlog

              はじめに スコープ 構成例 Point 1:ソースコード管理ツール ブランチ戦略 PRマージ条件 静的チェック Point 2:実行基盤 ディレクトリ構成 バージョン管理 Point 3:認証とアクセス経路 Point 4:State管理 補足 ベストプラクティス 各種ツール さいごに はじめに こんにちは。加藤です。 今回はAWS環境におけるTerraformの導入時に考えておきたいポイントを4つ紹介しようと思います。 あくまで私個人の見解ですので、参考程度に見ていただければ幸いです。 スコープ 本記事ではAWSやTerraformの基本知識については割愛いたします。また、AWSとGoogleCloud、TerraformとCDKなどの類似サービスやツールの比較も行いません。 AWS案件でTerraform導入を検討しているが、何をどう決めていけば良いか迷っている、という方に、まずは最小

                【AWS】Terraform導入時に考えておきたい4つのこと - NRIネットコムBlog
              • Best practices for using the Terraform AWS Provider - AWS Prescriptive Guidance

                Michael Begin, Senior DevOps Consultant, Amazon Web Services (AWS) May 2024 (document history) Managing infrastructure as code (IaC) with Terraform on AWS offers important benefits such as improved consistency, security, and agility. However, as your Terraform configuration grows in size and complexity, it becomes critical to follow best practices to avoid pitfalls. This guide provides recommended

                • AWS知見共有会でTerraformのCI/CDパイプラインのセキュリティ等について発表してきました + GitHub新機能Push rulesについて - LayerX エンジニアブログ

                  先日2024/04/16にタイミーさんのオフィスで開催された、AWS知見共有会というイベントで発表してきました。この会のテーマは「運用のスケーラビリティとセキュリティ」ということで、私は「コンパウンドスタートアップのためのスケーラブルでセキュアなInfrastructure as Codeパイプラインを考える」というタイトルで発表してきています。 イベントの動画もあります。 私の発表は 1:43 ぐらいからです。 この発表については資料と動画を見ていただければ!という感じで特に付け加えることもなかったのですが、イベントの開催後にGitHubから発表された新機能Push rulesがとても便利で、新たなベストプラクティスとなるインパクトがあると思ったので、この記事で紹介します。 Push rulesとは つい昨日発表された機能で、現在はpublic betaという状態です。なので、仕様変更と

                    AWS知見共有会でTerraformのCI/CDパイプラインのセキュリティ等について発表してきました + GitHub新機能Push rulesについて - LayerX エンジニアブログ
                  • 【JavaScript × Terraform】次世代のモダン AltJS「JS.tf」の紹介

                    人類は HCL (Hashicorp Configuration Language) で JavaScript を記述するべきなので、次世代のモダン AltJS である「JS.tf」をリリースしました。 例えば次のコードは標準出力に hello world と出力する JS.tf のプログラムです。 data "js_function_call" "hello_world" { caller = "console" function = "log" args = ["hello world"] } data "js_program" "main" { statements = [data.js_function_call.hello_world.statement] } # index.js としてファイル出力 resource "local_file" "main" { filename

                      【JavaScript × Terraform】次世代のモダン AltJS「JS.tf」の紹介
                    • ログラスのTerraform構成とリファクタリングツールの紹介

                      この記事は毎週必ず記事がでるテックブログ "Loglass Tech Blog Sprint" の 47週目の記事です! 1年間連続達成まで 残り 6 週 となりました! はじめに ログラスのクラウド基盤でエンジニアをやっているゲイン🐰です。 ログラスではAWS上でアプリケーションを動かすためにIaCとしてTerraformを採用しています。 我々のTerraformの構成を紹介するとともに、現状の課題とリファクタリングの事例を共有できれば幸いです。 ログラスのTerraform構成 ざっくりログラスのアプリケーションにまつわるTerraform構成は以下のようになっています。 基本的にはterraform/usecaseディレクトリ配下にmoduleとして定義されています。 中身は比較的にベタでリソースが書かれており、それらをterraform/envディレクトリの各ディレクトリ内で呼

                        ログラスのTerraform構成とリファクタリングツールの紹介
                      • HashiCorp、TerraformをフォークしたOpenTofuに対しコードの不正コピーを警告。OpenTofuは完全否定

                        HashiCorp、TerraformをフォークしたOpenTofuに対しコードの不正コピーを警告。OpenTofuは完全否定 HashiCorpは昨年(2023年)8月、Terraformを含む同社製品のライセンスを、商用利用に制限があるBusiness Source License v1.1(BSL1.1)に変更すると発表。これに反発し、ライセンス変更前のTerraformをフォークしたプロジェクトとしてLinux Foundation傘下で登場したのが「OpenTofu」です。 参考:Terraformのフォークが「OpenTofu」としてLinux Foundation傘下で正式ローンチ。OpenTFから改名 しかしHashiCorpはこのOpenTofuを歓迎するつもりはまったくなかったようです。 HashiCorpがOpenTofuにコードの不正使用を警告 HashiCorpは

                          HashiCorp、TerraformをフォークしたOpenTofuに対しコードの不正コピーを警告。OpenTofuは完全否定
                        • 新しいTerraformのバージョンマネージャー tenv を試してみた | DevelopersIO

                          しばたです。 私は普段Windows環境でTerraformを使っており、Terraformのバージョン管理には自作ツールを使っていました。 つい先日新しいバージョンマネージャーであるtenvというツールがあることを知ったので試してみることにしました。 tfenvのつらみ Terraformのバージョンマネージャーとしてはtfenvが一番メジャーかと思います。 tfenv ただ、このtfenvはシェルスクリプト(Bashスクリプト)の集合体でありWindows環境ではGit Bashでのみ動作する状況でした。 加えて2023年末ごろから開発停止状態になっていいます。 新しいバージョンマネージャー tenv 細かい経緯を正確に把握できていないのですが、今年に入りOpenTofuのコミュニティによりOpenTofu向けのtfenv派生であるtofuenvが生まれ、 tofuutils / to

                            新しいTerraformのバージョンマネージャー tenv を試してみた | DevelopersIO
                          • Terraform State をビジュアルで確認できるOSS「terraform-tui」の紹介 | DevelopersIO

                            お疲れさまです。とーちです。 Terraformを使っていて「今のState fileの状態を簡単に確認したいな」と思うことはないでしょうか?私は稀にあります。 今回は、そんな悩みを解決してくれる「terraform-tui」というOSSツールをご紹介したいと思います。 とりあえずまとめ Terraform Stateをグラフィカルに可視化できる リソースの検索や詳細表示が直感的に可能 Plan/Applyもツール上から実行可能 terraform-tuiの主要機能 1. State管理の可視化 Terraform stateツリーの完全な可視化 リソース状態の詳細表示と簡単なナビゲーション ツリー構造での直感的な状態把握 2. 検索・操作機能 stateツリーとリソース定義の検索 リソースの単一/複数選択 リソースの削除機能 3. Plan/Apply機能 terraform-tuiから

                              Terraform State をビジュアルで確認できるOSS「terraform-tui」の紹介 | DevelopersIO
                            • Terraformのコードを読み取ってクラウド費用を推定してくれる「Infracost」にJetBrains拡張機能版が登場

                              コードでインフラストラクチャーを管理する「Terraform」を使用している場合に、クラウドサービスの月間の推定費用を算出してくれるツール「Infracost」がJetBrainsのマーケットプレイスに登場しました。 Infracost Plugin for JetBrains IDEs | JetBrains Marketplace https://plugins.jetbrains.com/plugin/24761-infracost どのように動作するのかについては下記のムービーで確認できます。 Infracost JetBrains plugin - YouTube まず、こんな感じでTerraformのコードが書かれているとします。 設定の「Plugins」を開き、「infra」と検索するとヒットする「Infracost」を選択して「Install」をクリック。これでInfrac

                                Terraformのコードを読み取ってクラウド費用を推定してくれる「Infracost」にJetBrains拡張機能版が登場
                              • 【AWS】ECS CI/CD の作り方(GitHub Actions / Code シリーズ / Terraform) - Qiita

                                ECS の CI/CD を GitHub Actions、Code シリーズ、Terraform というおいしいものづくしで作ります。 ECS の CI/CD は定番ものですが、構築にはいろいろなパターンがあるので、そのあたりに悩みつつも楽しみながら作ってみましょう 構築の方針 考えるポイントとしては、アプリとインフラの境界をどうするかというところです。本記事の CI/CD ではアプリの範囲はアプリ側の GitHub リポジトリで扱えるところまでとし、インフラは「それ以外すべて」と考えました。 ここをどう考えるかは、以下の記事がとても参考になります。上の記事ではパターン3、下の記事ではパターン 3-3 に近しいものを採用しました。 ECS の CI/CD において、アプリとインフラが構築に混在するのであれば、GitHub Actions + Code シリーズはファーストチョイスと考えてよ

                                • terraform (plan|apply) in GitHub Actions | さくらのナレッジ

                                  はじめに さくらインターネット SRE室の久保です。 今日は「terraform (plan|apply) in GitHub Actions」というタイトルで発表させていただきます。 今日発表する内容は、画像で表すと上図のようになります。誰かがPull Requestを送ると、それをもとにGitHub Actionsを動かし、Terraformのplanやapplyを動かして、自動的にTerraform管理下にあるリソースを更新してくれる、そういう仕組みを作ったという話です。 terraform (plan|apply)を実行する際のポイント Terraformのplanとapplyを実行する際のポイントとして、まず各種秘匿情報、具体的にはAPIキーなどが必要になるので、実行結果をチーム内で共有してレビューするのが結構面倒です。何らかの方法でAPIキーを共有して使うにしても、あるいは各自

                                    terraform (plan|apply) in GitHub Actions | さくらのナレッジ
                                  • Terraform を活用した効率的な S3 バケット管理手法 [DeNA インフラ SRE] | BLOG - DeNA Engineering

                                    2024.11.26 技術記事 Terraform を活用した効率的な S3 バケット管理手法 [DeNA インフラ SRE] by Tatsuki Mutsuro #infrastructure #sre #aws #s3 #terraform #infra-quality #infra-delivery はじめに こんにちは。 IT 基盤部第四グループの無津呂です。 全世界向けゲームタイトルのインフラ運用を担当しています。 当グループでは、複数のゲームタイトルのインフラを開発環境・検証環境・本番環境にわたって管理しています。 AWS の S3 は、当グループが管理しているインフラリソースの 1 つです。 その S3 のバケットは、合計数百個になります。 当グループはこれまで、大量の S3 バケットをうまく管理できていませんでした。 Terraform を利用して IaC 化してはいたの

                                      Terraform を活用した効率的な S3 バケット管理手法 [DeNA インフラ SRE] | BLOG - DeNA Engineering
                                    • Terraformモジュール構成のベストプラクティス - ENECHANGE Developer Blog

                                      VPoTの岩本 (iwamot) です。 この記事では、Terraformモジュール構成のベストプラクティスをご紹介します。Terraformドキュメントに書かれているものですが、従わずに時間を溶かした失敗談をまじえてお伝えすることで、同じ轍を踏む方が減ることを願っています。 取り上げるのは下記のベストプラクティスです。 Module Composition(フラットなモジュールツリー) Dependency Inversion(依存性の逆転) Module Composition(フラットなモジュールツリー) Module Compositionは、モジュールをフラットに並べられるよう構成すべし、という話です。Terraformドキュメントでは下記の例が挙げられています。 module "network" { source = "./modules/aws-network" base_c

                                        Terraformモジュール構成のベストプラクティス - ENECHANGE Developer Blog
                                      • AWS 構成図を S3 にアップするだけで Terraform のコードを git push / pull request から terraform plan まで自動で動作するシステム

                                        2024/10/25 社内 LT 会 ■GitHub ・Lambda https://github.com/hiyanger/diagram-to-terraform-cicd-lambda ・生成コード https://github.com/hiyanger/diagram-to-t…

                                          AWS 構成図を S3 にアップするだけで Terraform のコードを git push / pull request から terraform plan まで自動で動作するシステム
                                        • TerraformとGitHub Actionsで複数のCloud RunをまとめてDevOpsした結果, 開発者体験がいい感じになった話. - Lean Baseball

                                          ざっくり言うと「TerraformとGitHub ActionsでGoogle Cloudなマイクロサービスを丸っとDeployする」という話です. Infrastructure as Code(IaC)は個人開発(趣味開発)でもやっておけ 開発〜テスト〜デプロイまで一貫性を持たせるCI/CDを設計しよう 個人開発(もしくは小規模システム)でどこまでIaCとCI/CDを作り込むかはあなた次第 なお, それなりに長いブログです&専門用語やクラウドサービスの解説は必要最小限なのでそこはご了承ください. あらすじ 突然ですが, 皆さんはどのリポジトリパターンが好きですか? 「ポリレポ(Polyrepo)」パターン - マイクロサービスを構成するアプリケーションやインフラ資材を意味がある単位*1で分割してリポジトリ化する. 「モノレポ(Monorepo)」パターン - アプリケーションもインフラも

                                            TerraformとGitHub Actionsで複数のCloud RunをまとめてDevOpsした結果, 開発者体験がいい感じになった話. - Lean Baseball
                                          • Terraform Monorepo の CI の実行時間を可視化し 2 分以上高速化 - freee Developers Hub

                                            SRE team の suzuki-shunsuke です。 今年の 8 月(約3か月前)から freee の SRE team に join しました。 本記事では Terraform Monorepo の CI の実行時間を CIAnalyzer で可視化し 2 分 (70 percentile で約 160 %) 以上高速化した話を紹介します。 背景 freee には AWS などを管理する Terraform の Monorepo があり、 SRE を中心に多くの開発者がそのリポジトリで開発を行っています。 CI には GitHub Actions の Self-hosted Runner を使っています。 フローとしては GitHub Flow を採用しており、 Pull Request を作成すると CI で terraform plan が実行されます。 terraform

                                              Terraform Monorepo の CI の実行時間を可視化し 2 分以上高速化 - freee Developers Hub
                                            • GitHubをコードで管理 ! Terraformを導入して安全な管理を実現しました - ROUTE06 Tech Blog

                                              ROUTE06 では GitHub の管理に Terraform を導入しました。今回はその導入の背景、実際に導入してどう変わったのか、導入方法について紹介したいと思います。 Terraform とは Terraform は、IaC(Infrastructure as Code)ツールの一種です。 インフラの設定をコードとして管理することで、設定の変更履歴が明確になり、誤った設定によるトラブルを防ぐことができます。 なぜ GitHub を Terraform で管理するのか ROUTE06 では、全社的に GitHub を使用しています。そのため、GitHub の管理は非常に重要です。 Terraform 導入前には、以下のような課題がありました。 手動での設定変更時にミスが発生する 設定変更の履歴が追いにくい 重要な変更(リポジトリの作成や Organization へのユーザー招待など

                                                GitHubをコードで管理 ! Terraformを導入して安全な管理を実現しました - ROUTE06 Tech Blog
                                              • [詳解]AWS Infrastructure as Code――使って比べるTerraform&AWS CDK

                                                この本の概要 本書は,Amazon Web Services(AWS)のリソースを対象とした,コードによるインフラ管理――Infrastructure as Code(IaC)をテーマにした実践的な解説書です。IaCツールの中でも,幅広いシステムに対応できる「Terraform」と,抽象的なリソース記述が可能な「AWS CDK」を取り上げます。それぞれのツールの基本的な使い方や仕組みを解説するとともに,VPCやECSの構築といった具体例を通じてこれら2つのツールを横断的に比較・理解します。両ツールの「宣言的なコード記述」という共通点や,コード記述法や差分抽出プロセスの違いを掘り下げながら,AWSにおけるIaCの汎用的なスキルを習得できる内容となっています。IaCをこれから始めるユーザーに加え,Terraformユーザー,AWS CDKユーザーのどちらにも,新たな視点とスキルを提供します。

                                                  [詳解]AWS Infrastructure as Code――使って比べるTerraform&AWS CDK
                                                • Terraform 1.9 の新機能紹介 | DevelopersIO

                                                  Terraformのversion 1.9が2024年の6月26日にGAになりました。1.9の新機能を見ていきましょう。 変数のvalidationで色々参照できるようになった 変数にはvalidationを実装することができます。例えば以下のようなものです。 variable "aws_account_id" { type = string description = "AWS Account ID" validation { condition = can(regex("^[0-9]{12}$", var.aws_account_id)) error_message = "Invalid AWS accountID." } } これはAWSアカウントIDが格納されるのを想定した変数です。AWSアカウントIDは必ず12桁の数字ですので、そうでない場合はエラーにしています。 上記例では c

                                                    Terraform 1.9 の新機能紹介 | DevelopersIO
                                                  • MFA認証を使ったAssumeRoleでシンプルにTerraformを実行する(aws configure export-credentials) | DevelopersIO

                                                    MFA認証を使ったAssumeRoleでシンプルにTerraformを実行する(aws configure export-credentials) Terraform実行時のMFA認証を使ったAssume Roleを楽にできる方法がないか調べていたら、以下のコメントを見つけました。 Doesn't ask MFA token code when using assume_role with MFA required #2420 どうやらツールや長いコマンドの実行なしで、MFA認証ありでも簡単にAssume Roleができそうです。 便利だったのでブログにしてみました。 TerraformのMFA認証事情は以下のブログをご確認ください。 結論 この方法では、aws-vaultやaws-mfaなどのツールは不要です。 以下のようにProfileを用意して、terraformのコマンドを打つだけ

                                                      MFA認証を使ったAssumeRoleでシンプルにTerraformを実行する(aws configure export-credentials) | DevelopersIO
                                                    • 解剖!Terraform monorepo - LayerX エンジニアブログ

                                                      バクラク事業部 Platform Engineering部 SREの id:itkq です。バクラク事業部では2022年にアプリケーションのmonorepo化を始め、現在では対応するインフラもmonorepoで運用しています。今回は、そのうちTerraformについて紹介します。 monorepoに至るまで 2022年、アプリケーションをmonorepo化していくプロジェクトが始まりました (通称layerone。リポジトリ名もlayerone)。これについての詳細は次のスライドを参照してください。 これに合わせて、対応するインフラを記述するTerraformも同じlayeroneリポジトリに集約しました。そのほうが特に自動生成の都合が良かったためです。この大枠は当時 @civitaspo がほぼ一人で作り上げました。その後、様々な事情 (例えばGitHub APIのRate-limitな

                                                        解剖!Terraform monorepo - LayerX エンジニアブログ
                                                      • Atlantis で安全かつ効率的に Terraform の組織運用を実現する

                                                        この記事は、Magic Moment Advent Calendar 2024 8 日目の記事です。 こんにちは! Magic Moment でソフトウェアエンジニアをやっている Miyake です。 私は普段バックエンドアプリケーション開発の傍ら、クラウドインフラの整備や DevOps の推進などを進めています。 今回その業務の一環として、Terraform を安全かつ効率的に運用できる Atlantis というツールを導入したので、その機能や運用についてご紹介したいと思います。 弊社のインフラ管理体制 弊社ではインフラとして Google Cloud をメインに利用しており、プロダクトのインフラリソースのほぼ全てを Terraform で管理しています。 Terraform に触れるメンバーは特に限定しているわけではなく、機能リリースの過程で必要に応じて誰でもインフラ構築にコミットでき

                                                          Atlantis で安全かつ効率的に Terraform の組織運用を実現する
                                                        • ベストなCDK for Terraform(CDKTF)のディレクトリ構成を探る

                                                          最近関わっているプロジェクトでは、大きなアプリケーションのリアーキテクチャを行っています。 そこではフルスクラッチでインフラの構成を書き直す機会がありました。 そのプロジェクトは社内では比較的複雑な構成になっていて、リアーキテクチャにあたっては、アプリケーション特有の事情により、考慮すべきポイントや難度が高いところがたくさんありました。 具体的には、複数のマイクロサービス間の協調性や独立性とそれに付随する認証/認可、クライアント証明書(mTLS認証)の管理、歴史的経緯による複雑性を正すためのawsアカウント移行などなど。 それらは別の機会で語る(or 同僚の誰かが語ってくれることに期待したい)として、この記事ではインフラをフルスクラッチで書き直すにあたって選択したCDKTFについて、紆余曲折を経つつも最終的に採用したディレクトリ構成について書きたいと思います。 タイトルには「ベストな」とあ

                                                            ベストなCDK for Terraform(CDKTF)のディレクトリ構成を探る
                                                          • Terraformで不要になったmoved/import/removedブロックを楽に削除する

                                                            Terraformのmovedブロックやimportブロック、removedブロックは便利です。しかし、applyした後に削除するのが面倒です。面倒といっても何か制約がある訳ではなく、単に削除するPRを出すのが面倒という話です。そこまで頻繁にこれらのブロックを使うわけではないのですが、削除を楽にするために https://github.com/takaishi/tfclean というツールを作りました。 例えば、以下のようなtfファイルがあるとします。aws_security_groupリソースが1つと、movedブロックとimportブロック、removedブロックがあるファイルです。 resource "aws_security_group" "example" { name = "example-security-group" description = "Example secur

                                                            • バックエンドもフロントエンドもインフラも Terraform でつくってみた

                                                              この記事は terraform Advent Calendar 2024 の 9 日目の記事です。 Terraform だけでアプリケーションのバックエンド・フロントエンド・インフラをつくったので紹介します。 つくったもの 利用技術 バックエンド フロントエンド インフラ Full-Stack Terraform まとめ つくったもの 画像を表示するだけのサンプルアプリケーションです。 Gallery リポジトリはこちら。 使用言語 利用技術 バックエンド バックエンドの実装には次世代のモダン AltJS である JS.tf を使用しています。 JS.tf を使うと HCL で JavaScript プログラムを記述することができます。 data "js_function_call" "hello_world" { caller = "console" function = "log" a

                                                                バックエンドもフロントエンドもインフラも Terraform でつくってみた
                                                              • TerraformのCIをAtlantisに移行しました - Repro Tech Blog

                                                                Repro では AWS 等のリソース管理に Terraform を活用しています。 この度 Terraform で管理しているコードの CI を Atlantis に移行したので、その経緯などについて書きます。 背景 Repro では以下のリソースを Terraform を使ってコード化して GitHub で管理しています。 AWS で構築したインフラ DataDog のモニターやアラート Google Cloud Platform で利用している一部のリソース GitHub の reproio organization のメンバーやチーム Kafka Topic MySQL アカウント PagerDuty の通知まわりの設定 Rollbar の通知 移行前は CircleCI や AWS CodeBuild を活用して独自に CI を構築していました。 課題 初期から CicleCI

                                                                  TerraformのCIをAtlantisに移行しました - Repro Tech Blog
                                                                • アーキテクチャ図だけ描いてTerraformはGoogle Cloud Developer Cheat Sheetに書いてもらおう

                                                                  アーキテクチャ図だけ描いてTerraformはGoogle Cloud Developer Cheat Sheetに書いてもらおう 初めての方は、初めまして。そうでない方も、初めまして。クラウドエース SRE 部で Professional Cooking Architect をしている zeta です。私はドンドコ島の充実度をオンライン1位(多分)にしましたが皆さんいかがお過ごしでしょうか。 はじめに クラウドエースの SRE 部は Google Cloud のインフラの面倒を見ることが主な業務です。世の中の多くの企業の似たような役割を持つ部署でもそうだと思いますが、インフラの設計・構築・運用といったフェーズを行っていきます。こういったインフラエンジニア的なことをやっていると、みなさんも一度ぐらいは「設計だけやったら勝手にインフラ構築されねーかな〜」なんて思ったことはあるのではないでしょ

                                                                    アーキテクチャ図だけ描いてTerraformはGoogle Cloud Developer Cheat Sheetに書いてもらおう
                                                                  • tenv: Terraform のバージョン管理をしよう - kakakakakku blog

                                                                    普段 Terraform のバージョン管理ツールとして tfenv を使っている.機能面で困ることはないけど,tfenv の GitHub リポジトリを確認すると,直近数年は特にアップデートがなく,メンテナンスの観点で少し不安を感じていた💦 github.com 念のため tfenv の代替ツールを探しておこうと思って,tenv を試してみた❗️tenv は tfenv と同じように使えて,OpenTofu や Terragrunt もサポートしているという特徴がある.そして現在も活発に開発がされているようだった.tenv 以外だと tfswitch もあって少し試したけど,個人的には tenv が良さそうだった. github.com セットアップ Homebrew で簡単にセットアップできる👌 $ brew install tenv $ tenv version tenv vers

                                                                      tenv: Terraform のバージョン管理をしよう - kakakakakku blog
                                                                    • Terraform 1.10がリリースされました

                                                                      想定読者 Terraformを利用している方 Terraform 1.10について知りたい方 Terraform 1.10がリリースされました! 表題そのままですが、Terraform 1.10がリリースされ、HCP Terraformでも利用可能になりました。 ここでは、簡単にアップデートをご紹介いたします。 Ephemeral Values Ephemeralとは、直訳すると「つかの間の」や「儚い」という意味ですが、Ephemeral Valueは今まで扱っていたTerraformの「値」を一時的なものにすることができる機能になります。 一時的になって嬉しいものはなんでしょうか。。。?🤔 そうです、APIキーやパスワード、証明書などのシークレット情報です。() これまでTerraformのPlanの出力やStateなど、さまざまな場所にシークレット情報が残ってしまうことがありましたが

                                                                        Terraform 1.10がリリースされました
                                                                      • terraform-aws-provider 5.68.0 で非推奨になった aws_iam_role の inline_policy の改修を行ったときのメモ✍ - 継続は力なり

                                                                        タダです. terraform-aws-provider 5.68.0 で以下の引用文にあるように aws_iam_role にて inline_policy を使用するのが非推奨になり aws_iam_role_policy が代替先になりました.この記事では,そのリソースの改修を行った備忘録を書きます. resource/aws_iam_role: The inline_policy argument is deprecated. Use the aws_iam_role_policy resource instead. github.com inline_policy から aws_iam_role_policy へ書き換え aws_iam_role のinline_policy を使用していた下記の IAM リソースがあったとします.この状況で terraform plan を試す

                                                                          terraform-aws-provider 5.68.0 で非推奨になった aws_iam_role の inline_policy の改修を行ったときのメモ✍ - 継続は力なり
                                                                        • Terraform 1.10 improves handling secrets in state with ephemeral values

                                                                          Today, we are announcing the general availability of HashiCorp Terraform 1.10, which is ready for download and immediately available for use in HCP Terraform. This version introduces ephemeral values, for secure secrets handling and other improvements. Ephemeral values to enable secure handling of secrets Terraform’s management of infrastructure involves handling secrets, such as private keys, cer

                                                                            Terraform 1.10 improves handling secrets in state with ephemeral values
                                                                          • terraform importで数年やってきたがImport blockの良さに気づきました

                                                                            こんにちは。イオンスマートテクノロジー株式会社(AST)でSREチームの林 aka もりはやです。 Terraformを一定以上扱ってきた方であれば terraform import コマンドを苦労しながら実行した経験があるのではないでしょうか。私自身も5年以上Terraformを扱う中で何度も terraform import を行ってきました。 一般的に terraform import では以下を行います。 実態に合わせてコードを整える 実態を指定するコマンドを組み立てる ステートファイルに取り込む 差分が出たら地道にコードを整えて terraform plan を実行する 4を繰り返して"No changes"となるまでチューニングする これらの作業はTerraform初見では難しく、個人的にTerraform中級者への登竜門として terraform import が試金石のひと

                                                                              terraform importで数年やってきたがImport blockの良さに気づきました
                                                                            • コードレビューでよくあったコメント9選 〜Terraform編〜

                                                                              この記事について kotapjp さんの記事「Go初学者へのコードレビューでよくあったコメント20選」や riddle_tec さんの記事「コードレビューでよくお願いする、コメントの追加のパターン7選」が好評だったようなので、 便乗して「Terraform初学者へのコードレビューでよくあったコメント9選」を書いてみました。 思いつく限り雑多にレビュー観点を並べてみましたが、「こういうレビューもよくあるよね」とか「以前 @gecko655 にこういうレビュー指摘食らったことあるのにこの記事に書かれてないんですけど 😡 」とかあればコメントいただけると大変助かります。 json の入力が必要な箇所では jsonencode() を使う resource "aws_iam_role" "the_lambda_role" { name = "" assume_role_policy = <<-E

                                                                                コードレビューでよくあったコメント9選 〜Terraform編〜
                                                                              • Azure 上の既存リソースを Terraform 管理へ移行する「Azure Export for Terraform」を試してみる | DevelopersIO

                                                                                いわさです。 先日 Azure リソースを Terraform を使って構築する機会がありました。 私は、普段 AWS では CloudFormation を使うことが多くて Terraform はあまり使うことが無かったのですが、Azure だと ARM/Bicep か Terraform での管理になると思います。 そんな中、Azure + Terraform について調べているうちに、Azure 上で構築済みのリソースを Terraform のコード & Stateファイルへエクスポートするツールが提供されていることを知りました。 Azure + Terraform を学ぶきっかけになるかなと思い、今回こちらのツールを使ってみました。 インストール方法 Apple M1 Max (macOS Sonoma) 環境へインストールを行います。前提として Terraform は既にインスト

                                                                                  Azure 上の既存リソースを Terraform 管理へ移行する「Azure Export for Terraform」を試してみる | DevelopersIO
                                                                                • 「楽」する前のTerraformバージョンアップ方針と運用整理(とポエム) - 東京ガス内製開発チーム Tech Blog

                                                                                  はじめに、はじめまして。リビング戦略部SREチームのあおしょん(本名:青木)と申します。 2024年4月1日から弊チームにジョインしたピチピチの新人*1です。 入社から約一ヶ月過ぎまして、現在も盛りだくさんの情報量と圧倒的当事者意識を持っている弊社の優秀なエンジニアたちに日々圧倒されながらも一刻も早く事業に貢献出来るように歩を進めています。 大きな貢献が出来ている、とは未だ胸を張って言えないのですが入社したてで業務知識が無くてもまずは小さい貢献からコツコツと始めてみよう、ということで弊チームにおけるTerraformバージョンアップの方針と運用について整理したのでご紹介いたします。 ご紹介の前に申し上げておきたいこととして、今回はバージョンアップの運用をこんなテッキーなことをしてクールに自動化してやったぜ~ワイルドだろ~という内容ではございません。あくまで現状はこうなっているからこういうこ

                                                                                    「楽」する前のTerraformバージョンアップ方針と運用整理(とポエム) - 東京ガス内製開発チーム Tech Blog