次の方法で共有


.NET Aspire Milvus データベース統合

この記事では、.NET AspireMilvus データベース統合を使用する方法について説明します。 Aspire.Milvus.Client ライブラリは、Milvusserverに接続するための MilvusClient を DI コンテナーに登録します。

前提 条件

  • server API エンドポイントにアクセスするための Milvusserver と接続文字列。

作業の開始

.NET Aspire Milvus データベース統合を始めるには、📦Aspireをインストールします。Milvus データベース clientを利用するアプリケーションのプロジェクト、すなわち clientプロジェクトに、NuGet パッケージをClientMilvusにインストールしてください。

dotnet add package Aspire.Milvus.Client

詳細については、「dotnet パッケージ の追加」または「.NET アプリケーションでのパッケージの依存関係の管理」を参照してください。

使用例

プロジェクトの Program.cs ファイルで、AddMilvusClient 拡張メソッドを呼び出して、依存関係挿入コンテナーを介して使用する MilvusClient を登録します。 このメソッドは、接続名パラメーターを受け取ります。

builder.AddMilvusClient("milvus");

アプリ ホストの使用状況

アプリホストで Milvus リソースをモデル化するには、📦AspireホスティングMilvus NuGet パッケージを アプリホスト プロジェクトにインストールします。

dotnet add package Aspire.Hosting.Milvus

AppHostProgram.cs ファイルで、Milvusserver を登録し、次の方法で接続を使用します。

var milvus = builder.AddMilvus("milvus");

var myService = builder.AddProject<Projects.MyService>()
                       .WithReference(milvus);

WithReference メソッドは、milvusという名前の MyService プロジェクトで接続を構成します。 MyServiceProgram.cs ファイルでは、次を使用して Milvus 接続を使用できます。

builder.AddMilvusClient("milvus");

Milvus では、構成ベース (環境変数 COMMON_SECURITY_DEFAULTROOTPASSWORD) の既定のパスワードがサポートされます。 既定のユーザーは root、既定のパスワードは Milvusです。 コンテナーの既定のパスワードを変更するには、AddMilvus ホスティング API を呼び出すときに apiKey パラメーターを渡します。

var apiKey = builder.AddParameter("apiKey");

var milvus = builder.AddMilvus("milvus", apiKey);

var myService = builder.AddProject<Projects.MyService>()
                       .WithReference(milvus);

上記のコードは、AddMilvus API に渡すパラメーターを取得し、Milvus コンテナーの COMMON_SECURITY_DEFAULTROOTPASSWORD 環境変数に内部的にパラメーターを割り当てます。 apiKey パラメーターは、通常、ユーザー シークレットとして指定されます。

{
  "Parameters": {
    "apiKey": "Non-default P@ssw0rd"
  }
}

詳細については、「外部パラメーターを参照してください。

設定

.NET Aspire Milvus Client 統合には、プロジェクトの要件と規則に基づいて server 接続を構成するための複数のオプションが用意されています。

ヒント

既定の使用は root で、既定のパスワードは Milvusです。 現在、Milvus では、起動時のスーパーユーザー パスワードの変更はサポートされていません。 clientで手動で変更する必要があります。

接続文字列を使用する

ConnectionStrings 構成セクションの接続文字列を使用する場合は、builder.AddMilvusClient()を呼び出すときに接続文字列の名前を指定できます。

builder.AddMilvusClient("milvus");

接続文字列は、ConnectionStrings 構成セクションから取得されます。

{
  "ConnectionStrings": {
    "milvus": "Endpoint=http://localhost:19530/;Key=root:123456!@#$%"
  }
}

既定では、MilvusClient は gRPC API エンドポイントを使用します。

構成プロバイダーを使用する

統合では、Microsoft.Extensions.Configurationがサポートされます。 Aspire:Milvus:Client キーを使用して、構成から MilvusSettings を読み込みます。 次の例 appsettings について考えてみましょう。いくつかのオプションを構成するjson:

{
  "Aspire": {
    "Milvus": {
      "Client": {
        "Key": "root:123456!@#$%"
      }
    }
  }
}

インライン デリゲートを使用する

また、Action<MilvusSettings> configureSettings デリゲートを渡して、コードから API キーを設定するなど、一部またはすべてのオプションをインラインで設定することもできます。

builder.AddMilvusClient(
    "milvus",
    settings => settings.Key = "root:12345!@#$%");

健康診断

既定では、.NET.NET Aspire 統合により、すべてのサービス 正常性チェック が有効になります。 詳細については、.NET.NET Aspire 統合の概要を参照してください。

.NET Aspire Milvus データベース統合では、構成された client を使用して HealthAsyncを実行します。 結果 が正常なの場合、正常性チェックは正常と見なされます。それ以外の場合は異常です。 同様に、例外がある場合、健康診断が異常と判断され、エラーが健康診断の失敗を通じて伝達されます。

可観測性とテレメトリ

統合により、ログ記録、トレース、メトリックの構成が自動的に設定されます。これは、監視の柱 とも呼ばれます。 統合の可観測性とテレメトリの詳細については、統合の概要 参照してください。 バッキング サービスによっては、一部の統合でこれらの機能の一部のみがサポートされる場合があります。 たとえば、一部の統合ではログ記録とトレースがサポートされますが、メトリックはサポートされません。 テレメトリ機能は、「構成」セクションに記載されている手法を使用して無効にすることもできます。

伐採

.NET Aspire Milvus データベース統合では、標準の .NET ログが使用され、次のカテゴリのログ エントリが表示されます。

  • Milvus.Client

関連項目