2017-05-09 12 views
0

openstackで3ノードスームを実行しています。同じオーバーレイネットワークを使用して2つのドッカーサービスが実行されています。 1つはNexus 3のプライベートリポジトリで、もう1つはnginxのリバースプロキシです。 nginxだけがポートを公開しています。504ドッカーのswarmオーバーレイネットワーク上のバックエンドのゲートウェイタイムアウト

[email protected]:/# nslookup nexus   
Server:  127.0.0.11 
Address: 127.0.0.11#53 

Non-authoritative answer: 
Name: nexus 
Address: 10.0.0.6 

のwget:

このセットアップは、罰金が、断続的に、私は504 私はnginxのコンテナに乗る...

nslookupコマンドを取得します(おそらくアクセスされていない多くの時間後に)動作します

[email protected]:/# wget -O- nexus:8081 
--2017-05-09 23:23:18-- http://nexus:8081/ 
Resolving nexus (nexus)... 10.0.0.6 
Connecting to nexus (nexus)|10.0.0.6|:8081... failed: Connection timed out. 
Retrying. 

--2017-05-09 23:25:26-- (try: 2) http://nexus:8081/ 
Connecting to nexus (nexus)|10.0.0.6|:8081... ^C 
[email protected]:/# 

のping:

[email protected]:/# ping nexus 
PING nexus (10.0.0.6): 56 data bytes 
64 bytes from 10.0.0.6: icmp_seq=0 ttl=64 time=0.077 ms 
64 bytes from 10.0.0.6: icmp_seq=1 ttl=64 time=0.098 ms 
64 bytes from 10.0.0.6: icmp_seq=2 ttl=64 time=0.054 ms 
64 bytes from 10.0.0.6: icmp_seq=3 ttl=64 time=0.071 ms 
^C--- nexus ping statistics --- 
4 packets transmitted, 4 packets received, 0% packet loss 
round-trip min/avg/max/stddev = 0.054/0.075/0.098/0.000 ms 
[email protected]:/# 

だから、ネクサスコンテナアドレスを見つけることができます。

bash-4.2$ curl -v http://nexus:8081/ 
* About to connect() to nexus port 8081 (#0) 
* Trying 10.0.0.6... 
* Connected to nexus (10.0.0.6) port 8081 (#0) 
> GET/HTTP/1.1 
> User-Agent: curl/7.29.0 
> Host: nexus:8081 
> Accept: */* 
> 
< HTTP/1.1 200 OK 
< Date: Tue, 09 May 2017 23:23:03 GMT 
< Server: Nexus/3.1.0-04 (OSS) 
< X-Frame-Options: SAMEORIGIN 
< X-Content-Type-Options: nosniff 
< Content-Type: text/html 
< Last-Modified: Tue, 09 May 2017 23:23:03 GMT 
< Pragma: no-cache 
< Cache-Control: post-check=0, pre-check=0 
< Expires: 0 
< Content-Length: 4659 
< 

<!DOCTYPE html> 
<html> 
<head> 
    <title>Nexus Repository Manager</title> 

    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> 
    <meta name="description" content="Nexus Repository Manager"/> 
    <meta http-equiv="X-UA-Compatible" content="IE=9"/> 


    <!--[if lt IE 9]> 
    <script>(new Image).src="http://nexus:8081/static/rapture/resources/favicon.ico?_v=3.1.0-04"</script> 
    <![endif]--> 
    <link rel="icon" type="image/png" href="http://nexus:8081/static/rapture/resources/favicon-32x32.png?_v=3.1.0-04" sizes="32x32"> 
    <link rel="mask-icon" href="http://nexus:8081/static/rapture/resources/safari-pinned-tab.svg?_v=3.1.0-04" color="#5bbad5"> 
    <link rel="icon" type="image/png" href="http://nexus:8081/static/rapture/resources/favicon-16x16.png?_v=3.1.0-04" sizes="16x16"> 
    <link rel="shortcut icon" href="http://nexus:8081/static/rapture/resources/favicon.ico?_v=3.1.0-04"> 
    <meta name="msapplication-TileImage" content="http://nexus:8081/static/rapture/resources/mstile-144x144.png?_v=3.1.0-04"> 
    <meta name="msapplication-TileColor" content="#00a300"> 



      <link rel="stylesheet" type="text/css" href="http://nexus:8081/static/rapture/resources/loading-prod.css?_v=3.1.0-04"> 
      <link rel="stylesheet" type="text/css" href="http://nexus:8081/static/rapture/resources/baseapp-prod.css?_v=3.1.0-04"> 
      <link rel="stylesheet" type="text/css" href="http://nexus:8081/static/rapture/resources/nexus-rapture-prod.css?_v=3.1.0-04"> 
      <link rel="stylesheet" type="text/css" href="http://nexus:8081/static/rapture/resources/nexus-proximanova-plugin-prod.css?_v=3.1.0-04"> 
      <link rel="stylesheet" type="text/css" href="http://nexus:8081/static/rapture/resources/nexus-coreui-plugin-prod.css?_v=3.1.0-04"> 
      <link rel="stylesheet" type="text/css" href="http://nexus:8081/static/rapture/resources/nexus-proui-plugin-prod.css?_v=3.1.0-04"> 

    <script type="text/javascript"> 
    function progressMessage(msg) { 
     if (console && console.log) { 
     console.log(msg); 
     } 
     document.getElementById('loading-msg').innerHTML=msg; 
    } 
    </script> 
    </head> 
<body class="x-border-box"> 

<div id="loading-mask"></div> 
<div id="loading"> 
    <div id="loading-background"> 
    <img id="loading-logo" src="http://nexus:8081/static/rapture/resources/images/loading-logo.png?_v=3.1.0-04"/> 
    <img id="loading-product" src="http://nexus:8081/static/rapture/resources/images/loading-product.png?_v=3.1.0-04"/> 
    <div class="loading-indicator"> 
     <img id="loading-spinner" src="http://nexus:8081/static/rapture/resources/images/loading-spinner.gif?_v=3.1.0-04"/> 
     <span id="loading-msg">Loading ...</span> 
    </div> 
    </div> 

    <div id="code-load" class="x-hide-display"> 

        <script type="text/javascript">progressMessage('Loading baseapp-prod.js');</script> 
       <script type="text/javascript" src="http://nexus:8081/static/rapture/baseapp-prod.js?_v=3.1.0-04"></script> 
        <script type="text/javascript">progressMessage('Loading extdirect-prod.js');</script> 
       <script type="text/javascript" src="http://nexus:8081/static/rapture/extdirect-prod.js?_v=3.1.0-04"></script> 
        <script type="text/javascript">progressMessage('Loading bootstrap.js');</script> 
       <script type="text/javascript" src="http://nexus:8081/static/rapture/bootstrap.js?_v=3.1.0-04"></script> 
        <script type="text/javascript">progressMessage('Loading nexus-rapture-prod.js');</script> 
       <script type="text/javascript" src="http://nexus:8081/static/rapture/nexus-rapture-prod.js?_v=3.1.0-04"></script> 
        <script type="text/javascript">progressMessage('Loading nexus-coreui-plugin-prod.js');</script> 
       <script type="text/javascript" src="http://nexus:8081/static/rapture/nexus-coreui-plugin-prod.js?_v=3.1.0-04"></script> 
        <script type="text/javascript">progressMessage('Loading nexus-proui-plugin-prod.js');</script> 
       <script type="text/javascript" src="http://nexus:8081/static/rapture/nexus-proui-plugin-prod.js?_v=3.1.0-04"></script> 
        <script type="text/javascript">progressMessage('Loading app.js');</script> 
       <script type="text/javascript" src="http://nexus:8081/static/rapture/app.js?_v=3.1.0-04"></script> 

      <script type="text/javascript">progressMessage('Initializing ...');</script> 
    </div> 
</div> 

<form id="history-form" class="x-hide-display"> 
    <input type="hidden" id="x-history-field"/> 
    <iframe id="x-history-frame"></iframe> 
</form> 

</body> 
</html> 
* Connection #0 to host nexus left intact 
bash-4.2$ 
:私は、リポジトリのURLがアクセス可能であるが、どこからでも、私は504エラーを取得し、それをpingすることができますが、(群れの上に別のノード上)ネクサスコンテナ自体にポート8081

に接続することはできませんここで

、私はnginxのコンテナpingを実行することができます

bash-4.2$ ping nginx_nexus 
PING nginx_nexus (10.0.0.8) 56(84) bytes of data. 
64 bytes from 10.0.0.8 (10.0.0.8): icmp_seq=1 ttl=64 time=0.089 ms 
64 bytes from 10.0.0.8 (10.0.0.8): icmp_seq=2 ttl=64 time=0.066 ms 
64 bytes from 10.0.0.8 (10.0.0.8): icmp_seq=3 ttl=64 time=0.047 ms 
64 bytes from 10.0.0.8 (10.0.0.8): icmp_seq=4 ttl=64 time=0.076 ms 
^C 
--- nginx_nexus ping statistics --- 
4 packets transmitted, 4 received, 0% packet loss, time 2999ms 
rtt min/avg/max/mdev = 0.047/0.069/0.089/0.017 ms 
bash-4.2$ 

注:今まで、私は「504ゲートウェイタイムアウト」を取得する任意の外部の点からリバースプロキシnginxの経由ネクサスにアクセスしてみてください。しかし、ネクサスコンテナで次のコマンドを実行すると、エラーは消えます。

bash-4.2$ curl -v nginx_nexus 
* About to connect() to nginx_nexus port 80 (#0) 
* Trying 10.0.0.8... 
* Connected to nginx_nexus (10.0.0.8) port 80 (#0) 
> GET/HTTP/1.1 
> User-Agent: curl/7.29.0 
> Host: nginx_nexus 
> Accept: */* 
> 
< HTTP/1.1 200 OK 
< Server: nginx/1.13.0 
< Date: Tue, 09 May 2017 23:33:44 GMT 
< Content-Type: text/html 
< Content-Length: 4681 
< Connection: keep-alive 
< Keep-Alive: timeout=5 
< X-Frame-Options: SAMEORIGIN 
< X-Content-Type-Options: nosniff 
< Last-Modified: Tue, 09 May 2017 23:33:44 GMT 
< Pragma: no-cache 
< Cache-Control: post-check=0, pre-check=0 
< Expires: 0 
< 

<!DOCTYPE html> 
<html> 
<head> 
    <title>Nexus Repository Manager</title> 

    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> 
    <meta name="description" content="Nexus Repository Manager"/> 
    <meta http-equiv="X-UA-Compatible" content="IE=9"/> 


    <!--[if lt IE 9]> 
    <script>(new Image).src="http://nginx_nexus/static/rapture/resources/favicon.ico?_v=3.1.0-04"</script> 
    <![endif]--> 
    <link rel="icon" type="image/png" href="http://nginx_nexus/static/rapture/resources/favicon-32x32.png?_v=3.1.0-04" sizes="32x32"> 
    <link rel="mask-icon" href="http://nginx_nexus/static/rapture/resources/safari-pinned-tab.svg?_v=3.1.0-04" color="#5bbad5"> 
    <link rel="icon" type="image/png" href="http://nginx_nexus/static/rapture/resources/favicon-16x16.png?_v=3.1.0-04" sizes="16x16"> 
    <link rel="shortcut icon" href="http://nginx_nexus/static/rapture/resources/favicon.ico?_v=3.1.0-04"> 
    <meta name="msapplication-TileImage" content="http://nginx_nexus/static/rapture/resources/mstile-144x144.png?_v=3.1.0-04"> 
    <meta name="msapplication-TileColor" content="#00a300"> 



      <link rel="stylesheet" type="text/css" href="http://nginx_nexus/static/rapture/resources/loading-prod.css?_v=3.1.0-04"> 
      <link rel="stylesheet" type="text/css" href="http://nginx_nexus/static/rapture/resources/baseapp-prod.css?_v=3.1.0-04"> 
      <link rel="stylesheet" type="text/css" href="http://nginx_nexus/static/rapture/resources/nexus-rapture-prod.css?_v=3.1.0-04"> 
      <link rel="stylesheet" type="text/css" href="http://nginx_nexus/static/rapture/resources/nexus-proximanova-plugin-prod.css?_v=3.1.0-04"> 
      <link rel="stylesheet" type="text/css" href="http://nginx_nexus/static/rapture/resources/nexus-coreui-plugin-prod.css?_v=3.1.0-04"> 
      <link rel="stylesheet" type="text/css" href="http://nginx_nexus/static/rapture/resources/nexus-proui-plugin-prod.css?_v=3.1.0-04"> 

    <script type="text/javascript"> 
    function progressMessage(msg) { 
     if (console && console.log) { 
     console.log(msg); 
     } 
     document.getElementById('loading-msg').innerHTML=msg; 
    } 
    </script> 
    </head> 
<body class="x-border-box"> 

<div id="loading-mask"></div> 
<div id="loading"> 
    <div id="loading-background"> 
    <img id="loading-logo" src="http://nginx_nexus/static/rapture/resources/images/loading-logo.png?_v=3.1.0-04"/> 
    <img id="loading-product" src="http://nginx_nexus/static/rapture/resources/images/loading-product.png?_v=3.1.0-04"/> 
    <div class="loading-indicator"> 
     <img id="loading-spinner" src="http://nginx_nexus/static/rapture/resources/images/loading-spinner.gif?_v=3.1.0-04"/> 
     <span id="loading-msg">Loading ...</span> 
    </div> 
    </div> 

    <div id="code-load" class="x-hide-display"> 

        <script type="text/javascript">progressMessage('Loading baseapp-prod.js');</script> 
       <script type="text/javascript" src="http://nginx_nexus/static/rapture/baseapp-prod.js?_v=3.1.0-04"></script> 
        <script type="text/javascript">progressMessage('Loading extdirect-prod.js');</script> 
       <script type="text/javascript" src="http://nginx_nexus/static/rapture/extdirect-prod.js?_v=3.1.0-04"></script> 
        <script type="text/javascript">progressMessage('Loading bootstrap.js');</script> 
       <script type="text/javascript" src="http://nginx_nexus/static/rapture/bootstrap.js?_v=3.1.0-04"></script> 
        <script type="text/javascript">progressMessage('Loading nexus-rapture-prod.js');</script> 
       <script type="text/javascript" src="http://nginx_nexus/static/rapture/nexus-rapture-prod.js?_v=3.1.0-04"></script> 
        <script type="text/javascript">progressMessage('Loading nexus-coreui-plugin-prod.js');</script> 
       <script type="text/javascript" src="http://nginx_nexus/static/rapture/nexus-coreui-plugin-prod.js?_v=3.1.0-04"></script> 
        <script type="text/javascript">progressMessage('Loading nexus-proui-plugin-prod.js');</script> 
       <script type="text/javascript" src="http://nginx_nexus/static/rapture/nexus-proui-plugin-prod.js?_v=3.1.0-04"></script> 
        <script type="text/javascript">progressMessage('Loading app.js');</script> 
       <script type="text/javascript" src="http://nginx_nexus/static/rapture/app.js?_v=3.1.0-04"></script> 

      <script type="text/javascript">progressMessage('Initializing ...');</script> 
    </div> 
</div> 

<form id="history-form" class="x-hide-display"> 
    <input type="hidden" id="x-history-field"/> 
    <iframe id="x-history-frame"></iframe> 
</form> 

</body> 
</html> 
* Connection #0 to host nginx_nexus left intact 
bash-4.2$ 

これは断続的に起こります。リポジトリが使用されていない数時間後、私は再び "504 Gateway Time-out"を見つけ、swarmノードとnexusコンテナにログインし、カールを再度実行して解決しなければなりません。 504エラーの解決策を見つけてください。この問題は、コンテナが同じホスト上で実行されており、オーバーレイネットワークが使用されていない場合は存在しません。

+0

この問題を解決する方法はありますか? – simdrouin

+0

問題はopenstackのアップグレードで消えました。私はバージョンの詳細やセットアップを利用できなくなったので、それに関する詳細情報を提供することはできません。 – Anu

答えて

0

openstackのアップグレードで問題が解決しませんでした。私はバージョンの詳細やセットアップを利用できなくなったので、それに関する詳細情報を提供することはできません。

関連する問題