Gemcook Tech Blog
🗞️

週刊Cloudflare - 2024/10/20週

2024/10/31に公開

こんにちは、あさひです 🙋‍♂️
Workflows が使えるようになったり、Vectorize の制限が緩和されたり、押さえておきたい更新が多そうですね。早速みていきましょう 🙌

この記事の主旨

この記事では、Cloudflare のサービスにどんな変更があったかをざっくりと理解してもらい、サービスに興味を持ってもらうことを目的としています。そのため、変更点を網羅することを優先します。

2024/10/20 ~ 2024/10/26 の変更

Workflows

Workflows とは?

Cloudflare Workers 上でワークフローを使用して耐久性のあるマルチステップアプリケーションを構築します。

AWS でいうところの StepFunctions に相当するサービスですね 🤔

Workflows がパブリックベータ版として公開されました!🎊
Cloudflare Workers を使用した多段階の信頼性のあるワークフローを構築できる Workflows がパブリックベータになりました!エラー処理、リトライ、自動状態管理が可能で、秒単位から日単位の長時間実行にも対応します。R2 のデータ処理や、Workers AI パイプラインの自動化、ユーザー登録フロー管理などに利用できるみたいです。

Workers

外部サーバーとの WebSocket 接続における Pong メッセージのエンコーディングが修正されました。これにより、Worker が外部サーバーに WebSocket 接続を行う際、サーバーが Ping への適切な応答がないとして接続を早期に閉じてしまう問題が解消されました。クライアント側の接続には影響はありませんでした。

Vectorize

Vectorize の制限が緩和されました。

  • Workers 有料プランの開発者は、アカウントごとに最大 50,000 のインデックスを作成可能(従来は 100)。
  • 各インデックスに対して最大 50,000 の名前空間を作成可能(従来は 100)。既存のインデックスにも適用されます。

Wrangler

3.83.0

マイナーアップデート

  • R2 のイベント通知ルール設定にオプションで説明を追加できるようになりました。

パッチアップデート

  • Namespace のあるスクリプトに対して Durable Object のマイグレーションが適切に適用されるように修正。
  • wrangler triggerコマンドが最新の workflows のエンドポイントに準拠するよう変更。
    • オプションの--idパラメータでインスタンス ID をカスタマイズできるようになりました。
  • Workers API のterminate エンドポイントが新しい仕様に従うように変更。
  • KV の一括アップロードのバケットサイズを5000から1000に縮小。
  • Workflows のデプロイ時にオープンベータであることをユーザーに警告するメッセージを追加。
    • wrangler deploywrangler versions deployなど、Workflows を含む構成がある場合に通知が表示されます。
  • React を開発フロー以外から削除し、logger.log()spinner()といった軽量な代替手段に置き換えるリファクタリング。
  • wrangler dev --remote --show-interactive-dev-session=falseで、以前にホットキーが有効化されていた場合のみ、アカウント選択後にホットキーが再度有効になるようになりました。
  • wrangler devに Workflows の暫定サポートを追加。
    • workflows-sharedパッケージでローカルでのワークフローエンジンのセットアップとテストが可能になりました。
  • trigger workflow API を送信する際の params のシリアライズを修正。
  • 依存関係の更新。
    • miniflare@3.20241022.0
    • @cloudflare/workers-shared@0.7.0

3.82.0

マイナーアップデート

  • wrangler の R2 イベント通知に管轄(jurisdiction)オプションが追加。
    • R2 通知の対象地域を指定できるようになりました。

パッチアップデート

  • Cloudflare Workers のすべてのbinding typesに対して重複バインディングの検証が追加。
    • 同一名のbindingが存在する際のエラーが改善されました。
  • unenv依存関係を最新バージョンに更新。
  • wrangler.tomlworkflowsセクションを追加し、Workflowエントリポイントのバインディングを可能にする機能を追加。
    • wrangler deploywrangler triggersコマンドに変更を加えてワークフローのデプロイをサポート。
  • 開発レジストリの接続ステータスをローカル開発時にのみ表示するよう変更。
  • wrangler secretコマンドで存在しない Worker 名を指定した際に新しい Worker が自動で作成される代わりに、ユーザーに確認プロンプトが表示されるよう変更。
  • wrangler workflowsコマンドを導入し、Cloudflare Workers のワークフロー管理を可能になりました。
    • 具体的にはワークフローの作成、削除、トリガー、および管理を wrangler CLI から簡単に実行できるようになっています。
  • wrangler pages dev --proxyでのエラーログが改善。
    • Node.js 17以降でポート指定時に IPv6 でのプロキシ構成が推奨される旨の警告が追加。
  • ローカルデータベースでのd1 execute実行時に成功メッセージを表示するように改善。
  • Workers Pipelines で HTTP 認証オプションがサポートされるようになり、安全な HTTP 接続を介した外部データソースへの取り込みが可能になりました。
  • wrangler の配列以外のオプションに複数の引数を渡せないように修正。
  • Workers Pipelines 用サードパーティ API シェイプのマイナーチェンジ。
  • ローカルデータをバインディングで使用する際に(local)インジケーターを表示するように修正。
    • これにより、wrangler dev でローカル環境が明確に区別。
  • 依存関係の更新。
    • miniflare@3.20241018.0

Pages

Pages の V2 ビルドシステムで、Bun のバージョンが 1.0.1 から 1.1.33 に更新されました。以前の Bun バージョンを使用したい場合は、デフォルトバージョンを上書きして設定できます。

Rules

URL リライトのユーザーインターフェースが簡素化され、ワイルドカードのサポートにより設定が容易になりました。これにより、複雑な関数を使わずに URL リライトのルールを作成できます。新しい UI は、Cloudflare ダッシュボードのRules > Transform Rules > Rewrite URLからアクセスできます。

WAF

2024 年 10 月 21 日に 以下の脆弱性についての対策が追加されました。

  • Adobe ColdFusion における認証バイパスの脆弱性。この脆弱性により、攻撃者が認証を回避して不正アクセスできる可能性があります。
  • Palo Alto Networks の製品に関連する認証バイパスの脆弱性で、攻撃者が不正アクセスを行う可能性があります。
  • SolarWinds 製品で発生する認証バイパスの脆弱性。攻撃者が認証を迂回してシステムにアクセスできるリスクがあります。

Zero Trust WARP Client

WARP client for macOS (version 2024.10.279.1)

主な更新内容:

  • MASQUE 使用中のデバイスがネットワークインターフェイスを切り替える際に、TCP/UDP 接続がドロップする問題を修正。
  • Cloudflare ルート証明書(またはカスタム証明書)が信頼ストアにない場合に確実にインストールされるよう修正。

既知の問題:

  • macOS 15 (Sequoia)において、一部のユーザーで一時的なネットワーク問題が発生することがあります。すべての WARP バージョンで発生する可能性があり、調査中です。

WARP client for Windows (version 2024.10.279.1)

主な更新内容:

  • MASQUE 使用時にデバイスがネットワークインターフェイスを変更すると、TCP/UDP 接続がドロップする問題を修正。
  • Cloudflare ルート証明書(またはカスタム証明書)が信頼ストアにない場合、確実にインストールされるように修正。

既知の問題:

  • 以下の条件で DNS 解決に問題が発生する可能性があります。
    • WARP が DNS フィルタリングなしの Secure Web Gateway(トンネル専用)モードになっている。
    • プライマリネットワークアダプタにカスタム DNS サーバーアドレスが設定されている。
    • WARP の接続中にプライマリ・ネットワーク・アダプタのカスタム DNS サーバ・アドレスが変更された。
  • 回避策として、WARP クライアントの接続を一度オフにしてから再接続してください。

筆者の感想

今回 Cloudflare で Workflows がパブリックベータになりました。AWS で言うところの Step Functions という位置付けと理解しています。
ドキュメントを見た限りでは、やや規模の大きな Workers のような印象を受けました。この辺りはまた実際に触ってみて記事にしようと思います。

https://blog.cloudflare.com/building-workflows-durable-execution-on-workers/

Gemcook Tech Blog
Gemcook Tech Blog

Discussion