Supported deployment of the Nginx cluster for multi-application projects (clusters), which would serve as the FanRuan internal gateway.
1. Supported self-provided S3 as the data storage service only. Removed support for the self-provided shared storage directory.
2. Allowed changing the data storage service component for deployed projects.
Projects (FineBI, FineReport, FineDataLink) deployed via FineOps include not only the projects, but also associated components such as the external configuration database, cluster components, and O&M components.
This document details the role of each component. The following table shows a brief introduction.
Engine - Metadata Node
Engine - Calculation Node
FineBI MinIO
It must be installed for FineBI.
A self-provided component is supported and recommended.
FineReport
It serves as the entry for services provided by other project components and cluster components, ensuring load-balanced request forwarding.
It is optional for FineDataLink.
These components will be installed by default as they are required under all circumstances. They will not appear under Project Setting > Basic Component when you deploy a project.
The following components will be installed only when you deploy a FineBI project.
FineBI - Application Node/Engine - Metadata Node/Engine - Calculation Node
They are components of the FineBI 6.1 project node and its engine nodes. No demo data is included.
One Engine - Metadata Node component must be deployed. FineBI - Application Node and Engine - Calculation Node must be deployed in a ratio of 1:1 or 1:2.
They are installed on the main application node.
The number of main application servers must be no fewer than the number of the FineBI - Application Node components, each hosting these three components.
The following components will be installed only when you deploy a FineReport project.
It is a component of the FineReport project node. No demo data is included.
It is installed on the main application node.
Each main application node of the project should host a FineReport component.
The following components will be installed only when you deploy a FineDataLink project.
It is a component of the FineDataLink project node. No demo data is included.
Each main application node of the project should host a FineDataLink component.
This component is installed on each physical server node.
It is used for managing components, upgrading containers, and collecting various metric information of physical servers and components.
It is installed on each main application node and component node of the project.
Roles:
It serves as the entry for services provided by other project components, ensuring load-balanced request forwarding.
It enforces HTTPS via SSL certificate termination.
It gathers gateway-layer link trace metrics.
Notes:
The FanRuan internal gateway has experienced custom development based on FanRuan business to balance user requests and improve performance. Therefore, external provisioning or customization is not supported.
If you need to use external load balancers, such as F5, SLB, and ELB, you should configure forwarding rules to direct client requests to your self-provided gateway first, then to the FanRuan internal gateway, and finally to various application nodes.
1. For single-application projects, this component is optional.
You can install a single-node internal gateway, which is the default option.
You are advised to install it if you use FineOps for SSL configuration.
If the internal gateway component is not installed, the entry of external access will be changed from the port of the internal gateway component to that of the FineBI - Application Node/FineReport/FineDataLink component.
2. For multi-application projects, this component must be installed.
You can install a single-node internal gateway or a dual-node internal gateway. Note that the dual-node internal gateway is not a Nginx cluster.
The default option is Deploy Single-Node Internal Gateway.
The FanRuan internal gateway has experienced custom development based on FanRuan business to balance user requests and improve performance. Therefore, external provisioning is not supported.
It is typically installed on the component node. If there are multiple component nodes, it will be installed on a random one.
The following are special cases:
1. When you deploy a single-application project with no component node, Nginx will be installed on the main application node if you select Deploy Single-Node Internal Gateway in FanRuan Internal Gateway.
2. When you deploy a multi-application project with only one component node, one Nginx node will be installed on the component node and the other on a random main application node if you select Deploy Dual-Node Internal Gateway (Non-cluster) in FanRuan Internal Gateway.
The log service components include Elasticsearch and Filebeat.
Elasticsearch
It provides log storage services.
It replaces the built-in Swift (LogDB) for recording user activity logs.
If it is not installed, the built-in Swift (LogDB) will be enabled for log storage.
You can install Elasticsearch or connect an existing self-provided Elasticsearch of V8.x to the project.
Do not pause the component after successful deployment/connection. Otherwise, the project operation log will be lost.
It is typically installed on the component node.
If there are multiple component nodes, it will be installed on a random one.
Special case: For single-application projects with no component node, it will be installed on the main application node.
Filebeat
It provides the log collection service and should be used with the Elasticsearch component.
It is used to store and share files and resources required by each application node, ensuring that every node can access and utilize them.
1. For single-application projects, this component is not required.
The default option is Deploy MinIO.
You can install a MinIO file server or connect an existing self-provided file server (such as SFTP, FTP, and an external shared directory) to the project.
If you need to use other types of file servers, you can log in to the project after it is successfully deployed and switch the file server.
If you choose to install a MinIO file server, it is typically installed on the component node.
It is used to store and maintain configuration information and parameters of each application node. These parameters must be set reasonably to ensure coordinated operation among nodes.
It must be installed.
The default option is to deploy MySQL 8.
You can install a MySQL 8 database or connect an existing self-provided database (such as MySQL 5, MySQL 8, Amazon RDS for MySQL, and Oracle) to the project.
If you need to use other types of databases as the configuration database, you can log in to the project after it is successfully deployed and switch the database.
If you choose to install a MySQL 8 database, it is typically installed on the component node.
It monitors the running status of each node and the whole cluster, records logs and error messages, and coordinates communication and task allocation among nodes.
The default option is Deploy Redis Standalone.
You can install a Redis standalone state server or connect an existing self-provided state server (such as Redis Standalone and Redis Cluster to the project.
If you need to use other types of state servers, you can log in to the project after it is successfully deployed and switch the state server.
If you choose to install a Redis standalone state server, it is typically installed on the component node.
This component must be installed only when you deploy a FineBI 6.1 project.
It is used to store and share data resources within FineBI, ensuring that every node can access and utilize them.
You can install the MinIO component and use it for data storage.
Self-provided S3 is recommended and supported, such as cloud storage service systems like Alibaba Cloud OSS, Huawei Cloud OBS, and Amazon S3.
1. The data storage service cannot be provided by shared external directories starting from FineOps V2.18.0.
2. Changing the data storage service is supported starting from FineOps V2.18.0.
For projects previously using shared external directories, you are advised to change the data storage service provider to the S3 component.
3. If MinIO is used as the data storage component, you are advised to use a host server with the XFS disk file system.
If you choose to install a MinIO data storage component, it is typically installed on the main application node.
It will be installed on the first main application node added to the project.
Consider whether to install this component only when deploying a FineDataLink project.
It is optional for FineDataLink projects.
The default option is to deploy Kafka, an open-source stream processing platform.
If the Kafka component is not installed, the Pipeline Task function in FineDataLink will be unavailable.
External provisioning is not supported.
When you choose to install Kafka, it is typically installed on the component node.
Consider whether to install the following components only when deploying a FineDataLink project.
The Nacos components include Nacos and Nacos_MySQL.
Nacos
It serves as the service registry that ensures users' scheduling requests are reasonably distributed across cluster nodes, achieving high-availability and high-concurrency scheduling of nodes in scheduled tasks.
1. For single-application FineDataLink projects, it is not required.
2. For multi-application FineDataLink projects, it must be installed.
The default option is to deploy Nacos, a service registry.
When you choose to install Nacos, it is typically installed on the component node.
Nacos_MySQL
It is the MySQL component required for providing Nacos services.