SRE Kaigi 2025
セッション(30分)

Terraform Plugin Framework Adoption

nasa9084 nasa9084 nasa9084
1

■ 発表カテゴリ
・Tech: SREを支える具体的な技術や手法

■ 発表概要(400字程度)

Terraformを使ったことはありますか?Terraform Providerを実装したことは?そのときにライブラリは何を使いましたか?
約2年前、Terraform Plugin Frameworkという、旧来のTerraform Plugin SDKv2から大きく進化したSDKがGAを迎えました。
一方、Terraform Plugin SDKv2は未だメンテナンス自体はされており、引き続き使用することはできます。
本発表では、Terraform Plugin SDKv2と比べてTerraform Plugin Frameworkのどういった点が嬉しいのか、既に存在するPlugin SDKv2ベースのProviderはどのようにしてPlugin Frameworkに移行すれば良いのか、あるいは移行の際に気を付けるべきことを共有します。

■ 発表の詳細(1000字程度)

  • Terraformの構造
    • Terraform Pluginとはなにか
  • Terraform Pluginを実装する方法
    • Terraform Plugin SDKv2
    • Terraform Plugin Framework
  • Terraform Plugin SDKv2とTerraform Plugin Frameworkの比較
    • 何が違うのか
    • 何が嬉しいのか
  • Terraform Plugin SDKv2からTerraform Plugin Frameworkへの移行
    • どのように移行すれば良いのか
    • 移行する際の注意点

■ 対象聴衆とその人たちが得られるもの

  • Terraform Pluginを実装することに興味のある人
    • どのようにTerraform Pluginを実装することができるか
  • Terraform Plugin SDKv2を使ってTerraform Pluginを実装している人
    • Terraform Plugin SDKv2からTerraform Plugin Frameworkへの移行方法

■ なぜこのトピックについて話したいのか(モチベーション)

快適・安全に開発を進められるように基盤を整えたり、ミドルウェアや使用しているライブラリを適切に更新していくこともSREの典型的な仕事の一つであると思っています。
多くの企業ではTerraform Pluginを開発する必要は無く、オープンソースのProviderを使用することで十分であるとは思いますが、Terraform Pluginの実装方法について学ぶことで、自前で実装をできるだけではなく、オープンソースのProviderに問題があったり、新機能を追加したい場合にコントリビューションしやすくなります。
SREが使用する技術の多くはオープンソースコミュニティにより支えられており、コントリビューターを増やすことも重要であると考えています。