Rumah >Operasi dan penyelenggaraan >operasi dan penyelenggaraan linux >Cara menggunakan Docker untuk mengurus dan mengembangkan kluster berbilang nod
Dalam era pengkomputeran awan hari ini, teknologi kontena telah menjadi salah satu teknologi paling popular di dunia sumber terbuka. Kemunculan Docker telah menjadikan pengkomputeran awan lebih mudah dan cekap, dan telah menjadi alat yang sangat diperlukan untuk pembangun dan kakitangan operasi dan penyelenggaraan. Aplikasi teknologi kluster berbilang nod digunakan secara meluas berdasarkan Docker. Melalui penggunaan kluster berbilang nod, kami boleh menggunakan sumber dengan lebih berkesan, meningkatkan kebolehpercayaan dan kebolehskalaan, dan juga menjadi lebih fleksibel dalam penggunaan dan pengurusan. Seterusnya, kami akan memperkenalkan cara menggunakan Docker untuk mengurus dan mengembangkan kluster berbilang nod.
Langkah 1: Bina persekitaran kluster berbilang nod
Untuk mengurus dan mengembangkan kluster berbilang nod, kita perlu membina berbilang nod terlebih dahulu. Dalam artikel ini kami menggunakan teknologi Docker Swarm, yang boleh membantu kami mengurus kluster berbilang nod dengan lebih mudah.
1) Pasang Docker dan Docker Compose pada berbilang mesin dan pastikan mereka boleh berkomunikasi antara satu sama lain.
2) Pilih salah satu mesin sebagai "nod pengurusan" dan jalankan arahan berikut:
docker swarm init --advertise-addr <管理节点IP>
Selepas pelaksanaan, token akan dikembalikan. Pada masa yang sama, selepas melaksanakan arahan ini, mesin tempatan anda menjadi nod pengurusan Swarm.
3) Tambahkan mesin lain ke Swarm. Jalankan arahan berikut pada mesin lain:
docker swarm join --token <token> <管理节点IP>:2377
Pada masa ini, mesin lain akan ditambahkan pada Swarm. Kita boleh menggunakan arahan berikut untuk melihat nod dalam Swarm:
docker node ls
Langkah 2: Bina perkhidmatan dan kembangkan kapasiti
Selepas menyediakan persekitaran kluster berbilang nod, kita boleh mula membina perkhidmatan. Perkhidmatan merujuk kepada sekumpulan contoh kontena yang dijalankan dalam Swarm Mereka berkongsi sumber hos, rangkaian dan storan dan boleh berskala secara automatik dalam cara pengembangan mendatar. Di sini, kami mengambil aplikasi web ringkas sebagai contoh untuk memperkenalkan cara membina dan mengembangkan perkhidmatan.
1) Tulis Dockerfile. Mula-mula, kita perlu menulis fail Dockerfile, nyatakan imej asas aplikasi dan arahan yang dijalankan, dsb.
FROM node:latest WORKDIR /app COPY . /app RUN npm install CMD ["npm", "start"]
Antaranya, kami memilih nod:latest sebagai imej asas, menambah fail aplikasi kami ke direktori /app, kebergantungan yang dipasang dan memulakan program.
2) Tulis docker-compose.yml. docker-compose ialah alat untuk mentakrif dan menjalankan aplikasi Docker berbilang bekas. Di sini, kita boleh menggunakan docker-compose untuk menentukan perkhidmatan yang dipanggil web.
version: '3' services: web: build: . ports: - "8080:8080" environment: - NODE_ENV=production deploy: replicas: 5 resources: limits: cpus: "0.1" memory: 50M restart_policy: condition: on-failure
Fail karang docker ini menentukan kaedah binaan aplikasi kami, pemetaan port, pembolehubah persekitaran, bilangan replika, had sumber, dsb. Dalam langkah ketiga kami akan menggunakan arahan penggunaan tindanan docker untuk membina dan menjalankan perkhidmatan.
3) Bina dan kembangkan perkhidmatan. Selepas melengkapkan dua langkah di atas, kami boleh mula membina dan menskalakan perkhidmatan kami. Sila laksanakan arahan berikut:
docker-compose build docker stack deploy --compose-file docker-compose.yml web
Arahan ini akan menggunakan perkhidmatan kami ke dalam Swarm dan menyatakan 5 kejadian. Lawati http://
Langkah Tiga: Urus dan Skalakan Perkhidmatan
Selepas berjaya membina dan menggunakan perkhidmatan, kami perlu mengurus dan menskalakannya. Pengurusan perkhidmatan dan pengembangan dalam Swarm adalah sangat mudah, anda hanya perlu melaksanakan beberapa arahan.
1) Semak status perkhidmatan. Kita boleh menggunakan arahan berikut untuk melihat status perkhidmatan:
docker service ls docker service ps web
Arahan ini akan memaparkan semua perkhidmatan dan kejadian perkhidmatan yang sedang berjalan. Pada ketika ini, kita sepatutnya melihat 5 contoh perkhidmatan web berjalan.
2) Perkhidmatan pembesaran kapasiti. Kita boleh menggunakan arahan berikut untuk mengembangkan bilangan tika perkhidmatan:
docker service scale web=8
Arahan ini akan meningkatkan bilangan tika perkhidmatan web kepada 8.
3) Perkhidmatan kemas kini. Untuk mengemas kini perkhidmatan, kami perlu mengubah suai fail docker-compose.yml sebelumnya dan jalankan arahan penggunaan stack docker sekali lagi. Selepas pengubahsuaian selesai, laksanakan arahan berikut untuk mengemas kini perkhidmatan:
docker stack deploy --compose-file docker-compose.yml web
Ringkasan
Teknologi kluster berbilang nod ialah teknologi yang sangat praktikal yang digunakan dalam Docker, yang boleh membantu kami mengurus dan mengembangkan aplikasi kami dengan lebih mudah. Dalam artikel ini, kami memperkenalkan cara menggunakan Docker Swarm untuk membina persekitaran kluster berbilang nod dan menggunakan aplikasi web sebagai contoh untuk menunjukkan cara membina, menggunakan, mengurus dan mengembangkan perkhidmatan. Saya percaya bahawa melalui pengenalan artikel ini, semua orang mempunyai pemahaman yang lebih mendalam tentang teknologi kluster berbilang nod Docker Swarm.
Atas ialah kandungan terperinci Cara menggunakan Docker untuk mengurus dan mengembangkan kluster berbilang nod. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!