From c459affd54f91d624edcf58776d0cf80fc0b1391 Mon Sep 17 00:00:00 2001 From: Justin Garrison Date: Fri, 23 Jul 2021 15:49:07 -0700 Subject: [PATCH] Update image paths for markdown docs --- README.md | 4 +--- designs/termination.md | 2 +- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 7d9270d46b3f..0440a7ee66a1 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ [![GitHub License](https://img.shields.io/badge/License-Apache%202.0-ff69b4.svg)](https://github.com/awslabs/karpenter/blob/main/LICENSE) [![contributions welcome](https://img.shields.io/badge/contributions-welcome-brightgreen.svg?style=flat)](https://github.com/awslabs/karpenter/issues) -![](images/karpenter-banner.png) +![](website/static/banner.png) Karpenter is a node lifecycle management solution. It observes incoming pods and launches the right instances for the situation. Instance selection decisions are intent based and driven by the specification of incoming pods, including resource requests and scheduling constraints. @@ -22,8 +22,6 @@ Come discuss Karpenter in the [#provider-aws channel](https://kubernetes.slack.c *Note: Reallocation is still in development. Check out the [FAQs](FAQs.md) and [Roadmap](ROADMAP.md) to learn more.* - - ## Installation Follow the setup recommendations of your cloud provider. diff --git a/designs/termination.md b/designs/termination.md index c6dacee35147..d12c2926363f 100644 --- a/designs/termination.md +++ b/designs/termination.md @@ -20,7 +20,7 @@ The termination controller is responsible for gracefully terminating instances. The current termination workflow finds nodes with the label `karpenter.sh/lifecycle-phase: terminable` then cordons, drains, and deletes them. This naively handles a few error cases, has no user safeguards, and makes no effort to rate limit. The new workflow will improve these but continue to monitor nodes with the same labels. The new termination process will begin with a node that receives a delete request. After Karpenter validates the request, a Karpenter mutating webhook will add the Karpenter [finalizer](https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/#finalizers) to the node. Then, we cordon and begin draining the node. After no pods remain, we terminate the instance in the cloud provider, then remove the Karpenter finalizer. This will result in the APIServer deleting the node object. -![](../images/termination-state-machine.png) +![](../website/static/termination-state-machine.png) ### Triggering Termination The current termination process acts on a reconcile loop. We will change the termination controller to watch nodes and manage the Karpenter [finalizer](https://kubernetes.io/docs/tasks/extend-kubernetes/custom-resources/custom-resource-definitions/#finalizers), making it responsible for all node termination and pod eviction logic.