Chapter 8. Multi-Tenancy
Multi-tenancy in tech refers to an architecture where a single instance of software (or infrastructure) serves multiple tenants. A tenant is typically a group of users who share common access and privileges within the software—for example, a company using a SaaS app or a team using a shared Kubernetes cluster.
Argo CD extends multi-tenancy beyond just basic RBAC. It has the ability to granularly set access controls based on the actor performing the action (user, group, or automated service account), which resource is being accessed, and what action is being performed.
In Chapter 6, you learned about RBAC and its various uses. In this chapter, we are going to extend that knowledge by introducing the Argo CD AppProject concept and how to manage RBAC configurations on a per-project basis. We’ll start off by demonstrating different Argo CD deployment models. Then, we will explore, in detail, what Argo CD AppProjects are and how to effectively use them in a multi-tenant system. Finally, we will explore how to perform resource management using Projects.
Argo CD Installation Modes
There are two primary ways to install Argo CD, and each includes a set of capabilities for achieving multi-tenancy. As one might expect, there are advantages and disadvantages, depending on the chosen deployment mode. Additional considerations as it relates to multi-tenancy need to be taken into account depending on how your organization is laid out, how your release process is handled, ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access