All Projects → kubernetes-sigs → Cluster Api Provider Aws

kubernetes-sigs / Cluster Api Provider Aws

Licence: apache-2.0
Kubernetes Cluster API Provider AWS provides consistent deployment and day 2 operations of "self-managed" and EKS Kubernetes clusters on AWS.

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to Cluster Api Provider Aws

k8s-day2-ops
This repository contain scripts for Kubernetes day 2 operations
Stars: ✭ 25 (-93.11%)
Mutual labels:  kubernetes-cluster
Kubenow
Deploy Kubernetes. Now!
Stars: ✭ 285 (-21.49%)
Mutual labels:  kubernetes-cluster
Pharos Cluster
Pharos - The Kubernetes Distribution
Stars: ✭ 302 (-16.8%)
Mutual labels:  kubernetes-cluster
Fabrikate
Making GitOps with Kubernetes easier one component at a time
Stars: ✭ 263 (-27.55%)
Mutual labels:  kubernetes-cluster
Kubernetes Certified Administrator
Online resources that will help you prepare for taking the CNCF CKA 2020 "Kubernetes Certified Administrator" Certification exam. with time, This is not likely the comprehensive up to date list - please make a pull request if there something that should be added here.
Stars: ✭ 3,438 (+847.11%)
Mutual labels:  kubernetes-cluster
Kube Cluster Osx
Local development multi node Kubernetes Cluster for macOS made very simple
Stars: ✭ 294 (-19.01%)
Mutual labels:  kubernetes-cluster
klustair
(Deprecated) Submit all images in your Kubernetes cluster to Anchore for a vulnerability check and check your configuration with kubeaudit
Stars: ✭ 15 (-95.87%)
Mutual labels:  kubernetes-cluster
Kubespawner
Kubernetes spawner for JupyterHub
Stars: ✭ 353 (-2.75%)
Mutual labels:  kubernetes-cluster
Kubernetes Under The Hood
This tutorial is someone planning to install a Kubernetes cluster and wants to understand how everything fits together.
Stars: ✭ 279 (-23.14%)
Mutual labels:  kubernetes-cluster
K3sup
bootstrap Kubernetes with k3s over SSH < 1 min 🚀
Stars: ✭ 4,012 (+1005.23%)
Mutual labels:  kubernetes-cluster
Blockchain Network On Kubernetes
Demonstrates the steps involved in setting up your business network on Hyperledger Fabric using Kubernetes APIs on IBM Cloud Kubernetes Service.
Stars: ✭ 261 (-28.1%)
Mutual labels:  kubernetes-cluster
Danm
TelCo grade network management in a Kubernetes cluster
Stars: ✭ 274 (-24.52%)
Mutual labels:  kubernetes-cluster
Kubekey
Provides a flexible, rapid and convenient way to install Kubernetes only, both Kubernetes and KubeSphere, and related cloud-native add-ons. It is also an efficient tool to scale and upgrade your cluster.
Stars: ✭ 288 (-20.66%)
Mutual labels:  kubernetes-cluster
Kubernetes Tutorial
Running Kubernetes cluster Locally tutorial
Stars: ✭ 257 (-29.2%)
Mutual labels:  kubernetes-cluster
Home Cluster
My home Kubernetes (k3s) cluster managed by GitOps (Flux2)
Stars: ✭ 303 (-16.53%)
Mutual labels:  kubernetes-cluster
Azure-AKS-ApplicationGateway-WAF
No description or website provided.
Stars: ✭ 16 (-95.59%)
Mutual labels:  kubernetes-cluster
Eksctl
The official CLI for Amazon EKS
Stars: ✭ 3,550 (+877.96%)
Mutual labels:  kubernetes-cluster
Rak8s
Stand up a Raspberry Pi based Kubernetes cluster with Ansible
Stars: ✭ 354 (-2.48%)
Mutual labels:  kubernetes-cluster
Wayne
Kubernetes multi-cluster management and publishing platform
Stars: ✭ 3,587 (+888.15%)
Mutual labels:  kubernetes-cluster
Kubernetes Workshop
⚙️ A Gentle introduction to Kubernetes with more than just the basics. 🌟 Give it a star if you like it.
Stars: ✭ 3,122 (+760.06%)
Mutual labels:  kubernetes-cluster

Kubernetes Cluster API Provider AWS

Go Report Card

Powered by AWS Cloud Computing


Kubernetes-native declarative infrastructure for AWS.

What is the Cluster API Provider AWS

The Cluster API brings declarative, Kubernetes-style APIs to cluster creation, configuration and management.

The API itself is shared across multiple cloud providers allowing for true AWS hybrid deployments of Kubernetes. It is built atop the lessons learned from previous cluster managers such as kops and kubicorn.

Documentation

Please see our book for in-depth documentation.

Launching a Kubernetes cluster on AWS

Check out the Cluster API Quick Start for launching a cluster on AWS.

Features

  • Native Kubernetes manifests and API
  • Manages the bootstrapping of VPCs, gateways, security groups and instances.
  • Choice of Linux distribution between Amazon Linux 2, CentOS 7 and Ubuntu 18.04, using pre-baked AMIs.
  • Deploys Kubernetes control planes into private subnets with a separate bastion server.
  • Doesn't use SSH for bootstrapping nodes.
  • Installs only the minimal components to bootstrap a control plane and workers.
  • Supports control planes on EC2 instances.
  • Experimental EKS support

Compatibility with Cluster API and Kubernetes Versions

This provider's versions are compatible with the following versions of Cluster API:

Cluster API v1alpha1 (v0.1) Cluster API v1alpha2 (v0.2) Cluster API v1alpha3 (v0.3)
AWS Provider v1alpha1 (v0.2)
AWS Provider v1alpha1 (v0.3)
AWS Provider v1alpha2 (v0.4)
AWS Provider v1alpha3 (v0.5)
AWS Provider v1alpha3 (v0.6)

This provider's versions are able to install and manage the following versions of Kubernetes:

Kubernetes 1.13 Kubernetes 1.14 Kubernetes 1.15 Kubernetes 1.16 Kubernetes 1.17 Kubernetes 1.18 Kubernetes 1.19 Kubernetes 1.20
AWS Provider v1alpha1 (v0.2)
AWS Provider v1alpha1 (v0.3)
AWS Provider v1alpha2 (v0.4)
AWS Provider v1alpha3 (v0.5)
AWS Provider v1alpha3 (v0.6)

Each version of Cluster API for AWS will attempt to support two Kubernetes versions; e.g., Cluster API for AWS v0.2 may support Kubernetes 1.13 and Kubernetes 1.14.

NOTE: As the versioning for this project is tied to the versioning of Cluster API, future modifications to this policy may be made to more closely align with other providers in the Cluster API ecosystem.


Kubernetes versions with published AMIs

Note: These AMIs are not updated for security fixes and it is recommended to always use the latest patch version for the Kubernetes version you wish to run. For production-like environments, it is highly recommended to build and use your own custom images.

Kubernetes minor version Kubernetes full version
v1.16 v1.16.0
v1.16.1
v1.16.2
v1.16.3
v1.16.4
v1.16.5
v1.16.6
v1.16.7
v1.16.8
v1.16.9
v1.16.14
v1.16.15
v1.17 v1.17.0
v1.17.1
v1.17.2
v1.17.3
v1.17.4
v1.17.5
v1.17.11
v1.17.12
v1.17.13
v1.17.14
v1.17.15
v1.17.16
v1.17.17
v1.18 v1.18.0
v1.18.1
v1.18.2
v1.18.8
v1.18.9
v1.18.10
v1.18.12
v1.18.13
v1.18.14
v1.18.15
v1.18.16
v1.19 v1.19.0
v1.19.1
v1.19.2
v1.19.3
v1.19.4
v1.19.5
v1.19.6
v1.19.7
v1.19.8
v1.20 v1.20.1
v1.20.2
v1.20.4

Getting involved and contributing

Are you interested in contributing to cluster-api-provider-aws? We, the maintainers and community, would love your suggestions, contributions, and help! Also, the maintainers can be contacted at any time to learn more about how to get involved.

In the interest of getting more new people involved we tag issues with good first issue. These are typically issues that have smaller scope but are good ways to start to get acquainted with the codebase.

We also encourage ALL active community participants to act as if they are maintainers, even if you don't have "official" write permissions. This is a community effort, we are here to serve the Kubernetes community. If you have an active interest and you want to get involved, you have real power! Don't assume that the only people who can get things done around here are the "maintainers".

We also would love to add more "official" maintainers, so show us what you can do!

This repository uses the Kubernetes bots. See a full list of the commands here.

Build the images locally

If you want to just build the CAPA containers locally, run

	REGISTRY=docker.io/my-reg make docker-build

Tilt-based development environment

We have support for using Tilt for rapid iterative development. Please visit the Cluster API documentation on Tilt for information on how to set up your development environment. Additionally, you must also include your base64 encoded AWS credentials in your tilt-settings.json file or you will not be able to deploy this provider.

  1. make clusterawsadm
  2. export AWS_REGION=<your desired region
  3. ./bin/clusterawsadm alpha bootstrap encode-aws-credentials
  4. Copy the output containing the base64 encoded credentials and add it to your tilt-settings.json file like this:
{
  "allowed_contexts": ["kind-kind"],
  "default_registry": "your registry here",
  "provider_repos": ["../cluster-api-provider-aws"],
  "enable_providers": ["aws"],
  "kustomize_substitutions": {
    "AWS_B64ENCODED_CREDENTIALS": "put your encoded credentials here"
  }
}

Implementer office hours

Maintainers hold office hours every two weeks, with sessions open to all developers working on this project.

Office hours are hosted on a zoom video chat every other Monday at 10:00 (Pacific) / 13:00 (Eastern) / 18:00 (Europe/London), and are published on the Kubernetes community meetings calendar.

Other ways to communicate with the contributors

Please check in with us in the #cluster-api-aws channel on Slack.

Github issues

Bugs

If you think you have found a bug please follow the instructions below.

  • Please spend a small amount of time giving due diligence to the issue tracker. Your issue might be a duplicate.
  • Get the logs from the cluster controllers. Please paste this into your issue.
  • Open a new issue.
  • Remember that users might be searching for your issue in the future, so please give it a meaningful title to help others.
  • Feel free to reach out to the cluster-api community on the kubernetes slack.

Tracking new features

We also use the issue tracker to track features. If you have an idea for a feature, or think you can help kops become even more awesome follow the steps below.

  • Open a new issue.
  • Remember that users might be searching for your issue in the future, so please give it a meaningful title to help others.
  • Clearly define the use case, using concrete examples. EG: I type this and cluster-api-provider-aws does that.
  • Some of our larger features will require some design. If you would like to include a technical design for your feature please include it in the issue.
  • After the new feature is well understood, and the design agreed upon, we can start coding the feature. We would love for you to code it. So please open up a WIP (work in progress) pull request, and happy coding.

“Amazon Web Services, AWS, and the “Powered by AWS” logo materials are trademarks of Amazon.com, Inc. or its affiliates in the United States and/or other countries."

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].