Rangkaian tindanan yang disediakan oleh docker swarm boleh menyediakan komunikasi rangkaian intra-bekas merentas hos Kontena tempatan boleh menentukan rangkaian semasa permulaan untuk membentuk rangkaian dalaman Kemudian nginx boleh digunakan dalam mod hos pada hos swarm, menggunakan etcd dan konsul Tunggu perkhidmatan mendaftar secara dinamik dan mengemas kini konfigurasi proksi terbalik nginx untuk mencapai tujuan penemuan perkhidmatan dinamik. Walau bagaimanapun, tindanan pada masa ini mempunyai kehilangan prestasi terbesar antara semua kaedah komunikasi silang hos, mencapai 60%. Seseorang telah melakukan ujian di Internet, anda boleh menyemaknya. Oleh itu, buat masa ini, persekitaran pengeluaran masih perlu mempertimbangkan kubernetes atau mesos
Terdapat beberapa idea: 1 Peranti hos melaporkan IP semasa memulakan perkhidmatan 2 Suntikan maklumat IP hos ke dalam pembolehubah persekitaran kontena semasa memulakan perkhidmatan 3 menerimanya Apabila mendaftar permintaan, dapatkan ip daripada lapisan rangkaian
Oleh kerana bekas adalah dinamik, alamat IP biasanya diberikan secara rawak. Selepas menggunakan sistem penjadualan kontena untuk memulakan beberapa bekas secara automatik, alamat akses kontena ini boleh direkodkan ke pusat pendaftaran perkhidmatan melalui pendaftaran perkhidmatan. Dengan cara ini, apabila perkhidmatan luaran ingin mengakses bekas ini, mereka boleh mengakses bekas ini melalui penemuan perkhidmatan
Anda boleh mempertimbangkan cara lain 1. Gunakan alat orkestrasi perkhidmatan seperti kubernetes (perubahan ketara pada docker) 2. Gunakan pusat pendaftaran seperti konsul (perubahan ketara pada kod pusat pendaftaran)
Jika perkhidmatan mikro menggunakan awan musim bunga, pilihan kedua lebih disyorkan, yang boleh menyelesaikan masalah ini dengan sempurna
Rangkaian tindanan yang disediakan oleh docker swarm boleh menyediakan komunikasi rangkaian intra-bekas merentas hos Kontena tempatan boleh menentukan rangkaian semasa permulaan untuk membentuk rangkaian dalaman Kemudian nginx boleh digunakan dalam mod hos pada hos swarm, menggunakan etcd dan konsul Tunggu perkhidmatan mendaftar secara dinamik dan mengemas kini konfigurasi proksi terbalik nginx untuk mencapai tujuan penemuan perkhidmatan dinamik.
Walau bagaimanapun, tindanan pada masa ini mempunyai kehilangan prestasi terbesar antara semua kaedah komunikasi silang hos, mencapai 60%. Seseorang telah melakukan ujian di Internet, anda boleh menyemaknya. Oleh itu, buat masa ini, persekitaran pengeluaran masih perlu mempertimbangkan kubernetes atau mesos
Saya tidak tahu banyak tentang rangkaian Sila google komunikasi silang hos docker untuk mencari beberapa penyelesaian.
Gunakan hos untuk menambah dns dalaman
Terdapat beberapa idea:
1 Peranti hos melaporkan IP semasa memulakan perkhidmatan
2 Suntikan maklumat IP hos ke dalam pembolehubah persekitaran kontena semasa memulakan perkhidmatan
3 menerimanya Apabila mendaftar permintaan, dapatkan ip daripada lapisan rangkaian
Oleh kerana bekas adalah dinamik, alamat IP biasanya diberikan secara rawak. Selepas menggunakan sistem penjadualan kontena untuk memulakan beberapa bekas secara automatik, alamat akses kontena ini boleh direkodkan ke pusat pendaftaran perkhidmatan melalui pendaftaran perkhidmatan. Dengan cara ini, apabila perkhidmatan luaran ingin mengakses bekas ini, mereka boleh mengakses bekas ini melalui penemuan perkhidmatan
Sangat mudah, pelbagai penyelesaian komunikasi rangkaian docker silang hos.
Kubernetes menggunakan kain flanel.
Anda boleh mempertimbangkan cara lain
1. Gunakan alat orkestrasi perkhidmatan seperti kubernetes (perubahan ketara pada docker)
2. Gunakan pusat pendaftaran seperti konsul (perubahan ketara pada kod pusat pendaftaran)
Jika perkhidmatan mikro menggunakan awan musim bunga, pilihan kedua lebih disyorkan, yang boleh menyelesaikan masalah ini dengan sempurna