Rumah >Operasi dan penyelenggaraan >Nginx >Panduan terperinci untuk penggunaan kontena dan pengurusan kluster pelayan Nginx
Panduan Terperinci untuk Penerapan Kontena dan Pengurusan Kluster Pelayan Nginx
Pengenalan:
Dengan pembangunan pengkomputeran awan dan teknologi kontena, penggunaan kontena telah menjadi cara biasa pembangunan dan penggunaan aplikasi perusahaan. Sebagai pelayan web berprestasi tinggi dan pelayan proksi terbalik, Nginx juga boleh digunakan dan diurus melalui kontena. Artikel ini akan memperkenalkan secara terperinci cara menyimpan pelayan Nginx dan meningkatkan ketersediaan tinggi melalui pengurusan kluster.
1. Persediaan
Pertama, kita perlu memasang persekitaran Docker dan pastikan untuk memulakan perkhidmatan Docker. Seterusnya, kita perlu menulis fail Dockerfile untuk membina imej Nginx Docker. Berikut ialah contoh fail Docker yang mudah:
FROM nginx:latest COPY nginx.conf /etc/nginx/nginx.conf COPY default.conf /etc/nginx/conf.d/default.conf EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]
Fail Docker ini mula-mula memilih imej Nginx terkini sebagai imej asas, dan kemudian menyalin fail konfigurasi Nginx dan fail konfigurasi hos maya lalai yang kami sediakan terlebih dahulu. Akhirnya, port 80 bekas terdedah dan pelayan Nginx dijalankan dalam mod latar depan.
2. Bina imej Docker
Selepas menyediakan fail Docker, kita boleh menggunakan arahan binaan docker untuk membina imej Docker. Dengan mengandaikan bahawa kami menyimpan Dockerfile dalam direktori semasa, kami boleh menggunakan arahan berikut untuk membinanya:
docker build -t my_nginx .
Arahan ini akan membina imej Docker bernama my_nginx berdasarkan Dockerfile. Selepas binaan selesai, anda boleh menggunakan arahan imej docker untuk melihat senarai imej sedia ada untuk mengesahkan bahawa imej my_nginx telah berjaya dibina.
3 Jalankan satu bekas Nginx
Kini, kita boleh mencipta bekas Nginx berdasarkan imej my_nginx dan menjalankannya. Anda boleh menggunakan arahan docker run untuk melaksanakan operasi ini:
docker run -d -p 80:80 my_nginx
Perintah ini akan menjalankan bekas Nginx baharu di latar belakang dan memetakan port kontena 80 ke port 80 hos. Anda boleh mengesahkan sama ada pelayan Nginx berfungsi dengan betul dengan mengakses http://localhost melalui pelayar anda.
4. Bina kluster Nginx
Untuk meningkatkan ketersediaan pelayan Nginx yang tinggi, kami boleh menggunakan alat pengurusan kluster Docker untuk membina kluster Nginx. Dalam artikel ini, kami menggunakan Docker Swarm untuk melaksanakan pengurusan kluster.
Pertama, kita perlu memulakan nod pengurusan Swarm. Nod semasa boleh ditetapkan sebagai nod pengurusan Swarm dengan menjalankan arahan berikut:
docker swarm init
Kemudian, kita boleh mencipta dua nod pekerja (hos) dengan menjalankan arahan berikut:
docker swarm join-token worker
Selepas menjalankan arahan di atas, output yang serupa dengan yang berikut akan dijana :
docker swarm join --token xxxxxxxxxxxxxxxx
Kita perlu menggunakan output ini untuk menyertai dua nod pekerja ke kluster Swarm:
docker swarm join --token xxxxxxxxxxxxxxxx
Dengan cara ini, kami telah berjaya menambah dua nod pekerja pada kluster Swarm. Seterusnya, kita perlu membuat perkhidmatan Nginx. Anda boleh menggunakan arahan berikut untuk mencipta perkhidmatan Nginx:
docker service create --name nginx --replicas 3 -p 80:80 my_nginx
Arahan ini akan mencipta perkhidmatan bernama nginx dalam kluster dan menentukan 3 replika. Perkhidmatan secara automatik mencipta dan mengedarkan replika ini pada nod yang berbeza dalam kluster, dengan itu membina kluster Nginx. Anda boleh menggunakan arahan perkhidmatan docker ls untuk melihat semua perkhidmatan dalam kelompok dan statusnya.
5 Operasi pengurusan kluster
Setelah kami menubuhkan kluster Nginx, kami boleh melaksanakan beberapa operasi pengurusan kluster asas.
docker service scale nginx=5 docker service scale nginx=2
Arahan pertama mengembangkan bilangan replika perkhidmatan nginx kepada 5, dan arahan kedua menambah bilangan replika dikurangkan kepada 2.
docker service update --image my_nginx:latest nginx
Arahan ini akan mengemas kini imej perkhidmatan nginx kepada versi terkini. Begitu juga, kami juga boleh mengemas kini parameter konfigurasi lain perkhidmatan melalui arahan kemas kini perkhidmatan docker.
docker service ps nginx docker service inspect --pretty nginx
Arahan pertama akan memaparkan status dan maklumat semua salinan perkhidmatan nginx, dan arahan kedua akan memaparkan perkhidmatan nginx Maklumat terperinci, termasuk peruntukan nod dan status larian replika, dsb.
Kesimpulan:
Dengan memasukkan pelayan Nginx untuk penempatan dan pengurusan kluster, kami boleh mencapai ketersediaan dan fleksibiliti yang lebih tinggi. Artikel ini memperkenalkan secara terperinci penggunaan Docker untuk membina imej Nginx, menjalankan satu bekas dan menggunakan Docker Swarm untuk membina dan mengurus kelompok Nginx. Saya berharap pembaca dapat mengetahui tentang penggunaan kontena Nginx dan pengurusan kluster melalui artikel ini, dan dapat menerapkan dan mengembangkannya dalam senario sebenar.
Atas ialah kandungan terperinci Panduan terperinci untuk penggunaan kontena dan pengurusan kluster pelayan Nginx. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!