You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@zeppelin.apache.org by Tien Dat PHAN <tp...@gmail.com> on 2020/02/17 16:40:27 UTC

Multi-user environment isolation with Zeppelin

Dear experts, 

In our use case, multiple users will work on the same Notebook.
They, of course, each have their own user to login.
This is managed smoothly with Zeppelin + Shiro.
However, we notice that the users share the same environment. 
This means if user A logins and install a Python library X of version 1.0. This X library of version 1.0 will be installed. 
When user B login, if they want to use library X on version 2.0, it would be impossible to manage the multi-version packages (without uninstall library X version 1.0, which will make user A unhappy when he logins again).

With your experience with Zeppelin and multi-user setup, what would be the solution for this issue (if there are)? 

Thank you all in advance.

Best regards
Tien Dat PHAN

Re: Multi-user environment isolation with Zeppelin

Posted by Tien Dat PHAN <tp...@gmail.com>.
Hello Jeff,

Regarding your solution, we are thinking of making a script to set up the correct virtualenv when user logging in. We just wonder if there is a way to invoke a script whenever a user just logging in to Zeppelin? With this, we can make the virtualenv switch automatic and users will not need to keep in mind changing to the right virtualenv whenever they login.

Best
Tien Dat

On 2020/02/17 23:14:07, Jeff Zhang <zj...@gmail.com> wrote: 
> In you case, you need to configure different python interpreters for each
> user. So that they won't conflict with each other.
> e.g. you can create virtualenv python_a for user a and virtualenv python_b
> for user b.
> 
> Then you can create 2 python interpreters and each interpreter have
> different setting of zeppelin.python which point to the python virtualenv
> you created above
> 
> 
> Tien Dat PHAN <tp...@gmail.com> 于2020年2月18日周二 上午2:04写道:
> 
> > Dear experts,
> >
> > In our use case, multiple users will work on the same Notebook.
> > They, of course, each have their own user to login.
> > This is managed smoothly with Zeppelin + Shiro.
> > However, we notice that the users share the same environment.
> > This means if user A logins and install a Python library X of version 1.0.
> > This X library of version 1.0 will be installed.
> > When user B login, if they want to use library X on version 2.0, it would
> > be impossible to manage the multi-version packages (without uninstall
> > library X version 1.0, which will make user A unhappy when he logins again).
> >
> > With your experience with Zeppelin and multi-user setup, what would be the
> > solution for this issue (if there are)?
> >
> > Thank you all in advance.
> >
> > Best regards
> > Tien Dat PHAN
> >
> 
> 
> -- 
> Best Regards
> 
> Jeff Zhang
> 

Re: Multi-user environment isolation with Zeppelin

Posted by Tien Dat PHAN <tp...@gmail.com>.
Hello Jeff,

Regarding your solution, we are thinking of making a script to set up the correct virtualenv when user logging in. We just wonder if there is a way to invoke a script whenever a user just logging in to Zeppelin? With this, we can make the virtualenv switch automatic and users will not need to keep in mind changing to the right virtualenv whenever they login.

Best
Tien Dat

On 2020/02/18 13:15:46, Jeff Zhang <zj...@gmail.com> wrote: 
> By default the interpreter is shared, but it is easy to make a
> configuration change for isolated mode.
> 
> Tien Dat PHAN <tp...@gmail.com> 于2020年2月18日周二 下午4:11写道:
> 
> > Hello Jeff,
> >
> > Thanks for your advice.
> > Regarding your solution, it requires extra action from the Zeppelin
> > deployer to provide the interpreter isolation per user, since Zeppelin does
> > not support such feature by default (as far as we know). Is that right?
> >
> > Best
> > Tien Dat
> >
> > On 2020/02/17 23:14:07, Jeff Zhang <zj...@gmail.com> wrote:
> > > In you case, you need to configure different python interpreters for each
> > > user. So that they won't conflict with each other.
> > > e.g. you can create virtualenv python_a for user a and virtualenv
> > python_b
> > > for user b.
> > >
> > > Then you can create 2 python interpreters and each interpreter have
> > > different setting of zeppelin.python which point to the python virtualenv
> > > you created above
> > >
> > >
> > > Tien Dat PHAN <tp...@gmail.com> 于2020年2月18日周二 上午2:04写道:
> > >
> > > > Dear experts,
> > > >
> > > > In our use case, multiple users will work on the same Notebook.
> > > > They, of course, each have their own user to login.
> > > > This is managed smoothly with Zeppelin + Shiro.
> > > > However, we notice that the users share the same environment.
> > > > This means if user A logins and install a Python library X of version
> > 1.0.
> > > > This X library of version 1.0 will be installed.
> > > > When user B login, if they want to use library X on version 2.0, it
> > would
> > > > be impossible to manage the multi-version packages (without uninstall
> > > > library X version 1.0, which will make user A unhappy when he logins
> > again).
> > > >
> > > > With your experience with Zeppelin and multi-user setup, what would be
> > the
> > > > solution for this issue (if there are)?
> > > >
> > > > Thank you all in advance.
> > > >
> > > > Best regards
> > > > Tien Dat PHAN
> > > >
> > >
> > >
> > > --
> > > Best Regards
> > >
> > > Jeff Zhang
> > >
> >
> 
> 
> -- 
> Best Regards
> 
> Jeff Zhang
> 

Re: Multi-user environment isolation with Zeppelin

Posted by Jeff Zhang <zj...@gmail.com>.
By default the interpreter is shared, but it is easy to make a
configuration change for isolated mode.

Tien Dat PHAN <tp...@gmail.com> 于2020年2月18日周二 下午4:11写道:

> Hello Jeff,
>
> Thanks for your advice.
> Regarding your solution, it requires extra action from the Zeppelin
> deployer to provide the interpreter isolation per user, since Zeppelin does
> not support such feature by default (as far as we know). Is that right?
>
> Best
> Tien Dat
>
> On 2020/02/17 23:14:07, Jeff Zhang <zj...@gmail.com> wrote:
> > In you case, you need to configure different python interpreters for each
> > user. So that they won't conflict with each other.
> > e.g. you can create virtualenv python_a for user a and virtualenv
> python_b
> > for user b.
> >
> > Then you can create 2 python interpreters and each interpreter have
> > different setting of zeppelin.python which point to the python virtualenv
> > you created above
> >
> >
> > Tien Dat PHAN <tp...@gmail.com> 于2020年2月18日周二 上午2:04写道:
> >
> > > Dear experts,
> > >
> > > In our use case, multiple users will work on the same Notebook.
> > > They, of course, each have their own user to login.
> > > This is managed smoothly with Zeppelin + Shiro.
> > > However, we notice that the users share the same environment.
> > > This means if user A logins and install a Python library X of version
> 1.0.
> > > This X library of version 1.0 will be installed.
> > > When user B login, if they want to use library X on version 2.0, it
> would
> > > be impossible to manage the multi-version packages (without uninstall
> > > library X version 1.0, which will make user A unhappy when he logins
> again).
> > >
> > > With your experience with Zeppelin and multi-user setup, what would be
> the
> > > solution for this issue (if there are)?
> > >
> > > Thank you all in advance.
> > >
> > > Best regards
> > > Tien Dat PHAN
> > >
> >
> >
> > --
> > Best Regards
> >
> > Jeff Zhang
> >
>


-- 
Best Regards

Jeff Zhang

Re: Multi-user environment isolation with Zeppelin

Posted by Tien Dat PHAN <tp...@gmail.com>.
Hello Jeff,

Thanks for your advice.
Regarding your solution, it requires extra action from the Zeppelin deployer to provide the interpreter isolation per user, since Zeppelin does not support such feature by default (as far as we know). Is that right?

Best
Tien Dat 

On 2020/02/17 23:14:07, Jeff Zhang <zj...@gmail.com> wrote: 
> In you case, you need to configure different python interpreters for each
> user. So that they won't conflict with each other.
> e.g. you can create virtualenv python_a for user a and virtualenv python_b
> for user b.
> 
> Then you can create 2 python interpreters and each interpreter have
> different setting of zeppelin.python which point to the python virtualenv
> you created above
> 
> 
> Tien Dat PHAN <tp...@gmail.com> 于2020年2月18日周二 上午2:04写道:
> 
> > Dear experts,
> >
> > In our use case, multiple users will work on the same Notebook.
> > They, of course, each have their own user to login.
> > This is managed smoothly with Zeppelin + Shiro.
> > However, we notice that the users share the same environment.
> > This means if user A logins and install a Python library X of version 1.0.
> > This X library of version 1.0 will be installed.
> > When user B login, if they want to use library X on version 2.0, it would
> > be impossible to manage the multi-version packages (without uninstall
> > library X version 1.0, which will make user A unhappy when he logins again).
> >
> > With your experience with Zeppelin and multi-user setup, what would be the
> > solution for this issue (if there are)?
> >
> > Thank you all in advance.
> >
> > Best regards
> > Tien Dat PHAN
> >
> 
> 
> -- 
> Best Regards
> 
> Jeff Zhang
> 

Re: Multi-user environment isolation with Zeppelin

Posted by Jeff Zhang <zj...@gmail.com>.
In you case, you need to configure different python interpreters for each
user. So that they won't conflict with each other.
e.g. you can create virtualenv python_a for user a and virtualenv python_b
for user b.

Then you can create 2 python interpreters and each interpreter have
different setting of zeppelin.python which point to the python virtualenv
you created above


Tien Dat PHAN <tp...@gmail.com> 于2020年2月18日周二 上午2:04写道:

> Dear experts,
>
> In our use case, multiple users will work on the same Notebook.
> They, of course, each have their own user to login.
> This is managed smoothly with Zeppelin + Shiro.
> However, we notice that the users share the same environment.
> This means if user A logins and install a Python library X of version 1.0.
> This X library of version 1.0 will be installed.
> When user B login, if they want to use library X on version 2.0, it would
> be impossible to manage the multi-version packages (without uninstall
> library X version 1.0, which will make user A unhappy when he logins again).
>
> With your experience with Zeppelin and multi-user setup, what would be the
> solution for this issue (if there are)?
>
> Thank you all in advance.
>
> Best regards
> Tien Dat PHAN
>


-- 
Best Regards

Jeff Zhang