Reduced FineOps size by canceling the following redundant O&M mirror images: loki, promtail, sherlock, nacos-server, and skywalking_ui.
Started the Elasticsearch and SkyWalking OAP components by default after installation.
Added a reminder of browser version detection.
Displayed the project access address for easy access after successful deployment.
Allowed changing the deployment directory without modifying the YAML file quickly if the space of the mounting disk was detected to be insufficient.
Adjusted the default ports of some O&M components to prevent conflicts with O&M projects.
Changed the default port number of the node_exporter component from 9100 to 9101.
Changed the default port of the OPS Agent component from 9070 to 9071.
Lowered the resource requirements.
Deleted the node_exporter, nginx_exporter, and elasticsearch_exporter components, whose functions were merged into the OPS Agent component, which could be used to collect the indicator information of the server where OPS was located and the indicator information of the Nginx and Elasticsearch components.
Added a Pushgateway component to temporarily store the indicators collected by OPS Agent and make them available to the Prometheus component.
Supported the deployment of FineOps Basic Edition, on which Elasticsearch and SkyWalking OAP were not deployed and functions related to Tracing were disabled.
Allowed switching the FineOps language by modifying a parameter value in the finekey.yaml file during FineOps deployment.
1. Added validation of the finekey.yaml file and prompts for incorrect configuration (if any) during FineOps deployment.
2. Added support for Russian.
FineOps is launched by FanRuan Software to provide enterprises with solutions for stable operation and comprehensive O&M management of FanRuan applications.
FineOps helps address some pain points and challenges you encounter in managing FanRuan applications (such as FineReport, FineBI, and FineDataLink). For details, see Function Introduction.
FineOps is necessary to deploy FanRuan projects (such as FineBI, FineReport, and FineDataLink) in a standard manner.
This article describes how to deploy FineOps.
This article is mainly for users who have limited server resources. If you can provide a brand-new server for deployment, see Quick Start.
Check whether the prepared server meets the requirements to deploy FineOps referring to the following documents.
FineOps Basic Edition has lower requirements on resources and does not support some functions.
FineOps Standard Edition supports full functions but poses high requirements on the resources.
Choose the edition according to the actual conditions.
FineOps is composed of multiple O&M components.
Understand the role of each O&M component before deployment.
Confirm the memory, disk space, operating system, and others of the server on which FineOps is deployed.
Check whether a Docker comes with FineOps and its version.
Confirm the ports on the server to be reserved for the O&M components.
Confirm the ports on the server to be opened.
Prepare a proper installation directory for FineOps.
Check whether the user permissions for deploying FineOps meet the requirements.
Contact the technical support personnel to obtain the installation package of the finekey tool.
There are three types of installation packages. You can choose the proper one according to your server environment and needs.
Note:
If you want to use the online installation package and enable external network access to specified addresses only, ensure that the server where the FineOps image repository is located has external network access to the FanRuan cloud image repository. (The FineOps image repository is on the same server as FineOps.)
Installation Package Type
Description
Online Installation Package
1. In this type, the server can access the extranet. You can download images of O&M components. The installation package is small.
2. It allows you to deploy projects via FineOps visually with component images of FanRuan applications that FineOps downloads from the cloud.
3. You can connect FineOps to existing FanRuan applications.
Pure Offline Installation Package
1. In this type, the server is on the intranet, with built-in images of all O&M components. The installation package is large.
2. Component images of FanRuan applications are not built-in, so you cannot deploy projects via FineOps visually.
Full Offline Installation Package
2. It allows you to deploy projects via FineOps visually with built-in component images of FanRuan applications.
Upload the finekey installation package to the Linux system.
In the following figure, the package is uploaded to the /home/ops path of a server with CentOS 7.6.1810.
1. Use the cd command to enter the folder where the tool package is located.
2. Enter the corresponding command according to the type of the installation package to extract the file.
Decompression Command
The extracted files are shown in the following table.
It is an executable file for running the finekey tool.
It is the configuration file of the newly deployed FineOps.
It is used to pull the image of the configuration file.
It is the resource file, whose image is placed in the images folder.
The YAML file refers to the finekey.yaml file in /finekey/conf that controls the entire automated deployment process.
To use the default deployment configuration (of the installation directory, the component port, the warehouse, etc.), you can deploy FineOps on the current host machine without modifying the YAML file.
To change the configuration of FineOps or the component-occupied port, modify the values of corresponding parameters in the YAML file. Finish configuring the YAML file before starting finekey.
File Content Description
Configuration Item
Basic configuration
Description:
The node section contains information on the server where FineOps is deployed, including the IP address, the port number, the username, and the password.
Notes:
1. If the finekey package is located on the FineOps server and you use the current terminal user account to deploy FineOps, you do not need to modify this part.
2. You are advised to use the root user (the server superuser) to deploy FineOps. Otherwise, ensure the user's permission meets the deployment requirements. For details, see Preparing the FineOps Server.
3. For password-based SSH authentication, ensure the password does not contain a single quotation mark ('). Otherwise, deployment may fail due to permission validation errors.
4. For key-based SSH authentication, comment out the password configuration and specify the absolute path (not relative) to the keyfile in the following format:
keypath: /Absolute path of the keyfile/Keyfile name
It specifies the root mounting path of FineOps.
1. The default installation path is ~/data, which is the data folder in the home directory of the installation user, not the /data folder.
For example, if you deploy FineOps using the root user, ~/data means /root/data.
2. Enter an absolute path if you want to modify the mounting path. Relative paths are not supported.
Ensure that the partition where the mounting path is located has free disk space of at least 100 GB.
This section contains information on the new registry image repository to be installed by default.
You can specify the repository port number (which is 5000 by default). You do not need to modify other information.
2. If you want to use a self-provided image repository, enter the port number, the URL, the username, the password, and the SSL information of the repository.
Description: It determines whether to install FineOps online.
false: Install it offline.
true: Install it online.
You are not advised to modify this item as it pertains to the installation package type. For details, see the "Obtaining the finekey Installation Package" section.
Description: It determines the display language on FineOps pages.
CN: Simplified Chinese
TW: Traditional Chinese
EN: English
RU: Russian
KR: Korean
JA: Japanese
Description: It determines the container time zone.
The default value is Asia/Shanghai.
If you need to specify the time zone, remove the comment symbol (#) and enter a valid IANA time zone.
You are advised to set it to the time zone of the project server.
Description: It specifies the management address of the default Docker network.
Notes: No configuration is required by default. If you need to specify the network segment, remove the comment symbol (#) and enter the specified network segment.
Description: It specifies the network address assigned to FineOps components.
This section contains information on components to be installed. For details, see Understanding Roles of FineOps Components.
FanRuan has conducted custom development on FineOps components (except for registry) to align with the product's functional requirements. Therefore, you cannot use self-provided components.
You can customize the port for each component using the parameter portMapping: {Host port number: Container port number}.
1. Check port availability and modify the port number in the YAML file as needed. For details, see Preparing the FineOps Server.
2. Host port number in the parameter refers to the number of the port used for accessing the service, and Container port number refers to the port number predefined by the image. You can modify the host port number but cannot modify or delete the container port number.
3. If you want to modify configuration in the components section, remove the comment symbol (#) in front of components, the component name, and the corresponding parameter.
Take modifying the OPS port number from 8081 to 8088 as an example.
Before modification:
#Component port configuration#components:# nginx:# portMapping: {80: 8080}## ops:# portMapping: {8081: 8080}
After modification:
#Component port configurationcomponents:# nginx:# portMapping: {80: 8080}# ops: portMapping: {8088: 8080}
File Example
node: ip: localhost #Enter the IP address of this node. port: 22 #Enter the port number of this node. user: #Enter the SSH username of this node. password: #Enter the SSH password of this node.dataRootPath: ~/datarepo: port: 5000 #Enter the registry port number. #Use an existing container registry. url: #Enter the URL of the existing registry. username: #Enter the existing registry username. password: #Enter the existing registry password. ssl: true #Enable SSL.online: false #Disable online installation.language: EN #Set the language. You can set it to CN/TW/EN/RU_sv/KR/JA.#timezone: "Asia/Shanghai" #Set the time zone.#bip: 10.16.0.1/16 #Specify the default network segment of Docker.#fip: 10.17.0.1/16 #Specify the network segment of O&M component containers.#Component port configuration#components:# nginx:# portMapping: {80: 8080}## ops_agent:# portMapping: {9071: 9070}## skywalking_oap:# portMapping: {11800: 11800, 12800: 12800}## elasticsearch:# portMapping: {9200: 9200}# password: elasticadmin
1. Use the cd command to enter the bin folder of the extracted finekey file.
2. Enter the following command to start automated deployment.
1. You must use the commands described in the document. Do not replace them with other commands (for example, sudo ./finekey update). Otherwise, deployment failure may occur.
2. This command is used to deploy FineOps, not to start it. A separate FineOps is deployed per execution.
FineOps Edition
Command
FineOps Standard Edition
FineOps Basic Edition
3. Wait for the deployment to complete, which will take some time.
1. The system performs a pre-deployment validation of the finekey.yaml file automatically. If it detects unconfigured required fields, invalid values, or non-preset components, it will report an error and abort the deployment.
2. Note that ~/data refers to the data directory in the user's home directory rather than the /data folder. For example, if you deploy FineOps using the root user, ~/data means /root/data.
3. If the free space on the disk where the mounting path is located is detected to be less than 100 GB during deployment, a prompt will appear, indicating that the capacity check fails and you need to re-enter a path. You do not need to exit deployment. You can modify the YAML file, enter a path that meets the conditions, and continue deployment.
The "deployment success" prompt indicates that FineOps has been successfully deployed.
Right after the prompt is the access address of FineOps. You can copy it for later access.
1. The IP address in the access address is an internal network IP address of the server. Replace it with a public IP address if external network access is required.
2. The port in the access address is the one set to be occupied by the Nginx component.
If you deploy FineOps using the root user, the default port number is 80. You can omit the port number in the access address and access FineOps using http:/IP address/ops/decision.
If you deploy FineOps using a non-root user, the default port number is 8090, and the access address is http://IP address:8090/ops/decision.
If you have modified the port number of the Nginx component in the finekey.yaml file, the access address is http://IP address:Nginx port number/ops/decision.
FineOps services start automatically once the project is deployed. You can paste the copied access address in the address bar of a browser to access FineOps.
Selecting a Browser
Access FineOps using a browser that meets the following version requirement. Otherwise, the page may be displayed abnormally.
Google Chrome
88 and later releases
Safari
14 and later releases
Firefox
78 and later releases
Internet Explorer (IE)
Not supported
If you access FineOps using a browser that does not meet the version requirement, a pop-up window will appear on some pages, saying "It is detected that the current browser version is too low, which may cause some components to be displayed abnormally. You are advised to upgrade the browser."
Accessing the Project
Enter the access address in the address bar of a browser to access FineOps.
For example, enter http://IP address/ops/decision in the address bar.
After completing operations in this document, you can proceed to the next step.
New Project Deployment
If you haven't deployed a FineReport, FineBI, or FineDataLink project, you can quickly deploy one and connect it to FineOps.
If you have deployed a FineReport, FineBI, or FineDataLink project, you can connect the existing project to FineOps.