Implémentation de Nginx en tant que proxy inverse sur une instance EC2, pour une ferme Eclipse Che

En ce qui concerne la mise à l'échelle d' Eclipse Che (un IDE de nuage), je met en œuvre une ferme Che . Bref, un groupe d'instances Eclipse Che derrière un proxy inverse.

entrez la description de l'image ici

Ok, je met en œuvre le proxy inverse à l'aide de Nginx sur une instance EC2 utilisant Amazon Linux AMI, mais j'ai trouvé ce problème: Eclipse Che a ouvert le port 8080 pour le client et la plage 32768-65535 pour ses espaces de travail (plus d'informations ici ) .

Donc, j'ai modifié le file nginx.conf comme ceci:

 server { listn 32768; listn 32769; listn 32770; listn 32771; [...] listn 65534; listn 65535; server_name http://eclipse.company.cxx; location / { proxy_pass http://eclipse.company.local:$server_port; } } 

Après le redémarrage nginx, j'ai reçu ce message:

 $ sudo service nginx restart nginx: [emerg] socket() 0.0.0.0:33786 failed (24: Too many open files) nginx: configuration file /etc/nginx/nginx.conf test failed 

Deux questions, s'il vous plaît:

  1. Est-ce une approche valable pour implémenter un proxy inverse dans cette situation?
  2. Si cela est valide, comment puis-je corriger l'erreur "Trop de files ouverts"?

One Solution collect form web for “Implémentation de Nginx en tant que proxy inverse sur une instance EC2, pour une ferme Eclipse Che”

  • Pas sûr de votre environnement, juste comme un indice: la machine en question est-elle accessible au public? Si c'est le cas, implémentez l'authentification / autorisation, ou utilisez un VPN.

    Si cela est valide, comment puis-je corriger l'erreur "Trop de files ouverts"?

  • Probablement, parce qu'il écoute que de nombreux ports, votre nginx , s'exécute contre les limites, en particulier ceux concernant le (s) descripteur (s) de file , qui "[…] est un indicateur (handle) abstrait utilisé pour accéder à un file ou à une autre input / ressource de sortie, comme un tuyau ou une prise réseau […] ".

  • Pour régler ces limites:

    • Tirer parti de la directive nginx worker_rlimit_nofile .
    • Si cela ne suffit pas:

      • Changez la limite large du système, qui est stockée dans /proc/sys/file-max . Pour le modifier, exécutez sysctl -w fs.file-max=${your-new-limit} . Pour le rendre persistant sur les redémarrages, éditez /etc/sysctl.conf .
      • Modifiez la limite user, qui est stockée dans /etc/security/limits.conf : à l'intérieur, mettez par exemple deux lignes en lecture:

         nginx soft nofile ${your-new-soft-limit} nginx hard nofile ${your-new-hard-limit} 
  • comment faire que NGINX lise le directory des files statiques lors du passage de proxy
  • Le déchargement SSL de Nginx provoque le chargement de la page imparfaite du côté client
  • Apache 2.4 proxying une URL comprenant / # / ssortingps tout au-delà de l'ancrage
  • Configurer TMG en tant que proxy inverse, https-to-http
  • Faites en sorte que nginx passe le nom d'hôte de l'amont lors de l'inversion de l'image
  • Apache: configuration d'une configuration proxy inverse avec SSL avec réécriture url
  • Cache de proxy NGINX - variable de bus cache dans queryssortingng - possible d'ignorer?
  • Proxy d'un autre domaine vers un hôte virtuel
  • Demandes par seconde plus lente lorsque vous utilisez nginx pour l'équilibrage de charge
  • Une adresse IP interne est apparue dans les journaux de mon site Web
  • Apache reverse proxy: Devrais-je voir le nom du server auquel je suis redirigé dans le browser?
  • Les astuces du serveur de linux et windows, tels que ubuntu, centos, apache, nginx, debian et des sujets de rĂ©seau.