Technology

Engineering Circatree.com

January 31st, 2024

  1. Infrastructure as code

    1. Gitlab CI + Terraform state

    2. Terraform - plan, apply, destroy

      1. Kubernetes - clusters + core cluster services

        1. Minimal base environment

  2. Kubernetes

    1. Everything is Kubernetes-native - extending the k8s API

    2. Most resources are managed outside Terraform

    3. ArgoCD - syncs manifests from Git and reconciles desired state

    4. Crossplane - provides Developer API to org resources

      1. Abstracts away the cloud-managed and in-cluster resources

      2. Expands a simple manifest in to Kubernetes objects

        1. Each object has events, lifecycle, reconciliation loop

    5. Policy as code

      1. API admission webhooks enforced by Kyverno

  3. GitOps

  4. CI/CD

  5. Logging, Monitoring & Alerting

  6. Metrics, Tracing & Profiling

Composite Resources

From https://docs.crossplane.io/latest/concepts/compositions/:

Compositions are a template for creating multiple managed resources as a single object.

A Composition composes individual managed resources together into a larger, reusable, solution.

An example Composition may combine a virtual machine, storage resources and networking policies. A Composition template links all these individual resources together.