-
Notifications
You must be signed in to change notification settings - Fork 95
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
Add option to specify custom pre-bootstrap commands (user_data) to execute on AWS EKS nodes #2603
Comments
This is interesting, though on this one, I am quite reluctant, not due to the changes themselves. But I am wondering if we consider the changes proposed by #2604, wouldn't we be able to add such bootstrap scripts directly as parts of the custom AMIs as well? |
@viniciusdc , However, both the pre-bootstrap use case and the #2604 custom AMI use case could share a common aws_launch_template resource and user_data block with logic built in to handle the combined use cases, as seen here. |
To clarify: We anticipate that our customer organizations could have "pre-approved" AMIs that we must use, but we will not be allowed to modify (nor "fork") those pre-approved AMIs, at rest, with custom bootstrap code. Therefore, this solution to inject pre-bootstrap code at runtime is the most viable path. We are currently using a prototype version of this capability (off our nebari fork) to add a customer's https proxy cert to a generic Amazon-supplied AMI as a proof of concept demonstration. |
This feature was introduced in #2668 |
Feature description
Enable ability to specify commands to run on AWS EKS cluster nodes prior to execution of /etc/eks/bootsrap.sh. Custom pre-bootstrap commands can be enabled by adding an aws_launch_template terraform resource that provides a configurable user_data section. An appropriate configuration option (e.g. amazon_web_services.node_prebootstrap_command) would allow users to input commands and control ec2 behavior and settings.
Value and/or benefit
Nebari users would be able to modify EKS nodes to accommodate target environment requirements to ensure networking/security compliance or otherwise enable customizations to integrate target environment systems.
For example, applying STIGs to EKS nodes prior to joining cluster:
For example, defining default container private-registry mirrors in containerd:
Anything else?
No response
The text was updated successfully, but these errors were encountered: