Fetching additional cloud-init from object storage - such as S3

Bug #1874525 reported by Streich-reinis
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
cloud-init
Expired
Wishlist
Unassigned

Bug Description

Feature request: user-data in some cloud providers is limited to 16kb, even with compression is not enough sometimes.
Adding option to fetching/loading cloud-init from remote object storage would greatly solve this problem (For example S3 bucket)

Paride Legovini (paride)
Changed in cloud-init:
status: New → Triaged
importance: Undecided → Wishlist
Revision history for this message
Scott Moser (smoser) wrote :

Use

#include <your-url-here>

or

#include-once <your-expiring-url-here>

Revision history for this message
Scott Moser (smoser) wrote :
Revision history for this message
Dan Watkins (oddbloke) wrote :

#include only supports HTTP(S), not the S3 API. The reason that using S3 directly is interesting is that EC2 instances can be granted roles which give them S3 fetch permissions but (according to user reports) these don't apply to HTTP(S) GETs, only to API hits. This means that users can protect their user-data without having to supply credentials in their user-data.

(The relevant IRC conversation is https://irclogs.ubuntu.com/2020/04/23/%23cloud-init.html#t18:38)

Revision history for this message
Scott Moser (smoser) wrote :

The '#include-once' was aimed at a similar goal.
There, you can just provide an expiring url in the #include-once
cloud-init will only ever download it once.

I'm sure its different
 https://medium.com/runascloud/creating-a-secure-url-with-an-expiration-date-from-s3-11c7b2fe7206

Revision history for this message
Streich-reinis (streich-reinis) wrote :

@Scott, Main issue the the pre-signed url has expiration date which can't be set to "forever".

Common use-case is to use Auto Scaling Group where instances scale-in & scale-out based on load/requirements, if I were to use url, then I would have to re-create/update some part of configuration every-time url expires.

Revision history for this message
James Falcon (falcojr) wrote :
Changed in cloud-init:
status: Triaged → Expired
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.