我在AWS EKS(AWS上的托管调控器)上的调控器集群上运行JupyterHub。
我需要知道是否有任何方法可以存储或配置可在笔记本服务器实例启动期间访问的敏感秘密,但仅限于服务器进程。任何普通用户或恶意用户都不应该访问它。
具体来说,我有一个自定义的“postStart”步骤,在我的头盔图中配置:
proxy:
# ...
auth
# ...
singleuser:
image:
# ...
lifecycleHooks:
postStart:
exec:
command: ["/bin/sh", "-c", "custom-program -password abcdefg12345"] # <-- THIS.
如何安全地存储我的密码,例如上面的abcdefg12345
,以便JupyterHub群集的任何用户都无法访问它? (管理员除外)
在掌舵图配置文件中是否安全? helm在哪里存储postStart lifecycleHook命令?
Kubernetes具有Secrets
的概念,并允许为这些配置role-based access control(RBAC)。对于运行服务器的Pod
,您需要创建一个ServiceAccount
。