Immuta Installation and Components Review

Immuta Components

The components of Immuta can be divided into two overarching categories: primary components (which are common to both Immuta deployment types) and deployment-specific components.

Although this lesson focuses on one of these components (the Query Engine), this page provides context essential to identifying other components and their dependencies.

Primary Components

These are the components running in a typical Immuta deployment.

ComponentDescriptionNetworkingDependencies
Immuta Web ServiceThe Immuta UI and API services.Port 443 (normally encrypted with TLS)

Requires WebSocket support
Metadatabase

Query Engine

Fingerprint Service
Metadata DatabaseStores information about the Immuta instance‚Äôs configuration, including data source connections, policy assignments and audit logs. 

The Immuta Metadatabase and Query Engine are sometimes a single PostgreSQL database. Other times, they run independently.
Port 5432 (normally encrypted with TLS)Web Service
Query EngineThe Query Engine (and its replicas) handle requests made by users against query-backed data sources.

The Immuta Metadatabase and Query Engine are sometimes a single PostgreSQL database. Other times, they run independently.
Port 5432 (normally encrypted with TLS)Web Service
Fingerprint ServiceA stateless API that computes data source fingerprints and is used in Local Sensitive Data Detection.Port 443 (normally encrypted with TLS)Query Engine
Cache (Memcached)The in-memory key-value store used by the Immuta Web Service.
Each component is explored in more detail in the video below.

Deployment-Specific Components

ComponentDescriptionDependencies
Nginx (Docker-specific)A reverse proxy that is used to terminate TLS for the Immuta Web Service.Web Service
Ngnix Ingress Controller (Kubernetes-specific)An ingress controller for Kubernetes used to expose the Immuta Web Service and Query Engine. Note: Users can disable the Ngnix Ingress Controller and replace it with an ingress controller of their own.Web Service

Query Engine
Each component is explored in more detail in the video below.

Immuta Tech Summit Video: Immuta Components

This excerpt from an Immuta Tech Summit presentation goes into more detail about each of the components delineated above. As you watch the video, consider the following questions to frame your understanding:

  • What is the purpose of each component?
  • How do the components interact/rely on each other?

Deployment Diagrams

For context, here are two simplified diagrams of the Immuta components in a Kubernetes and Docker deployment.

Kubernetes Deployment

Docker Deployment