Installationsprozess
Im folgenden wird MariaDB als Datenbank genutzt.
Datenbank erstellen
Linux
- In der Konsole in das Verzeichnis
<Install-path>\<datenbank>\bin
wechseln.
Bei MariaDB als Datenbank ist es das Verzeichnis<Install-path>
\mariadb\bin
Den Befehl mysql.exe -u "username" -p ausführen
BASHmysql -u root -p -h localhost
Hinweis
Hier müssen der Username und das Passwort der Datenbank benutzt werden.
Wenn die Verbindung steht die benötigte Datenbank erstellen (in der MariaDB-shell)
BASHcreate database ece2;
Folgende Befehle, mit den entsprechenden Variablen für
%mariadb-db-name%,%mariadb-wildfly-user%, %
mariadb-wildfly-pw%
und%host%
eingeben und ausführen lassen.XMLGRANT ALL PRIVILEGES ON ece2.* TO %mariadb-wildfly-user%@'localhost' IDENTIFIED BY '%mariadb-wildfly-pw%'; GRANT ALL PRIVILEGES ON ece2.* TO %mariadb-wildfly-user%@'127.0.0.1' IDENTIFIED BY '%mariadb-wildfly-pw%'; GRANT ALL PRIVILEGES ON ece2.* TO %mariadb-wildfly-user%@'::1' IDENTIFIED BY '%mariadb-wildfly-pw%'; GRANT ALL PRIVILEGES ON ece2.* TO %mariadb-wildfly-user%@'%host%' IDENTIFIED BY '%mariadb-wildfly-pw%'; FLUSH PRIVILEGES;
mySQL-Shell verlassen
- JDBC Treiber installieren
- wildfly dienst restart
RE Cockpit Umgebung vorbereiten
Linux
Um die RE Cockpit Umgebung vorzubereiten und zu strukturieren, müssen Verzeichnisse in der Shell erstellt werden.
cd /opt
sudo mkdir re-environment
cd re-environment
Wildfly installieren
Linux
Wildfly herunterladen
BASHcd ~/Downloads wget http://download.jboss.org/wildfly/18.0.1.Final/wildfly-18.0.1.Final.zip sudo mv ~/Downloads/wildfly-18.0.1.Final.zip /opt/re-environment/ cd /opt/re-environment
Inhalte in das Verzeichnis
/opt/re-environment
extrahierenstandalone-full.xml
bearbeiten, sodass es auf Wildfly zugreifen kann.Die IP-Adresse
127.0.0.1
suche und mit der IP-Adresse des Severs ersetzenwildfly-18.0.1.Final/standalone/configuration/standalone.xml
XML<wsdl-host>${jboss.bind.address:127.0.0.1}</wsdl> ... <interface name="management"> <inet-address value="${jboss.bind.address.management:127.0.0.1}"/> </interface> <interface name="public"> <inet-address value="${joss.bind.address:127.0.0.1}"/> </interface> <interface name="insecure"> <inet-address value="${joss.bind.address.unsecure:127.0.0.1}"/> </interface>
Windows
- Wildfly herunterladen
Inhalte entpacken
- Einen neuen Ordner "WildFly" im Installationsverzeichnis anlegen
Wildfly in das Installationsverzeichnis kopieren
Hinweis
Ein JDBC Treiber muss im Verzeichnis
<WildFly_home>\modules\system\layers\base\com\mysql\main
existieren.module.xml
in das Verzeichnis<Install-path>\WildFly\modules\system\layers\base\com\mysql\main
kopierenstandalone.xml
in das Verzeichnis<Install-path>\WildFly\standalone\configuration
kopieren
Wildfly konfigurieren
Linux
- Wildfly im Vordergrund starten
Wildfly Administrator anlegen
Konsole als Administrator öffnen
In das Verzeichnis <Install-path>/WildFly/bin wechseln
add-user.sh
ausführenFragen wie folgt beantworten:
Frage Antwort What type of user do you wish to add? a Username: z.B. wfadmin Password: z.B. wild_fly1 What groups do you want this user to belong to: blank About to add user 'wfadmin' for realm 'ManagementRealm' yes Is this new user going to be used for one AS process to connect to another AS process? yes
Firewall öffnen und bearbeiten sodass auf Wildfly zugegriffen werden kann
BASHsudo systemctl enable firewalld sudo systemctl start firewalld sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent sudo firewall-cmd --zone=public --add-port=9990/tcp --permanent sudo firewall-cmd --reload
Wildfly als Service ausführen
BASHcd /opt/re-environment sudo cp ./wildfly-18.0.1.Final/docs/contrib/scripts/init.d/wildfly-init-redhat.sh /etc/init.d/wildfly sudo cp ./wildfly-18.0.1.Final/docs/contrib/scripts/init.d/wildfly.conf /etc/default
Wildfly-User erstellen und als Besitzer angeben
BASHsudo useradd wildfly sudo chown wildfly:wildfly -R /opt/re-environment/wildfly-18.0.1.Final
Link in
/opt-directory
erstellenBASHsudo ln -s /opt/re-environment/wildfly-18.0.1.Final /opt/wildfly
Konfiguration bearbeiten.
JBOSS_CONFIG
-line finden und wie folgt ändern:/etc/default/wildfly.conf
XML## Location of JDK JAVA_HOME="/usr/java/jdk-9.0.4" ## Location of WildFly JBOSS_HOME="/opt/re-environment/wildfly-18.0.1.Final" ## The username who should own the process. JBOSS_USER=wildfly ## The mode WildFly should start, standalone or domain JBOSS_MODE=standalone ## Configuration for standalone mode JBOSS_CONFIG=standalone-full.xml ## Configuration for domain mode # JBOSS_DOMAIN_CONFIG=domain.xml # JBOSS_HOST_CONFIG=host-master.xml ## The amount of time to wait for startup # STARTUP_WAIT=60 ## The amount of time to wait for shutdown # SHUTDOWN_WAIT=60 ## Location to keep the console log JBOSS_CONSOLE_LOG="/var/log/wildfly/console.log" ## Additionals args to include in startup # JBOSS_OPTS="--admin-only -b 127.0.0.1"
service-control
aktivierenBASHsudo systemctl enable wildfly
Hinweis
(Ohne ist der Server nicht über den Hostname oder die IP-Adresse erreichbar)
Da die aktuelle Konfiguration inwildfly.conf
nicht ideal funktioniert muss man hier mit einem Workaround arbeiten!Die
standalone.xml
in das Verzeichnis<Install-path>/WildFly/standalone/configuration
kopierenCODEcd /opt/re-environment/wildfly-18.0.1.Final/standalone/configuration sudo cp standalone.xml standalone.xml.original sudo cp standalone-full.xml standalone.xml
Wildfly stoppen und Konsole, indem es im Vordergrund gelaufen ist, schließen.
Wildfly im Hintergrund starten
BASHsudo systemctl start wildfly
Info
Nun kann man unter der URL http://
servername
:8080 prüfen ob Wildfly korrekt gestartet wurde.Wildfly stoppen
mySQL
Connector herunterladen und installierenBASHsudo cd /opt sudo wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-8.0.17.tar.gz sudo tar -xvzf mysql-connector-java-8.0.17.tar.gz
Das Verzeichnis
<Install-path>/WildFly/modules/system/layers/base/com/mysql/main
erstellen und denJDBC-
Treiber in das Verzeichnis kopieren.BASHsudo mkdir -p /opt/wildfly/modules/system/layers/base/com/mysql/main sudo cp mysql-connector-java-8.0.17/mysql-connector-java-8.0.17.jar /opt/wildfly/modules/system/layers/base/com/mysql/main
module.xml
im Verzeichnis<Install-path>/WildFly/modules/system/layers/base/com/mysql/main
mit folgenden Inhalt erstellen:wildfly/modules/system/layers/base/com/mysql/main/module.xml
XML<module xmlns="urn:jboss:module:1.3" name="com.mysql"> <resources> <resource-root path="mysql-connector-java-8.0.17.jar"/> </resources> <dependencies> <module name="javax.api"/> <module name="javax.transaction.api"/> </dependencies> </module>
standalone.xml
bearbeitenDie Systemeigenschaften zwischen
</extensions>
und<management>
einfügenstandalone.xml
XML<system-properties> <property name="resteasy.preferJacksonOverJsonB" value="true"/> </system-properties>
JAAS unter
<security-realms>
einfügenstandalone.xml
XML<security-realm name="ECEApplicationRealm"> <authentication> <jaas name="ECE"/> </authentication> </security-realm>
Das Log-Level unter
<subsystem xmlns="urn:jboss-domain:logging:5.0">
einfügenstandalone.xml
XML<logger category="com.innoface.ece"> <level name="TRACE"/> </logger> <!-- enable SQL Logging --> <logger category="org.hibernate.SQL"> <level name="DEBUG"/> </logger> <!-- enable logging of BIND parameters --> <logger category="org.hibernate.type.descriptor.sql"> <level name="TRACE"/> </logger>
Die JDBC-datasource unter
<datasources>
einfügenstandalone.xml
XML<datasource jta="true" jndi-name="java:jboss/datasources/ECE" pool-name="ECESqlDS" enabled="true" use-java-context="true" use-ccm="true"> <connection-url>jdbc:mysql://localhost:3306/ece2?useSSL=false&serverTimezone=Europe/Berlin</connection-url> <driver>mysql-connector-java-8.0.17.jar</driver> <pool> <min-pool-size>10</min-pool-size> <max-pool-size>100</max-pool-size> <prefill>true</prefill> <use-strict-min>false</use-strict-min> <flush-strategy>FailingConnectionOnly</flush-strategy> </pool> <security> <user-name>root</user-name> <password>dbmaster</password> </security> </datasource>
Den JDBC-Treiber unter
<drivers>
einfügenstandalone.xml
XML<driver name="mysql-connector-java-8.0.17.jar" module="com.mysql"> <driver-class>com.mysql.cj.jdbc.Driver</driver-class> <xa-datasource-class>com.mysql.cj.jdbc.MysqlXADataSource</xa-datasource-class> </driver>
JMS-topic queue unter
<jms-queue name="DLQ" entries="java:/jms/queue/DLQ"/>
einfügenstandalone.xml
XML<jms-topic name="topic/ecedaemon" entries="java:jboss/exported/jms/topic/innoface/ecedaemon"/>
Die Sicherheits-Domäne unter
<security-domains>
einfügenstandalone.xml
XML<security-domain name="ECE"> <authentication> <login-module code="com.innoface.ece.wildfly.ECELoginModule" flag="required"> <module-option name="password-stacking" value="useFirstPass"/> </login-module> </authentication> </security-domain>
Windows
Die
standalone.xml
bearbeitenjdbc-version-template
an zwei Stellen mit der jdbc-version austauschen, z.B.mysql-connector-bin.jar
<Install-path>\WildFly\standalone\configuration\standalone.xml
XMLjdbc:mysql://localhost:template-db-port/ece2</connection-url> <driver>jdbc-version-template</driver> <pool> <min-pool-size>10</min-pool-size> <max-pool-size>100</max-pool-size> <prefill>true</prefill> <use-strict-min>false</use-strict-min> <flush-strategy>FailingConnectionOnly</flush-strategy>
<Install-path>\WildFly\standalone\configuration\standalone.xml
XML<drivers> <driver name="jdbc-version-template" module="com.mysql"> <xa-datasource-class>com.mysql.jdbc.jdbc2.optional.MysqlXADataSource</xa-datasource-class> </driver> <driver name="h2" module="com.h2database.h2"> <xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class> </driver> </drivers>
template-db-user
mit dem mariadb-wildfly-user ersetzten, z.B.root
<Install-path>\WildFly\standalone\configuration\standalone.xml
XMLFailingConnectionOnly</flush-strategy> </pool> <security> <user-name>template-db-user</user-name> <password>template-db-password</password>
template-db-password
mit dem mariadb-wildfly-user-passwort ersetzen<Install-path>\WildFly\standalone\configuration\standalone.xml
XMLFailingConnectionOnly</flush-strategy> </pool> <security> <user-name>template-db-user</user-name> <password>template-db-password</password> </security>
wildfly-template-port
mit dem WildFly-Port ersetzen, hier in der Regel8080
<Install-path>\WildFly\standalone\configuration\standalone.xml
XMLinterface="public" port-offset="${jboss.socket.binding.port-offset:0}"> <socket-binding name="ajp" port="${jboss.ajp.port:8009}"/> <socket-binding name="http" port="${jboss.http.port:wildfly-template-port}"/> <socket-binding name="https" port="${jboss.https.port:8443}"/>
template-db-port
mit dem Datenbank-Port ersetzen, z.B.3306
<Install-path>\WildFly\standalone\configuration\standalone.xml
XMLjdbc:mysql://localhost:template-db-port/ece2</connection-url> <driver>jdbc-version-template</driver> <pool> <min-pool-size>10</min-pool-size> <max-pool-size>100</max-pool-size> <prefill>true</prefill> <use-strict-min>false</use-strict-min> <flush-strategy>
module.xml
bearbeitenjdbc-version-template
mit jdbc-version ersetzen, z.B.mysql-connector-bin.jar
<Install-path>\WildFly\modules\system\layers\base\com\h2database\h2\main\module.xml
XML<module xmlns="urn:jboss:module:1.3" name="com.mysql"> <resources> <resource-root path="jdbc-version-template"/> </resources> <dependencies>
add-user.bat
im Verzeichnis<Install-path>\WildFly\bin
bearbeiten undtemplate_path
mit dem Verzeichnis vonJAVA_HOME-SED
ersetzen.<Install-path>\WildFly\bin\add-user.bat
XMLset JAVA_HOME=template_path rem -------------------------------------------------------------------------
standalone.bat
im Verzeichnis<Install-path>\WildFly\bin
bearbeiten undtemplate_path
mit dem Verzeichnis vonJAVA_HOME-SED
ersetzen.<Install-path>\WildFly\bin\standalone.bat
XMLset JAVA_HOME=template_path rem -------------------------------------------------------------------------
standalone.conf.bat
im Verzeichnis<Install-path>\WildFly\bin
bearbeiten undtemplate_path
mit dem Verzeichnis vonJAVA_HOME-SED
ersetzen.<Install-path>\WildFly\bin\standalone.conf.bat
XMLrem set "JAVA_HOME=C:\opt\jdk1.6.0_23" set JAVA_HOME=template_path
Wildfly Administrator anlegen
Konsole als Administrator öffnen
In das Verzeichnis
<Install-path>\WildFly\bin
wechselnadd-user.bat
aufrufenFragen wie folgt beantworten:
Frage
Antwort What type of user do you wish to add? a Username: z.B. wfadmin Password: z.B. wild_fly1 What groups do you want this user to belong to: blank About to add user 'wfadmin' for realm 'ManagementRealm' yes Is this new user going to be used for one AS process to connect to another AS process? yes
- Wildfly als Service einrichten
- Aus dem Verzeichnis
<Install-path>\WildFly\docs\contrib\scripts
den Ordnerservice
in das Verzeichnis<Install-path>\WildFly\bin
kopieren. - In der Adminkonsole in das Verzeichnis
<Install-path>\bin\service
wechseln Mit den entsprechenden Variablen für
%wildfly-servicename%
,%wildfly-ipaddr%
und%wildfly-managementport%
den unten stehenden Befehl eingeben<Install-path>\bin\service
BASHservice.bat install /startup /name=%wildfly-servicename% /display=%wildfly-servicename% /controller=%wildfly-ipaddr%:%wildfly-managementport% /config standalone.xml
- Aus dem Verzeichnis
8. Datenbank erstellen
a. In der Konsole in das Verzeichnis <Install-path>\<datenbank>\bin
wechseln.
b. Bei MariaDB als Datenbank ist es das Verzeichnis <Install-path>
\mariadb\bin,d
en Befehl mysql.exe -u "username" -p ausführen
Hinweis
Hier müssen der Username und das Passwort der Datenbank benutzt werden.
c. Folgende Befehle, mit den entsprechenden Variablen für %mariadb-db-name%,%
mari
adb-wildfly-user%, %mariadb-wildfly-pw%
und %host%
eingeben und ausführen lassen.
CREATE DATABASE %mariadb-db-name%;
GRANT ALL PRIVILEGES ON ece2.* TO %mariadb-wildfly-user%@'localhost' IDENTIFIED BY '%mariadb-wildfly-pw%';
GRANT ALL PRIVILEGES ON ece2.* TO %mariadb-wildfly-user%@'127.0.0.1' IDENTIFIED BY '%mariadb-wildfly-pw%';
GRANT ALL PRIVILEGES ON ece2.* TO %mariadb-wildfly-user%@'::1' IDENTIFIED BY '%mariadb-wildfly-pw%';
GRANT ALL PRIVILEGES ON ece2.* TO %mariadb-wildfly-user%@'%host%' IDENTIFIED BY '%mariadb-wildfly-pw%';
FLUSH PRIVILEGES;
d. mysql.exe beenden
RE Cockpit installieren
Linux
ece.ear
muss in das Verzeichnis <Install-path>/WildFly/standalone/deployments kopiert werden.- Den Dienst
WildFly
starten ece.ear
deployed selbständig, dies sollte im Verzeichnis zu sehen sein- Nun kann das RE Cockpit im Webbrowser unter dem Link:
http://%hostname%:8080/ece-web-client/
geöffnet werden.
Windows
ece.ear
muss in das Verzeichnis <Install-path>\WildFly\standalone\deployments kopiert werden.- Den Dienst
IF_WildFly
starten ece.ear
deployed selbständig, dies sollte im Verzeichnis zu sehen sein- Nun kann das RE Cockpit im Webbrowser unter dem Link:
http://%hostname%:8080/ece-web-client/
geöffnet werden.