Skip to content

Commit

Permalink
Readme updates (#20)
Browse files Browse the repository at this point in the history
* Update README.md

* description & README

* Update README.md

* Update README.md
  • Loading branch information
tr0njavolta authored Feb 7, 2024
1 parent ac74a59 commit 28e87ac
Show file tree
Hide file tree
Showing 2 changed files with 42 additions and 2 deletions.
39 changes: 37 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,39 @@
# AWS EKS Karpenter Configuration

AWS EKS Karpenter Configuration is reusable Configuration designed to be primarily used in
higher level Configurations.

This repository contains a [Crossplane configuration](https://docs.crossplane.io/latest/concepts/packages/#configuration-packages), tailored for users establishing their initial control plane with [Upbound](https://cloud.upbound.io). This configuration deploys fully managed [AWS EKS Karpenter](https://aws.amazon.com/blogs/aws/introducing-karpenter-an-open-source-high-performance-kubernetes-cluster-autoscaler/) instances.

## Overview

The core components of a custom API in [Crossplane](https://docs.crossplane.io/latest/getting-started/introduction/) include:

- **CompositeResourceDefinition (XRD):** Defines the API's structure.
- **Composition(s):** Implements the API by orchestrating a set of Crossplane managed resources.

In this specific configuration, the EKS Karpenter API contains:

- **an [AWS EKS Karpenter](/apis/definition.yaml) custom resource type.**
- **Composition of the Karpenter resources:** Configured in [/apis/composition.yaml](/apis/composition.yaml), it provisions Karpenter resources in the `upbound-system` namespace.

This repository contains an Composite Resource (XR) file.

## Deployment

```shell
apiVersion: pkg.crossplane.io/v1
kind: Configuration
metadata:
name: configuration-aws-eks-karpenter
spec:
package: xpkg.upbound.io/upbound/configuration-aws-eks-karpenter:v0.3.0
```

## Next steps

This repository serves as a foundational step. To enhance your control plane, consider:

1. create new API definitions in this same repo
2. editing the existing API definition to your needs


Upbound will automatically detect the commits you make in your repo and build the configuration package for you. To learn more about how to build APIs for your managed control planes in Upbound, read the guide on Upbound's docs.
5 changes: 5 additions & 0 deletions crossplane.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,11 @@ metadata:
meta.crossplane.io/maintainer: Upbound <[email protected]>
meta.crossplane.io/source: github.com/upbound/configuration-aws-eks-karpenter
meta.crossplane.io/license: Apache-2.0
meta.crossplane.io/description: |
This configuration deploys EKS Karpenter clusters. With this configuration, you can integrate supporting AWS services, ensuring automated and scalable deployment of Kubernetes clusters in the cloud.
meta.crossplane.io/readme: |
This configuration deploys EKS Karpenter clusters with properties like clusterName, region, and deletionPolicy, all aimed at customizing AWS resource deployment in Crossplane.
This bundles resources like IAM roles, SQS queues, and CloudWatch event rules using a pipeline of patch-and-transform steps to automate deployment of a scalable Kubernetes cluster on AWS.
spec:
crossplane:
version: ">=v1.14.1-0"
Expand Down

0 comments on commit 28e87ac

Please sign in to comment.