Skala Milvus Standalone
Milvus Standalone adalah penerapan server dengan satu mesin. Semua komponen Milvus Standalone dikemas ke dalam satu citra Docker, sehingga memudahkan penyebaran. Topik ini menjelaskan cara menskalakan instans Milvus yang berjalan dalam mode ini.
Prasyarat
Saat men-deploy Milvus Standalone dengan Docker atau Docker Compose, skrip deployment (standalone_embed.sh) atau berkas konfigurasi (docker-compose.yml) membuat beberapa volume dan memetakannya ke direktori hos untuk memastikan persistensi data.
Untuk menskalakan instans Milvus yang digunakan dengan cara ini, Anda harus menghentikan dan menghapus kontainer atau tumpukan kontainer yang ada, menerapkan ulang Milvus Standalone dengan pengaturan konfigurasi yang diperbarui, dan menggunakan kembali data yang dipertahankan di host untuk meluncurkan instans baru.
Tabel berikut mencantumkan pemetaan volume antara host dan kontainer.
Opsi penerapan |
Jalur host |
Jalur kontainer |
|---|---|---|
Docker |
|
|
|
|
|
|
|
|
Docker Compose |
|
|
|
|
|
|
|
Sebelum menjalankan prosedur dalam panduan ini, pastikan data Anda tetap berada di jalur hos di atas.
Menskalakan instans yang digunakan menggunakan Docker
Untuk menskalakan instans Milvus yang sedang berjalan, Anda harus menghentikan instans, menghapus kontainer, dan men-deploy ulang instans dengan pengaturan baru dan data yang dipertahankan.
Prosedur spesifiknya adalah sebagai berikut:
Jalankan
docker stats milvus-standaloneuntuk melihat CPU dan memori yang dialokasikan ke instans Milvus. Keluarannya akan serupa dengan yang berikut ini:CONTAINER ID NAME CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O PIDS 917da667f2ff milvus-standalone 6.10% 171.8MiB / 3.886GiB 4.32% 1.57kB / 0B 1.01GB / 1.79MB 31Pada keluaran perintah, Anda dapat menemukan penggunaan sumber daya saat ini dari instans Milvus Anda.
Hentikan dan hapus kontainer.
$ docker stop milvus-standalone $ docker rm milvus-standaloneCari berkas skrip
standalone_embed.sh, temukan perintahdocker run, dan tambahkan batas sumber daya.... sudo docker run -d \ --name milvus-standalone \ --security-opt seccomp:unconfined \ -e ETCD_USE_EMBED=true \ -e ETCD_DATA_DIR=/var/lib/milvus/etcd \ -e ETCD_CONFIG_PATH=/milvus/configs/embedEtcd.yaml \ -e COMMON_STORAGETYPE=local \ -v $(pwd)/volumes/milvus:/var/lib/milvus \ -v $(pwd)/embedEtcd.yaml:/milvus/configs/embedEtcd.yaml \ -v $(pwd)/user.yaml:/milvus/configs/user.yaml \ -p 19530:19530 \ -p 9091:9091 \ -p 2379:2379 \ --health-cmd="curl -f http://localhost:9091/healthz" \ --health-interval=30s \ --health-start-period=90s \ --health-timeout=20s \ --health-retries=3 \ --memory="4g" \ # New memory limit --cpus="2.0" \ # New CPU limit milvusdb/milvus:v2.5.11 \ milvus run standalone 1> /dev/nullPastikan data yang dipertahankan berada dalam folder yang sama dengan skrip
standalone_embed.sh, dan jalankan skrip sebagai berikut:sudo bash standalone_embed.sh startJalankan
docker stats milvus-standaloneuntuk melihat CPU dan memori yang dialokasikan ke instans Milvus setelah penskalaan. Keluarannya akan serupa dengan yang berikut ini:CONTAINER ID NAME CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O PIDS 7aea450f87ce milvus-standalone 7.52% 210.9MiB / 4GiB 5.15% 1.05kB / 0B 610kB / 8.19kB 29
Menskalakan instans yang digunakan menggunakan Docker Compose
Untuk menskalakan instans Milvus yang sedang berjalan, Anda harus menghentikan instans, menghapus tumpukan kontainer, dan men-deploy ulang instans dengan pengaturan baru dan data yang dipertahankan.
Prosedur spesifiknya adalah sebagai berikut:
Jalankan
docker stats milvus-standaloneuntuk melihat CPU dan memori yang dialokasikan ke instans Milvus. Keluarannya akan serupa dengan yang berikut ini:CONTAINER ID NAME CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O PIDS 917da667f2ff milvus-standalone 6.10% 171.8MiB / 3.886GiB 4.32% 1.57kB / 0B 1.01GB / 1.79MB 31Pada keluaran perintah, Anda dapat menemukan penggunaan sumber daya saat ini dari instans Milvus Anda.
Hentikan dan hapus tumpukan kontainer.
$ docker compose downCari berkas konfigurasi
docker-compose.yml, temukan bagian standalone, dan tambahkan batas sumber daya.... standalone: container_name: milvus-standalone image: milvusdb/milvus:v2.5.8 command: ["milvus", "run", "standalone"] deploy: resources: limits: cpus: "2" # new cpu limits memory: 4G # new memory limits security_opt: - seccomp:unconfined environment: ETCD_ENDPOINTS: etcd:2379 MINIO_ADDRESS: minio:9000 volumes: - ${DOCKER_VOLUME_DIRECTORY:-.}/volumes/milvus:/var/lib/milvus healthcheck: test: ["CMD", "curl", "-f", "http://localhost:9091/healthz"] interval: 30s start_period: 90s timeout: 20s retries: 3 ports: - "19530:19530" - "9091:9091" depends_on: - "etcd" - "minio"Pastikan data yang tersimpan tersedia, dan jalankan
docker composesebagai berikut:docker compose up -dJalankan
docker stats milvus-standaloneuntuk melihat CPU dan memori yang dialokasikan ke instans Milvus setelah penskalaan. Outputnya seharusnya serupa dengan yang berikut ini:CONTAINER ID NAME CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O PIDS 7aea450f87ce milvus-standalone 7.52% 210.9MiB / 4GiB 5.15% 1.05kB / 0B 610kB / 8.19kB 29