Sasquatch Architecture#
A typical Sasquatch deployment consists of the following main components:
Apache Kafka#
In Sasquatch, Kafka is used as a message queue to InfluxDB and for data replication between Sasquatch Environments.
Kafka is managed by the Strimzi operator. In addition to the Strimzi components, Sasquatch uses the Confluent Schema Registry to manage Avro schemas for kafka topics, and the Confluent Kafka REST proxy to connect HTTP-based clients with Kafka.
Telegraf connectors#
Telegraf connectors are used to read data from Kafka topics and write to InfluxDB.
Data is organized by Namespaces which map to databases in InfluxDB.
MirrorMaker2#
MirrorMaker2 is used for data replication between Sasquatch Environments. Two-way replication is supported.
InfluxDB Enterprise#
InfluxDB is a time series database optimized for efficient storage and querying time-series data. Sasquatch uses InfluxDB Enterprise v1 to support high-availability and clustering.
InfluxDB provides an SQL-like query language called InfluxQL and a data scripting language called Flux. Both languages can be used in Chronograf for data exploration and visualization. Kapacitor is used for alerting and data processing.
Read more about the Sasquatch architecture in SQR-068.