Skip to content

ik-workshop/workshop-k8s-crossplane

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Crossplane with Kind

Not clear how to create crossplane test environment, build and create packages. Let's try to simplify it.




Contents


Steps to create environment

Deploy Kubernetes Cluster with kind

Install kind

$ brew install kind
$ kind --version
> kind version 0.20.0

Brew install did not work. As I'm using Rancher Desktop. Currently there is an issue with latest kind version

$ go install sigs.k8s.io/[email protected]

Create a cluster

$ kind create cluster --config=config/kind/main.yaml
$ kind get clusters
> k8s-kind-local
$ kubectl cluster-info --context kind-local
$ kubectl config set-context kind-local --namespace default
$ k get pods -A

Tear down cluster

$ kind delete cluster -n local

Install Crossplane

$ helm repo add crossplane-stable https://charts.crossplane.io/stable
$ helm repo update
$ make upgrade-crossplane
$ kubectl config set-context kind-local --namespace crossplane-system

Current crossplane configuration can be found here

crossplane helm chart

Uninstall Crossplane

  1. Remove all composite resource definitions
  2. Remove all remaining managed resources
  3. Remove all providers
$ kubectl get xrd
> compositepostgresqlinstances.database.example.org
$ kubectl delete xrd compositepostgresqlinstances.database.example.org
$ kubectl get managed
> bucket.s3.aws.upbound.io/crossplane-bucket-867737b10
$ kubectl delete bucket.s3.aws.upbound.io/crossplane-bucket-867737b10
$ kubectl get providers
> upbound-provider-aws
$ kubectl delete provider upbound-provider-aws
$ helm uninstall crossplane --namespace crossplane-system
$ kubectl get pods -n crossplane-system

Install Crossplane AWS Provider (or any other)

Build provider locally

Resources

Documentation

Crossplane

Kind

TODO

  • [] ContainerD nerdctl info