Installationsprozess
Im folgenden wird MariaDB als Datenbank genutzt.
Datenbank erstellen
Linux
- In der Konsole in das Verzeichnis
<Install-path>\<datenbank>\binwechseln.
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 localhostHinweis
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-environmentInhalte in das Verzeichnis
/opt/re-environmentextrahierenstandalone-full.xmlbearbeiten, sodass es auf Wildfly zugreifen kann.Die IP-Adresse
127.0.0.1suche 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\mainexistieren.module.xmlin das Verzeichnis<Install-path>\WildFly\modules\system\layers\base\com\mysql\main
kopierenstandalone.xmlin 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.shausfü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 --reloadWildfly 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/defaultWildfly-User erstellen und als Besitzer angeben
BASHsudo useradd wildfly sudo chown wildfly:wildfly -R /opt/re-environment/wildfly-18.0.1.FinalLink in
/opt-directoryerstellenBASHsudo ln -s /opt/re-environment/wildfly-18.0.1.Final /opt/wildflyKonfiguration 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-controlaktivierenBASHsudo systemctl enable wildflyHinweis
(Ohne ist der Server nicht über den Hostname oder die IP-Adresse erreichbar)
Da die aktuelle Konfiguration inwildfly.confnicht ideal funktioniert muss man hier mit einem Workaround arbeiten!Die
standalone.xmlin das Verzeichnis<Install-path>/WildFly/standalone/configurationkopierenCODEcd /opt/re-environment/wildfly-18.0.1.Final/standalone/configuration sudo cp standalone.xml standalone.xml.original sudo cp standalone-full.xml standalone.xmlWildfly stoppen und Konsole, indem es im Vordergrund gelaufen ist, schließen.
Wildfly im Hintergrund starten
BASHsudo systemctl start wildflyInfo
Nun kann man unter der URL http://
servername:8080 prüfen ob Wildfly korrekt gestartet wurde.Wildfly stoppen
mySQLConnector 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.gzDas Verzeichnis
<Install-path>/WildFly/modules/system/layers/base/com/mysql/mainerstellen 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/mainmodule.xmlim Verzeichnis<Install-path>/WildFly/modules/system/layers/base/com/mysql/mainmit 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.xmlbearbeitenDie 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.xmlbearbeitenjdbc-version-templatean 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-usermit 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-passwordmit 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-portmit 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-portmit 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.xmlbearbeitenjdbc-version-templatemit 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.batim Verzeichnis<Install-path>\WildFly\binbearbeiten undtemplate_pathmit dem Verzeichnis vonJAVA_HOME-SEDersetzen.<Install-path>\WildFly\bin\add-user.bat
XMLset JAVA_HOME=template_path rem -------------------------------------------------------------------------standalone.batim Verzeichnis<Install-path>\WildFly\binbearbeiten undtemplate_pathmit dem Verzeichnis vonJAVA_HOME-SEDersetzen.<Install-path>\WildFly\bin\standalone.bat
XMLset JAVA_HOME=template_path rem -------------------------------------------------------------------------standalone.conf.batim Verzeichnis<Install-path>\WildFly\binbearbeiten undtemplate_pathmit dem Verzeichnis vonJAVA_HOME-SEDersetzen.<Install-path>\WildFly\bin\standalone.conf.bat
XMLrem set "JAVA_HOME=C:\opt\jdk1.6.0_23" set JAVA_HOME=template_pathWildfly Administrator anlegen
Konsole als Administrator öffnen
In das Verzeichnis
<Install-path>\WildFly\binwechselnadd-user.bataufrufenFragen 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\scriptsden Ordnerservicein das Verzeichnis<Install-path>\WildFly\binkopieren. - In der Adminkonsole in das Verzeichnis
<Install-path>\bin\servicewechseln 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,den 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%,%mariadb-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.earmuss in das Verzeichnis <Install-path>/WildFly/standalone/deployments kopiert werden.- Den Dienst
WildFlystarten ece.eardeployed 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.earmuss in das Verzeichnis <Install-path>\WildFly\standalone\deployments kopiert werden.- Den Dienst
IF_WildFlystarten ece.eardeployed 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.