HashiCorp、「Terraform」に継続的バリデーションやノーコードプロビジョニング–HashiConf Global 2022
今回は「HashiCorp、「Terraform」に継続的バリデーションやノーコードプロビジョニング–HashiConf Global 2022」についてご紹介します。
関連ワード (ソフトウェア等) についても参考にしながら、ぜひ本記事について議論していってくださいね。
本記事は、ZDNet Japan様で掲載されている内容を参考にしておりますので、より詳しく内容を知りたい方は、ページ下の元記事リンクより参照ください。
クラウドインフラ管理などのオープンソースソフトウェア(OSS)群を開発するHashiCorpは米国時間10月6日、「Terraform」などの機能アップデートを同社カンファレンス「HashiConf Global 2022」で明らかにした。
同カンファレンス2日目の基調講演に登壇した共同創業者 兼 最高技術責任者(CTO)のArmon Dadgar氏は、1日目の基調講演でセキュリティとネットワーキングのレイヤーについて話したが、「今日はインフラとアプリケーションのレイヤーについて話したいと思う」と述べた。
一つの組織で見た場合、コアインフラストラクチャーの運用やアプリケーションチームが活用する共有サービスの提供に責任を負うクラウドチームやSREチームと、自分たちが開発するアプリケーションに集中するアプリケーションチームや開発チームがいる。インフラストラクチャーと言うとプラットフォームチームが所有するコアインフラストラクチャー領域の話が多くなり、アプリケーションチームが関心を持つ事柄から離れがちだとDadgar氏。
インフラストラクチャーのレベルから見てみると、どの企業も3つのコアフェーズに分かれるという。1つ目は、Infrastructure as Codeの実践を確立すること。次に、それを規模拡大時どう標準化するか。最後に、大規模な運用時にどう運用・最適化するかということだ。同社は、この3つについてTerraformで何年も注力してきたとDadgar氏は説明する。
「Terraform 0.1」は約8年前の2014年にリリースされたが、現在では、年間何億回もダウンロードされるようになったという。標準化、再利用性、再現可能なブループリントの作成についてどう考えるかが話題となり始めると、2017年に「Terraform Registry」を導入。その問題を解決するために、今日では1万以上のモジュールがあり、その幾つかは何千万回もダウンロードされているという。
拡張性については「Provider Program」があり、Terraformで管理したい異なるシステムにプラグインできるようにする。現在、Terraformのエコシステムには2400以上のプロバイダーがある。
規模の大きな運用に関しては、「Terraform Enterprise」を導入。今日、同プラットフォームには470社以上の企業顧客がいる。Policy as Codeについては、「Sentinel」の導入以来、少なくとも同社プラットフォーム上では、「Terraform Cloud」の一部として350万回のポリシーチェックが実行されたという。
そのTerraform Cloudは、Terraform Enterpriseの経験をより幅広いユーザーベースに提供したいとの考えから導入。同プラットフォームは、25万人以上のユーザーを持つまでに成長している。
2021年には「Run Tasks」を、2022年には「Drift Detection」(ドリフト検出)を導入した。Drift Detectionは、ドリフトを継続的にチェックし、ユーザーに警告する。今夏にベータ化したが、2000以上の組織が利用しているという。
2022年に向けての話として、Dadgar氏は、Terraformの新機能について話を進めた。
最新バージョンである「Terraform 1.3」が一般公開されたが、その一部として導入されている「Moved Block」は、大きくなったTerraformのコードベースをどうリファクタリングするかを考えるためのものとDadgar氏。
コードベースやプロジェクトが十分に成功し、次の成熟段階まで成長したのであれば、リファクタリングするのは理にかなっているとDadgar氏は述べる。「では、どのようにしてその旅をサポートし、Terraformのコア言語にそれらの改良を組み込めばよいか。そのために、私たちはMoved Blockのユーザビリティーの改善に焦点を当てている」(同氏)
Drift Detectionは、ワークスペースを管理下に置いたら、バックグラウンドでドリフトを継続的にスキャンする。セキュリティグループのルールが変更されたといったことが発生すると、メールや「Slack」などで通知する。
「Continuous Validation」(継続的バリデーション)は、インフラストラクチャー管理の次のステップで、インフラストラクチャーのチェック対象を構成のドリフトからさらに拡大する。長期的な可視性を実現し、インフラストラクチャーの健全性をチェックできる。
ユーザーは、Terraformの構成やモジュールに事前や事後の条件を記述してアサーションを追加することが可能。Terraformを通じてアサーションを設定した構成やモジュールが合格しているかどうかを継続的にチェックできる。問題がある場合はTerraformからユーザーに通知が送信される。
Continuous Validationはパブリックベータとして提供され、Terraform Cloudで利用可能。Terraform Enterpriseでの利用は今後の予定となっている。