メインコンテンツまでスキップ
バージョン: 4.x

SeaweedFS

このドキュメントでは、SeaweedFSにアクセスするために必要なパラメータについて説明します。これらは以下のシナリオに適用されます:

  • Catalogプロパティ
  • Table Valued Functionプロパティ
  • Broker Loadプロパティ
  • Exportプロパティ
  • Outfileプロパティ

DorisはS3 Clientを使用してS3互換プロトコル経由でSeaweedFSにアクセスします。 このページではSeaweedFS S3(通常の)バケットについて説明します。SeaweedFS S3 Table Bucket(REST Catalog + S3が同一のweedプロセスから提供される)に保存されたIcebergテーブルについては、Integration with SeaweedFSを参照してください。

weed miniでのクイックスタート

weed miniは単一プロセスでSeaweedFS S3エンドポイントを起動し、環境変数から認証情報と事前作成されたバケットを設定します:

AWS_ACCESS_KEY_ID=admin \
AWS_SECRET_ACCESS_KEY=secret \
S3_BUCKET=my-bucket \
weed mini -dir=/data

S3エンドポイントはhttp://localhost:8333 でアクセス可能になり、my-bucketが既に作成され、admin / secretが有効な認証情報として使用できます。Docker、カスタムポート、複数バケット、リバースプロキシオプションについては、Quick Start with weed miniを参照してください。

パラメータ概要

SeaweedFSはS3互換プロトコル経由でアクセスされるため、AWS S3と同じs3.*プロパティを使用します。

プロパティ名説明デフォルト必須
s3.endpointSeaweedFS S3ゲートウェイエンドポイント、例:http://seaweedfs.example.com:8333Yes
s3.access_keySeaweedFS S3 IAM設定で構成されたアクセスキーYes
s3.secret_keys3.access_keyとペアになるシークレットキーYes
s3.regionリージョン。SeaweedFSは値を検証しませんが、AWS S3 SDKでは必要です(例:us-east-1Yes
s3.use_path_styletrueに設定。SeaweedFSはhttp://<endpoint>/<bucket>/<key>配下でオブジェクトを提供しますFALSENo
s3.connection.maximumSeaweedFS S3ゲートウェイへの最大接続数50No
s3.connection.request.timeoutリクエストタイムアウト(ミリ秒)3000No
s3.connection.timeout接続確立タイムアウト(ミリ秒)1000No

path-styleアクセスの使用

SeaweedFSはpath-styleアドレス指定(http://<endpoint>/<bucket>/<key>)を使用し、バケット単位のDNSサブドメインをプロビジョニングしないため、すべての接続でs3.use_path_style = trueを設定してください。

設定例

"s3.access_key" = "your-access-key",
"s3.secret_key" = "your-secret-key",
"s3.endpoint" = "http://seaweedfs.example.com:8333",
"s3.region" = "us-east-1",
"s3.use_path_style" = "true"

使用推奨事項

  • s3.use_path_style = trueを設定してください。SeaweedFSはバケットごとのDNSサブドメインを使用しません。
  • s3.regionはAWS S3 SDKで必要ですが、SeaweedFSでは無視されます — 空でない任意の値が機能します。
  • HTTPSの場合は、リバースプロキシでTLSを終端し、S3署名検証が機能するように-s3.externalUrl=https://<proxy>weedを開始してください。
  • SeaweedFS S3 Table BucketsでのIcebergテーブルについては、Integration with SeaweedFSを参照してください。