Oracle 19c中的Tomcat

Tomcat 中间件是一个免费的开放源代码的 Web 应用服务器Oracle 12.2.0.1 开始 GI 中安装和使用了 Tomcat 。由于 Tomcat 是开源产品,在生产环境使用我们必须关注该产品的安全。 Oracle 官方也一直根据 CVE 发布的信息,及时发布补丁。

12.2 开始我们安装部署 Oracle 数据库时 Tomcat 已经部署在 GI HOME 中。

$/u01/19.7.0/gird/Opatch/opatch lspatches
30805684;DBWLM RELEASE UPDATE 19.7.0.0.200414 (30805684)
30805684;Database Release Update : 19.7.0.0.200414 (30805684)
30805684;ACFS RELEASE UPDATE 19.7.0.0.200414 (30805684)
30805684;OCW RELEASE UPDATE 19.7.0.0.200414 (30805684)
30805684;TOMCAT RELEASE UPDATE 19.7.0.0.200414 (30805684)
30805684;UPDATE 19.7 DATABASE CLIENT JDK IN ORACLE HOME TO JDK8U171
30805684;OJVM RELEASE UPDATE: 19.7.0.0.200414 (30805684)

Oracle 19c中在 这些地方使用了Tomcat

Oracle Quality of Service (QoS) Management - GI中的一种特性,用于管理给定集群上的数据库工作负载。

Oracle Fleet Patching and Provisioning (FPP) - GI中的一个特性,使Oracle软件配置、补丁和升级标准化和自动化。这个特性以前称为快速Home供应(RHP) Oracle Memory Guard -Oracle RAC中每个节点内存保护。
Oracle Trace File Analyzer – 日志收集工具。

Quality of Services Management (ora.qosmserver resource) 服务使用Tomcat。 QoS 应用程序部署在 Tomcat 中,由 mbean REST 服务和 Servlet 组成。如果 QoS 是一个安全的应用程序,那么与 GI 一起提供的 Tomcat 分布是定制的,不是在 Tomcat 代码本身中定制的,而是在使用 Tomcat 特性时定制的。这改进了容器的使用,使其更加可靠和安全。以下是在使用 GI 部署 Tomcat 时对其进行的增强


$ ps -eaf | grep tomcat
grid 58746   142151  0 13:10 pts/1    00:00:00 grep   --color=auto tomcat
grid 108610      1  0   Dec04 ?        00:25:33 /u01/19.7.0/grid/jdk/bin/java   -server -Xms128M -Xmx384M -Djava.awt.headless=true   -Ddisable.checkForUpdate=true -Djava.util.logging.config.file=/u01/app/grid/crsdata/node1/qos/conf/logging.properties   -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager   -DTRACING.ENABLED=false -Djava.rmi.server.hostname=node1.cern.ch   -Doracle.http.port=8888 -Doracle.jmx.port=23792 -Doracle.tls.enabled=false   -Doracle.jwc.tls.http.enabled=false -Djava.security.manager   -Djava.security.policy=/u01/app/grid/crsdata/node1/qos/conf/catalina.policy   -Djava.security.egd=file:/dev/urandom -Dcatalina.home=/u01/19.7.0/grid/tomcat   -Dcatalina.base=/u01/app/grid/crsdata/node1/qos -Djava.io.tmpdir=/u01/app/grid/crsdata/node1/qos/temp   -Doracle.home=/u01/19.7.0/grid -classpath /u01/19.7.0/grid /tomcat/lib/tomcat-juli.jar:   /u01/19.7.0/grid /tomcat/lib/bootstrap.jar: /u01/19.7.0/grid/jlib/jwc-logging.jar   org.apache.catalina.startup.Bootstrap start


为了最小化内存占用,仅对 Tomcat Web 容器使用以下 JAR 文件

     annotations-api.jar
     bootstrap.jar
     catalina.jar
     jaspic-api.jar
     servlet-api.jar
     tomcat-api.jar
     tomcat-coyote.jar
     tomcat-jni.jar
     tomcat-juli.jar
     tomcat-util.jar
     tomcat-util-scan.jar

 

按照最小使用原则,我们也可以关闭qos服务,但在psu应用时需要开启该服务。

crsctl stat res -t

ora.qosmserver online online

使用grid用户执行

srvctl status qosmserver 
Qos Management Server is enable
Qos Management Server is running on node1
srvctl stop qosmserver -force
srvctl disable qosmserver 
Qos Management Server is enable
Qos Management Server is not running on node1


请使用浏览器的分享功能分享到微信等