Docker ComposeまたはHelmでオブジェクトストレージを設定する
MilvusはデフォルトでオブジェクトストレージにMinIOを使用しますが、ログファイルやインデックスファイルの永続オブジェクトストレージとしてAmazon Simple Storage Service(S3)の使用もサポートしています。このトピックでは、Milvus用にS3を設定する方法について説明します。MinIOで十分であれば、このトピックはスキップできます。
S3はDocker ComposeまたはK8sで設定できます。
Docker ComposeでS3を設定する
1.S3の構成
MinIOはS3と互換性があります。Docker ComposeでS3を設定するには、milvus/configパスのmilvus.yaml
ファイルのminio
セクションに値を指定します。
minio:
address: <your_s3_endpoint>
port: <your_s3_port>
accessKeyID: <your_s3_access_key_id>
secretAccessKey: <your_s3_secret_access_key>
useSSL: <true/false>
bucketName: "<your_bucket_name>"
詳細はMinIO/S3設定を参照してください。
2.docker-compose.yaml を洗練させる。
また、docker-compose.yaml
にある milvus サービス用の環境変数MINIO_ADDRESS
も削除します。デフォルトでは、milvusは外部のS3の代わりにローカルのminioを使用する。
3.Milvusの実行
以下のコマンドを実行して、S3の設定を使用するMilvusを起動する。
docker compose up
K8s上のS3の構成
K8s上のMilvusクラスタでは、Milvusの起動と同じコマンドでS3を設定することができます。または、Milvusを起動する前に、milvus-helmリポジトリの/charts/milvusパスにあるvalues.yml
ファイルを使用してS3を設定することもできます。
次の表は、YAMLファイルでS3を設定するためのキーの一覧です。
キー | 説明 | 値 |
---|---|---|
minio.enabled | MinIOを有効または無効にする。 | true /false |
externalS3.enabled | S3を有効または無効にする。 | true /false |
externalS3.host | S3にアクセスするエンドポイント。 | |
externalS3.port | S3にアクセスするポート。 | |
externalS3.rootPath | S3ストレージのルートパス。 | デフォルトはemtpy文字列。 |
externalS3.accessKey | S3のアクセスキーID | |
externalS3.secretKey | S3のシークレットアクセスキー | |
externalS3.bucketName | S3バケットの名前。 | |
externalS3.useSSL | 接続時にSSLを使用するかどうか。 | デフォルトはfalse |
YAMLファイルを使う
values.yaml
ファイルでminio
セクションを設定する。
minio:
enabled: false
values.yaml
ファイルの値を使用してexternalS3
セクションを設定する。
externalS3:
enabled: true
host: "<your_s3_endpoint>"
port: "<your_s3_port>"
accessKey: "<your_s3_access_key_id>"
secretKey: "<your_s3_secret_key>"
useSSL: <true/false>
bucketName: "<your_bucket_name>"
- 前述のセクションを設定し、
values.yaml
ファイルを保存した後、以下のコマンドを実行し、S3 設定を使用する Milvus をインストールします。
helm install <your_release_name> milvus/milvus -f values.yaml
コマンドの使用
Milvusをインストールし、S3を設定するには、以下のコマンドを実行します。
helm install <your_release_name> milvus/milvus --set cluster.enabled=true --set minio.enabled=false --set externalS3.enabled=true --set externalS3.host=<your_s3_endpoint> --set externalS3.port=<your_s3_port> --set externalS3.accessKey=<your_s3_access_key_id> --set externalS3.secretKey=<your_s3_secret_key> --set externalS3.bucketName=<your_bucket_name>
次のステップ
Docker ComposeまたはHelmを使って他のMilvusの依存関係を設定する方法を学びます: