Finereport基于linux的简单安装(单节点)

2023-12-13 12:46:41

简介

? ? ? ? 本文以单节点简单部署为例,不适用企业级高可用部署策略。

????????FineReport的运行依赖于Tomcat ,Tomcat 是免费且性能相对稳定的 Web 应用服务器,也可以充当JSP容器。它是一个用于运行Java Servlet和JavaServer Pages(JSP)的Web服务器。

????????Tomcat本身并不包含完整的JDK,但它需要在运行时依赖于JDK。在安装和配置Tomcat之前,确保已经安装了JDK。Tomcat的主要任务是接收HTTP请求,将其传递给相应的Servlet或JSP进行处理,然后将结果返回给客户端。它充当了Java Web应用程序的承载环境。
????????Tomcat依赖于JDK,它使用JDK的核心功能,包括Java虚拟机和相关的标准库。在启动Tomcat时,Tomcat的启动脚本会调用JDK中的Java虚拟机,从而启动Tomcat服务器。Tomcat通过Java的Servlet和JSP技术处理Web请求,这些技术最终由JVM执行。

????????当用户启动FineReport时,JVM会加载FineReport的Java字节码并执行。JVM提供了Java程序运行的环境,负责字节码的解释和执行,以及垃圾回收、内存管理等任务。FineReport本身是一个Java应用程序,它运行在JVM上,利用了JVM的特性来实现跨平台性和可移植性。

安装准备

? ? ? ? 查看防火墙状态,永久关闭防火墙。

[root@vm01 manager]# systemctl stop  firewalld
[root@vm01 manager]# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
   Active: inactive (dead) since Sat 2023-12-09 07:55:34 CST; 2s ago
     Docs: man:firewalld(1)
  Process: 961 ExecStart=/usr/sbin/firewalld --nofork --nopid $FIREWALLD_ARGS (code=exited, status=0/SUCCESS)
 Main PID: 961 (code=exited, status=0/SUCCESS)

Dec 09 04:07:42 vm01 systemd[1]: Starting firewalld - dynamic firewall daemon...
Dec 09 04:07:44 vm01 systemd[1]: Started firewalld - dynamic firewall daemon.
Dec 09 04:07:45 vm01 firewalld[961]: WARNING: AllowZoneDrifting is enabled. This is considered an insecure configuration option. It will be removed in a future release. Please consider...abling it now.
Dec 09 07:55:33 vm01 systemd[1]: Stopping firewalld - dynamic firewall daemon...
Dec 09 07:55:34 vm01 systemd[1]: Stopped firewalld - dynamic firewall daemon.
Hint: Some lines were ellipsized, use -l to show in full.
[root@vm01 manager]# systemctl disable firewalld
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.

使用windows的ping指令 确保虚拟机与外界互通。?

? ? ? ? 查看操作系统情况

? ? ? ? 本文采用centos7进行安装演示,使用cat /etc/os-release指令查看当前虚拟机的版本信息

[root@vm01 /]# cat /etc/os-release
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"

CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"

????????查看运行内存大小

(注意后面需要根据此数据,配置帆软相关参数)

[root@vm01 /]# free -h
              total        used        free      shared  buff/cache   available
Mem:           7.8G        242M        7.4G         11M        114M        7.3G
Swap:            0B          0B          0B

? ? ? ? 本博主swap交换空间为零,当内存资源有限,建议不用开启,当内存资源充足可以按需分配。

? ? ? ? 查看cpu情况

[root@vm01 /]# lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                1
On-line CPU(s) list:   0
Thread(s) per core:    1
Core(s) per socket:    1
Socket(s):             1
NUMA node(s):          1
Vendor ID:             AuthenticAMD
CPU family:            23
Model:                 17
Model name:            AMD Ryzen 5 PRO 2400G with Radeon Vega Graphics
Stepping:              0
CPU MHz:               3593.227
BogoMIPS:              7186.45
Hypervisor vendor:     VMware
Virtualization type:   full
L1d cache:             32K
L1i cache:             64K
L2 cache:              512K
L3 cache:              4096K
NUMA node0 CPU(s):     0
Flags:                 fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc art rep_good nopl tsc_reliable nonstop_tsc extd_apicid eagerfpu pni pclmulqdq ssse3 fma cx16 sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx f16c rdrand hypervisor lahf_lm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw topoext ssbd rsb_ctxsw ibpb vmmcall fsgsbase bmi1 avx2 smep bmi2 rdseed adx smap clflushopt sha_ni xsaveopt xsavec xgetbv1 clzero arat overflow_recov succor
几个核心参数解释:?

CPU op-mode(s): 32-bit, 64-bit

表示 CPU 支持的操作模式,即可以运行 32 位和 64 位的操作系统和应用程序。(注意,该参数对于选择对应版本的JDK重要,需要作为参考)。


Byte Order: Little Endian

表示字节序,这里是小端序。小端序是一种字节排列方式,它将最低有效字节存储在最低内存地址处。大多数 x86 架构的系统都是小端序。


CPU(s): 1

表示系统有一个 CPU。


On-line CPU(s) list: 0

表示在线的 CPU 列表,这里只有一个 CPU(编号为 0)在线。


Thread(s) per core: 1

表示每个核心只有一个线程。在这个输出中,每个核心只能同时执行一个线程。


Core(s) per socket: 1

表示每个 CPU 插槽只有一个核心。这表明系统的 CPU 架构是单核心的

安装JDK?

? ? ? ? 前文简介介绍了帆软是运行的JVM上的一款软件,运行环境需要依赖于JDK

登录jdk官网查看JDK最新支持的操作系统是否和我们本机的操作系统符合。本文以JDK8为例,对于本演示虚拟机符合标准。(不要追求过高版本,避免版本兼容出问题)? ? ? ?

?进入官网,选择jdk-8u202-linux-x64.tar.gzicon-default.png?t=N7T8https://download.oracle.com/otn/java/jdk/8u202-b08/1961070e4c9b4e26a04e7f5a083f551e/jdk-8u202-linux-x64.tar.gz缩包。

????????在可以链接外网的情况下,可以使用以下指令进行下载,在内网环境,需要自行将压缩包上传至对应服务器上。?

wget https://www.oracle.com/java/technologies/javase/javase8u211-later-archive-downloads.html#license-lightbox

?解压、清除压缩包。

[root@vm01 ~]# tar -zxf jdk-8u202-linux-x64.tar.gz 
[root@vm01 ~]# rm -rf jdk-8u202-linux-x64.tar.gz 
[root@vm01 ~]# mv jdk1.8.0_202/ jdk
[root@vm01 ~]# mv jdk/ /
[root@vm01 ~]# cd /jdk/

编辑环境变量

[root@vm01 jdk]# vim /etc/profile

进入/etc/profile添加以下环境变量在末尾。?

export JAVA_HOME=/jdk
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:${CATALINA_HOME}/bin:${JRE_HOME}/bin:$PATH

?

简单指令测试?

[root@vm01 jdk]# java -version 
java version "1.8.0_202"
Java(TM) SE Runtime Environment (build 1.8.0_202-b08)
Java HotSpot(TM) 64-Bit Server VM (build 25.202-b08, mixed mode)

添加完环境变量之后,需要进行source /etc/profile进行加载环境变量,使用java -version 如果弹出版本信息,说明安装完成。

安装TOMCAT

? ? ? ? 帆软11对tomcat版本有以下要求。

版本要求
  • 支持tomcat8.0(不支持 Tomcat 8.0.32 版本)

  • 支持tomcat9.0

  • 不支持tomcat10.0

进入TOMCAT官网,下载apache-tomcat-8.5.51.tar.gz对应得压缩包,

?

????????这里顺便讲一下几个版本的区别。

  • Core版本: 包括Tomcat的核心部分,适用于一般的Web应用程序。
  • Full documentation版本: 包括完整的Tomcat文档,通常用于查阅Tomcat的详细信息。
  • Deployer版本: 针对部署Web应用程序的需求。
  • Embedded版本: 针对嵌入式场景,可能是一些特殊需求的解决方案
  • Source Code Distributions:是tomcat的源码版本,可以进行预编译,本文旨在安装常规用于学习的版本,使用core即可

创建安装目录、解压缩

[root@vm01 ~]# mkdir /tomcat 
[root@vm01 ~]# mv apache-tomcat-9.0.83/ /tomcat 
[root@vm01 ~]# cd /tomcat/
[root@vm01 tomcat]# ll
total 0
drwxr-xr-x. 9 root root 220 Dec  9 07:16 apache-tomcat-9.0.83
[root@vm01 tomcat]# mv apache-tomcat-9.0.83/ tomcat   #重命名压缩包名称

环境变量配置? ? ?

???使用以下指令,编辑环境变量

vim /etc/profile 

????????环境变量值增加?CATALINA_HOME及其对应的PATH。

export JAVA_HOME=/jdk
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:${CATALINA_HOME}/bin:${JRE_HOME}/bin:${CATALINA_HOME}/bin:$PATH

export CATALINA_HOME=/tomcat/tomcat
                                           

使用source /etc/profile 重新加载环境变量?

[root@vm01 ~]# source /etc/profile

? ? 启动tomcat

[root@vm01 jdk]# startup.sh 
Using CATALINA_BASE:   /tomcat/tomcat
Using CATALINA_HOME:   /tomcat/tomcat
Using CATALINA_TMPDIR: /tomcat/tomcat/temp
Using JRE_HOME:        /jdk/jre
Using CLASSPATH:       /tomcat/tomcat/bin/bootstrap.jar:/tomcat/tomcat/bin/tomcat-juli.jar
Using CATALINA_OPTS:   
Tomcat started.
[root@vm01 jdk]# netstat -nlp|grep 8080
tcp6       0      0 :::8080                 :::*                    LISTEN      2609/java           
[root@vm01 jdk]# jps
2609 Bootstrap
2667 Jps
[root@vm01 jdk]# 

登录网页进行验证

http://10.0.0.200:8080/

前文中提到在查看系统相关参数的指令,这可以设置环境变量对JVM允许环境进行优化,以下举例部分参数进行说明

调整堆内存大小:
export CATALINA_OPTS="-Xms512m -Xmx1024m"

设置新生代和老年代的比例:
export CATALINA_OPTS="-XX:NewRatio=2"

启用并发垃圾收集(CMS):
export CATALINA_OPTS="-XX:+UseConcMarkSweepGC"

设置堆内存的空闲回收时间:
export CATALINA_OPTS="-XX:MaxHeapFreeRatio=70 -XX:MinHeapFreeRatio=40"

设置线程栈大小:
export CATALINA_OPTS="-Xss256k"

?除此之外还可以根据服务器运行线程情况,设置一些端口信息。

HTTP 端口(默认为 8080):
export CATALINA_OPTS="-Dcatalina.http.port=8888"

TTPS 端口(默认为 8443):
export CATALINA_OPTS="-Dcatalina.https.port=8443"

AJP 端口(默认为 8009):
export CATALINA_OPTS="-Dcatalina.ajp.port=8009"

?安装设计器

? ? ? ? 进入帆软官网,选择个人版本进行下载

?

下载完成后直接点击运行

?

?????????设计器的安装就很简单了,跟着提示走就可以

指定一个安装目录,然后点击下一步

?

由于是初次下载设计器,并没有设置管理员账号密码,此时我们登录决策系统

?启动设计器,先登录决策系统,然后设置管理员账户密码。

进行登录? 看看是否能正常登录决策系统

注:关闭设计器,进行下一步

????????将设计器安装目录中webroot目录上传到虚拟机中的tomcat的webapps中去,设计器中的webroot目录下包含了设计器运行的相关参数和配置文件,要想要远程控制,就要将该文件包上传。?启动设计器

启动tomcat

startup.sh

远程链接

选择其他

配置相关信息(默认端口依然是8080)

?

文章来源:https://blog.csdn.net/weixin_73350116/article/details/134886470
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。