zoukankan      html  css  js  c++  java
  • [转帖] Centos 7 使用 systemd 管理 Tomcat 多实例

    原贴地址:https://www.bo56.com/centos-7-%E4%BD%BF%E7%94%A8-systemd-%E7%AE%A1%E7%90%86-tomcat-%E5%A4%9A%E5%AE%9E%E4%BE%8B/

    Centos 7 使用 systemd 管理 Tomcat 多实例

    安装 tomcat

    使用网易的 yum 源,直接使用 yum install 命令就可以安装 tomcat。命令行如下:

    1
    2
    3
    cd /etc/yum.repos.d/
    $ wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
    $ yum install  tomcat -y

    使用 systemd 管理多个 tomcat 实例

    现在我们新建一个实例 procurement.itf。目标是可以使用 systemctl start tomcat@procurement.itf 类似的命令管理实例。

    首先,设置配置文件

    tomcat 已经为我们提供了配置文件的模板,就是 /etc/sysconfig/tomcat
    复制一份 /etc/sysconfig/tomcat ,并命令为 tomcat@procurement.itf 。命令如下:

    1
    $ cp /etc/sysconfig/tomcat /etc/sysconfig/tomcat@procurement.itf

    然后,我们修改配置文件的以下几项。

    1
    2
    3
    CATALINA_BASE=/var/lib/tomcats/procurement.itf/
    CONNECTOR_PORT="8180"
    CATALINA_OPTS="-server -Xms4G -Xmx4G -XX:PermSize=512m -XX:MaxPermSize=512m -XX:MaxGCPauseMillis=1000 -Djava.awt.headless=true -XX:-OmitStackTraceInFastThrow -Xloggc:/var/lib/tomcats/procurement.itf/logs/gc.log -XX:+UseG1GC -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintGCDateStamps -XX:+PrintTenuringDistribution -Ddeployment.security.TLSv1.1=true -Ddeployment.security.TLSv1.2=true"

    可以根据需要再修改其他项。我们示例中只修改了 CATALINA_BASE 和 CONNECTOR_PORT。 新增了 CATALINA_OPTS 。

    然后创建 CATALINA_BASE 目录

    创建 /var/lib/tomcats/procurement.itf/ 目录后,复制一些文件和文件夹即可。命令行如下:

    1
    2
    3
    4
    5
    6
    7
    $ mkdir /var/lib/tomcats/procurement.itf/
    $ cd /var/lib/tomcats/procurement.itf/
    $ cp -pr /etc/tomcat conf
    $ cp -pr /var/log/tomcat logs
    $ cp -pr /var/cache/tomcat/temp .
    $ cp -pr /var/cache/tomcat/work .
    $ cp -pr /var/lib/tomcat/webapps .

    设置独立的启动用户

    如果我们在启动 Java 进程的时候,不想使用 tomcat 用户。我们可以通过 override 来实现。如下:

    1
    2
    $ mkdir -p /etc/systemd/system/tomcat@procurement.itf.service.d/
    $ vim /etc/systemd/system/tomcat@procurement.itf.service.d/override.conf

    新增如下内容:

    1
    2
    [Service]
    User=procurement.itf

    这个文件可以覆盖 /usr/lib/systemd/system/tomcat@.service 文件的配置。

    启动服务

    现在就可以使用 systemctl start tomcat@procurement.itf 命令启动了。
    启动后可以使用 systemctl status tomcat@procurement.itf 查看启动结果。
    如果,启动失败。可以通过 journalctl -u tomcat@procurement.itf 命令查看日志信息。
    可以使用 systemctl cat tomcat@procurement.itf 这个服务的相关配置文件。

    注意

    如果在启动过程中出现文件没有权限。需要注意是否开启了 selinux。
    注意文件的所属组是 tomcat,文件所有者要设置为 procurement.itf

  • 相关阅读:
    docker学习笔记
    无法启动此程序,因为计算机中丢失api-ms-win
    pandas, groupby
    Chapter Five, More Than Two Variables: Graphical Multivariate Analysis
    ARIMA, Autoregressive Moving Average
    Chapter Four, Time As a Variable: Time-Series Analysis
    Exponentially Weighted Moving-Average
    KaKs_calculator
    pal2nal
    clustal
  • 原文地址:https://www.cnblogs.com/binzhou75/p/12686385.html
Copyright © 2011-2022 走看看