2017-08-22 3 views
-1

J'ai un serveur Ubuntu 16.04 avec deux cartes NIC. Les deux sont configurés avec IP statique et définis sur des hôtes différents. A ce moment, j'ai lancé Apache et glassfish sur la même interface (une seule des cartes), Apache écoute sur le port 80 et glassfish sur le 8080 (configuration classique). Maintenant, je veux activer le deuxième NIC afin de permettre à glassfish d'écouter le port 80. De cette façon, je vais avoir Apache écoutant le port 80 de la première NIC et Glassfish le port 80 avec l'autre carte et le domaine différent. Cependant, je ne peux pas accomplir cela.Configuration Glassfih et Apache avec deux cartes NIC

Au moment où j'ai essayé les configurations suivantes, mais aucun d'entre eux fonctionne:

  • Création d'un nouveau http-auditeur avec le port 80 et avec adresse égale à la deuxième adresse IP nic.
  • Création d'un serveur virtuel, définissez l'hôte sur la deuxième adresse IP nic, puis sur http-listener avec le port 80.
  • Créez un nouveau domaine avec --keytooloption CN = my.domain.name et avec ce domaine faire les deux choses sur (lors de la création de ce domaine - instanceport 80 n'est pas autorisé, un message dit que le port 80 est utilisé, mais de mon point de vue, le port 80 est utilisé mais par une interface différente ...?).
  • Certains différents ajustements domain.xml comme les ports, les hôtes, etc.

J'ai lu la documentation Glassfish les deux ou trois jours et n'a pas trouvé la réponse. Encore

Les deux cartes sont nic sur le même réseau, par exemple: 111.222.333.1 et l'autre 111.222.333.2

Je n'ai pas essayé avec des sous différents filets peut-être changer la seconde carte réseau IP à 111.222.444.2, Cependant, je n'ai pas les privilèges nécessaires pour faire ces changements et avant de demander aux informaticiens de l'entreprise et de changer d'autres configurations, j'aimerais savoir si quelqu'un d'entre vous a déjà vécu un scénario similaire? Est-ce que quelqu'un a une idée? suggestions?

Répondre

0

Après plusieurs tentatives, je reçois la bonne configuration.

Étape 1

Comme le serveur ont des serveurs Apache et Glassfish, par défaut, la configuration apache écouter le port 80 pour toutes les adresses IP, est donc la première chose à changer:

--/etc/apache2/ports.conf 
change line "Listen 80" by "Listen ###.###.###.###:80" having ###... as the apache desired ip address 
Then restart apache 
/etc/init.d/apache2 restart 

Étape 2

Créer un écouteur http pour Glassfish sur le port 80 pour la deuxième adresse IP:

sudo ./asadmin create-http-listener --listeneraddress ###.###.###.### --listenerport 80 --acceptorthreads 16 --securityenabled=false --default-virtual-server server myListenerName 

Étape 3

Si vous avez déjà Glassfish installé (comme mon cas), il était déjà à l'écoute à l'adresse IP précédente (un apache) mais dans 8080 port, afin d'écouter la nouvelle adresse IP, un nouveau serveur virtuel doit être créé:

./asadmin create-virtual-server --hosts my.domain.name --networklisteners myListenerName myservername 

Étape 4

au moment de http-auditeur création "myListenerName", il faut ed être lié à un serveur, le seul disponible à ce moment-là était celui par défaut: "server". Mettez alors à jour manuellement domain.xml afin de supprimer myListenerName des écouteurs de réseau du serveur et ajoutez-le au serveur virtuel "myservername". A la fin, il ressemble à ce qui précède:

<virtual-server network-listeners="http-listener-1,http-listener-2" id="server"></virtual-server> 
    <virtual-server network-listeners="myListenerName" hosts="my.domain.nama" id="myservername"></virtual-server> 

Étape 5

Re commencer GlassFish

./asadmin stop-domain domain1 
./asadmin start-domain domain1 

Étape 6

déployer une application sur le nouveau serveur

./asadmin deploy --virtualservers myservername /path/to/my.war 

Étape 7

Relax

J'espère que cette information aide quelqu'un!