本文へスキップ

HCLとは?

えいちしーえる

HCLとは、HashiCorp Configuration Languageの略で、インフラ構成をコードで記述するためのHashiCorp製の設定記述言語です。

HCL(HashiCorp Configuration Language)は、インフラトラクチャーをコードとして管理するツール群で知られるHashiCorp社が開発した設定記述言語です。主にTerraform・Vault・Consul・NomadといったHashiCorp製品の設定ファイル(.tf、.hcl拡張子)で使用されます。

HCLはJSONやYAMLと同様に構造化データを表現できますが、人間が読み書きしやすいように設計されており、コメントの記述や変数・関数の使用が可能です。また、JSONとの相互変換も可能で、プログラムからも扱いやすい設計になっています。

HCLの主な特徴は以下のとおりです。

  • ブロック構造:リソース・変数・出力などを「ブロック」単位で整理して記述できる
  • 変数と式:変数定義・参照・組み込み関数を使った動的な設定が書ける
  • コメント:# や // による行コメントが使える
  • 型システム:文字列・数値・ブール値・リスト・マップなどの型を持つ

TerraformによるクラウドインフラのIaC(Infrastructure as Code)が普及したことでHCLの利用者は急増しました。AWS・GCP・Azureなど主要クラウドプロバイダーのリソースをHCLで定義し、バージョン管理・レビュー・自動適用できるため、DevOpsや開発チームに広く使われています。

使い方・例文

TerraformでAWSのEC2インスタンスを作成するとき、リソースの種類・サイズ・リージョンなどをHCLで記述した.tfファイルに定義します。terraform applyコマンドでその設定がクラウドに反映されます。

この用語をシェア

𝕏 でポスト LINE

最終更新:

関連用語