Terraform Provider
Zilliz はフルマネージドの Milvus サービスを提供しており、セキュリティを考慮しながらベクトル検索アプリケーションのデプロイとスケーリングを簡素化し、Zilliz が提供するクラウドインフラストラクチャとユーザー自身のインフラストラクチャの両方を含む複雑なインフラストラクチャの構築と保守を不要にします。
Zilliz Cloud Terraform Provider はオープンソースの Infrastructure as Code (IaC) ソリューションであり、Zilliz Cloud リソースを動的に構築、変更、バージョン管理できるようにします。これを使用する前に、適切な権限を持つ Zilliz Cloud API key などの適切な認証情報で provider を設定する必要があります。
Authentication
Terraform を使用してリソースのデプロイを開始する前に、Terraform を Zilliz Cloud プラットフォームで認証する必要があります。この Terraform provider を使用して cloud-plane 操作を行う前に、適切な権限を持つ Zilliz Cloud API key を使用して認証を完了する必要があります。Zilliz Cloud API key を作成するには、以下の手順に従ってください。
Zilliz Cloud コンソールにサインインします。
上部ナビゲーションバーの右側にある API Keys をクリックします。
API Keys ページの右上にある + API Key をクリックします。
表示される Create API Key ダイアログボックスで、API key 名を入力してアクセス権限を設定し、Create をクリックして API key を生成します。
API key の管理に関する詳細は、API Keys を参照してください。
コレクション操作、検索、クエリなどのデータプレーン操作を実行するには、対象クラスターのユーザー名とパスワードをコロンで区切った文字列を、username:password 形式のクラスターアクセストークンとして使用する必要があります。
以下に示すリソースのうち、クラスター、ユーザーとロール、および BYOC projects リソースには Zilliz Cloud API を使用します。また、データベース、コレクションとエイリアス、パーティション、およびインデックスリソースにはクラスターアクセストークンを使用します。
Manageable Resources
現在、この provider を使用して以下の種類のリソースを管理できます。
クラスター
Zilliz Cloud クラスター は、Zilliz Cloud 上で稼働する Milvus インスタンスです。Zilliz Cloud では、クラスターを Free、Serverless、Dedicated (Standard)、Dedicated (Enterprise)、Bring Your Own Cloud (BYOC) などのさまざまな提供形態に分類しています。これらの提供形態の詳細については、Detailed Plan Comparison を参照してください。
Zilliz Cloud Terraform Provider を使用して、特定の提供形態のクラスターを作成および管理できます。詳細については、以下のチュートリアルを参照してください。
Terraform Provider を BYOC で使用する場合、サポートされるのは Dedicated と BYOC のクラスタータイプのみです。BYOC プロジェクトでは Free および Serverless クラスターの作成はできません。
データベース
Zilliz Cloud では、データベース はデータを整理および管理するための論理単位として機能します。これは Dedicated クラスターでのみ使用できます。クラスターの作成時に、デフォルトのデータベースが作成されます。Zilliz Cloud Terraform Provider を使用してデータベースを管理する方法の詳細については、以下のリソースおよびデータソースを参照してください。
コレクションとエイリアス
コレクション は、固定された列と可変の行を持つ二次元テーブルです。各列はフィールドを表し、各行はエンティティを表します。Zilliz Cloud Terraform Provider を使用してコレクションを管理する方法の詳細については、以下のリソースおよびデータソースを参照してください。
Partition
パーティションはコレクションのサブセットです。各パーティションは親コレクションと同じデータ構造を共有しますが、コレクション内のデータの一部のみを含みます。このページは、パーティションを管理する方法の理解に役立ちます。Zilliz Cloud Terraform Provider を使用してパーティションを管理する方法の詳細については、以下のリソースおよびデータソースを参照してください。
インデックス
Zilliz Cloud は、効率的な類似性検索を実現するために AUTOINDEX を採用しています。また、ベクトル埋め込み間の距離を測定するための メトリックタイプ として、Cosine Similarity(COSINE)、Euclidean Distance(L2)、Inner Product(IP)、JACCARD、HAMMING を提供しています。AUTOINDEX はスカラーフィールドにも適用され、メタデータフィルタリングを高速化します。Zilliz Cloud Terraform Provider を使用してインデックスを管理する方法の詳細については、以下のリソースおよびデータソースを参照してください。
Users & Roles
Zilliz Cloud では、クラスターユーザーを作成し、それらにクラスターロールを割り当てて権限を定義することで、データセキュリティを実現できます。ユーザーは適切に設定された認証情報を持つデータベースユーザーを表し、一連のロールが割り当てられます。一方、ロールは一連の権限をカプセル化するエンティティであり、ユーザーに割り当てることができます。このセクションのリソースおよびデータソースを使用して、ロールベースのアクセス制御(RBAC)を実装できます。詳細については、以下のリソースおよびデータソースを参照してください。
BYOC projects
Zilliz Cloud は、組織が Zilliz Cloud のインフラストラクチャに依存するのではなく、自身のクラウドアカウントでアプリケーションとデータをホストできる BYOC ソリューションも提供しています。BYOC ソリューションは、クロスアカウント権限を通じて Zilliz Cloud がお客様に代わってインフラストラクチャリソースを管理することを許可するかどうかに応じて、BYOC または BYOC-I モードのいずれかでデプロイできます。詳細については、BYOC Overview を参照してください。
Zilliz Cloud Terraform Provider を使用して、BYOC または BYOC-I project を作成し、VPC 内に関連する data plane リソースをデプロイできます。詳細については、以下のチュートリアルを参照してください。