helm

    [Kubernetes] 쿠버네티스(Kubernetes)에서 주피터허브(JupyterHub)에 Random Port 설정하기

    JupyterHub에서 Spark 사용하기 [배경] 이전 포스팅(쿠버네티스(Kubernetes)에서 주피터허브(JupyterHub) 구성하기)에서 설명했듯이, 단순히 JupyterHub를 구성하면 끝나는 것이 아니라, JupyterHub에서 Spark를 사용해야 합니다. 기본적으로 쿠버네티스 환경의 JupyterHub Helm은 호스트 네트워크(Host Network, Pod이 올라간 노드의 네트워크)를 사용하지 않는 것을 전제로 하는데요. 그래서 새로운 계정이 접속해서 노트북 Pod(singleuser)을 만들 때마다 Port를 무조건 8888로 할당하게 설정되어 있습니다. 호스트 네트워크를 사용하지 않기 때문에 한 노드에 여러 개의 Pod이 생성되어 모두 8888 포트를 사용하더라도, 실제 노드의 8..

    [Kubernetes] 쿠버네티스(Kubernetes)에서 주피터허브(JupyterHub) 구성하기

    [Kubernetes] 쿠버네티스(Kubernetes)에서 주피터허브(JupyterHub) 구성하기

    쿠버네티스에 JupyterHub 구성하기 [배경] 회사에서 쿠버네티스(Kubernetes)를 이용해서 분석 환경을 구성하고 있습니다. 회사에서는 쿠버네티스를 Iaas(Infra as a service)를 제공하고, 각 팀에서는 본인의 팀 상황에 맞게 환경을 구축하는거죠. 제가 소속된 팀에서는 최근 JupyterHub를 도입하기로 결정했는데요. 그 이유는 3가지가 있습니다. Spark를 편리하게 사용하기 위해 노트북 환경이 필요함. 보안 설정을 위해 이미지를 따로 빌드해야 함. VSCode에서 SSH로 연결해서 사용 가능하도록 각자의 Instance(Pod)을 따로 구성해야 함. Spark를 사용하기에는 Zeppelin이 더 편리한 부분이 있지만 특히 보안 이슈와 VSCode 접근 목적으로 결국 Jupyt..