Skip to content

Example crossplane config for AWS EKS IRSA

Notifications You must be signed in to change notification settings

machecazzon/cp-aws-irsa

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Example crossplane config for AWS EKS IRSA

vRelevant blog post: https://vrelevant.net/crossplane-all-the-patches-with-aws-irsa-config/

Note: To keep this setup simple,I'm using Kustomize to apply the Crossplane Provider-aws, XRDs, and Compositions. Using a Crossplane Configuration would be the best practice for production use. See the Crossplane docs for more info on Configuration.

Prerequisites

  1. K8s cluster
  2. kubectl cli
  3. AWS account
  4. aws cli

(All steps assume you are working from the root of the repo clone.)

1. Install Crossplane

kubectl create namespace crossplane-system
helm repo add crossplane-stable https://charts.crossplane.io/stable
helm repo update
helm install crossplane --namespace crossplane-system crossplane-stable/crossplane

2. Install XRDs and Compositions

kubectl apply -k config/. 

3. Create credential secret for provider-aws and configure provider

AWS_PROFILE=default && echo -e "[default]\naws_access_key_id = $(aws configure get aws_access_key_id --profile $AWS_PROFILE)\naws_secret_access_key = $(aws configure get aws_secret_access_key --profile $AWS_PROFILE)" > creds.conf
kubectl create secret generic aws-creds -n crossplane-system --from-file=credentials=./creds.conf
kubectl apply -f config/provider/aws-providerConfig.yaml

4. Deploy

kubectl create -f examples/cluster-claim.yaml
watch kubectl get managed

About

Example crossplane config for AWS EKS IRSA

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published