使用反向代理

您可以将Data Collector 与反向代理服务器(例如Nginx)一起使用。要使用反向代理服务器,您只需配置反向代理服务器与Data Collector一起使用即可

您可以使用反向代理服务器来定义用户定义的到Data Collector的基于路径的路由,或帮助平衡同一台计算机上安装的Data Collector的多个实例之间的负载。

您还可以对StreamSets Transformer使用反向代理服务器。

例如,以下Nginx配置提供对Data Collector的两个实例的访问,一个使用端口18630,一个使用18640。它还提供对端口19630上的StreamSets Transformer的访问:

          location /sdc/ {
            proxy_pass         http://0.0.0.0:18630/;
            proxy_set_header   Host $host:$server_port;
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "Upgrade";
        }

        location /sdc2/ {
            proxy_pass         http://0.0.0.0:18640/;
            proxy_set_header   Host $host:$server_port;
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "Upgrade";
        }

    location /transformer/ {
            proxy_pass         http://0.0.0.0:19630/;
            proxy_set_header   Host $host:$server_port;
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection "Upgrade";
        }

同样,要使用Nginx入口控制器访问配置为使用Kubernetes集群上的端口18630的Data Collector,可以使用以下配置:

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: streamsets-datacollector
  annotations:
    nginx.ingress.kubernetes.io/ssl-redirect: \"false\"
    nginx.ingress.kubernetes.io/rewrite-target: /$2
spec:
  rules:
    - http:
        paths:
          - path: /datacollector(/|$)(.*)
            backend:
              serviceName: streamsets-datacollector
              servicePort: 18630

有关配置反向代理服务器的特定详细信息,请参阅反向代理服务器文档。