Este conteúdo não está disponível no idioma selecionado.
Chapter 2. Fuse Online
Fuse Online provides a web browser interface that lets a business expert integrate two or more different applications or services without writing code. It also provides features that allow the addition of code if it is needed for complex use cases.
Fuse Online runs an integration on OpenShift as a Spring Boot application that uses Apache Camel.
2.1. About Fuse Online distributions Copiar o linkLink copiado para a área de transferência!
Fuse Online is Red Hat’s web-based integration platform. Syndesis is the open source project for Fuse Online. Fuse Online runs in these OpenShift environments:
Host Environment | Installation |
OpenShift Dedicated | Red Hat installs and provisions Fuse Online on Red Hat infrastructure. |
OpenShift Container Platform | Customer installs and manages. |
2.2. New features in Fuse Online 7.11 Copiar o linkLink copiado para a área de transferência!
These features are new in Fuse Online 7.11:
Support for connecting to Red Hat Managed Kafka
To support connecting to Red Hat Managed Kafka, the Kafka Message Broker connector includes the following fields:
- Security Protocol
- SASL Mechanism
- Username
- Password
- SASL Login Callback Handler Class
OAuth Token Endpoint URI
For more information, see Chapter 15, "Connecting to Kafka" in Connecting Fuse Online to Applications and Services.
Integration labels
When you save an integration, you can apply one or more labels to it. A label is a key-value pair tag that you can apply to an integration (or other OpenShift resource) for later filtering and selecting in OpenShift. For example, an OpenShift admin user can filter the list of running pods or deployments by label.
Integration environment variables
Optionally, when you save an integration, you can set one or more environment variables that Fuse Online applies to the integration Pod. You can use these environment variables to set Spring Boot configuration options, for example, to set
SERVER_MAX_HTTP_HEADER_SIZE
. Existing environment variables set manually are preserved.Note that setting these environment variables in Fuse Online when you save an integration does not change or impact any other environment settings set manually, for example, through the OpenShift web console interface.
Maven mirror setting
You can specify the Maven repository that you want Fuse Online to use for accessing Maven artifacts when it builds integrations. In the Syndesis custom resource, specify the Maven repository as the value of the
components:server:features:maven:mirror
setting.
2.3. Changes in Fuse Online 7.11 Copiar o linkLink copiado para a área de transferência!
Fuse Online 7.11 changes Fuse Online 7.10 features as follows:
To install the AMQ Broker, use the
todo addon
optionIn previous releases, the AMQ Broker was installed with Fuse Online by default. Starting with Fuse Online 7.11, if you want to install the AMQ Broker, set the Fuse Online
todo addon
option totrue
. This option also enables the sampleTodo
app, the sample PostgreSQL database, and connector for testing integrations. For more information about setting thetodo addon
option, see Adding sample data to a Fuse environment running on OCP in Installing and Operating Fuse Online on OpenShift Container Platform.Data Mapper supports CSV data
For any Fuse Online connector that has an action for which you can define a data shape, you now have the option to specify a CSV instance (in addition to the options to specify JSON schema, JSON instance, XML schema, or XML instance). For example, in a Webhook connection, you can specify a CSV file as a data output type for an action.
2.4. Upgrading from Fuse Online 7.10.x to 7.11.x requires manual upgrade steps Copiar o linkLink copiado para a área de transferência!
If you installed Fuse Online 7.10.x and want to upgrade to Fuse Online 7.11.x.x, you must manually upgrade to Fuse Online 7.11.x.0.
- In the Administrator perspective of the OpenShift Container Platform web console, navigate to Operators > Installed Operators.
- Click the Red Hat Integration Fuse Online 7.10.2 Operator.
- Click the Subscription tab.
Verify that Update approval is set to Manual:
- If Update approval is set to Manual, skip to the next step.
If Update approval is set to Automatic:
- Click Automatic.
- In the Change Update Approval Strategy dialog, select Manual and click Save.
- Under Update channel, click 7.10.2.
For the Change subscription update channel, select 7.11.x.
Note: The
latest
,candidate
, andstable
channels are Technology Preview features.- Under Upgrade status, click Upgrade available.
- Click Preview InstallPlan and then Approve.
Verify that the operator has fully completed the upgrade to Fuse Online 7.11.0:
- Navigate to the Operators > Installed Operators page and click Red Hat Integration Fuse Online. The Operator Details page opens.
-
Select the Syndesis tab. The status for the Fuse Online instance (the default name is app) initially shows
Installed
(to indicate that Fuse Online 7.11.0 is installed). It then progresses through several phases (Installing
,Starting
, andInstalled
). When it reaches theInstalled
phase again, the upgrade to 7.11.0 is complete.
- Navigate back to the Operators > Installed Operators page, and then click Upgrade available for the Red Hat Integration Fuse Online operator.
- Click Preview InstallPlan and then Approve.
Verify that the operator has fully completed the upgrade to Fuse Online 7.11.x:
-
Navigate to Networking > Routes and click on the location link for
syndesis
to open the Fuse Online web console. - In the upper right corner of the Fuse Online console, click the ? icon and then select About.
-
Verify that the About page includes
7_11_x
in the version number.
-
Navigate to Networking > Routes and click on the location link for
2.5. Upgrading Fuse Online integrations Copiar o linkLink copiado para a área de transferência!
To upgrade a Fuse Online environment that is running on OCP on-site, you must update Fuse Online by using the operator and then republish any running integrations as described in Upgrading Fuse Online.
On OCP 4.9, when you upgrade to 7.10 by using the operator, the following warning is displayed during the Fuse Online Operator upgrade process:
W1219 18:38:58.064578 1 warnings.go:70] extensions/v1beta1 Ingress is deprecated in v1.14+, unavailable in v1.22+; use networking.k8s.io/v1 Ingress
This warning appears because clients (that Fuse Online uses for the Kubernetes/OpenShift API initialization code) access a deprecated Ingress version. This warning is not an indicator of complete use of deprecated APIs and there is no issue with upgrading to Fuse Online 7.10.
2.6. Important notes for Fuse Online Copiar o linkLink copiado para a área de transferência!
Important notes for the Fuse 7.11 release of the Fuse Online distribution:
- Support for Fuse Online is now deprecated as Fuse 7 is now in the maintenance support. There will not be any future development for Fuse Online when Fuse 7 moves out of support.
- Installation of Fuse Online is no longer supported on OCP 3.11.
- Fuse Online no longer supports Camel K runtime or the KNative connector.
- When Fuse Online is installed and provisioned on Red Hat infrastructure, the account is limited to a specific number of integrations that can be running at one time. For details, see the pricing plan.
- An OpenAPI schema that you upload to Fuse Online might not define input/output types. When Fuse Online creates a custom API client from an OpenAPI schema that does not specify input/output types then it is not possible to create an integration that maps integration data to fields that the API client can process or from fields that the API client processed. If an integration requires data mapping to or from a custom API, then when you upload the OpenAPI schema, click Review/Edit to open API Designer, which is an API editing tool, and add input/output type specifications.
- Since Fuse 7.8, an OpenAPI document that you use for a custom API client connector or for an API provider integration cannot have cyclic schema references. For example, a JSON schema that specifies a request or response body cannot reference itself as a whole nor reference any part of itself through any number of intermediate schemas.
On OCP 4.9 (or later), the
application-monitoring
project no longer works. It is a prerequisite for monitoring Fuse Online integrations and infrastructure components with Prometheus and Grafana.To work around this issue, you can use the built-in monitoring stack (in the
openshift-monitoring
namespace) to use theopenshift-user-workload-monitoring
feature and thegrafana-operator
to use theops addon
as described in the following Adding Fuse Online monitoring resources (Prometheus and Grafana) on OCP 4.9 (or later) procedure.
2.6.1. Adding Fuse Online monitoring resources (Prometheus and Grafana) on OCP 4.9 (or later) Copiar o linkLink copiado para a área de transferência!
Prerequisites
- Fuse Online is installed and running on OCP 4.9 (or later) on-site.
-
The
oc
client tool is installed and it is connected to the OCP cluster in which Fuse Online is installed. -
You have
admin
access to the OCP cluster. Your Fuse Online installation is configured with the
ops addon
enabled. If required, you can enable it with this command:oc patch syndesis/app --type=merge -p '{"spec": {"addons": {"ops": {"enabled": true}}}}'
oc patch syndesis/app --type=merge -p '{"spec": {"addons": {"ops": {"enabled": true}}}}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Procedure
If there is an existing
openshift-monitoring
configuration, skip to Step 2.Otherwise, create an
openshift-monitoring
configuration, that sets the user workload monitoring option totrue
and then skip to Step 3:Copy to Clipboard Copied! Toggle word wrap Toggle overflow If there is an existing
openshift-monitoring
configuration:Check the existing
openshift-monitoring
configuration to determine whether the user workload monitoring option is set to true:oc get -n openshift-monitoring cm/cluster-monitoring-config -ojsonpath='{.data.config\.yaml}'
oc get -n openshift-monitoring cm/cluster-monitoring-config -ojsonpath='{.data.config\.yaml}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow If the result is
enableUserWorkload: true
, the user workload monitoring option is set to true. Skip to Step 3.If the result shows any other configurations, continue to the next step to enable the monitoring of user workloads by editing the ConfigMap.
Open the ConfigMap file in an editor, for example:
oc -n openshift-monitoring edit cm/cluster-monitoring-config
oc -n openshift-monitoring edit cm/cluster-monitoring-config
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Set enableUserWorkload to true. For example:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Save the ConfigMap file.
Use the following command to watch the status of the pods in the
openshift-user-workload-monitoring
namespace:oc -n openshift-user-workload-monitoring get pods -w
oc -n openshift-user-workload-monitoring get pods -w
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Wait until the status of the pods is Running, for example:
prometheus-operator-5d989f48fd-2qbzd 2/2 Running prometheus-user-workload-0 5/5 Running prometheus-user-workload-1 5/5 Running thanos-ruler-user-workload-0 3/3 Running thanos-ruler-user-workload-1 3/3 Running
prometheus-operator-5d989f48fd-2qbzd 2/2 Running prometheus-user-workload-0 5/5 Running prometheus-user-workload-1 5/5 Running thanos-ruler-user-workload-0 3/3 Running thanos-ruler-user-workload-1 3/3 Running
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Verify that the Fuse Online alert rules are enabled in Prometheus:
Access the internal prometheus instance
oc port-forward -n openshift-user-workload-monitoring pod/prometheus-user-workload-0 9090
oc port-forward -n openshift-user-workload-monitoring pod/prometheus-user-workload-0 9090
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
Open your browser to
localhost:9090
-
Select Status> Targets. You should see three
syndesis
endpoints. -
Press CTRL-C to terminate the
port-forward
process.
-
From the OperatorHub, install the Grafana Operator 4.1.0 to a namespace of your choosing, for example, to the
grafana-middleware
namespace. Add a cluster role and a cluster role binding to allow the
grafana-operator
to list nodes and namespaces:Download the cluster role YAML file from the
grafana-operator
website:curl https://raw.githubusercontent.com/grafana-operator/grafana-operator/master/deploy/cluster_roles/cluster_role_grafana_operator.yaml > tmp_role.yaml
curl https://raw.githubusercontent.com/grafana-operator/grafana-operator/master/deploy/cluster_roles/cluster_role_grafana_operator.yaml > tmp_role.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Add cluster permission for the
grafana-operator
to read other namespaces and nodes:Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc apply -f tmp_role.yaml
oc apply -f tmp_role.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Enable the
grafana-operator
to read Grafana dashboards from other namespaces by using theDASHBOARD_NAMESPACES_ALL
environment variable to limit the namespaces:oc -n grafana-middleware patch subs/grafana-operator --type=merge -p '{"spec":{"config":{"env":[{"name":"DASHBOARD_NAMESPACES_ALL","value":"true"}]}}}'
oc -n grafana-middleware patch subs/grafana-operator --type=merge -p '{"spec":{"config":{"env":[{"name":"DASHBOARD_NAMESPACES_ALL","value":"true"}]}}}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Check that the
grafana
pods are recreated:oc -n grafana-middleware get pods -w
oc -n grafana-middleware get pods -w
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Optionally, view the
grafana-operator
logs:oc -n grafana-middleware logs -f `oc -n grafana-middleware get pods -oname|grep grafana-operator-controller-manager` -c manager
oc -n grafana-middleware logs -f `oc -n grafana-middleware get pods -oname|grep grafana-operator-controller-manager` -c manager
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Add a Grafana custom resource to start a Grafana server pod, for example:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Allow the
grafana-operator
to read monitoring information:oc -n grafana-middleware adm policy add-cluster-role-to-user cluster-monitoring-view -z grafana-serviceaccount
oc -n grafana-middleware adm policy add-cluster-role-to-user cluster-monitoring-view -z grafana-serviceaccount
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Add a
GrafanaDatasource
to querythanos-querier
:Copy to Clipboard Copied! Toggle word wrap Toggle overflow View the grafana server log:
oc logs -f `oc get pods -l app=grafana -oname`
oc logs -f `oc get pods -l app=grafana -oname`
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Access the grafana URL and view the Fuse Online dashboards:
echo "https://"$(oc -n grafana-middleware get route/grafana-route -ojsonpath='{.spec.host}')
echo "https://"$(oc -n grafana-middleware get route/grafana-route -ojsonpath='{.spec.host}')
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.7. Obtaining technical support for Fuse Online Copiar o linkLink copiado para a área de transferência!
To obtain technical support, in the Fuse Online console, in the left navigation panel, click Support. Use the Support page to download diagnostic information for all integrations or for one or more integrations that you choose. The page also provides a link for opening a support ticket and providing the diagnostic information that you downloaded.
2.8. Technology Preview features in Fuse Online Copiar o linkLink copiado para a área de transferência!
This release includes the Technology Preview features that are listed below.
Technology Preview features are not supported with Red Hat production service level agreements (SLAs), might not be functionally complete, and Red Hat does not recommend using them in production. These features provide early access to upcoming product features, enabling customers to test functionality and provide feedback during the development process. For more information, see Red Hat Technology Preview features support scope.
Fuse Online auditing
Fuse Online supports basic auditing for changes made by any user to the following Fuse Online components:
-
Connections - The
Name
and any other fields shown on the connector’s Details page in the Fuse Online web console. -
Connectors - The
Name
field. -
Integrations - The
Name
field.
-
Connections - The
Conditional expressions for mapping data fields
In the data mapper, you can specify a conditional expression and apply it to a data mapping. For example, a conditional expression can specify evaluation of a source field and how to populate the target field if the source field is empty. The limited set of expressions that you can specify are similar to Microsoft Excel expressions.
Document scope for user-defined properties in data mapper
In the data mapper, you can specify a scope for properties that you define for source and target mappings. In the Mapping Details panel, click Add (+) next to Properties. In the Create Property dialog. for the new Scope option, you can select the current message header, a message header from a previous step, or Camel Exchange Property for Camel-specific properties.
For a REST API client that uses OAuth, when you create an API client connector, you can change the default OAuth2 behavior of connections that you create from that connector. Fuse Online vendor extensions to the OpenAPI specification support the following:
- Providing client credentials as parameters.
- Obtaining a new access token based on HTTP response status codes.