-
-
Notifications
You must be signed in to change notification settings - Fork 9
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
refactor: Re-organize docs layout for better usability/discoverability (
#40)
- Loading branch information
1 parent
372b00a
commit f1a2374
Showing
16 changed files
with
118 additions
and
134 deletions.
There are no files selected for viewing
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
# Blue/Green Upgrade | ||
|
||
## Cluster | ||
|
||
## Nodegroup |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
# In-Place Upgrade |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
# Process | ||
|
||
This guide is intended to highlight the process for planning and preparing for routine cluster upgrades. It includes the timing of various activities, testing and validation strategies, as well as helpful tips on reducing the amount of time and effort required to perform upgrades. | ||
|
||
## Planning | ||
|
||
It is important to plan for upgrades in advance to allow for ample time to test, validate, and perform the upgrades. The target for users is to aim to be on at least the 2nd latest version of Kubernetes provided by Amazon EKS. If the current latest version supported by Amazon EKS is 1.25, users should either be on 1.24 or in the process of upgrading to 1.24. There is no harm in trying to stay on the latest version supported by Amazon EKS, but you may run into issues with 3rd party/OSS software that you run on top of Kubernetes depending on how quickly the 3rd party/OSS software is updated to support the latest version. | ||
|
||
## Testing & Validation | ||
|
||
## Helpful Tips | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
# Design | ||
|
||
## Goals | ||
|
||
There is one primary goal for `eksup`: | ||
|
||
!!! success "Empower users to routinely upgrade their EKS cluster(s) while avoiding downtime and/or disruption." | ||
|
||
To aid in that goal, the following are supporting goals or tenants: | ||
|
||
1. Intended for use on Amazon EKS clusters; there are no guarantees that this CLI will or will not work on other Kubernetes clusters at this time. The CLI will focus on EKS to avoid the need to support multiple Kubernetes distributions and their associated cloud controller resources and instead focus on the aspects that are specific to EKS and how it manages the Kubernetes experience for users. The CLI should offer native support for: | ||
- Amazon EKS, Amazon EKS on Outposts (local and extended clusters), and [Not yet supported] EKS-A (EKS Anywhere) | ||
- Amazon EKS managed node groups, self-managed node groups, and Amazon EKS Fargate profiles | ||
- EKS addons | ||
2. It is designed to produce the least amount of load on the API Server when discovering and analyzing cluster resources. However, this can have some tradeoffs in terms of accuracy and completeness of the information provided to the user | ||
3. It should provide as much relevant information as possible to the user regarding the state of the cluster prior to upgrading. This includes scoping the information provided to the user to only that which is relevant for upgrading from their current Kubernetes version to the intended target Kubernetes version. | ||
4. It should support the following use cases: | ||
- A one-off analysis to create a report of the cluster state prior to upgrading along with steps to take to upgrade the cluster (i.e. - analyze the cluster and generate an upgrade playbook). | ||
- A one-off analysis to report on the state of the cluster for potential issues and/or recommendations prior to upgrading. This is generally a CLI invocation that prints the analysis to the console (stdout) and exits. | ||
- Continuous analysis of the cluster state for potential issues and/or recommendations that runs from within the cluster that is being reported on. Results can be sent to stdout where they can be picked up from a log aggregator or sent to a remote location, such as Amazon S3, where they can be analyzed and acted upon. This process supports n-number of clusters across m-number of accounts to better aid in multi-cluster management as well as alerting to ensure enough advance notice is given for users to prepare and schedule the pending upgrade before end of support is reached. | ||
|
||
## Architecture | ||
|
||
### High Level Diagram | ||
|
||
![High level diagram](https://raw.githubusercontent.com/clowdhaus/eksup/main/docs/imgs/checks.png) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.