Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update Custom Scheduler Documentation and Deployment Method #59

Open
wants to merge 5 commits into
base: main
Choose a base branch
from

Conversation

andormarkus
Copy link

Update Custom Scheduler Documentation and Deployment Method

Changes Made

  • Replaced manual kubectl apply deployment with Helm chart deployment for the custom scheduler
  • Updated EKS version and kube-scheduler image information
  • Added a table for kube-scheduler images across different EKS versions (1.28, 1.29, 1.30, 1.31)
  • Removed lengthy YAML manifest in favor of Helm chart
  • Added instructions for downloading source code and deploying with Helm
  • Enabled table support in mkdocs.yml

Reason for Changes

These updates simplify the deployment process for custom schedulers and provide more up-to-date information on EKS versions and corresponding kube-scheduler images. Using a Helm chart makes it easier for users to deploy and manage the custom scheduler, reducing the likelihood of errors and improving maintainability.

Testing and Validation

  • Verified that the Helm chart deploys successfully on EKS clusters version 1.31
  • Confirmed that the custom scheduler functions as expected after deployment via Helm
  • Tested the documentation by following the new instructions on a fresh environment

Additional Notes

  • Users of the previous manual deployment method will need to migrate to the Helm chart approach

Please review these changes and provide any feedback or suggestions for improvement.

 - Add information on WaitForFirstConsumer and Immediate binding modes
 - Provide examples for creating storage classes for both modes
 - Update Spark configuration examples for dynamic provisioning
 - Improve documentation with warnings and info notes for clarity
 - Refine explanations for EBS volume attachment in different scenarios
 - Remove Docker-specific commands from preBootstrapCommands
 - Adjust permissions for /var/lib/kubelet
 - Simplify NVMe disk mounting process for EKS nodes
 - Replace manual kubectl apply with Helm chart deployment
 - Update EKS version and kube-scheduler image information
 - Add table for kube-scheduler images across different EKS versions
 - Remove lengthy YAML manifest in favor of Helm chart
 - Add instructions for downloading source code and deploying with Helm
 - Enable table support in mkdocs.yml

This change simplifies the deployment process for custom schedulers and
provides more up-to-date information on EKS versions and corresponding
kube-scheduler images.
@lmouhib lmouhib self-requested a review October 7, 2024 08:34
@@ -45,332 +45,25 @@ The following customer scheduler named “my-scheduler” is created for EKS ver

We do not recommend build the kube-scheduler by yourself, you can leverage the eks-distro kube-scheduler image. For example:

- **Amazon EKS 1.28 image:** public.ecr.aws/eks-distro/kubernetes/kube-scheduler:v1.28.11-eks-1-28-latest
- **Amazon EKS 1.29 image:** public.ecr.aws/eks-distro/kubernetes/kube-scheduler:v1.29.6-eks-1-29-18
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we keep these sections as is, and then add a note/section that point to the helm chart.
The idea is to keep the current level of details to explain what is being done in terms of RBAC, and provide the helm chart as utility to simplify the deployment.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

@@ -146,36 +147,135 @@ kubectl get pod <driver pod name> -n <namespace> -o yaml --export

### Dynamic Provisioning

Dynamic Provisioning PVC/Volumes is supported for both Spark driver and executors for EMR versions >= 6.3.0.
EMR versions 6.3.0 and newer support dynamic provisioning of PVC/Volumes for both Spark driver and executors.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There is another PR for EBS, can you please remove it from this PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants