Terraform
いわゆる「IaC」(Infrastructure as Code)ツールで、ITインフラ管理を専用の人工言語によるコード記述によって行う。Terraformは管理者の書いたコードを読み取って、サーバ環境の整備や変更などの操作を実行する。
Terraformでは「HCL」(HashiCorp Configuration Language)と呼ばれる言語を用いてインフラの構成を記述する。これは宣言型言語となっており、行うべき操作や手順を命令として列挙するのではなく、望ましい最終状態を記述する。その状態を実現するために行うべき操作は、Terraform側で決定・実行する。利用者は実現したい構成を宣言するだけで、元の状態によらず同じ環境を構築することができる。
TerraformはLinuxやWindowsなどのオペレーティングシステム(OS)の環境整備、VMwareやDockerなどの仮想化環境の整備、個別のサーバソフトウェアやミドルウェア、ライブラリ、プログラミング言語処理系などの導入・管理などに対応している。Amazon Web Services、Microsoft Azure、Google Cloud Platformといった主要なクラウドサービスにも対応しており、クラウド環境の構築・管理にも用いることができる。
当初はMPL(Mozilla Public License)に基づいてオープンソースソフトウェアとして公開されてきたが、2023年からは「BSL」(Business Source License)というオープンソースではないライセンスに基づいて提供している。ソースコードの入手や改変、自社システムでの使用などはほぼ従来通りに可能だが、クラウド上でTerraformの機能をサービスとして提供するなど、同社と競合するような商用利用は制限される。