Um einen Legacy-Dienst zu ersetzen, bin ich daran interessiert, zwei verschiedene Webapps auf zwei verschiedenen HTTP-Portnummern zu haben, z. B. 8080 - & gt; webapp1 (Browserdienst), 8200 - & gt; webapp2 (REST, neue Version verwendet RESTEasy). Jeder ist der "root context" für diese Portnummer.
Die "Standard" -Antwort auf dieser Site bezieht sich auf JBoss 5, das sind zwei Hauptversionen, die zurück in der Geschichte sind und eine Zillion Konfigurationsformatänderungen haben.
Ich verwende JBoss AS 7.0.2.Final und die "Standalone" -Implementierung. Hat das jemand gemacht und kann die verwendete Konfiguration teilen? Danke.
Sie könnten eine verwaltete Domäneninstanz ausführen. Auf diese Weise können Sie zwei Serverinstanzen mit jeweils einer Webanwendung verwalten sowie die Port- und Interface-Deklarationen von einer einzigen Konsolenansicht aus verwalten.
Ziel wäre eine verwaltete Domäne mit zwei Servern. Jeder Server würde zu einer anderen Servergruppe gehören. Jede Servergruppe hat ihre eigene Schnittstelle oder Port-Deklarationen, wie Sie es benötigen.
Dies gibt Ihnen eine einzige Verwaltungskonsole mit einer Reihe relativer Servergruppen, denen Sie Ihre aktuellen und zukünftigen Server zuweisen können, mit der Möglichkeit, Änderungen vorzunehmen, neu zuzuweisen oder zu deaktivieren.
Die Dateien, auf die Sie achten müssen, sind die Konfigurationsdateien host.xml
und domain.xml
unter dem folgenden Dateipfad.
~/JBOSS_HOME/domain/configuration
Von domain.xml
können wir die Socket-Bindungsgruppen sehen. Das folgende Beispiel ist eine Standardgruppe "Standard-Sockets". Sie können jedoch beliebig viele Gruppen mit beliebig vielen Deklarationen erstellen.
Sie können zwei Socket-Binding-Gruppen für Ihre Anforderungen erstellen, die den zwei Ports entsprechen, die Sie möglicherweise benötigen. Sobald sie vorhanden sind, möchten Sie, dass eine Servergruppe sie kennt. Schauen wir uns die Datei domain.xml
genauer an.
Im folgenden Beispiel sehen wir, dass eine Servergruppe auf eine Socket-Bindungsgruppe verweist. Für Bonuspunkte können wir sehen, dass einige Anwendungen für sie bereitgestellt werden. Dies ist über die Management Console geschehen, aber AS 7 bleibt bestehen, wenn Konsole und CLI in die Konfiguration geändert werden.
%Vor% Die Datei domain.xml
ist die Konfiguration des Domänencontrollers, der der "Boss" der verwalteten Domäne ist. Die tatsächlichen Serverinformationen sind im Host-Controller enthalten. Sehen wir uns die host.xml
-Datei an.
Wir können drei Server in der Standarddomäne sehen. Der dritte ist ein Mitglied der Gruppe other-server-group
, während die ersten beiden Mitglieder der Gruppe main-server-group
sind. Beachten Sie auch die Port-Binding-Deklarationen.
Sie könnten den dritten Server löschen und Server 1 und Server 2 der ersten bzw. zweiten Webanwendung zuweisen. Jeder Server kann zu einer eindeutigen Gruppe gehören. Jede Gruppe kann einen eindeutigen Port deklarieren. Danach können Sie Ihre Anwendungen in den jeweiligen Gruppen bereitstellen und Sie sind unterwegs.
Die Beispiele zeigen XML, Sie sollten jedoch die Managementkonsole oder die Management-CLI verwenden, wenn Sie Ihre Installation konfigurieren. Die Konsole ist einfach genug, deshalb helfen hier einige CLI-Operationen.
Um die Servergruppen anzuzeigen:
[domain@localhost:9999 /] /server-group=*:read-resource(include-runtime=true)
So zeigen Sie die Socket-Bindungsgruppen an:
[domain@localhost:9999 /] /socket-binding-group=*:read-resource(include-runtime=true)
Sie möchten die spezifischen http
-Attributwerte offen legen, damit wir unsere CLI-Operation so anpassen können, dass sie auf diesem untergeordneten Knoten ausgeführt wird. Durch das Einbeziehen des Laufzeitparameters können wir alles abfangen, das zur Laufzeit übergeben wurde und nicht in das Servermodell geschrieben wurde.
[domain@localhost:9999 /] /socket-binding-group=standard-sockets/socket-binding=http:read-resource(include-runtime=true)
Und so schreibst du es.
[domain@localhost:9999 /] /socket-binding-group=standard-sockets/socket-binding=http:write-attribute(name=port,value=8081)
Das sollte dich beginnen. Wie Sie vielleicht feststellen, bin ich ein Fan der Managed Domain ...
Um einen Legacy-Dienst zu ersetzen, bin ich daran interessiert, zwei verschiedene Webapps auf zwei verschiedenen HTTP-Portnummern zu haben, z. B. 8080 - & gt; webapp1 (Browserdienst), 8200 - & gt; webapp2 (REST, neue Version verwendet RESTEasy). Jeder ist der "root context" für diese Portnummer.
Die "Standard" -Antwort auf dieser Site bezieht sich auf JBoss 5, das sind zwei Hauptversionen, die zurück in der Geschichte sind und eine Zillion Konfigurationsformatänderungen haben.
Ich verwende JBoss AS 7.0.2.Final und die "Standalone" -Implementierung. Hat das jemand gemacht und kann die verwendete Konfiguration teilen? Danke.
Sie könnten eine verwaltete Domäneninstanz ausführen. Auf diese Weise können Sie zwei Serverinstanzen mit jeweils einer Webanwendung verwalten sowie die Port- und Interface-Deklarationen von einer einzigen Konsolenansicht aus verwalten.
Ziel wäre eine verwaltete Domäne mit zwei Servern. Jeder Server würde zu einer anderen Servergruppe gehören. Jede Servergruppe hat ihre eigene Schnittstelle oder Port-Deklarationen, wie Sie es benötigen.
Dies gibt Ihnen eine einzige Verwaltungskonsole mit einer Reihe relativer Servergruppen, denen Sie Ihre aktuellen und zukünftigen Server zuweisen können, mit der Möglichkeit, Änderungen vorzunehmen, neu zuzuweisen oder zu deaktivieren.
Die Dateien, auf die Sie achten müssen, sind die Konfigurationsdateien -c
und socket-binding-group
unter dem folgenden Dateipfad.
port-offset
Von %code% können wir die Socket-Bindungsgruppen sehen. Das folgende Beispiel ist eine Standardgruppe "Standard-Sockets". Sie können jedoch beliebig viele Gruppen mit beliebig vielen Deklarationen erstellen.
%Vor%Sie können zwei Socket-Binding-Gruppen für Ihre Anforderungen erstellen, die den zwei Ports entsprechen, die Sie möglicherweise benötigen. Sobald sie vorhanden sind, möchten Sie, dass eine Servergruppe sie kennt. Schauen wir uns die Datei %code% genauer an.
Im folgenden Beispiel sehen wir, dass eine Servergruppe auf eine Socket-Bindungsgruppe verweist. Für Bonuspunkte können wir sehen, dass einige Anwendungen für sie bereitgestellt werden. Dies ist über die Management Console geschehen, aber AS 7 bleibt bestehen, wenn Konsole und CLI in die Konfiguration geändert werden.
%Vor%Die Datei %code% ist die Konfiguration des Domänencontrollers, der der "Boss" der verwalteten Domäne ist. Die tatsächlichen Serverinformationen sind im Host-Controller enthalten. Sehen wir uns die %code% -Datei an.
%Vor%Wir können drei Server in der Standarddomäne sehen. Der dritte ist ein Mitglied der Gruppe %code% , während die ersten beiden Mitglieder der Gruppe %code% sind. Beachten Sie auch die Port-Binding-Deklarationen.
Sie könnten den dritten Server löschen und Server 1 und Server 2 der ersten bzw. zweiten Webanwendung zuweisen. Jeder Server kann zu einer eindeutigen Gruppe gehören. Jede Gruppe kann einen eindeutigen Port deklarieren. Danach können Sie Ihre Anwendungen in den jeweiligen Gruppen bereitstellen und Sie sind unterwegs.
Die Beispiele zeigen XML, Sie sollten jedoch die Managementkonsole oder die Management-CLI verwenden, wenn Sie Ihre Installation konfigurieren. Die Konsole ist einfach genug, deshalb helfen hier einige CLI-Operationen.
Um die Servergruppen anzuzeigen:
%code%
So zeigen Sie die Socket-Bindungsgruppen an:
%code%
Sie möchten die spezifischen %code% -Attributwerte offen legen, damit wir unsere CLI-Operation so anpassen können, dass sie auf diesem untergeordneten Knoten ausgeführt wird. Durch das Einbeziehen des Laufzeitparameters können wir alles abfangen, das zur Laufzeit übergeben wurde und nicht in das Servermodell geschrieben wurde.
%code%
Und so schreibst du es.
%code%
Das sollte dich beginnen. Wie Sie vielleicht feststellen, bin ich ein Fan der Managed Domain ...
Danke @ ddri, Wie in @ddri erwähnt, möchte ich einige Dinge hinzufügen, Ich habe alle Schritte von dir @ddri verfolgt, aber meine Apps wurden nicht auf bestimmten Ports bereitgestellt, ich möchte eine Korrektur vornehmen (was in meinem Fall funktioniert)
%code% Öffnen Sie domain.xml und wählen Sie eine Socket-Bindungsgruppe, die Sie verwenden möchten. Standardmäßig haben wir
%Vor%Ich habe 2,3 verwendet. Hier ist mein Auszug
%Vor%%code% In domain.xml find %code% ad konfiguriere deine %code% für jede von ihnen, hier ist mein Snippet
%Vor%%code% Öffnen Sie host.xml und konfigurieren Sie Ihren Server mit der Server-Gruppe
%Vor%%code% Gehen Sie zu Ihrem %code% Ordner und führen Sie %code% file aus und stellen Sie sicher, dass keine Ausnahme für den bereits verbundenen Port kommt.
================================================ ==================================== %code% Öffne jboss-cli von %code% und gib
ein %Vor%und bestätigen Sie, dass Sie jboss unter Domänenkonfiguration und nicht als eigenständige Konfiguration ausführen
%Vor%Um einen beliebigen App-Typ zu implementieren
%Vor%und stellen Sie sicher, dass jede App, die Sie gerade ausführen, in ihrer web.xml ein %code% -Tag haben sollte.
Jetzt können Sie zwei App auf verschiedenen Ports einer einzelnen Instanz von jboss ausführen:)
Danke @ ddri, Wie in @ddri erwähnt, möchte ich einige Dinge hinzufügen, Ich habe alle Schritte von dir @ddri verfolgt, aber meine Apps wurden nicht auf bestimmten Ports bereitgestellt, ich möchte eine Korrektur vornehmen (was in meinem Fall funktioniert)
Step 1
Öffnen Sie domain.xml und wählen Sie eine Socket-Bindungsgruppe, die Sie verwenden möchten. Standardmäßig haben wir
Ich habe 2,3 verwendet. Hier ist mein Auszug
%Vor% Step 2
In domain.xml find <server-groups>
ad konfiguriere deine <socket-binding-group>
für jede von ihnen, hier ist mein Snippet
Step 3
Öffnen Sie host.xml und konfigurieren Sie Ihren Server mit der Server-Gruppe
Step 4
Gehen Sie zu Ihrem {JBoss_Home}/bin
Ordner und führen Sie domain.bat
file aus und stellen Sie sicher, dass keine Ausnahme für den bereits verbundenen Port kommt.
================================================ ====================================
Step 5
Öffne jboss-cli von {JBoss_Home}/bin
und gib
und bestätigen Sie, dass Sie jboss unter Domänenkonfiguration und nicht als eigenständige Konfiguration ausführen
%Vor%Um einen beliebigen App-Typ zu implementieren
%Vor% und stellen Sie sicher, dass jede App, die Sie gerade ausführen, in ihrer web.xml ein </distributable>
-Tag haben sollte.
Jetzt können Sie zwei App auf verschiedenen Ports einer einzelnen Instanz von jboss ausführen:)
Tags und Links configuration web-applications jboss7.x ports