milvus-logo
LFAI
フロントページへ
  • ツール

CDCサーバのデプロイ

このガイドでは、Milvus-CDCサーバをデプロイするための手順を説明します。

前提条件

Milvus-CDCサーバをデプロイする前に、以下の条件が満たされていることを確認してください:

  • Milvusインスタンス:Milvusインスタンス:ソースMilvusと少なくとも1つのターゲットMilvusの両方がデプロイされ、運用可能であること。

    • ソースとターゲットのMilvusのバージョンは2.3.2以上、できれば2.4.x以上であること。

    • ターゲットMilvusのcommon.ttMsgEnabled 設定をfalse に設定する。

    • ソースMilvusとターゲットMilvusはコンフリクトを防ぐため、メタとメッセージストレージを別々に設定する。例えば、複数のMilvusインスタンスで同じetcdおよびrootPath構成、同じPulsarサービスおよびchanNamePrefix

  • メタストア:Milvus-CDCメタストア用に、etcdまたはMySQLデータベースを用意してください。

ステップ

Milvus-CDC設定ファイルを入手する。

Milvus-CDC リポジトリをクローンし、milvus-cdc/server/configs ディレクトリに移動して、cdc.yaml 設定ファイルにアクセスします。

git clone https://github.com/zilliztech/milvus-cdc.git

cd milvus-cdc/server/configs

設定ファイルの編集

milvus-cdc/server/configs ディレクトリで、cdc.yaml ファイルを修正し、Milvus-CDC メタストアとソース Milvus の接続詳細に関連する設定をカスタマイズします。

  • メタストア設定

    • metaStoreConfig.storeType:Milvus-CDCのメタストアのタイプ。設定可能な値はetcd またはmysql です。

    • metaStoreConfig.etcdEndpoints:Milvus-CDCのetcdに接続するためのアドレス。storeTypeetcd に設定されている場合は必須です。

    • metaStoreConfig.mysqlSourceUrl:Milvus-CDCサーバのMySQLデータベースの接続アドレス。storeTypemysql に設定されている場合は必須。

    • metaStoreConfig.rootPath:Milvus-CDCメタストアのルートパス。この設定により、複数のCDCサービスが同じetcdまたはMySQLインスタンスを利用しながら、異なるルートパスによる分離を実現するマルチテナントが可能になります。

    設定例

    # cdc meta data config
    metaStoreConfig:
      # the metastore type, available value: etcd, mysql
      storeType: etcd
      # etcd address
      etcdEndpoints:
        - localhost:2379
      # mysql connection address
      # mysqlSourceUrl: root:root@tcp(127.0.0.1:3306)/milvus-cdc?charset=utf8
      # meta data prefix, if multiple cdc services use the same store service, you can set different rootPaths to achieve multi-tenancy
      rootPath: cdc
    
  • ソースMilvusコンフィギュレーション:

    Milvus-CDCサーバとソースMilvus間の接続を確立するために、etcdとメッセージストレージを含むソースMilvusの接続詳細を指定します。

    • sourceConfig.etcdAddress:ソースMilvusのetcdに接続するためのアドレス。詳細はetcd 関連設定を参照。

    • sourceConfig.etcdRootPath:ソースMilvusがetcdにデータを格納するキーのルート接頭辞。値はMilvusインスタンスのデプロイ方法によって異なる場合があります:

      • HelmまたはDocker Compose: デフォルトはby-dev です。

      • Operator:デフォルトは<release_name>

    • replicateChan: milvusレプリケートチャネル名。milvus.yamlファイルの{msgChannel.chanNamePrefix.cluster}/{msgChannel.chanNamePrefix.replicateMsg}

    • sourceConfig.pulsar:ソースMilvusのパルサー・コンフィギュレーション。ソースMilvusがメッセージ・ストレージにKafkaを使用している場合は、Pulsar関連の構成をすべて削除してください。詳細はPulsar関連コンフィギュレーションを参照。

    • sourceConfig.kafka.address:ソースMilvusのKafkaアドレス。ソースMilvusがメッセージ保存にKafkaを使用する場合、このコンフィギュレーションのコメントを外します。

設定例:

# milvus-source config, these settings are basically the same as the corresponding configuration of milvus.yaml in milvus source.
sourceConfig:
  # etcd config
  etcdAddress:
    - localhost:2379
  etcdRootPath: by-dev
  etcdMetaSubPath: meta
  # default partition name
  defaultPartitionName: _default
  # read buffer length, mainly used for buffering if writing data to milvus-target is slow.
  readChanLen: 10
  replicateChan: by-dev-replicate-msg
  # milvus-source mq config, which is pulsar or kafka
  pulsar:
    address: pulsar://localhost:6650
    webAddress: localhost:80
    maxMessageSize: 5242880
    tenant: public
    namespace: default
#    authPlugin: org.apache.pulsar.client.impl.auth.AuthenticationToken
#    authParams: token:xxx
#  kafka:
#    address: 127.0.0.1:9092

Milvus-CDCサーバのコンパイル

cdc.yaml ファイルを保存した後、milvus-cdc ディレクトリに移動し、以下のコマンドのいずれかを実行してサーバをコンパイルする:

  • バイナリファイルの場合

    make build
    
  • Dockerイメージの場合:

    bash build_image.sh
    

    Docker イメージの場合: コンパイルしたファイルをコンテナ内の/app/server/configs/cdc.yaml にマウントする。

サーバーの起動

  • バイナリを使用する

    milvus-cdc バイナリのあるディレクトリとcdc.yaml ファイルのあるconfigs ディレクトリに移動し、サーバを起動します:

    # dir tree
    .
    ├── milvus-cdc # build from source code or download from release page
    ├── configs
    │   └── cdc.yaml # config for cdc and source milvus
    
    # start milvus cdc
    ./milvus-cdc server
    
  • Docker Composeを使用する:

    docker-compose up -d
    

翻訳DeepLogo

Try Managed Milvus for Free

Zilliz Cloud is hassle-free, powered by Milvus and 10x faster.

Get Started
フィードバック

このページは役に立ちましたか ?