Tomcat7 在网络出现之前启动

Tomcat7 在网络出现之前启动

因此,我在 centos/rhel 上使用 Tomcat7 时遇到了问题。在此服务器上,我们有 2 个 tomcat 实例,为了将它们分开,我们将 HTTP 和 HTTPS 连接器绑定到 IP 地址。服务器重启时似乎发生的是连接器无法初始化,因为它们无法绑定到 IP 地址。我此时的工作理论是因为网络服务尚未完全启动,并且 IP 不可用。

网络初始化脚本的启动优先级为 10,tomcat 初始化脚本的启动优先级为 70

此外,我们在 tomcat 5 中使用了同样的配置,但我们没有使用 init 脚本,而是将 catalina.sh 文件链接到 /etc/rc3.d/S99tomcat 来启动 tomcat 实例。我们使用该配置时没有遇到此问题,但我们仍希望继续使用 init 脚本。

以下是 tomcat HTTPS 连接器的示例

<Connector port="443" address="128.1.2.150" maxHttpHeaderSize="65536"
        maxThreads="150" minSpareThreads="25"
                compression="on"
                compressionMinSize="2048"
                noCompressionUserAgents="gozilla,traviata"
                compressableMimeType="text/html,text/xml"
        enableLookups="false" disableUploadTimeout="true"
        keystoreFile="/usr/local/tomcat/ssl/keystore2015"
        keystorePass="tech1994"
         SSLEnabled="true"
        acceptCount="100" scheme="https" secure="true"
    clientAuth="false" sslProtocol="TLS"/>

这是包含 chkconfig 设置的 init 脚本的顶部

# Tomcat 7 start/stop/status init.d script
# Initially forked from: https://gist.github.com/valotas/1000094
# @author: Miglen Evlogiev <[email protected]>
#
# Release updates:
# Updated method for gathering pid of the current proccess
# Added usage of CATALINA_BASE
# Added coloring and additional status
# Added check for existence of the tomcat user
# Added termination proccess
#chkconfig: 234 70 80

因此我测试了在脚本中添加以下内容

#Required-Start: $network

这不起作用。我停止了服务网络。然后启动了 tomcat,但它仍然出现。有人有其他想法吗?

相关内容