Landlord#
License: N/A - Group of settings
Landlord is a project used to govern the settings used to facilitate the management of tenant namespaces.
Landlord is deployed in two parts:
In additon to those two projects, it leans heavily on IT-Common-Platform-Landlord which hold the tenant config which the Helm cart consumes as a values file.
Landlord Setup#
Landlord Setup contains all the pieces needed to bootstrap landlord. This is called from eks-cluster here.
Landlord#
Landlord is a helm chart which contains the majority of the pieces that setup and limit the customer namespaces in add to some additional tweaks to facilitate managing customers.
Summary of deployed per customer:
- Storage Classes
- Karpenter Pool (AWS)
- Network Policies
- Resource Quotas
- RBAC
- GitOps Toolkit Integration
- Logging Mutations
- Namespace/Client Limitations
IT-Common-Platform-Landlord#
This project consists of a folder per cluster and configuration files in each of those for the tenant of those clients. It was originally written to be extensible, but all current customers keep all the client config information in a tenant-config-0.yaml
. This file holds all the values that allows Landlord to spin up the various tenants. In addition, to help keep the code clean, there is a syntax checker along with linting.
Links#
-
Code:
- Landlord Setup - https://code.vt.edu/it-common-platform/platform-support/helm-charts/landlord-setup
- Landlord - https://code.vt.edu/it-common-platform/platform-support/helm-charts/landlord
- IT-Common-Platform-Landlord - https://code.vt.edu/it-common-platform/tenants/it-common-platform-landlord
-
Implementation:
Critical Concerns#
- Due to nested helm, make sure all the versions are updated down the line of projects