タグ

Terraformに関するbuty4649のブックマーク (18)

  • TerraformでAkamai配信設定を作ってみる | GREE Engineering

    お久しぶりです、インフラのいわなちゃんさん(@xcir)です。 弊社は複数のCDNを利用していますが、Akamaiを主に利用しており多数の配信設定(プロパティ)を運用しています。 これまでは新規プロパティはAkamai Control Center(ACC/旧LUNA)で作成していましたが、 今回多数のプロパティを作る必要があり既存も含めてTerraformで運用を行えるようにしたので共有します。 既存プロパティをterrafromでapplyするまで まずは運用は考えずに既存のプロパティのexport/編集/terraform apply/Activateという一連の動作を試してみましょう。 akamai/shellを実行する Akamaiを外部ツールから叩く際にはAPIクレデンシャルが必要なのでこちらを参考に発行して~/.edgercに配置してください。 次にAkamaiの操作環境をど

    TerraformでAkamai配信設定を作ってみる | GREE Engineering
  • Terraform職人のためのOpenTofu入門 - Qiita

    この記事は クラウドワークス Advent Calendar 2023 シリーズ1 の 4日目の記事です。 はじめに 「父さんな、Terraform職人やめてお豆腐職人でっていこうと思うんだ」と言いたいだけの @minamijoyo です。 2023年8月HashiCorpはこれまでMPL2のOSSライセンスで公開していた主要製品をBSL(Business Source License)に変更することを発表し、Terraformはv1.6.0からOSSではなくなりました。 このライセンス変更を受けて、OSS版のTerraformを求める人たちで、MPL2時点のコードベースからforkしたOpenTofuの開発が進められています。 HashiCorpのBSLは、実質的に競合他社の商用利用に制限をかけたもので、ほとんどの一般的なユーザに直接的な追加の制限はありませんが、間接的にTerrafo

    Terraform職人のためのOpenTofu入門 - Qiita
  • Terraform 1.6 adds a test framework for enhanced code validation

    TerraformInfrastructure as code provisioning​​​​‌‍​‍​‍‌‍‌​‍‌‍‍‌‌‍‌‌‍‍‌‌‍‍​‍​‍​‍‍​‍​‍‌‍‌​‌‍​‌‌‌​‌‍‌‍​‌‍‌‌​​‍‍‌‍​‌‍‌‍‌​‍​‍​‍​​‍​‍‌‍‍​‌​‍‌‍‌‌‌‍‌‍​‍​‍​‍‍​‍​‍‌‍‍​‌‌​‌‌​‌​​‌​​‍‍​‍​‍‌‍‍​‌‍​‌‌​‌‍‍​‌‍‍‌‌‍​‌‍‌​‍‌​​​‍‍‌‍​‌‌‍‌​‌‍‌‌‍‍‌‌‍‍​‍‍‌‍‌​‌‍​‌‌‌​‌‍‌‍​‌‍‌‌​​‍‍‌‍​‌‍‌‍‌​‍‌‍‌‌‌‍‌​‌‍‍‌‌‌​‌‍‌​‍​‍‌‍‍‌‌‌​‌‍‌‌‌‍‌‌‌‌‌​‌‍‌‌​​‌‍‌‌‌​​‍‌‌‍‌​‌‍

    Terraform 1.6 adds a test framework for enhanced code validation
  • OpenTofuに関する雑感

    2023年12月4日追記。 この記事は2023年の9月下旬に書かれた記事です。 わりと反射的に書いてしまった内容も含んでるので(CNCFのリリースにもコメントを寄越していたGruntworkの関わりを見逃してたのは痛恨のミス。色んな思いがあるのはそれはそう)、件について語るにもっと最適な方の説明を読んでいただければ幸いです。 先月行われたHashiCorp社によるソフトウェアライセンスの変更はTerraformコミュニティに衝撃を与えたことは記憶に新しい。具体的には、Terraformのライセンスが、オープンソース/フリーソフトウェアを前提としたMPL2.0から、商用利用に制限をかけられたBSLv1.1に変更された。これにより、Terraformは伝統的な意味でのオープンソースソフトウェアではなくなってしまい、ソースコードが単に利用できるソフトウェアに変わってしまったと評する人もいる。[

    OpenTofuに関する雑感
  • Terraformのループ記法を基礎から学ぶ | 外道父の匠

    Terraform のコーディングにおいて、似た構成の複製をどのように表現するかは結構重要な課題です。放っておくと汚いコピペだらけになっていくからです。 色々な目的とやり方があると思いますので、その表現を実現するためのパーツにでもなればと思い、学習用教材的に書いてみるやつでございます。 目次 説明はそんなに多くないですが、コードのせいで縦長になったので目次を置いておきます。Terraform バージョンは v1.5.7 で動作確認しています。 単体の複製 count for_each セットの複製 module count + module 条件分岐 三項演算子 入れ子 ループ構造 for 複製の方法 階層構造 Pythonの入れ子ループ Terraform の入れ子ループ 続・階層構造 単体の複製 あるリソースに対して、単体の場合は count や for_each を使うことで、lis

    Terraformのループ記法を基礎から学ぶ | 外道父の匠
  • Terraform で AWS に DB を構築するとき manage_master_user_password を使っていますか? - 電通総研 テックブログ

    こんにちは。X(クロス)イノベーション部 ソフトウェアデザインセンター セキュリティグループの耿です。 TerraformAmazon RDS インスタンス/クラスターを作る時に、password または master_password 属性に指定したマスターユーザーのパスワードが tfstate ファイルに平文で残ってしまう問題がありました。 (参考) https://speakerdeck.com/harukasakihara/sekiyuanaterraformfalseshi-ifang-ji-mi-qing-bao-wokodonihan-mezuhuan-jing-gou-zhu-surunihadousitaraiifalse しかしこれも過去の話。Terraform AWS Provider v4.61.0 からこの問題を解消する方法が提供されているので、それについ

    Terraform で AWS に DB を構築するとき manage_master_user_password を使っていますか? - 電通総研 テックブログ
  • Terraform で実現する効率的な GitHub 権限管理 - カミナシ エンジニアブログ

    こんにちは。ソフトウェアエンジニアの坂井 (@manabusakai) です。 今月でカミナシに入社してちょうど 1 年が経ちました。前職では 6 年間 SRE チームにいたのでプロダクト開発はブランクがありましたが、さまざまな挑戦をさせてもらっていたらあっという間に 1 年が経っていました。 カミナシのエンジニアリング組織もこの 1 年で急拡大しており、入社当初から比べると正社員のエンジニアも倍以上に増えました。 GitHub の権限管理、どうしていますか? ところで、みなさんが所属されている組織ではどのように GitHub の権限管理を行なっていますか? カミナシではつい先日まで、ほとんどのエンジニアが Organization の Owner 権限を持っていました。理由は、メンターになったエンジニアがニューカマーのユーザーを招待していたからです。 しかし、統制が取れていないことでいく

    Terraform で実現する効率的な GitHub 権限管理 - カミナシ エンジニアブログ
  • Terraformのライセンスの変更とその影響

    はじめに 先日、HashiCorp社はの発表により、すべての製品といくつかのライブラリの将来のリリースについて、Mozilla Public License v2.0(MPL 2.0)からBusiness Source License(BSL、またはBUSL)v1.1への移行するがわかりました。 ただし、HashiCorpのAPI、SDK、およびほとんどの他のライブラリはMPL 2.0のままです。 BSLとは? MPL 2.0との違いは? BSLは下記のようにいくつの特徴があります: 特定の期間(通常は数年)の後に、完全なオープンソースライセンス(たとえば、Apache 2.0)に変わるライセンスである。 BSLの下でリリースされたソフトウェアは、特定の期間中は商業的に利用することが制限される。 開発者がソフトウェアの商業的価値を保護しつつ、将来的にはコミュニティに還元することを目的として

    Terraformのライセンスの変更とその影響
  • Terraform 1.5 で追加される import ブロックの使い方

    先日 Terraform v1.5.0-beta1 がリリースされました。 NEW FEATURES を眺めてみると、どうやら import ブロックというものが追加されているみたいです。 今までは既存のリソースを Terraform の管理下に追加するためには terraform import コマンドを使用して 1 つ 1 つ import する必要がありました。 import ブロックを使用することでリソースの import を宣言的に実行することができるようになりました。 というわけで試してみました。 ( この記事とは関係ないですが check ブロックも気になりますね。 ) 検証環境 Terraform v1.5.0-beta1 サンプルコード 今回紹介するコードは以下のリポジトリで管理しています。 試してみる 準備 手作業でリソースを作成 検証するための AWS リソースを作成

    Terraform 1.5 で追加される import ブロックの使い方
  • Terraform v1.4でのTF_PLUGIN_CACHE_DIRと.terraform.lock.hclの挙動変更 - Qiita

    はじめに Terraform v1.4がリリースされました。 上記のアナウンスでは特に言及されてないのですが、v1.4のUpgrade Guideに以下のような記載があり、TF_PLUGIN_CACHE_DIRと.terraform.lock.hclの組み合わせの挙動が若干変更になっています。 Provider caching during terraform init This change affects those who rely upon global provider caching and not the dependency lock file. terraform init now ignores entries in the optional global provider cache directory unless they match a checksum alr

    Terraform v1.4でのTF_PLUGIN_CACHE_DIRと.terraform.lock.hclの挙動変更 - Qiita
  • Terraform 1.4 で導入された terraform_data リソースの使い方

    Terraform 1.4 が GA になりました 🎉🎉🎉 Terraform 1.4 では新しく terraform_data リソースが導入されました。 terraform_data リソースは null_resource を置き換えるものであり、さらに異なる用途にも使用できます。 この記事では terraform_data リソースの使い方についてまとめます。 null_resource の代わりに使う replace_triggered_by に使用する サンプルコード この記事で紹介するサンプルコードは以下のリポジトリで管理しています。 検証環境 Terraform v1.4.0 使い方 null_resource の代わりに使う 前提知識として、 null_resource は何も作成しないリソースです。 Provisioner と合わせて使用することで、他のリソースの状

    Terraform 1.4 で導入された terraform_data リソースの使い方
  • Terraformのリファクタリング始めました - VisasQ Dev Blog

    こんにちは、プラットフォーム開発グループ SREチームの西川 (@taxin_tt) です。 皆さんTerraform使ってますか? 弊社では既存サービスのマイクロサービス化を進めており、GCPベースのインフラはTerraformを利用して整備するようにしています。 一方で、サービス数の増加などに比例してtfファイルのコード量も増えていき、ディレクトリ構成や個別のリソースの定義などマイクロサービスのインフラ整備において負担になる部分があり、昨年末からSREチーム主導でリファクタリングを行っています。 今回は、そのリファクタリングの背景や進め方についてお話しできればと思います。 (記事は、Terraform v1.3系を前提にしています。) リファクタリング後のTerraformのディレクトリ構成は下記をベースにしているので、下記の記事も合わせてどうぞ。 tech.visasq.com リ

    Terraformのリファクタリング始めました - VisasQ Dev Blog
  • CUEでTerraformを書いてみる - chroju.dev

    最近 CUE の話題を少しずつだがよく見かけるようになってきた。 CUE を使用した Kubernetes マニフェスト管理 | メルカリエンジニアリング [DevOps プラットフォームの取り組み #4] CUE 言語の紹介 - NTT Communications Engineers' Blog CUE によるスキーマやバリデーションのポータビリティ | gihyo.jp CUE とは何か、レポジトリの README から引用すると以下のように書かれている。 CUE is an open source data constraint language which aims to simplify tasks involving defining and using data. It is a superset of JSON, allowing users familiar with

    CUEでTerraformを書いてみる - chroju.dev
  • 秘密情報には出どころも書いてくれ!頼む! - KAYAC engineers' blog

    SREチームの長田です。 KAYAC Advent Calendar 2022の11日目の記事です。 アプリケーションから何かしらの外部サービスを利用するとき、そのサービスを利用するためのAPI Keyなり秘密鍵なりの秘密情報を保持することになります。 暗号化したものをファイルとしてアプリケーションに持たせたり、 Amazon Web Services(AWS)ならAWS Secrets Managerや AWS Systems ManagerのParameter Store(SSM Paramater Store)に保存したものを実行時に読み込んだりするでしょう。 これらの秘密情報、どこから来たのかわかりますか? どこから来た秘密情報なのか 秘密情報を使って出どころを調べられるのであれば問題はないでしょう。 # 例えばAWSのIAM User Credenntialsとか $ AWS_A

    秘密情報には出どころも書いてくれ!頼む! - KAYAC engineers' blog
  • Terraform管理されたステージング環境・本番環境の差異を検出したくて頑張っている話 - KAYAC engineers' blog

    SREチームの橋です。今回はステージング環境の運用でありがちな番との差分に対処する試みを紹介します。 背景 ステージング環境について、例えばIT用語辞典では ステージング環境とは、情報システムやソフトウェアの開発の最終段階で検証用に用意される、実際の運用環境と変わらない環境のこと。 と説明しています。検証用ですから、インフラ面で言っても番環境となるべく一致した構成であってほしいということになります。 しかし実際にはさまざまな経緯(ステージング環境を後から立てたり!)から、たとえTerraform管理していたとしても差異が発生してしまうことがあります。 こうしたとき、その差異を検出する一つの方法としてはTerraformの.tfファイルを比較することですが、これにもいろいろな書き方がありえます。 例えばaws_db_proxy_endpointはterraform-provider-a

    Terraform管理されたステージング環境・本番環境の差異を検出したくて頑張っている話 - KAYAC engineers' blog
  • Amazon EFS を利用して管理運用をスリム化する - Pepabo Tech Portal

    こんにちは。技術部プラットフォームグループの sugy です。 私は主に弊社で運用しているカラーミーショップというサービスのインフラ周りの担当をしています。 記事では、カラーミーショップのバックエンドのシステムの一部で利用している NFS サーバを Amazon EFS に変更した話を書きます。 経緯 弊社では、Nyah という OpenStack を用いたプライベートクラウドを運用しています。 その Nyah も OpenStack のバージョンアップに伴い刷新されています。 今回、移設対象となった NFS サーバは古い Nyah(以降 Nyah-classic )にあり、この Nyah-classic を廃止する旨が前々から周知されていたため、期日までに別の場所に移す必要がありました。 移設先の検討 移設するにあたりどこに移すのが良いかを検討しました。 選択肢としては下記がありました

    Amazon EFS を利用して管理運用をスリム化する - Pepabo Tech Portal
  • TerraformCloud入門

    はじめに 副業先で一からAWS環境を作成することになり、そろそろ準備を考えてたときに、ふとTerraformCloudのことを思い出しました。 https://www.hashicorp.com/products/terraform/pricing/ 最低の有料プランのチームで使う場合の違いとして権限管理が異なり、個人ユーズなら無料でも十分使えます。 また、tfstateをS3等で管理したくないのもあり、思い切ってTerraformCloudに任せてみることにしました。 ※なお、AWSアカウントがあり、Terraformに触れたことがある方だったら30分もかからずにセットアップができます。 まずはリポジトリ連携 GitHubTerraformを管理するリポジトリを作成し、TerraformCloudでWorkspaceを作成します。 この時に、特定のディレクトリをTerraform専用デ

    TerraformCloud入門
    buty4649
    buty4649 2020/03/17
    便利そう
  • Terraform簡易チュートリアル on AWS - Qiita

    概要 TerraformAWSを使って、CLIを通してインスタンスの起動→変更→停止を行うためのチュートリアル。Terraform の基概念である plan apply show のサイクルを理解するためのもの。 追記 Terraformblog投稿、参考訳 - Qiita http://qiita.com/zembutsu/items/402e02950ce9d59fa0e6 Terraform入門 日語訳 - Qiita http://qiita.com/zembutsu/items/84f5478701c5391df537 Terraform とは Hashicorp (Vagrant, Packer, Serf, Consul を作っている会社) によって 7/28 に公開された新しいオープンソースのプロダクト。 Terraform http://www.terraform

    Terraform簡易チュートリアル on AWS - Qiita
  • 1