ホームページ >運用・保守 >Docker >swarm docker ポートがブロックされる問題を解決する方法

swarm docker ポートがブロックされる問題を解決する方法

藏色散人
藏色散人オリジナル
2022-01-20 14:29:205993ブラウズ

Swarm Docker ポートに到達できない解決策: 1. 構成ファイルを編集し、構成「net.ipv4.ip_forward=1」を追加します; 2. 「systemctl restart network」を通じてネットワークを再起動します。

swarm docker ポートがブロックされる問題を解決する方法

この記事の動作環境: centOS6.8 システム、Docker バージョン 18.09.x、Dell G3 コンピューター。

swarm docker ポートがブロックされる問題を解決するにはどうすればよいですか? docker swarm network issue

問題:

Docker ホストの内部ネットワークは正常ですが、他のホストとの接続に失敗します。他のホストは Docker にマッピングされたポートに接続できません外部ホスト、およびdockerの内部ネットワークに接続できません。

サーバー環境は次のとおりです。

  • システムは centos
  • docker info
WARNING: IPv4 forwarding is disabled
WARNING: bridge-nf-call-iptables is disabled
WARNING: bridge-nf-call-ip6tables is disabled

解決策

  • 構成ファイルの編集

vim /etc/sysctl.conf

構成の追加

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

実行sysctl -p有効にする

  • ネットワークを再起動します

systemctl restart network

Docker 情報を再度確認すると、警告が消え、ホスト上の Docker ネットワークが通常に戻ります。


クラウド サーバーの重要なポイント

私が使用するサーバーは Alibaba Cloud Server です
クラスターがデフォルトのポート 4789 を使用している場合、私と同じ問題が発生する可能性があります。問題。

Alibaba Cloud のヘルプドキュメントには次の文があります:

UDP モニタリングを追加する前に、次の制限に注意してください:
UDP モニタリングには 3 つのポートがあります: 250、250、 4789 および 4790 ポートはシステム用に予約されており、当面は一般に公開されません。
詳細

バージョン 19.03 以降では、docker は swarm init の上に –data-path-port uint32 構成項目を追加して、docker swarm の VXLAN ポートを変更します。
ポートを変更した後、問題は正常に解決されました

sudo docker swarm init --data-path-port 5789

その他の問題

docker ログ (journalctl -u docker -n 20 -f) を確認すると、次のことがわかりました。

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"

これは、ホストが ip_vs モジュールをロードしないために発生します。各ノードに ip_vs モジュールをロードした後、docker を再起動するだけです。 [推奨学習:「docker ビデオ チュートリアル 」]

modprobe ip_vs
service docker restart

以上がswarm docker ポートがブロックされる問題を解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。