-
Notifications
You must be signed in to change notification settings - Fork 34
[SPARK-370][SPARK-499] Change image to run as nobody #189
Conversation
docker/Dockerfile
Outdated
@@ -72,15 +72,18 @@ RUN ln -s /bin/grep /usr/bin/grep | |||
|
|||
RUN ln -s /var/lib/runit/service/spark /etc/service/spark | |||
RUN ln -s /var/lib/runit/service/nginx /etc/service/nginx | |||
RUN mkdir -p /etc/hadoop |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is repeated in L. 60 above, one of them can be removed.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM (assuming tests pass)
docker/Dockerfile
Outdated
@@ -76,11 +76,13 @@ RUN ln -s /var/lib/runit/service/nginx /etc/service/nginx | |||
ADD dist /opt/spark/dist | |||
|
|||
# Commenting these for now, because we're running Spark as root in strict mode |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What does this comment mean?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It seems like it should go away?
@susanxhuynh @ArtRand I am not so sure about nobody in general its a relic: https://lwn.net/Articles/695526/ although widely used... |
Problem
The Spark image that is used for running the Dispatcher, Drivers, and Executors runs as
root
meaning that Marathon requires permissions to launch containers asroot
when on a strict-mode cluster.Solution
Change default to
nobody
, allow access to directories in the image necessary for running Spark and it's components (e.g. nginx).Tested
CI unit tests for basic functionality, manually on a strict-mode cluster (see JIRA for details) and manually against a Kerberized HDFS cluster
Manual tests