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

[Feature][Doc] Access S3 bucket from Pods in EKS #958

Merged
merged 4 commits into from
Mar 20, 2023

Conversation

kevin85421
Copy link
Member

@kevin85421 kevin85421 commented Mar 13, 2023

Why are these changes needed?

Users want to access S3 buckets in Ray Pods. See this slack thread for more context.

Related issue number

#956
ray-project/ray#33256

Checks

  • I've made sure the tests are passing.
  • Testing Strategy
    • Unit tests
    • Manual tests
    • This PR is not tested :(

Copy link

@smit-kiri smit-kiri left a comment

Choose a reason for hiding this comment

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

It'll be helpful to specify the Ray Serve use-case and have a workaround for that. Other than that, looks good to me!

docs/guidance/aws-eks-iam.md Outdated Show resolved Hide resolved
docs/guidance/aws-eks-iam.md Outdated Show resolved Hide resolved
# botocore==1.8.50
```

## Workaround solutions

Choose a reason for hiding this comment

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

Also a use-case where things will break - if you use the ray image < ray:2.3.0 in a RayService and set the working directory to a zip file in a private S3 bucket, the Ray Serve application will not be able to start.

I have not tested this yet, but a potential solution could be to

  1. Create a custom docker image on top of ray:2.3.0 and manually install the latest boto3 version (would defer to the Ray team to make sure this works)
  2. Create a custom docker image on top of ray:2.3.0, add your code in the image, and set the working directory (in serveConfig) to a local directory. This should get serve application running. Any model deployment code trying to access S3 should do that using boto3_example_2.py. (I will be testing this in the next few days, but will defer to the Serve team to make sure this works).

Copy link
Member Author

@kevin85421 kevin85421 Mar 13, 2023

Choose a reason for hiding this comment

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

Good point. Runtime environment also downloads working_dir via boto3 (code). cc @architkulkarni

Copy link
Member Author

Choose a reason for hiding this comment

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

Screen Shot 2023-03-13 at 3 09 38 PM

I tried to update working_dir to point to my private S3 bucket, and got the error above. We need to update the boto3 version.

Choose a reason for hiding this comment

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

Got it! Thanks for letting me know!

Copy link
Member Author

Choose a reason for hiding this comment

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

@architkulkarni is working on updating the boto3 version: ray-project/ray#33273.

Copy link

@smit-kiri smit-kiri left a comment

Choose a reason for hiding this comment

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

Thanks! Looks good to me!

Copy link
Collaborator

@Jeffwan Jeffwan left a comment

Choose a reason for hiding this comment

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

overall looks good to me.

@kevin85421 kevin85421 merged commit 5a766fd into ray-project:master Mar 20, 2023
lowang-bh pushed a commit to lowang-bh/kuberay that referenced this pull request Sep 24, 2023
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.

None yet

4 participants