Skip to content

Commit e9f8044

Browse files
Milvus-doc-botMilvus-doc-bot
authored andcommitted
Generate en docs
1 parent 36c049d commit e9f8044

2 files changed

Lines changed: 39 additions & 1 deletion

File tree

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
{"codeList":["mq:\n type: woodpecker\n","# Related configuration of woodpecker, used to manage Milvus logs of recent mutation operations, output streaming log, and provide embedded log sequential read and write.\nwoodpecker:\n meta:\n type: etcd # The Type of the metadata provider. currently only support etcd.\n prefix: woodpecker # The Prefix of the metadata provider. default is woodpecker.\n client:\n segmentAppend:\n queueSize: 10000 # The size of the queue for pending messages to be sent of each log.\n maxRetries: 3 # Maximum number of retries for segment append operations.\n segmentRollingPolicy:\n maxSize: 256M # Maximum size of a segment.\n maxInterval: 10m # Maximum interval between two segments, default is 10 minutes.\n maxBlocks: 1000 # Maximum number of blocks in a segment\n auditor:\n maxInterval: 10s # Maximum interval between two auditing operations, default is 10 seconds.\n logstore:\n segmentSyncPolicy:\n maxInterval: 200ms # Maximum interval between two sync operations, default is 200 milliseconds.\n maxIntervalForLocalStorage: 10ms # Maximum interval between two sync operations local storage backend, default is 10 milliseconds.\n maxBytes: 256M # Maximum size of write buffer in bytes.\n maxEntries: 10000 # Maximum entries number of write buffer.\n maxFlushRetries: 5 # Maximum size of write buffer in bytes.\n retryInterval: 1000ms # Maximum interval between two retries. default is 1000 milliseconds.\n maxFlushSize: 2M # Maximum size of a fragment in bytes to flush.\n maxFlushThreads: 32 # Maximum number of threads to flush data\n segmentCompactionPolicy:\n maxSize: 2M # The maximum size of the merged files.\n maxParallelUploads: 4 # The maximum number of parallel upload threads for compaction.\n maxParallelReads: 8 # The maximum number of parallel read threads for compaction.\n segmentReadPolicy:\n maxBatchSize: 16M # Maximum size of a batch in bytes.\n maxFetchThreads: 32 # Maximum number of threads to fetch data.\n storage:\n type: minio # The Type of the storage provider. Valid values: [minio, local]\n rootPath: /var/lib/milvus/woodpecker # The root path of the storage provider.\n","kubectl apply -f https://raw.githubusercontent.com/zilliztech/milvus-operator/main/config/samples/milvus_cluster_woodpecker.yaml\n\n","kubectl get pods\nkubectl get milvus my-release -o yaml | grep -A2 status\n","NAME READY STATUS RESTARTS AGE\nmy-release-etcd-0 1/1 Running 0 17m\nmy-release-etcd-1 1/1 Running 0 17m\nmy-release-etcd-2 1/1 Running 0 17m\nmy-release-milvus-datanode-7f8f88499d-kc66r 1/1 Running 0 16m\nmy-release-milvus-mixcoord-7cd7998d-x59kg 1/1 Running 0 16m\nmy-release-milvus-proxy-5b56cf8446-pbnjm 1/1 Running 0 16m\nmy-release-milvus-querynode-0-558d9cdd57-sgbfx 1/1 Running 0 16m\nmy-release-milvus-streamingnode-58fbfdfdd8-vtxfd 1/1 Running 0 16m\nmy-release-minio-0 1/1 Running 0 17m\nmy-release-minio-1 1/1 Running 0 17m\nmy-release-minio-2 1/1 Running 0 17m\nmy-release-minio-3 1/1 Running 0 17m\n","kubectl delete milvus my-release\n","helm install my-release zilliztech/milvus \\\n --set image.all.tag=v2.6.0 \\\n --set pulsarv3.enabled=false \\\n --set woodpecker.enabled=true \\\n --set streaming.enabled=true \\\n --set indexNode.enabled=false\n","helm install my-release zilliztech/milvus \\\n --set image.all.tag=v2.6.0 \\\n --set cluster.enabled=false \\\n --set pulsarv3.enabled=false \\\n --set standalone.messageQueue=woodpecker \\\n --set woodpecker.enabled=true \\\n --set streaming.enabled=true\n","mkdir milvus-wp && cd milvus-wp\ncurl -sfL https://raw.githubusercontent.com/milvus-io/milvus/master/scripts/standalone_embed.sh -o standalone_embed.sh\n\n# Create user.yaml to enable Woodpecker with local filesystem\ncat > user.yaml <<'EOF'\nmq:\n type: woodpecker\nwoodpecker:\n storage:\n type: local\n rootPath: /var/lib/milvus/woodpecker\nEOF\n\nbash standalone_embed.sh start\n","mkdir milvus-wp-compose && cd milvus-wp-compose\nwget https://github.com/milvus-io/milvus/releases/download/v2.6.0/milvus-standalone-docker-compose.yml -O docker-compose.yml\n# By default, the Docker Compose standalone uses Woodpecker\nsudo docker compose up -d\n# If you need to change Woodpecker parameters further, write an override:\ndocker exec -it milvus-standalone bash -lc 'cat > /milvus/configs/user.yaml <<EOF\nmq:\n type: woodpecker\nwoodpecker:\n logstore:\n segmentSyncPolicy: \n maxFlushThreads: 16\n storage:\n type: minio\nEOF'\n\n# Restart the container to apply the changes\ndocker restart milvus-standalone\n","from pymilvus import MilvusClient\nimport random\n\n# 1. Set up a Milvus client\nclient = MilvusClient(\n uri=\"http://<Proxy Pod IP>:27017\",\n)\n\n# 2. Create a collection\nres = client.create_collection(\n collection_name=\"test_milvus_wp\",\n dimension=512,\n metric_type=\"IP\",\n shards_num=2,\n)\nprint(res)\n\n# 3. Insert randomly generated vectors\ncolors = [\"green\", \"blue\", \"yellow\", \"red\", \"black\", \"white\", \"purple\", \"pink\", \"orange\", \"brown\", \"grey\"]\ndata = []\n\nbatch_size = 1000\nbatch_count = 2000\nfor j in range(batch_count):\n start_time = time.time()\n print(f\"Inserting {j}th vectors {j * batch_size} startTime{start_time}\")\n for i in range(batch_size):\n current_color = random.choice(colors)\n data.append({\n \"id\": (j*batch_size + i),\n \"vector\": [ random.uniform(-1, 1) for _ in range(512) ],\n \"color\": current_color,\n \"color_tag\": f\"{current_color}_{str(random.randint(1000, 9999))}\"\n })\n res = client.insert(\n collection_name=\"test_milvus_wp\",\n data=data\n )\n data = []\n print(f\"Inserted {j}th vectors endTime:{time.time()} costTime:{time.time() - start_time}\")\n"],"headingContent":"Use Woodpecker","anchorList":[{"label":"Use Woodpecker","href":"Use-Woodpecker","type":1,"isActive":false},{"label":"Overview","href":"Overview","type":2,"isActive":false},{"label":"Quick start","href":"Quick-start","type":2,"isActive":false},{"label":"Configuration","href":"Configuration","type":2,"isActive":false},{"label":"Deployment modes","href":"Deployment-modes","type":2,"isActive":false},{"label":"Deployment guides","href":"Deployment-guides","type":2,"isActive":false},{"label":"Enable Woodpecker for a Milvus Cluster on Kubernetes (Milvus Operator, storage=minio)","href":"Enable-Woodpecker-for-a-Milvus-Cluster-on-Kubernetes-Milvus-Operator-storageminio","type":3,"isActive":false},{"label":"Enable Woodpecker for a Milvus Cluster on Kubernetes (Helm Chart, storage=minio)","href":"Enable-Woodpecker-for-a-Milvus-Cluster-on-Kubernetes-Helm-Chart-storageminio","type":3,"isActive":false},{"label":"Enable Woodpecker for Milvus Standalone in Docker (storage=local)","href":"Enable-Woodpecker-for-Milvus-Standalone-in-Docker-storagelocal","type":3,"isActive":false},{"label":"Enable Woodpecker for Milvus Standalone with Docker Compose (storage=minio)","href":"Enable-Woodpecker-for-Milvus-Standalone-with-Docker-Compose-storageminio","type":3,"isActive":false},{"label":"Throughput tuning tips","href":"Throughput-tuning-tips","type":2,"isActive":false},{"label":"Latency","href":"Latency","type":2,"isActive":false}]}
1+
{"codeList":["mq:\n type: woodpecker\n","# Related configuration of woodpecker, used to manage Milvus logs of recent mutation operations, output streaming log, and provide embedded log sequential read and write.\nwoodpecker:\n meta:\n type: etcd # The Type of the metadata provider. currently only support etcd.\n prefix: woodpecker # The Prefix of the metadata provider. default is woodpecker.\n client:\n segmentAppend:\n queueSize: 10000 # The size of the queue for pending messages to be sent of each log.\n maxRetries: 3 # Maximum number of retries for segment append operations.\n segmentRollingPolicy:\n maxSize: 256M # Maximum size of a segment.\n maxInterval: 10m # Maximum interval between two segments, default is 10 minutes.\n maxBlocks: 1000 # Maximum number of blocks in a segment\n auditor:\n maxInterval: 10s # Maximum interval between two auditing operations, default is 10 seconds.\n logstore:\n segmentSyncPolicy:\n maxInterval: 200ms # Maximum interval between two sync operations, default is 200 milliseconds.\n maxIntervalForLocalStorage: 10ms # Maximum interval between two sync operations local storage backend, default is 10 milliseconds.\n maxBytes: 256M # Maximum size of write buffer in bytes.\n maxEntries: 10000 # Maximum entries number of write buffer.\n maxFlushRetries: 5 # Maximum size of write buffer in bytes.\n retryInterval: 1000ms # Maximum interval between two retries. default is 1000 milliseconds.\n maxFlushSize: 2M # Maximum size of a fragment in bytes to flush.\n maxFlushThreads: 32 # Maximum number of threads to flush data\n segmentCompactionPolicy:\n maxSize: 2M # The maximum size of the merged files.\n maxParallelUploads: 4 # The maximum number of parallel upload threads for compaction.\n maxParallelReads: 8 # The maximum number of parallel read threads for compaction.\n segmentReadPolicy:\n maxBatchSize: 16M # Maximum size of a batch in bytes.\n maxFetchThreads: 32 # Maximum number of threads to fetch data.\n storage:\n type: minio # The Type of the storage provider. Valid values: [minio, local]\n rootPath: /var/lib/milvus/woodpecker # The root path of the storage provider.\n","kubectl apply -f https://raw.githubusercontent.com/zilliztech/milvus-operator/main/config/samples/milvus_cluster_woodpecker.yaml\n\n","kubectl get pods\nkubectl get milvus my-release -o yaml | grep -A2 status\n","NAME READY STATUS RESTARTS AGE\nmy-release-etcd-0 1/1 Running 0 17m\nmy-release-etcd-1 1/1 Running 0 17m\nmy-release-etcd-2 1/1 Running 0 17m\nmy-release-milvus-datanode-7f8f88499d-kc66r 1/1 Running 0 16m\nmy-release-milvus-mixcoord-7cd7998d-x59kg 1/1 Running 0 16m\nmy-release-milvus-proxy-5b56cf8446-pbnjm 1/1 Running 0 16m\nmy-release-milvus-querynode-0-558d9cdd57-sgbfx 1/1 Running 0 16m\nmy-release-milvus-streamingnode-58fbfdfdd8-vtxfd 1/1 Running 0 16m\nmy-release-minio-0 1/1 Running 0 17m\nmy-release-minio-1 1/1 Running 0 17m\nmy-release-minio-2 1/1 Running 0 17m\nmy-release-minio-3 1/1 Running 0 17m\n","kubectl delete milvus my-release\n","helm install my-release zilliztech/milvus \\\n --set image.all.tag=v2.6.0 \\\n --set pulsarv3.enabled=false \\\n --set woodpecker.enabled=true \\\n --set streaming.enabled=true \\\n --set indexNode.enabled=false\n","helm install my-release zilliztech/milvus \\\n --set image.all.tag=v2.6.0 \\\n --set cluster.enabled=false \\\n --set pulsarv3.enabled=false \\\n --set standalone.messageQueue=woodpecker \\\n --set woodpecker.enabled=true \\\n --set streaming.enabled=true\n","mkdir milvus-wp && cd milvus-wp\ncurl -sfL https://raw.githubusercontent.com/milvus-io/milvus/master/scripts/standalone_embed.sh -o standalone_embed.sh\n\n# Create user.yaml to enable Woodpecker with local filesystem\ncat > user.yaml <<'EOF'\nmq:\n type: woodpecker\nwoodpecker:\n storage:\n type: local\n rootPath: /var/lib/milvus/woodpecker\nEOF\n\nbash standalone_embed.sh start\n","mkdir milvus-wp-compose && cd milvus-wp-compose\nwget https://github.com/milvus-io/milvus/releases/download/v2.6.0/milvus-standalone-docker-compose.yml -O docker-compose.yml\n# By default, the Docker Compose standalone uses Woodpecker\nsudo docker compose up -d\n# If you need to change Woodpecker parameters further, write an override:\ndocker exec -it milvus-standalone bash -lc 'cat > /milvus/configs/user.yaml <<EOF\nmq:\n type: woodpecker\nwoodpecker:\n logstore:\n segmentSyncPolicy: \n maxFlushThreads: 16\n storage:\n type: minio\nEOF'\n\n# Restart the container to apply the changes\ndocker restart milvus-standalone\n","from pymilvus import MilvusClient\nimport random\n\n# 1. Set up a Milvus client\nclient = MilvusClient(\n uri=\"http://<Proxy Pod IP>:27017\",\n)\n\n# 2. Create a collection\nres = client.create_collection(\n collection_name=\"test_milvus_wp\",\n dimension=512,\n metric_type=\"IP\",\n shards_num=2,\n)\nprint(res)\n\n# 3. Insert randomly generated vectors\ncolors = [\"green\", \"blue\", \"yellow\", \"red\", \"black\", \"white\", \"purple\", \"pink\", \"orange\", \"brown\", \"grey\"]\ndata = []\n\nbatch_size = 1000\nbatch_count = 2000\nfor j in range(batch_count):\n start_time = time.time()\n print(f\"Inserting {j}th vectors {j * batch_size} startTime{start_time}\")\n for i in range(batch_size):\n current_color = random.choice(colors)\n data.append({\n \"id\": (j*batch_size + i),\n \"vector\": [ random.uniform(-1, 1) for _ in range(512) ],\n \"color\": current_color,\n \"color_tag\": f\"{current_color}_{str(random.randint(1000, 9999))}\"\n })\n res = client.insert(\n collection_name=\"test_milvus_wp\",\n data=data\n )\n data = []\n print(f\"Inserted {j}th vectors endTime:{time.time()} costTime:{time.time() - start_time}\")\n"],"headingContent":"Use Woodpecker","anchorList":[{"label":"Use Woodpecker","href":"Use-Woodpecker","type":1,"isActive":false},{"label":"Overview","href":"Overview","type":2,"isActive":false},{"label":"Quick start","href":"Quick-start","type":2,"isActive":false},{"label":"Configuration","href":"Configuration","type":2,"isActive":false},{"label":"Deployment modes","href":"Deployment-modes","type":2,"isActive":false},{"label":"Object storage compatibility for storage.type=minio","href":"Object-storage-compatibility-for-storagetypeminio","type":2,"isActive":false},{"label":"Deployment guides","href":"Deployment-guides","type":2,"isActive":false},{"label":"Enable Woodpecker for a Milvus Cluster on Kubernetes (Milvus Operator, storage=minio)","href":"Enable-Woodpecker-for-a-Milvus-Cluster-on-Kubernetes-Milvus-Operator-storageminio","type":3,"isActive":false},{"label":"Enable Woodpecker for a Milvus Cluster on Kubernetes (Helm Chart, storage=minio)","href":"Enable-Woodpecker-for-a-Milvus-Cluster-on-Kubernetes-Helm-Chart-storageminio","type":3,"isActive":false},{"label":"Enable Woodpecker for Milvus Standalone in Docker (storage=local)","href":"Enable-Woodpecker-for-Milvus-Standalone-in-Docker-storagelocal","type":3,"isActive":false},{"label":"Enable Woodpecker for Milvus Standalone with Docker Compose (storage=minio)","href":"Enable-Woodpecker-for-Milvus-Standalone-with-Docker-Compose-storageminio","type":3,"isActive":false},{"label":"Throughput tuning tips","href":"Throughput-tuning-tips","type":2,"isActive":false},{"label":"Latency","href":"Latency","type":2,"isActive":false}]}

localization/v2.6.x/site/en/adminGuide/use-woodpecker.md

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -164,6 +164,44 @@ beta: Milvus 2.6.x
164164
<li>With <code translate="no">minio</code>, Woodpecker shares the same object storage with Milvus (MinIO/S3/GCS/OSS, etc.).</li>
165165
<li>With <code translate="no">local</code>, a single‑node local disk is only suitable for Standalone. If all pods can access a shared file system (e.g., NFS), Cluster mode can also use <code translate="no">local</code>.</li>
166166
</ul>
167+
<h2 id="Object-storage-compatibility-for-storagetypeminio" class="common-anchor-header">Object storage compatibility for <code translate="no">storage.type=minio</code><button data-href="#Object-storage-compatibility-for-storagetypeminio" class="anchor-icon" translate="no">
168+
<svg translate="no"
169+
aria-hidden="true"
170+
focusable="false"
171+
height="20"
172+
version="1.1"
173+
viewBox="0 0 16 16"
174+
width="16"
175+
>
176+
<path
177+
fill="#0092E4"
178+
fill-rule="evenodd"
179+
d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"
180+
></path>
181+
</svg>
182+
</button></h2><p>The following matrix summarizes the currently known compatibility of object storage backends when Woodpecker is configured with <code translate="no">storage.type=minio</code>. This information is based on <a href="https://github.com/zilliztech/woodpecker/discussions/150">GitHub Discussion #150</a>.</p>
183+
<table>
184+
<thead>
185+
<tr><th>Provider / service</th><th>Status</th><th>Notes</th></tr>
186+
</thead>
187+
<tbody>
188+
<tr><td>Azure Blob Storage</td><td>Supported</td><td>Uses the native Azure SDK.</td></tr>
189+
<tr><td>AWS S3</td><td>Supported</td><td>Native S3 with full Conditional Write support.</td></tr>
190+
<tr><td>MinIO (<code translate="no">&gt;= 2024-12</code>)</td><td>Supported</td><td>Full S3 Conditional Write support.</td></tr>
191+
<tr><td>Aliyun OSS</td><td>Supported</td><td>Supported through its S3-compatible interface.</td></tr>
192+
<tr><td>Tencent COS</td><td>Supported</td><td>Supported through its S3-compatible interface.</td></tr>
193+
<tr><td>Google Cloud Storage (GCS)</td><td>Supported</td><td>Supported through S3 interoperability mode.</td></tr>
194+
<tr><td>Huawei Cloud OBS</td><td>Unsupported</td><td>Lacks the required Conditional Write semantics.</td></tr>
195+
<tr><td>VAST Data</td><td>Supported</td><td>Verified by the community; works with non-versioned buckets only.</td></tr>
196+
<tr><td>Other S3-compatible storage</td><td>Partial</td><td>Depends on full support for S3 Conditional Write semantics.</td></tr>
197+
</tbody>
198+
</table>
199+
<p>Notes:</p>
200+
<ul>
201+
<li>Compatibility depends on native SDK support or support for S3 Conditional Write semantics.</li>
202+
<li>If you self-host MinIO for Woodpecker, use <code translate="no">RELEASE.2024-12-18T13-15-44Z</code> or later.</li>
203+
<li>This matrix reflects <a href="https://github.com/zilliztech/woodpecker/discussions/150">the current discussion</a> and may evolve as backend support is validated further.</li>
204+
</ul>
167205
<h2 id="Deployment-guides" class="common-anchor-header">Deployment guides<button data-href="#Deployment-guides" class="anchor-icon" translate="no">
168206
<svg translate="no"
169207
aria-hidden="true"

0 commit comments

Comments
 (0)