20944


Amazon ELBにつないでいる、EC2(Amazon Linux)にNginxをインストールして起動するとエラーが出ます。

用途として、Apacheを起動したままで、Kibana用にNginxを使いたいです。  
EC2,ELB環境にNginxをインストールして起動したのですが、以下の通りエラーが出てきます。

**設定ファイルを編集:**

[code]

    $ sudo vi /etc/nginx/conf.d/virtual.conf
    
    server {
      listen                *:10080 ;
    
      server_name           localhost;
      access_log            /var/log/nginx/kibana.access.log;
    
      location /kibana/ {
        root  /usr/share/nginx/html;
        index  index.html  index.htm;
      }
    
      location / {
        proxy_pass http://127.0.0.1:9200;
        proxy_read_timeout 90;
      }
    }
    
[/code]

**nginx サービスを起動:**

[code]

    $ sudo service nginx start
    
    Starting nginx: nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
    nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
    nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
    nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
    nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
    nginx: [emerg] still could not bind()
    
[/code]

* * *

`lsof` コマンドでポートの使用状況を調べると以下の通りですが、Nginxが使われておらず、どれを`kill`したらいいのかわからないです。  
httpdを止めて、nginxを起動すると成功するんですが、ELBでout of service になってしまいます。

[code]

    $ sudo lsof -i:80
    
    COMMAND  PID   USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
    httpd   2456   root    4u  IPv6  10447      0t0  TCP *:http (LISTEN)
    httpd   2535 apache    4u  IPv6  10447      0t0  TCP *:http (LISTEN)
    httpd   2536 apache    4u  IPv6  10447      0t0  TCP *:http (LISTEN)
    httpd   2536 apache    9u  IPv6  13343      0t0  TCP ip-111-11-11-111.ap-northeast-1.compute.internal:http->ip-111-11-11-11.ap-northeast-1.compute.internal:54275 (ESTABLISHED)
    httpd   2537 apache    4u  IPv6  10447      0t0  TCP *:http (LISTEN)
    httpd   2538 apache    4u  IPv6  10447      0t0  TCP *:http (LISTEN)
    httpd   2538 apache    9u  IPv6  13342      0t0  TCP ip-111-11-11-111.ap-northeast-1.compute.internal:http->ip-222-22-22-222.ap-northeast-1.compute.internal:39934 (ESTABLISHED)
    httpd   2539 apache    4u  IPv6  10447      0t0  TCP *:http (LISTEN)
    httpd   2588 apache    4u  IPv6  10447      0t0  TCP *:http (LISTEN)
    httpd   2589 apache    4u  IPv6  10447      0t0  TCP *:http (LISTEN)
    httpd   2590 apache    4u  IPv6  10447      0t0  TCP *:http (LISTEN)
    httpd   2701 apache    4u  IPv6  10447      0t0  TCP *:http (LISTEN)
    
[/code]


CC BY-SA 4.0
2016-01-15T08:13:38.990
20942
2022-08-28T08:45:09.730
2022-08-28T08:45:09.730
3060
10980
question
nginx amazon-linux
Amazon Linux で Nginx を起動するとエラー: Address already in use


apacheが動いていますね。  
Amazon Linux or CentOS であれば `sudo service httpd stop` で apache を停止してみてください。  
また、 `sudo chkconfig httpd off` で apache の自動起動を無効化してください。


CC BY-SA 3.0
2016-01-15T08:45:22.407
20944
2016-01-15T08:45:22.407
5008
20942
answer