JBoss EAP 8 - 使用 Domain 运行模式

OpenShift / RHEL / DevSecOps 汇总目录
本文介绍以受管域 (Managed Domain) 方式运行的 JBoss EAP。建议先通过《JBoss EAP 8 - 概念篇》了解 Managed Domai 及相关概念,并通过《JBoss EAP 8 - Standalone 运行模式》掌握初步 JBoss EAP 的配置和操作。

受管域的构造

本文将使用 JBoss 的 Domain 模式配置一个由 3 个主机构成的受管域,如下图。该受管域有 3 VM 组成,其中在 1 VM 上运行 Domain Controller,在另 2 VM 上分别运行各自的 Host Controller 和 2 个 Server 实例,且每个主机的 2 个 Server 分别加入各自的 Server Group。

主机名角色
eap-dc运行 Domain Controller,即 Primary Controller
eap1运行 Host Controller 和 server-one/server-two 实例
eap2运行 Host Controller 和 server-three/server-four 实例

在这里插入图片描述

在开始前,先在每个 VM 中安装 JBoss EAP 8,然后在每个主机的 hosts 文件中加入以上所以主机名和 IP 解析,过程略。

运行主主机(host-primary/host-master)上的 Domain Controller

运行 Domain Controller 的主机一般也统称主主机,host-primary 或 host-master,在本环境中为 eap-dc。

以下命令均在 eap-dc 主机上运行。

  1. 创建 eap-domain-admin 用户,该用户用于从 Host Controller 访问 Domain Controller 的认证。
$ EAP_HOME/bin/add-user.sh -m -u eap-domain-admin -p redhat123
  1. 查看 EAP_HOME/domain/configuration/domain.xml 文件包含以下 2 个 server-group:main-server-group 和 other-server-group。
    <server-groups>
        <server-group name="main-server-group" profile="full">
            <jvm name="default">
                <heap size="1000m" max-size="1000m"/>
            </jvm>
            <socket-binding-group ref="full-sockets"/>
            <deployments>
                <deployment name="helloworld.war" runtime-name="helloworld.war"/>
            </deployments>
        </server-group>
        <server-group name="other-server-group" profile="full-ha">
            <jvm name="default">
                <heap size="1000m" max-size="1000m"/>
            </jvm>
            <socket-binding-group ref="full-ha-sockets"/>
            <deployments>
                <deployment name="temperature-converter.war" runtime-name="temperature-converter.war"/>
            </deployments>
        </server-group>
    </server-groups>
  1. 查看 EAP_HOME/domain/configuration/host-primary.xml 文件。该文件将主机配置为 primary controller(即 Domain Controller)。由于自身就是 Domain Controller,所以 <domain-controller> 为空。另外在文件中没有定义 Server,说明该主机只用来运行 Domain Controller,不在运行其他 EAP Server 了。
	<domain-controller>
	    <local/>
	</domain-controller>
  1. 启动 Domain Controller。可看到在 Domain 模式的主机会运行一个 Host Controller 进程(而 Standalone 则无该进程)。 而作为 Domain Controller,该 Host Controller 进程使用了 domain.xml 和 host-primary.xml 配置文件。
$ EAP_HOME/bin/domain.sh --host-config=host-primary.xml -b eap-dc -bmanagement eap-dc
。。。
02:49:08,853 INFO  [org.jboss.as.process.Host Controller.status] (main) WFLYPC0018: Starting process 'Host Controller'
。。。
[Host Controller] 02:49:16,048 INFO  [org.jboss.as] (Controller Boot Thread) WFLYSRV0025: JBoss EAP 8.0.0.GA (WildFly Core 21.0.5.Final-redhat-00001) (Host Controller) started in 7098ms - Started 71 of 71 services (14 services are lazy, passive or on-demand) - Host Controller configuration files in use: domain.xml, host-primary.xml
  1. 确认此时在 eap-dc 主机中有 2 个 Java 进程,其中 Process Controller 是 Host Controller 的父进程,且 Host Controller 的运行参数是通过 Process Controller 传进去。
$ ps -ef | grep java
root        7156    7033  1 14:27 pts/3    00:00:01 java -D[Process Controller] -Xms64m -Xmx512m -XX:MaxMetaspaceSize=256m -Djava.net.preferIPv4Stack=true -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true -Djdk.serialFilter=maxbytes=10485760;maxdepth=128;maxarray=100000;maxrefs=300000 --add-exports=java.desktop/sun.awt=ALL-UNNAMED --add-exports=java.naming/com.sun.jndi.ldap=ALL-UNNAMED --add-exports=java.naming/com.sun.jndi.url.ldap=ALL-UNNAMED --add-exports=java.naming/com.sun.jndi.url.ldaps=ALL-UNNAMED --add-exports=jdk.naming.dns/com.sun.jndi.dns=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.base/java.lang.reflect=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.security=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.management/javax.management=ALL-UNNAMED --add-opens=java.naming/javax.naming=ALL-UNNAMED -Djava.security.manager=allow -Dorg.jboss.boot.log.file=/root/jboss-eap-8.0/domain/log/process-controller.log -Dlogging.configuration=file:/root/jboss-eap-8.0/domain/configuration/logging.properties -jar /root/jboss-eap-8.0/jboss-modules.jar -mp /root/jboss-eap-8.0/modules org.jboss.as.process-controller -jboss-home /root/jboss-eap-8.0 -jvm java -mp /root/jboss-eap-8.0/modules -- -Dorg.jboss.boot.log.file=/root/jboss-eap-8.0/domain/log/host-controller.log -Dlogging.configuration=file:/root/jboss-eap-8.0/domain/configuration/logging.properties -Xms64m -Xmx512m -XX:MaxMetaspaceSize=256m -Djava.net.preferIPv4Stack=true -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true -Djdk.serialFilter=maxbytes=10485760;maxdepth=128;maxarray=100000;maxrefs=300000 --add-exports=java.desktop/sun.awt=ALL-UNNAMED --add-exports=java.naming/com.sun.jndi.ldap=ALL-UNNAMED --add-exports=java.naming/com.sun.jndi.url.ldap=ALL-UNNAMED --add-exports=java.naming/com.sun.jndi.url.ldaps=ALL-UNNAMED --add-exports=jdk.naming.dns/com.sun.jndi.dns=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.base/java.lang.reflect=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.security=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.management/javax.management=ALL-UNNAMED --add-opens=java.naming/javax.naming=ALL-UNNAMED -Djava.security.manager=allow -- -default-jvm java --host-config=host-primary.xml -b eap-dc -bmanagement eap-dc
root        7172    7156  8 14:27 pts/3    00:00:07 java -D[Host Controller] -Dorg.jboss.boot.log.file=/root/jboss-eap-8.0/domain/log/host-controller.log -Dlogging.configuration=file:/root/jboss-eap-8.0/domain/configuration/logging.properties -Xms64m -Xmx512m -XX:MaxMetaspaceSize=256m -Djava.net.preferIPv4Stack=true -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true -Djdk.serialFilter=maxbytes=10485760;maxdepth=128;maxarray=100000;maxrefs=300000 --add-exports=java.desktop/sun.awt=ALL-UNNAMED --add-exports=java.naming/com.sun.jndi.ldap=ALL-UNNAMED --add-exports=java.naming/com.sun.jndi.url.ldap=ALL-UNNAMED --add-exports=java.naming/com.sun.jndi.url.ldaps=ALL-UNNAMED --add-exports=jdk.naming.dns/com.sun.jndi.dns=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.base/java.lang.reflect=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.security=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.management/javax.management=ALL-UNNAMED --add-opens=java.naming/javax.naming=ALL-UNNAMED -Djava.security.manager=allow -jar /root/jboss-eap-8.0/jboss-modules.jar -mp /root/jboss-eap-8.0/modules org.jboss.as.host-controller -mp /root/jboss-eap-8.0/modules --pc-address 127.0.0.1 --pc-port 42263 -default-jvm java --host-config=host-primary.xml -b eap-dc -bmanagement eap-dc -Djboss.home.dir=/root/jboss-eap-8.0

运行从主机(host-secondary/host-slave)上的 Host Controller 和 Server 实例

运行 Host Controller 和 Server 实例的主机一般也统称从主机,host-secondary,host-slave 或 host-worker,在本环境中为 eap1 和eap2。

运行 eap1 中的 server 实例

以下命令均在 eap1 主机上运行。

  1. 查看 EAP_HOME/domain/configuration/host-secondary.xml 文件包含以下 domain-controller 和 servers 的配置。
。。。
    <domain-controller>
        <remote authentication-context="eap1-hc-auth-context">
            <discovery-options>
                <static-discovery name="primary" protocol="${jboss.domain.primary.protocol:remote+http}" host="${jboss.domain.primary.address}" port="${jboss.domain.primary.port:9990}"/>
            </discovery-options>
        </remote>
    </domain-controller>
。。。
    <servers>
        <server name="server-one" group="main-server-group"/>
        <server name="server-two" group="other-server-group">
            <socket-bindings port-offset="150"/>
        </server>
    </servers>
。。。
  1. 在启动 eap1 主机上的 host controller 之前,为了确保它能与运行在 eap-dc 主机上的 domain controller 通信,需在 host-secondary.xml 文件中 subsystem xmlns=“urn:wildfly:elytron:18.0” 后面增加以下 authentication-client 内容。
        <subsystem xmlns="urn:wildfly:elytron:18.0" final-providers="combined-providers" disallowed-providers="OracleUcrypto">
            <authentication-client>
                <authentication-configuration name="eap1-hc-auth" authentication-name="eap-domain-admin" realm="ManagementRealm" sasl-mechanism-selector="DIGEST-MD5">
                    <credential-reference clear-text="redhat123"/>
                </authentication-configuration>
                <authentication-context name="eap1-hc-auth-context">
                    <match-rule authentication-configuration="eap1-hc-auth"/>
                </authentication-context>
            </authentication-client>
  1. 执行命令启动 host controller 进程。
$ EAP_HOME/bin/domain.sh --host-config=host-secondary.xml -Djboss.host.name=eap1 -Djboss.domain.primary.address=eap-dc -b eap1 -bmanagement eap1
  1. 可以从运行日志看到 Host Controller 进程按照 host-secondary.xml 的配置先连通 Domain Controller,然后分别启动 server-one 和 server-two 实例,然后再注册。
[Host Controller] 11:04:23,192 INFO  [org.jboss.as.host.controller] (Controller Boot Thread) WFLYHC0148: Connected to the domain controller at remote+http://eap-dc:9990
。。。
[Host Controller] 11:04:23,423 INFO  [org.jboss.as.host.controller] (Controller Boot Thread) WFLYHC0023: Starting server server-one
。。。
[Host Controller] 11:04:26,632 INFO  [org.jboss.as.host.controller] (server-registration-threads - 1) WFLYHC0020: Registering server server-one
。。。
[Host Controller] 11:04:26,634 INFO  [org.jboss.as.host.controller] (Controller Boot Thread) WFLYHC0023: Starting server server-two
。。。
[Host Controller] 11:04:36,030 INFO  [org.jboss.as.host.controller] (server-registration-threads - 1) WFLYHC0020: Registering server server-two
  1. 另外从 eap-dc 节点的运行日志也可看到注册 eap1 主机的信息。
[Host Controller] 03:32:53,411 INFO  [org.jboss.as.domain.controller] (Host Controller Service Threads - 6) WFLYHC0019: Registered remote secondary host "eap1", JBoss JBoss EAP 8.0.0.GA (WildFly 21.0.5.Final-redhat-00001)
  1. 确认此时在 eap1 主机中有 4 个 Java 进程,分别是 Process Controller,Host Controller 和 2 个 Server 实例进程。注意:Host Controller 和 Server 实例进程都是 Process Controller 的子进程。
$ ps -ef | grep  java
root        6324    6195  2 21:34 pts/0    00:00:01 java -D[Process Controller] -Xms64m -Xmx512m -XX:MaxMetaspaceSize=256m -Djava.net.preferIPv4Stack=true -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true -Djdk.serialFilter=maxbytes=10485760;maxdepth=128;maxarray=100000;maxrefs=300000 --add-exports=java.desktop/sun.awt=ALL-UNNAMED --add-exports=java.naming/com.sun.jndi.ldap=ALL-UNNAMED --add-exports=java.naming/com.sun.jndi.url.ldap=ALL-UNNAMED --add-exports=java.naming/com.sun.jndi.url.ldaps=ALL-UNNAMED --add-exports=jdk.naming.dns/com.sun.jndi.dns=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.base/java.lang.reflect=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.security=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.management/javax.management=ALL-UNNAMED --add-opens=java.naming/javax.naming=ALL-UNNAMED -Djava.security.manager=allow -Dorg.jboss.boot.log.file=/root/jboss-eap-8.0/domain/log/process-controller.log -Dlogging.configuration=file:/root/jboss-eap-8.0/domain/configuration/logging.properties -jar /root/jboss-eap-8.0/jboss-modules.jar -mp /root/jboss-eap-8.0/modules org.jboss.as.process-controller -jboss-home /root/jboss-eap-8.0 -jvm java -mp /root/jboss-eap-8.0/modules -- -Dorg.jboss.boot.log.file=/root/jboss-eap-8.0/domain/log/host-controller.log -Dlogging.configuration=file:/root/jboss-eap-8.0/domain/configuration/logging.properties -Xms64m -Xmx512m -XX:MaxMetaspaceSize=256m -Djava.net.preferIPv4Stack=true -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true -Djdk.serialFilter=maxbytes=10485760;maxdepth=128;maxarray=100000;maxrefs=300000 --add-exports=java.desktop/sun.awt=ALL-UNNAMED --add-exports=java.naming/com.sun.jndi.ldap=ALL-UNNAMED --add-exports=java.naming/com.sun.jndi.url.ldap=ALL-UNNAMED --add-exports=java.naming/com.sun.jndi.url.ldaps=ALL-UNNAMED --add-exports=jdk.naming.dns/com.sun.jndi.dns=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.base/java.lang.reflect=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.security=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.management/javax.management=ALL-UNNAMED --add-opens=java.naming/javax.naming=ALL-UNNAMED -Djava.security.manager=allow -- -default-jvm java --host-config=host-secondary.xml -Djboss.host.name=eap1 -Djboss.domain.primary.address=eap-dc -b eap1 -bmanagement eap1
root        6340    6324 17 21:34 pts/0    00:00:07 java -D[Host Controller] -Dorg.jboss.boot.log.file=/root/jboss-eap-8.0/domain/log/host-controller.log -Dlogging.configuration=file:/root/jboss-eap-8.0/domain/configuration/logging.properties -Xms64m -Xmx512m -XX:MaxMetaspaceSize=256m -Djava.net.preferIPv4Stack=true -Djboss.modules.system.pkgs=org.jboss.byteman -Djava.awt.headless=true -Djdk.serialFilter=maxbytes=10485760;maxdepth=128;maxarray=100000;maxrefs=300000 --add-exports=java.desktop/sun.awt=ALL-UNNAMED --add-exports=java.naming/com.sun.jndi.ldap=ALL-UNNAMED --add-exports=java.naming/com.sun.jndi.url.ldap=ALL-UNNAMED --add-exports=java.naming/com.sun.jndi.url.ldaps=ALL-UNNAMED --add-exports=jdk.naming.dns/com.sun.jndi.dns=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.base/java.lang.reflect=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.security=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.management/javax.management=ALL-UNNAMED --add-opens=java.naming/javax.naming=ALL-UNNAMED -Djava.security.manager=allow -jar /root/jboss-eap-8.0/jboss-modules.jar -mp /root/jboss-eap-8.0/modules org.jboss.as.host-controller -mp /root/jboss-eap-8.0/modules --pc-address 127.0.0.1 --pc-port 45665 -default-jvm java --host-config=host-secondary.xml -Djboss.host.name=eap1 -Djboss.domain.primary.address=eap-dc -b eap1 -bmanagement eap1 -Djboss.home.dir=/root/jboss-eap-8.0
root        6412    6324 28 21:35 pts/0    00:00:09 /usr/lib/jvm/java-17-openjdk-17.0.14.0.7-3.el8.x86_64/bin/java -D[Server:server-one] -D[pcid:1327845089] -Xms1000m -Xmx1000m -server -XX:MetaspaceSize=96m -XX:MaxMetaspaceSize=256m -Djava.awt.headless=true -Djava.net.preferIPv4Stack=true -Djava.security.manager=allow -Djboss.bind.address=eap1 -Djboss.bind.address.management=eap1 -Djboss.domain.primary.address=eap-dc -Djboss.home.dir=/root/jboss-eap-8.0 -Djboss.host.name=eap1 -Djboss.modules.system.pkgs=org.jboss.byteman -Djdk.serialFilter=maxbytes=10485760;maxdepth=128;maxarray=100000;maxrefs=300000 --add-exports=java.desktop/sun.awt=ALL-UNNAMED --add-exports=java.naming/com.sun.jndi.ldap=ALL-UNNAMED --add-exports=java.naming/com.sun.jndi.url.ldap=ALL-UNNAMED --add-exports=java.naming/com.sun.jndi.url.ldaps=ALL-UNNAMED --add-exports=jdk.naming.dns/com.sun.jndi.dns=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.base/java.lang.reflect=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.security=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.management/javax.management=ALL-UNNAMED --add-opens=java.naming/javax.naming=ALL-UNNAMED -Djboss.server.log.dir=/root/jboss-eap-8.0/domain/servers/server-one/log -Djboss.server.temp.dir=/root/jboss-eap-8.0/domain/servers/server-one/tmp -Djboss.server.data.dir=/root/jboss-eap-8.0/domain/servers/server-one/data -Dlogging.configuration=file:/root/jboss-eap-8.0/domain/servers/server-one/data/logging.properties -jar /root/jboss-eap-8.0/jboss-modules.jar -mp /root/jboss-eap-8.0/modules org.jboss.as.server
root        6502    6324 50 21:35 pts/0    00:00:14 /usr/lib/jvm/java-17-openjdk-17.0.14.0.7-3.el8.x86_64/bin/java -D[Server:server-two] -D[pcid:1336822604] -Xms1000m -Xmx1000m -server -XX:MetaspaceSize=96m -XX:MaxMetaspaceSize=256m -Djava.awt.headless=true -Djava.net.preferIPv4Stack=true -Djava.security.manager=allow -Djboss.bind.address=eap1 -Djboss.bind.address.management=eap1 -Djboss.domain.primary.address=eap-dc -Djboss.home.dir=/root/jboss-eap-8.0 -Djboss.host.name=eap1 -Djboss.modules.system.pkgs=org.jboss.byteman -Djdk.serialFilter=maxbytes=10485760;maxdepth=128;maxarray=100000;maxrefs=300000 --add-exports=java.desktop/sun.awt=ALL-UNNAMED --add-exports=java.naming/com.sun.jndi.ldap=ALL-UNNAMED --add-exports=java.naming/com.sun.jndi.url.ldap=ALL-UNNAMED --add-exports=java.naming/com.sun.jndi.url.ldaps=ALL-UNNAMED --add-exports=jdk.naming.dns/com.sun.jndi.dns=ALL-UNNAMED --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.base/java.lang.reflect=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.net=ALL-UNNAMED --add-opens=java.base/java.security=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.management/javax.management=ALL-UNNAMED --add-opens=java.naming/javax.naming=ALL-UNNAMED -Djboss.server.log.dir=/root/jboss-eap-8.0/domain/servers/server-two/log -Djboss.server.temp.dir=/root/jboss-eap-8.0/domain/servers/server-two/tmp -Djboss.server.data.dir=/root/jboss-eap-8.0/domain/servers/server-two/data -Dlogging.configuration=file:/root/jboss-eap-8.0/domain/servers/server-two/data/logging.properties -jar /root/jboss-eap-8.0/jboss-modules.jar -mp /root/jboss-eap-8.0/modules org.jboss.as.server

运行 eap2 中的 server 实例

以下命令均在 eap2 主机上运行。

  1. 修改 EAP_HOME/domain/configuration/host-secondary.xml 文件中 servers 的配置,将 Server 名称改为 server-three 和 server-four。
    <servers>
        <server name="server-three" group="main-server-group"/>
        <server name="server-four" group="other-server-group">
            <socket-bindings port-offset="150"/>
        </server>
    </servers>
  1. 在 host-secondary.xml 文件中 subsystem xmlns=“urn:wildfly:elytron:18.0” 后面增加以下 authentication-client 内容。
        <subsystem xmlns="urn:wildfly:elytron:18.0" final-providers="combined-providers" disallowed-providers="OracleUcrypto">
            <authentication-client>
                <authentication-configuration name="eap1-hc-auth" authentication-name="eap-domain-admin" realm="ManagementRealm" sasl-mechanism-selector="DIGEST-MD5">
                    <credential-reference clear-text="redhat123"/>
                </authentication-configuration>
                <authentication-context name="eap1-hc-auth-context">
                    <match-rule authentication-configuration="eap1-hc-auth"/>
                </authentication-context>
            </authentication-client>
  1. 执行命令启动 host controller 进程。
$ EAP_HOME/bin/domain.sh --host-config=host-secondary.xml -Djboss.host.name=eap2 -Djboss.domain.primary.address=eap-dc -b eap2 -bmanagement eap2

管理受管域

启停 Server 实例

  1. 在 JBoss EAP 的控制台进入 Runtime,然后在 Topology 中可以看到各 Host,Server 实例和 Server Group 的关系。可以点击图中的菜单来 Stop 和 Start 服务器实例。
    在这里插入图片描述
  2. 另外还可以进入每个 Server 实例配置相关资源。
    在这里插入图片描述

设置 JVM 参数

在以域模式运行的 JBoss 环境中,可从四个层面设置一个 Java 实例的 JVM 参数。注意:以上后三项都可对运行在从主机上的 Server 实例的 JVM 进行设置,但优先级从上到下依次更高。

JVM 实例影响范围文件和参数
Host Controller 和 Process ControllerHost所有主机的 domain.conf 中 JBOSS_JAVA_SIZING
ServerHost从主机的 host.xml 中 <host><jvms><jvm>
ServerServer Group主主机的 domain.xml 中 <domain><server-groups><server-group><jvm>
Server单个 Server从主机的 host.xml 中 <host><servers><server><jvm>

另外,还可在管理控制台的对应对象中查看或配置 JVM 参数。
在这里插入图片描述

部署应用

  1. 下载以下两个 WAR 文件到本地。
    - https://github.com/RedHatQuickCourses/eap-qc-apps/releases/download/eap8-lp/helloworld.war
    - https://github.com/RedHatQuickCourses/eap-qc-apps/releases/download/eap8-lp/temperature-converter.war
  2. 进入控制台的 Deployments -> Content Repository,然后点击 Upload Content 下拉菜单,分别上传 helloworld.war 和 temperature-converter.war 文件。
    在这里插入图片描述
  3. 点击 helloworld.war 右侧下拉菜单,选中 Deploy。然后在 Deploy Content 对话框中选择 main-server-group,然后点击 Deploy 按钮。
    在这里插入图片描述
  4. 重复以上操作将 temperature-converter.war 部署到 other-server-group。
  5. 参照下图进入 Deployments -> Server Groups -> main-server-group -> helloworld.war。
    在这里插入图片描述
  6. 点击 Context Root 后的 /helloworld 链接,确认可以通过 eap1 的地址访问该应用。将地址改为 eap2 的地址,也可访问应用。

参考

https://redhatquickcourses.github.io/eap-admin2/eap-admin2/8/domain/domain-mode.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值