Crossplane — Let your Kubernetes to build your cloud infrastructure

What is Crossplane?

  • They are the first kind of package in Crossplane’s terminology
  • A package is simply an OCI image, like a Docker image.
  • It installs CustomResourceDefinitions to allow for the provisioning of resources on an external service like a cloud provider
  • As of today, providers exist for AWS, GCP, Azure, ArgoCD, GitLab, Github, Kubernetes, and many more
  • They are installed by Providers
  • They represent infrastructure resources
  • They are the second kind of package according to Crossplane.
  • They leverage the CompositeResourceDefinition and Composition features of Crossplane.
  • They are defined using Crossplane configuration.
  • They group-managed resources together to allow for the creation of more complex, business-oriented infrastructure resources.

Why Crossplane?

  • A Developer-Friendly API:
    As Crossplane builds upon Kubernetes, a developer creates a resource to request a specific service. For Kubernetes developers, this is straightforward.
  • Powerful:
    Crossplane includes support for AWS, Azure, GCP, and Alibaba, and also the community is adding support for several providers.
  • Production-Ready with the assistance of K8s:
    It uses Kubernetes controllers and additionally the idea of continuous reconciliation to run the platform. If some resource breaks (which it will), Crossplane will examine and change the resource state to desired configuration.

Benefits of Crossplane?

Installation of Crossplane

# kubectl create namespace crossplane# helm repo add crossplane-stable https://charts.crossplane.io/stable# helm repo update# helm install crossplane --namespace crossplane crossplane-stable/crossplane
# helm list -n crossplane# kubectl get all -n crossplane
# curl -sL https://raw.githubusercontent.com/crossplane/crossplane/release-1.5/install.sh | sh
# mv kubectl-crossplane /usr/local/bin
# kubectl-crossplane --version

Terraform vs Crossplane

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
FoxuTech

FoxuTech

61 Followers

Discuss about #Linux, #DevOps, #Docker, #kubernetes, #HowTo’s, #cloud & IT technologies like #argocd #crossplane #azure https://foxutech.com/