Scope
The information from this article applies to connections between master and Agent that make use of JobScheduler Universal Agent - Secure HTTPS communication
Setting up a reverse proxy
[ssl:warn] [pid xxx] AH01909: RSA certificate configured for SERVER does NOT include an ID which matches the server name
When setting up a reverse proxy with Apache, you might the following warning in the log file ssl_error_log
(per default the file is stored under /var/log/httpd
):
[ssl:warn] [pid xxx] AH01909: RSA certificate configured for SERVER does NOT include an ID which matches the server name
In that case, follow the instructions as described in this post (have a look only at the answer marked with a ): http://serverfault.com/questions/578061/rsa-certificate-configured-for-server-does-not-include-an-id-which-matches-the-s
[ssl:warn] [pid xxx] AH01906: RSA server certificate is a CA certificate (BasicConstraints: CA == TRUE !?)
When setting up a reverse proxy with Apache, you might the following warning in the log file ssl_error_log
(per default the file is stored under /var/log/httpd
):
[ssl:warn] [pid xxx] AH01906: RSA server certificate is a CA certificate (BasicConstraints: CA == TRUE !?)
In that case, follow the instructions as described in this article: http://sysadmin.compxtreme.ro/how-to-deal-with-rsa-server-certificate-is-a-ca-certificate-basicconstraints-ca-true-problem/
httpd service can not be restarted
Configuration errors
This might happen because there is an error in the Apache configuration (either in httpd.conf
, in conf.d/ssl.conf
or in any extra configuration file you would include). In order to know the reason why the service could not be started, type the following command:
journalctl -xelu httpd
Missing SELinux permissions
If there is no error in your Apache configuration and the service restart throws the following error:
httpd Server not started: (13)Permission denied: make_sock: could not bind to address [::]:24445
Then you have to add the specific port you are doing the configuration for (in our case we use the port 24445 as in the example in the article JobScheduler Universal Agent - connecting via HTTPS through a proxy) to your system SELinux configuration and allow this port for httpd
as follows:
sudo semanage port -a -t http_port_t -p tcp 24445
List of certificates in Java Truststore
In case you created a self-signed certificate and imported this certificate into the Java Truststore of JobScheduler Master, you can use the following command in order to see if the certificate was added properly to the Java Truststore and get the detailed information of the certificate:
"<path_to_java_for_jobscheduler>\bin\keytool" -list -keystore "<path_to_java_for_jobscheduler>\lib\security\cacerts" -storepass changeit
Setting Logging Level to Debug for Apache
Either in httpd.conf
, in conf.d/ssl.conf
or in an extra configuration file you would include in order to configure the reverse proxy, add the following line to your configuration:
LogLevel Debug
This will activate the debug level for SSL and Proxy, which you can then find in the following logs (per default these file are stored under /var/log/httpd)
:
ssl_access_log
ssl_error_log
ssl_request_log
Logging in JobScheduer Master
All informations you will find in the JobScheduler Master are located either in the order logs (under Order History) when starting an order for a job chain or in the task logs when starting a standalone job. Possible messages are described below.
[ WARN ] SCHEDULER-489 No remote JobScheduler is accessible. Waiting before trying again
If a warning like this is thrown in the order log:
[WARN] (Task xxx/job1:147691) SCHEDULER-489 No remote JobScheduler is accessible. Waiting before trying again [WARN] (Task xxx/job1:147691) SCHEDULER-488 This remote JobScheduler 'Agent(0,https://192.11.0.111:24445,None)' is not accessible: spray.can.Http$ConnectionException: Aborted
Again please check which HTTP error is thrown in the logs under /var/log/httpd
:
ssl_access_log
ssl_error_log
ssl_request_log
In this case you might get a HTTP error 408 - request timeout, which means, that the connection from Master to the Proxy has been established, but the redirection from the proxy to the agent can not be done.
Otherwise, the JobScheduler Master is not even reaching the proxy.
[ERROR] Z-JAVA-105 Java exception spray.httpx.UnsuccessfulResponseException: Status: 503 Service Unavailable
If an error like this is thrown in the order log or the task log:
[ERROR] (xxx/job1:147694) Z-JAVA-105 Java exception spray.httpx.UnsuccessfulResponseException: Status: 503 Service Unavailable [ERROR] (xxx/job1:147694) Body: <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> [ERROR] (xxx/job1:147694) <html><head> [ERROR] (xxx/job1:147694) <title>503 Service Unavailable</title> [ERROR] (xxx/job1:147694) </head><body> [ERROR] (xxx/job1:147694) <h1>Service Unavailable</h1> [ERROR] (xxx/job1:147694) <p>The server is temporarily unable to service your [ERROR] (xxx/job1:147694) request due to maintenance downtime or capacity [ERROR] (xxx/job1:147694) problems. Please try again later.</p> [ERROR] (xxx/job1:147694) </body></html>, method=CallObjectMethodA []
Again please check which HTTP error is thrown in the logs under /var/log/httpd
:
ssl_access_log
ssl_error_log
ssl_request_log
In case you get the following error in the ssl_error_log
:
[proxy:error] (13)Permission denied: proxy: AJP: attempt to connect to 10.x.x.x:7009 (virtualhost.virtualdomain.com) failed
You need then to change a system configuration as described in the following article: http://sysadminsjourney.com/content/2010/02/01/apache-modproxy-error-13permission-denied-error-rhel/