PubSub+ Self-Managed Connectors
In many cases, external data is not always available in a form that is compatible for an event-driven architecture. Things like databases, filesystems, and SaaS applications need to be event-enabled to integrate with your event-driven architecture and connect to PubSub+ event brokers. For example:
-
A filesystem isn’t event-enabled by default, but it might be useful to have an event each time a file is created in a directory.
-
Database operations are not event-enabled by default, but it might be useful to have an event whenever there’s a Create, Update, or Delete (CRUD) operation performed to a table.
Self-Managed Connectors provide data integration between third-party services (message brokers, databases, filesystems, cloud services and applications, and so on) with PubSub+ event brokers. They ingest (on-ramp) and egress (off-ramp) data to and from your PubSub+ event brokers to integrate things that are normally not event-enabled to support your event-driven architecture.
Self-Managed Connectors are standalone and can be deployed independently of other connectors or infrastructure. Each Self-Managed Connector is part of a family of Solace Self-Managed Connectors that are built on a common Spring framework. You don't need in-depth knowledge of Spring or Java to use Self-Managed Connectors.
The Common Framework for PubSub+ Self-Managed Connectors
Self-Managed Connectors share these common features and capabilities:
A Common Deployment Model
Each Self-Managed Connector is available as:
-
an executable package for deployment on compute resources such as bare metal, VMs, and cloud compute services.
-
a pre-built container image suitable for deployment on container runtimes such as Docker, Podman, or orchestration through Kubernetes as examples.
Common Runtime Models
Each Self-Managed Connector can run:
-
as a single, standalone connector.
-
in a failover configuration that provides for an Active instance and 1-n “hot” Standby instances for high-availability.
-
as 2-n instances in Active-Active mode, providing horizontal scaling of Self-Managed Connectors. In this deployment model, the source data services must be capable of handling multiple consumers, as in non-exclusive or partitioned queues on the PubSub+ event broker.
A Common Configuration Model
Each Self-Managed Connector:
-
uses Spring Framework technologies and Spring configuration concepts, such as config file formats, names, Spring profiles, property names, and so on.
-
comes with a complete, well-documented sample configuration to allow users to configure the Self-Managed Connectors without prior knowledge of Java or Spring.
Common HTTP/JMX Endpoints
To access runtime information for Self-Managed Connectors:
-
use the Spring Actuator project to expose endpoints (which are exposed or hidden is part of the operator's configuration), providing information on the instance such as:
-
Health check
-
Metrics
-
Configuration/environment information (including JVM)
-
Log access
-
-
provide a common logging framework support:
-
Each Self-Managed Connector is built using the popular Logback logging framework.
-
Logback provides advanced logging features such as auto rollover by size or date, archiving, log export to common logging services, and log levels.
-
-
support common, configured metrics export to common monitoring tools:
Self-Managed Connectors are integrated with the Micrometer Application Observability project to provide a common, easily configured metrics export to many popular monitoring tools or services such as:
- AppOptics
- Azure Monitor
- Netflix Atlas
- CloudWatch
- Datadog
- Dynatrace
- Elastic
- Ganglia
- Graphite
- Humio
- Influx/Telegraf
- JMX
- KairosDB
- New Relic
- OpenTelemetry Protocol (OTLP)
- Prometheus
- SignalFx
- Google Stackdriver
- StatsD
- Wavefront
Running and Managing PubSub+ Self-Managed Connectors
Solace provides a number of self-managed connectors. The links below provide details on setup, workflow management, health, monitoring, configuration, and security for each Self-Managed Connector: