On 09/12/2020 13:10, Animesh Kumar wrote:
Hi Team,

I am trying to check if we can make Prometheus tenant aware in such a way that there is a data separation.

Prometheus has no native support for multi-tenancy. All data within a single Prometheus server is stored together. It would be possible to have a label to indicate the tenant for every metric, but you'd need to ensure that was applied everywhere (for queries you could use the query proxy). Having all data within a single Prometheus could have problems. You might find that the overall usage of the Prometheus server (number of metrics and queries) could become bigger than you can accommodate (e.g. memory needed). Also as everything is shared you wouldn't be able to have different retention periods or other settings (like query limits) and you would find that one tenant could easily impact on others (e.g. more scrapes or running large queries).

Having said that several of the Prometheus scaling & remote read/write solutions such as Thanos do support different levels of multi-tenancy, usually allowing you to segment storage or run queries in a way that prevents cross-tenant impact. Alternatively you could just run a separate Prometheus server for each tenant. The overhead for running multiple instances isn't all that high, so you shouldn't really see many downsides compared to a single shared instance, while getting the advantages of separate storage, independent settings and lack of cross-tenant impacts.

--
You received this message because you are subscribed to the Google Groups 
"Prometheus Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/prometheus-users/d27bdfb7-0b9f-1315-5ce8-6bf489400f10%40Jahingo.com.

Reply via email to