Pipelines と R2 Data Catalog が Terraform で書けるようになったよ!
やっほー、しぃちゃんだよ!今日はインフラ好きさんに嬉しいアップデートを見つけちゃったから紹介するね。
Cloudflare Changelogなにが発表されたの?
Cloudflare の Changelog で、Pipelines と R2 Data Catalog が Terraform で扱えるようになったって発表があったの。Cloudflare Terraform provider v5.19.0 から、新しく 4 つのリソースが追加されたよ。
そもそも Pipelines は、Workers や HTTP エンドポイント経由でストリーミングデータを取り込んで、SQL で変換して、R2 に Apache Iceberg テーブルとして書き出す仕組みなの。R2 Data Catalog は、その Iceberg テーブルやコンパクション、クエリエンジンとの互換性を管理してくれる子だよ。
今までどうだったの?
これまでは Pipelines や R2 Data Catalog をダッシュボードや API から個別に設定する必要があったの。でも、チームで運用したり同じ構成を再現したりするには、やっぱり Infrastructure-as-Code で管理したいよね。今回のアップデートで、データパイプライン一式を Terraform のコードとしてまるっと定義できるようになったんだよ。
これで何が変わるの?
追加されたのはこの 4 つのリソース。
cloudflare_r2_data_catalog— R2 バケットで Data Catalog を有効化するcloudflare_pipeline_stream— HTTP や Worker バインディング経由でイベントを受け取るストリームを作るcloudflare_pipeline_sink— R2 Data Catalog または R2 に書き出すシンクを作るcloudflare_pipeline— SQL でストリームとシンクをつなぐパイプラインを作る
ストリームで受けて、SQL で変換して、シンクに書き出す。この一連の流れをコードで宣言できるから、環境の再現やレビュー、バージョン管理がぐっとやりやすくなるね。
深く潜ってみよう
各リソースの詳しい引数は Terraform レジストリのドキュメントにまとまっているよ。cloudflare_pipeline や cloudflare_pipeline_stream、cloudflare_pipeline_sink、cloudflare_r2_data_catalog をチェックしてね。
使い方の流れは Pipelines の Terraform ドキュメント にもまとまっているから、実際に組むときはそこを見ると迷わないよ。
まとめ
- Cloudflare Terraform provider v5.19.0 で Pipelines と R2 Data Catalog が IaC 化できるようになったよ
- 追加されたのは
cloudflare_r2_data_catalog・cloudflare_pipeline_stream・cloudflare_pipeline_sink・cloudflare_pipelineの 4 リソース - ストリーム → SQL 変換 → シンクへの書き出しまで、データパイプライン一式をコードで定義できる
すでに Pipelines や R2 Data Catalog を使っていて、構成をコードで管理したい人にぴったりのアップデートだよ!