2016-04-12 7 views
0

Ich habe zwei Apache 2.4 Webserver und zwei hybris 5.7.3-Appserver. Ich entschied mich, mod_jk 1.2.41 auf beiden Webservern mit dem Loadbalancing des App-Servers zu konfigurieren. App-Server werden nur auf https ausgeführt. Kann mir jemand helfen, mod_jk für hybris zu konfigurieren?mod_jk hybris loadbalancer

Vielen Dank @Benoit für schnelle Antwort. Hier ist die Konfiguration:

httpd.conf

LoadModule jk_module /usr/lib64/httpd/modules/mod_jk.so 
JkWorkersFile /etc/httpd/conf/workers.properties 
# Where to put jk logs 
JkLogFile /var/log/httpd/mod_jk.log 
# Set the jk log level [debug/error/info] 
JkLogLevel debug 
# Select the log format 
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] " 
# JkOptions indicate to send SSL KEY SIZE, 
JkOptions +ForwardKeySize +ForwardURICompat -ForwardDirectories 
# JkRequestLogFormat set the request format 
JkRequestLogFormat "%w %V %T" 

    <VirtualHost *> 
     ServerAlias www.thaitrade.dev 
     DocumentRoot /var/www 
     ServerName webserverurl 
     JkMount /* loadbalancer 
     JkMount /status/* status 
    </VirtualHost> 

aktualisiert workers.properties Config

# workers to contact, that's what you have in your httpd.conf 
    worker.list=loadbalancer,status 

    #setup node1 
    worker.worker1.port=8009 
    worker.worker1.host=hybrisserver1.ip 
    worker.worker1.type=ajp13 
    worker.worker1.lbfactor=50 

    #setup node2 
    worker.worker2.port=8009 
    worker.worker2.host=hybrisserver2.ip 
    worker.worker2.type=ajp13 
    worker.worker2.lbfactor=100 

    #setup the load-balancer 
    worker.loadbalancer.type=lb 
    worker.loadbalancer.balance_workers=worker1,worker2 
    worker.loadbalancer.sticky_session=True 
    #worker.loadbalancer.sticky_session_force=True 

    # Status worker for managing load balancer 
    worker.status.type=status 

und hinzugefügt jvmRoute server.xml in hybrisserver1

<Engine name="Catalina" defaultHost="localhost" jvmRoute="worker1"> 

jvmRoute zu server.xml in hybrisserver hinzugefügt 2

<Engine name="Catalina" defaultHost="localhost" jvmRoute="worker2"> 

ich zusätzlich unter Config hinzugefügt

Listen 443 https 

    <VirtualHost *:443> 
    SSLEngine on 
    JkMountCopy On 
    SSLCertificateFile /etc/httpd/conf.d/certificate.crt 
    SSLCertificateKeyFile /etc/httpd/conf.d/certificate.key 
    </VirtualHost> 

Im Folgenden sind mod_jk Fehler server.xml

<Connector protocol="AJP/1.3" port="8010" proxyPort="443" scheme="https" secure="true" /> 

eine neue ssl Virtualhost Konfiguration erstellt

[Wed Apr 13 19:29:24 2016] [17689:140131769874496] [debug] jk_translate::mod_jk.c (3855): missing uri map for webservername:/hmc 
    [Wed Apr 13 19:29:24 2016] [17689:140131769874496] [debug] jk_map_to_storage::mod_jk.c (4023): missing uri map for webservername:/hmc 
    [Wed Apr 13 19:29:25 2016] [17826:140131769874496] [debug] jk_child_init::mod_jk.c (3474): Initialized mod_jk/1.2.41 
    [Wed Apr 13 19:29:27 2016] [17689:140131769874496] [debug] jk_translate::mod_jk.c (3855): missing uri map for webservername:/hac 
    [Wed Apr 13 19:29:27 2016] [17689:140131769874496] [debug] jk_map_to_storage::mod_jk.c (4023): missing uri map for webservername:/hac 

, das ist mein Aufbau. Ich habe keine SSL-Zertifikate erhalten. Vorläufig werde ich selbst signierte Zertifikate generieren und können Sie mir bitte zeigen, wie ich SSL-Zertifikate zur mod_jk-Konfiguration hinzufügen kann, und muss ich auch einen neuen Arbeiter- und Arbeiter-Port in der Datei workers.properties hinzufügen?

+0

Was hast du bisher probiert? Wo wird das SSL-Zertifikat entladen? –

+0

Scheint gut für mich zumindest für HTTP, Wir sehen HTTPS nach, was ist der Fehler, den Sie haben? Auch das conf, das Sie in der Datei server.xml hinzugefügt haben, wird nicht benötigt. –

+0

@BenoitVanalderweireldt, aber wir haben nur https Website, ich schließe einige Änderungen ein. – rakiarchana

Antwort

0

Hi @BenoitVanalderweireldt, Proxy-Port entfernt und jvmRoute in server.xml hinzugefügt und auch x-forwarded-proto in SSL-Konfiguration hinzugefügt. Das ist es, die Konfiguration funktioniert jetzt. Danke für deine wundervolle Unterstützung

+0

Bist du sicher, dass Apache und Tomcate mit mod_dk kommunizieren? Könnten Sie Ihr mod_jk Protokoll teilen? –

+0

Hi @BenoitVanalderweireldt, ich habe festgestellt, dass SSL-Seiten nicht richtig funktionieren, also suche ich nach Lösung. Einige Websites sagen, Tomcat-Clustering konfigurieren und einige sagen, Tomcat-Session-Replikation konfigurieren. Ich habe bereits Hybris Cluster i-Anwendungsebene mit NFS-Freigabe und Jgroups konfiguriert. . Mein Zweifel ist, muss ich Tomcat Cluster oder Tomcat Session Replikation konfigurieren und was ist mit Ajp Eigenschaften? – rakiarchana

+0

Sie müssen die Tomcat-Sitzungsreplikation nicht konfigurieren, es sei denn, dies ist eine Voraussetzung. Was funktioniert und was nicht? Normalerweise entlade ich das SSL-Zertifikat in Apache und füge den 'X-Forwarded-Proto' Header hinzu. –

Verwandte Themen