2.4. Fuse Online 的重要备注


Fuse Online 发行版的 Fuse 7.12 版本的重要备注:

  • 对 Fuse Online 的支持现已弃用,因为 Fuse 7 现在处于维护支持中。Fuse 7 结束支持时,不会有任何用于 Fuse Online 的开发。
  • OCP 3.11 不再支持安装 Fuse Online。
  • Fuse Online 不再支持 Camel K 运行时或 KNative 连接器。
  • 当在红帽基础架构上安装和配置 Fuse Online 时,该帐户仅限于一次可以运行的特定数量集成。详情请查看定价计划。
  • 上传到 Fuse Online 的 OpenAPI 模式可能无法定义输入/输出类型。当 Fuse Online 从 OpenAPI 模式创建自定义 API 客户端时,它没有指定输入/输出类型,则无法创建集成数据将集成数据映射到 API 客户端处理的字段或来自 API 客户端处理的字段。如果集成需要数据映射到自定义 API,那么当您上传 OpenAPI 模式时,点 Review/Edit 以打开 API Designer,它是一个 API 编辑工具,并添加输入/输出类型规格。
  • 自 Fuse 7.8 起,用于自定义 API 客户端连接器或 API 供应商集成的 OpenAPI 文档不能具有 cyclic 模式引用。例如,指定请求或响应正文的 JSON 模式无法作为整体引用,也无法通过任意数量的中间模式引用其自身的任何部分。
  • 在 OCP 4.9 (或更新版本)上,application-monitoring 项目不再有效。监控 Fuse 在线集成和基础架构组件与 Prometheus 和 Grafana 的先决条件。

    要临时解决这个问题,您可以使用 内置的监控堆栈(在 openshift-monitoring 命名空间中)使用 openshift-user-workload-monitoring 功能和 grafana-operator 来使用 ops addon,如以下在 OCP 4.9 (或稍后的)上添加 Fuse Online 监控资源(Prometheus 和 Grafana) 所述。

2.4.1. 在 OCP 4.9 (或更新版本)中添加 Fuse Online 监控资源(Prometheus 和 Grafana)

先决条件

  • Fuse Online 在 OCP 4.9 (或更新版本)上安装并运行。
  • 已安装 oc 客户端工具,并连接到安装了 Fuse Online 的 OCP 集群。
  • 有 OCP 集群的 admin 访问权限。
  • 您的 Fuse 在线安装启用了 ops addon。如果需要,您可以使用以下命令启用它:

    oc patch syndesis/app --type=merge -p '{"spec": {"addons": {"ops": {"enabled": true}}}}'

步骤

  1. 如果有现有的 openshift-monitoring 配置,请跳至第 2 步。

    否则,创建一个 openshift-monitoring 配置,将用户工作负载监控选项设置为 true,然后跳至第 3 步:

    oc apply -f - <<EOF
    apiVersion: v1
    kind: ConfigMap
    metadata:
      name: cluster-monitoring-config
      namespace: openshift-monitoring
    data:
      config.yaml:
       enableUserWorkload: true
    EOF
  2. 如果存在现有的 openshift-monitoring 配置:

    1. 检查现有的 openshift-monitoring 配置,以确定 用户工作负载监控 选项是否设置为 true

      oc get -n openshift-monitoring cm/cluster-monitoring-config -ojsonpath='{.data.config\.yaml}'

      如果结果为 enableUserWorkload: true,则用户工作负载监控选项设置为 true跳至第 3 步。

      如果结果显示任何其他配置,请继续下一步,以便通过编辑 ConfigMap 来启用用户工作负载的监控。

    2. 在编辑器中打开 ConfigMap 文件,例如:

      oc -n openshift-monitoring edit cm/cluster-monitoring-config
    3. enableUserWorkload 设置为 true。例如:

      apiVersion: v1
      kind: ConfigMap
      metadata:
        name: cluster-monitoring-config
        namespace: openshift-monitoring
      data:
        config.yaml:
         enableUserWorkload: true
    4. 保存 ConfigMap 文件。
  3. 使用以下命令监控 openshift-user-workload-monitoring 命名空间中的 pod 状态:

    oc -n openshift-user-workload-monitoring get pods -w

    等待 pod 的状态为 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
  4. 验证 Prometheus 中是否启用了 Fuse Online 警报规则:

    1. 访问内部 prometheus 实例

      oc port-forward -n openshift-user-workload-monitoring pod/prometheus-user-workload-0 9090
    2. 打开浏览器到 localhost:9090
    3. 选择 Status> Targets。您应该会看到三个 复合 端点。
    4. CTRL-C 终止 端口转发 进程。
  5. 在 OperatorHub 中,将 Grafana Operator 4.1.0 安装到您选择的命名空间,例如 grafana-middleware 命名空间。
  6. 添加集群角色和集群角色绑定,以允许 grafana-operator 列出节点和命名空间:

    1. grafana-operator 网站下载集群角色 YAML 文件:

      curl https://raw.githubusercontent.com/grafana-operator/grafana-operator/master/deploy/cluster_roles/cluster_role_grafana_operator.yaml > tmp_role.yaml
    2. grafana-operator 添加集群权限以读取其他命名空间和节点:

      cat <<EOF >> tmp_role.yaml
        - apiGroups:
            - ""
          resources:
            - namespaces
            - nodes
          verbs:
            - get
            - list
            - watch
      EOF
      oc apply -f tmp_role.yaml
      oc apply -f - <<EOF
      apiVersion: rbac.authorization.k8s.io/v1
      kind: ClusterRoleBinding
      metadata:
        name: grafana-operator
      roleRef:
        name: grafana-operator
        kind: ClusterRole
        apiGroup: ""
      subjects:
        - kind: ServiceAccount
          name: grafana-operator-controller-manager
          namespace: grafana-middleware
      EOF
  7. 使用 DASHBOARD_NAMESPACES_ALL 环境变量从其他命名空间中读取 Grafana 仪表板,以限制命名空间:

    oc -n grafana-middleware patch subs/grafana-operator --type=merge -p '{"spec":{"config":{"env":[{"name":"DASHBOARD_NAMESPACES_ALL","value":"true"}]}}}'
  8. 检查 grafana pod 是否已重新创建:

    oc -n grafana-middleware get pods -w
  9. 另外,还可查看 grafana-operator 日志:

    oc -n grafana-middleware logs -f `oc -n grafana-middleware get pods -oname|grep grafana-operator-controller-manager` -c manager
  10. 添加 Grafana 自定义资源 以启动 Grafana 服务器 pod,例如:

    oc apply -f - <<EOF
    apiVersion: integreatly.org/v1alpha1
    kind: Grafana
    metadata:
      name: grafana-middleware
      namespace: grafana-middleware
    spec:
      config:
        auth:
          disable_signout_menu: true
        auth.anonymous:
          enabled: true
        log:
          level: warn
          mode: console
        security:
          admin_password: secret
          admin_user: root
      dashboardLabelSelector:
      - matchExpressions:
        - key: app
          operator: In
          values:
          - grafana
          - syndesis
      ingress:
        enabled: true
    EOF
  11. 允许 grafana-operator 读取监控信息:

    oc -n grafana-middleware adm policy add-cluster-role-to-user cluster-monitoring-view -z grafana-serviceaccount
  12. 添加 GrafanaDatasource 以查询 thanos-querier

    oc apply -f - <<EOF
    apiVersion: integreatly.org/v1alpha1
    kind: GrafanaDataSource
    metadata:
      name: prometheus-grafanadatasource
      namespace: grafana-middleware
    spec:
      datasources:
        - access: proxy
          editable: true
          isDefault: true
          jsonData:
            httpHeaderName1: 'Authorization'
            timeInterval: 5s
            tlsSkipVerify: true
          name: Prometheus
          secureJsonData:
          httpHeaderValue1: "Bearer $(oc -n grafana-middleware serviceaccounts get-token grafana-serviceaccount)"
          type: prometheus
          url: "https://$(oc get route thanos-querier -n openshift-monitoring -ojsonpath='{.spec.host}')"
      name: prometheus-grafanadatasource.yaml
    EOF
  13. 查看 grafana 服务器日志:

    oc logs -f `oc get pods -l app=grafana -oname`
  14. 访问 grafana URL 并查看 Fuse 在线仪表板:

    echo "https://"$(oc -n grafana-middleware get route/grafana-route -ojsonpath='{.spec.host}')
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.