Understanding the Crossplane architecture
From what we know so far, Crossplane is nothing but a set of Kubernetes custom controllers and CRDs representing external infrastructure resources. If you take a closer look, Crossplane is much more than a combination of CRDs and custom controllers. Crossplane has four key components. The components are as follows:
- Managed resources
- Providers
- Composite resources
- The Crossplane core
Managed resources
A Managed Resource (MR) connects a CRD and respective custom controller to represent a single external infrastructure resource. MRs are in a one-to-one mapping with infrastructure resources. For example, CloudSQLInstance is an MR representing Google Cloud SQL. The following diagram depicts the MR mapping for Amazon RDS and Google Cloud Storage:
The Crossplane Resource Model (XRM) is the open standard used when developing an MR. The XRM is an opinionated extension...