WildFly 8 - En neie verbesserte JBoss Applikatiounsserver fir Linux


Wéi mir all wëssen datt JBoss AS op WildFly ëmbenannt gouf. Vill nei Features goufe bäigefüügt a vill goufen aktualiséiert. Endlech WildFly 8.0.0 Final gouf den 11. Februar 2014 verëffentlecht. WildFly Project Lead Jason Greene huet datselwecht ugekënnegt.

WildFly 8 ass Red Hat's Java EE 7-kompatibel Open Source Applikatiounsserver. D'Haaptmerkmale sinn wéi hei ënnen:

Déi gréissten Ännerung an dësem ass datt elo WildFly 8 offiziell Java EE7 zertifizéiert ass.

Undertow ass en neie High-Performance Webserver geschriwwen op Java. Elo gouf dëst am WildFly implementéiert 8. Dëst ass wierklech entworf fir héich Duerchgang a Skalierbarkeet a kann Millioune vu Verbindungen handhaben. Dem Undertow säi Liewenszyklus gëtt komplett vun der Embedding Applikatioun kontrolléiert. Dëst ass extrem liicht mat engem Core Jar mat enger Gréisst vun 1MB an engem Embedded Server mat manner wéi 4MB Heap Space. Dëst ass wierklech super.

Zënter datt et Undertow benotzt deen Ënnerstëtzung fir Upgradéiere vun HTTP, wat et erlaabt datt verschidde Protokoller iwwer een eenzegen HTTP-Port multiplexéiert ginn. WildFly 8 huet bal all seng Protokoller geplënnert fir iwwer zwee HTTP Ports multiplexéiert ze ginn: een ass Gestioun an en aneren ass Applikatiounsport. Dëst ass wierklech eng grouss Ännerung a Virdeel fir Cloud Ubidder (wéi OpenShift) déi Honnerte bis Dausende vun Instanzen op engem eenzege Server lafen. Am Ganzen huet et zwee Standard Ports fir Konfiguratioun a si sinn 9990 (Web Administration Console) an 8080 (Application Console).

Dëst ass déi nei an interessant Saach, déi am WildFly 8 implementéiert ass. Andeems Dir dëst benotzt kënne mir verschidde Benotzer erstellen a kënnen déi verschidde Rollen no Ufuerderungen zouzeschreiwen. Ech weisen Iech spéider mat Screenshots.

D'Verwaltungs-API ënnerstëtzt elo d'Fäegkeet fir déi verfügbar Logdateien op engem Server ze lëschten an ze gesinn. Elo hu mir Attributer genannt add-logging-api-dependencies verfügbar fir all Zort vun Deployementer, an deenen mir de Container Logbuch wëllen iwwersprangen. Dëst wäert d'Addéiere vun den impliziten Server-Protokollabhängegkeeten auszeschalten. Mir hunn eng aner Optioun, dh mir kënnen Benotzt e jboss-deployment-structure.xml fir de Logbicher-Subsystem auszeschléissen. Mat dësem hëlleft et de Log-Subsystem ze verhënneren datt duerch all Deployment geet.

Mir kënnen och en anere Parameter benotzen, dh use-deployment-logging-config fir d'Veraarbechtung vun de Logbicher Konfiguratiounsdateien an enger Deployment z'aktivéieren/auszeschalten.

Bemierkung: Systemeigendom déi mir benotzt hunn fir pro Logbuch auszeschalten ass vun dëser Versioun ofgeschaaft ginn.

Erëm Grouss Ännerung ass ee Clustering. All Features am Zesummenhang mat Clustering Support goufen am WildFly 8 geännert an dës enthalen wéi hei ënnen:

  1. Verdeelt Web Sessioun gouf dofir optimiséiert mat neien Java Based Web Server dh Undertow.
  2. mod_cluster Ënnerstëtzung fir Undertow.
  3. Optimiséiert verdeelt SSO (Single Sign-On) Fäegkeeten an Ënnerstëtzung fir Undertow.
  4. Nei/optimiséiert verdeelt @Stateful EJB Caching Implementatioun.
  5. WildFly 8 huet e puer nei ëffentlech Clustering API bäigefüügt.
  6. Fir Singleton Servicer ze kreéieren gëtt et nei ëffentlech APIen.

CLI Configuratioun ass och verbessert ginn. Dir wësst All Admin gär op CLI ze schaffen ;). Also, elo kënne mir Alias fir e bestëmmte Server erstellen an dann deen Alias benotze wann Dir mat deem Server wëllt verbannen mam Connect Kommando.

Et ginn nach vill Verbesserungen an Updates am WildFly 8 gemaach. Dir kënnt all dës kucken op:

  1. http://wildfly.org/news/2014/02/11/WildFly8-Final-Released/

Installatioun vu WildFly 8 op Linux

Ier Dir mat der Installatioun weidergeet, gitt sécher datt Dir Java EE 7 op Ärem System installéiert hutt. WildFly 8 wäert net mat virdrun Versiounen Aarbecht. Follegt w.e.g. de Guide hei ënnen fir Java EE 7 an de Linux Systemer z'installéieren.

  1. JDK/JRE 7u25 op Linux installéieren

Benotzt de folgende Link fir déi lescht WildFly Zip Datei erofzelueden.

  1. http://download.jboss.org/wildfly/8.0.0.Final/wildfly-8.0.0.Final.zip

Dir kënnt och 'wget' Kommando benotzen fir direkt op der Kommandozeil erofzelueden.

 wget http://download.jboss.org/wildfly/8.0.0.Final/wildfly-8.0.0.Final.zip

Kopéiert d'Zip-Datei op all gewënschte Plaz (zB '/data/' a mengem Fall) an extrahéiert mam Kommando 'unzip'.

 cp wildfly-8.0.0.Final.zip /data/
 cd /data/
 unzip wildfly-8.0.0.Final.zip

Setzt elo e puer Ëmfeldvariablen. Dir kënnt dës op systemweis oder an Äre Konfiguratiounsdateien setzen. Hei setzen ech bannent Konfiguratiounsdateien standalone.sh a standalone.conf am 'bin' Dossier.

 cd wildfly-8.0.0.Final
 cd bin/

Füügt dës zwou folgend Linnen op standlone.sh/standlone.conf Dateien. Gitt weg Är WildFly Installatiounsplaz an Java Home Location.

JBOSS_HOME=”/data/wildfly-8.0.0.Final”
JAVA_HOME=”/data/java/jre7/bin/java”

Notiz: Fir de ganze System breet, kënnt Dir et ënner '/etc/profile' Datei setzen.

Start elo Server dh fir de Standalone Modus benotzt 'standalone.sh'a fir Domain Modus benotzt 'domain.sh'.

 ./standalone.sh
 ./domain.sh

Awer, hei fänken ech am Standalone Modus un. Par défaut gëtt et vun 'standalone.xml'Datei unzefänken, awer Dir kënnt och mat enger anerer Konfiguratioun mat '–server-config' Optioun ufänken.

Wéi hei ënnen starten ech de Server mat 'standalone-full-ha.xml' an dës Datei ass präsent an $JBOSS_HOME/standalone(profile)/configuration/.

 ./standalone.sh --server-config standalone-full-ha.xml
Calling "/data/wildfly-8.0.0.Final/standalone/configuration/standalone.conf"
Setting JAVA property to "/data/java/jre7/bin/java"
===============================================================================

  JBoss Bootstrap Environment

  JBOSS_HOME: "/data/wildfly-8.0.0.Final"

  JAVA: "/data/java/jre7/bin/java"

  JAVA_OPTS: "-client -Dprogram.name=standalone.sh -Xms64M -Xmx512M -XX:MaxPerm
Size=256M -Djava.net.preferIPv4Stack=true -Djboss.modules.system.pkgs=org.jboss.byteman"

===============================================================================

13:55:26,403 INFO  [org.jboss.modules] (main) JBoss Modules version 1.3.0.Final
13:55:33,812 INFO  [org.jboss.msc] (main) JBoss MSC version 1.2.0.Final
13:55:35,481 INFO  [org.jboss.as] (MSC service thread 1-1) JBAS015899: WildFly 8.0.0.Final "WildFly" starting
13:55:58,646 INFO  [org.jboss.as.server] (Controller Boot Thread) JBAS015888: Creating http management service using socket-binding (management-http)
...........
13:56:22,778 INFO  [org.jboss.as] (Controller Boot Thread) JBAS015961: Http management interface listening on http://127.0.0.1:9990/management
13:56:22,794 INFO  [org.jboss.as] (Controller Boot Thread) JBAS015951: Admin console listening on http://127.0.0.1:9990
13:56:22,794 INFO  [org.jboss.as] (Controller Boot Thread) JBAS015874: WildFly 8.0.0.Final "WildFly" started in 64534ms - Started 229 of 356 services (172 services are lazy, passive or on-demand)

Elo kënnt Dir Äre Browser op 'http://localhost:8080' weisen (wann Dir de Standard konfiguréierten http Hafen benotzt) deen Iech op de Wëllkommbildschierm bréngt.

Vun hei kënnt Dir Zougang zu WildFly Communautéit Dokumentatioun Guiden a verstäerkte Web-baséiert Administration Console Zougang.

WildFly 8 bitt zwou administrativ Konsolen fir d'Gestioun vun Lafen Instanz:

    1. webbaséiert Administratiounskonsole
    2. Kommando-Linn Interface

    Ier Dir mat der Administratiounskonsole verbënnt oder op afstand mat der Kommandozeil benotzt, musst Dir en neie Benotzer erstellen mat dem 'add-user.sh'Skript am Bin Dossier.

    Als nächst gitt op 'bin' Verzeechnes, set 'JBOSS_HOME'an add-user.sh (wann d'Variabel net op Systembasen agestallt ass) a erstellt Benotzer wéi hei ënnen.

     ./add-user.sh

    Wann Dir de Skript gestart hutt, gitt Dir duerch de Prozess gefouert fir en neie Benotzer derbäi ze ginn:

    What type of user do you wish to add?
     a) Management User (mgmt-users.properties)
     b) Application User (application-users.properties)
    (a):
    Enter the details of the new user to add.
    Using realm 'ManagementRealm' as discovered from the existing property files.
    Username : admin
    The username 'admin' is easy to guess
    Are you sure you want to add user 'admin' yes/no? yes
    Password recommendations are listed below. To modify these restrictions edit the add-user.properties configuration file.
     - The password should not be one of the following restricted values {root, admin, administrator}
     - The password should contain at least 8 characters, 1 alphanumeric character(s), 1 digit(s), 1 non-alphanumeric symbol(s)
     - The password should be different from the username
    Password :
    Re-enter Password :
    What groups do you want this user to belong to? (Please enter a comma separated list, or leave blank for none)[  ]:
    About to add user 'admin' for realm 'ManagementRealm'
    Is this correct yes/no? yes
    Added user 'admin' to file '/data/wildfly-8.0.0.Final/standalone/configuration/mgmt-users.properties'
    Added user 'admin' to file /data/wildfly-8.0.0.Final/domain/configuration/mgmt-users.properties'
    Added user 'admin' with groups  to file /data/wildfly-8.0.0.Final/standalone/configuration/mgmt-groups.properties'
    Added user 'admin' with groups  to file /data/wildfly-8.0.0.Final/domain/configuration/mgmt-groups.properties'
    Is this new user going to be used for one AS process to connect to another AS process?
    e.g. for a slave host controller connecting to the master or for a Remoting connection for server to server EJB calls.
    yes/no? yes
    To represent the user add the following to the server-identities definition 
    Press any key to continue . . .

    Gitt elo op d'webbaséiert Administratiounskonsole op 'http://localhost:9990/console'a gitt den neien erstallte Benotzernumm a Passwuert fir direkt op d'Verwaltungskonsole ze kommen.

    Éischt Écran Nom Login.

    Wann Dir léiwer Äre Server vum CLI ze handhaben, fuert de 'jboss-cli.sh' Skript aus dem 'bin' Verzeechnes deen déiselwecht Fäegkeeten iwwer de webbaséierten UI bitt.

     cd bin
     ./jboss-cli.sh --connect
    Connected to standalone controller at localhost:9999

    Fir méi Informatioun, befollegt déi offiziell WildFly 8 Dokumentatioun op https://docs.jboss.org/author/display/WFLY8/Documentation.