Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache 如何为粘性会话配置Glassfish 4集群?_Apache_Jakarta Ee_Configuration_Ssh_Glassfish - Fatal编程技术网

Apache 如何为粘性会话配置Glassfish 4集群?

Apache 如何为粘性会话配置Glassfish 4集群?,apache,jakarta-ee,configuration,ssh,glassfish,Apache,Jakarta Ee,Configuration,Ssh,Glassfish,正在尝试(在测试环境中)设置一个准备就绪的两服务器Glassfish 4集群,从现有的单实例Glassfish 3.1 Web服务器迁移到支持负载平衡和故障切换的服务器 Glassfish的noddy GUI界面主要是一个应用程序编写者,对我来说很有吸引力。实际上,我一直无法让Glassfish 4集群正常工作,我想知道是否有人能给我所需的配置。有许多博客和指南描述了这一过程,但对于不同版本的Glassfish,它们都略有不同,而且似乎都不适用于GF4 设置: 伺服器1:app01 安装DAS和

正在尝试(在测试环境中)设置一个准备就绪的两服务器Glassfish 4集群,从现有的单实例Glassfish 3.1 Web服务器迁移到支持负载平衡和故障切换的服务器

Glassfish的noddy GUI界面主要是一个应用程序编写者,对我来说很有吸引力。实际上,我一直无法让Glassfish 4集群正常工作,我想知道是否有人能给我所需的配置。有许多博客和指南描述了这一过程,但对于不同版本的Glassfish,它们都略有不同,而且似乎都不适用于GF4

设置:

伺服器1:app01 安装DAS和节点01->INSTANCE0101(SSH)

伺服器2:app02 安装节点02-INSTANCE0102(SSH)

集群:CLUSTER01,涉及NODE01->INSTANCE0101和NODE02->INSTANCE0102

设置了两台服务器java,并在app01上安装了Glassfish 4。已经在app01上安装了Apache。 我们的旧服务器使用Apache和mod_jk将适当的请求转发给Glassfish。我在/etc/httpd/conf/httpd.conf中做了适当的更改,将请求转发给jk连接器:(从适当的部分提取)

这是我认为适合所有博客文章中的workers.properties的内容

    worker.list=loadbalancer

    # default properties for workers
    worker.template.type=ajp13
    worker.template.lbfactor=50
    worker.template.connection_pool_timeout=600
    worker.template.socket_keepalive=1
    worker.template.socket_timeout=300

    # properties for worker1
    worker.worker1.reference=worker.template
    worker.worker1.host=app01.btodomain.bto.org
    worker.worker1.port=8009

    # properties for worker2
    worker.worker2.reference=worker.template
    worker.worker2.host=app02.btodomain.bto.org
    worker.worker2.port=8010

    # properties for loadbalancer
    worker.loadbalancer.type=lb
    worker.loadbalancer.balance_workers=worker1,worker2
我认为Glassfish配置合适:

    create-jvm-options --target cluster01 "-DjvmRoute=\\${AJP_INSTANCE_NAME}"
    create-jvm-options --target cluster01 "-Dcom.sun.enterprise.web.connector.enableJK=\\${AJP_PORT}"
    create-system-properties --target instance0101 AJP_INSTANCE_NAME=instance0101
    create-system-properties --target instance0102 AJP_INSTANCE_NAME=instance0102
    create-system-properties --target instance0101 AJP_PORT=8009
    create-system-properties --target instance0102 AJP_PORT=8010
    create-network-listener --protocol http-listener-1 --listenerport “${AJP_PORT}” --jkenabled true --target cluster01 jk-connector
除了配置不起作用外,在摆弄设置时,我两次遇到这样的情况:测试应用程序不会重新部署或取消部署/部署,Glassfish声称已经存在同名的应用程序(如果没有)

任何帮助都将不胜感激


标记检查worker.list属性。它只包含负载平衡器,而不包含worker。

只需更改属性“AJP\u INSTANCE\u NAME=instance0101”的worker1示例:

worker1的属性

worker.instance0101.reference=worker.template worker.instance0101.host=app01.btodomain.bto.org worker.instance0101.port=8009

对所有工人及其尊敬的glassfish财产采取同样的措施

    create-jvm-options --target cluster01 "-DjvmRoute=\\${AJP_INSTANCE_NAME}"
    create-jvm-options --target cluster01 "-Dcom.sun.enterprise.web.connector.enableJK=\\${AJP_PORT}"
    create-system-properties --target instance0101 AJP_INSTANCE_NAME=instance0101
    create-system-properties --target instance0102 AJP_INSTANCE_NAME=instance0102
    create-system-properties --target instance0101 AJP_PORT=8009
    create-system-properties --target instance0102 AJP_PORT=8010
    create-network-listener --protocol http-listener-1 --listenerport “${AJP_PORT}” --jkenabled true --target cluster01 jk-connector