Bagaimana untuk menyelesaikan masalah pelabuhan docker swarm disekat

藏色散人
Lepaskan: 2022-01-20 14:29:20
asal
5935 orang telah melayarinya

Penyelesaian kepada kegagalan port docker swarm: 1. Edit fail konfigurasi dan tambah konfigurasi "net.ipv4.ip_forward=1"; 2. Mulakan semula rangkaian melalui "systemctl restart network".

Bagaimana untuk menyelesaikan masalah pelabuhan docker swarm disekat

Persekitaran pengendalian artikel ini: sistem centOS6.8, Docker versi 18.09.x, komputer Dell G3.

Bagaimana untuk menyelesaikan masalah pelabuhan docker kawanan disekat? Masalah rangkaian docker swarm

Masalah:

Rangkaian dalaman hos docker adalah perkara biasa, tetapi sambungan dengan hos lain gagal untuk menyambung ke port yang dipetakan pada docker hos, dan rangkaian dalaman docker tidak boleh disambungkan.

Persekitaran pelayan adalah seperti berikut:

  • Sistem centos
  • maklumat docker
WARNING: IPv4 forwarding is disabled
WARNING: bridge-nf-call-iptables is disabled
WARNING: bridge-nf-call-ip6tables is disabled
Salin selepas log masuk

Penyelesaian

  • Edit fail konfigurasi

vim /etc/sysctl.conf
Salin selepas log masuk

Tambah konfigurasi

net.bridge.bridge-nf-call-ip6tables=1
net.bridge.bridge-nf-call-iptables=1
net.bridge.bridge-nf-call-arptables=1
net.ipv4.ip_forward=1
Salin selepas log masuk

Laksanakansysctl -p Berkuatkuasa

  • Mulakan semula rangkaian

systemctl restart network
Salin selepas log masuk

Semak maklumat docker sekali lagi, amaran hilang dan rangkaian docker pada hos kembali normal.


Perkara utama, untuk pelayan awan

Pelayan yang saya gunakan ialah Pelayan Awan Alibaba
Jika kluster anda menggunakan port lalai 4789, maka anda mungkin menghadapi masalah yang sama seperti saya masalah.

Terdapat ayat ini dalam dokumentasi bantuan Alibaba Cloud:

Sebelum menambah pemantauan UDP, beri perhatian kepada sekatan berikut:
Port pemantauan UDP 250, 4789 dan 4790 Port dikhaskan untuk sistem dan tidak dibuka kepada orang ramai buat masa ini.
Butiran

Dalam versi 19.03 dan lebih baru, docker menambah item konfigurasi –data-path-port uint32 pada swarm init untuk menukar port VXLAN dari docker swarm.
Masalah itu berjaya diselesaikan selepas mengubah suai port

sudo docker swarm init --data-path-port 5789
Salin selepas log masuk

Masalah lain

Lihat log docker (journalctl -u docker -n 20 -f) dan mendapati:

level=error msg="error reading the kernel parameter net.ipv4.vs.expire_nodest_conn" 
error="open /proc/sys/net/ipv4/vs/expire_nodest_conn: no such file or directory"
Salin selepas log masuk

Ini berlaku kerana mesin hos tidak memuatkan modul ip_vs. Mulakan semula docker selepas memuatkan modul ip_vs pada setiap nod. [Pembelajaran yang disyorkan: "tutorial video buruh pelabuhan"]

modprobe ip_vs
service docker restart
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk menyelesaikan masalah pelabuhan docker swarm disekat. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan