Skip to main content

Kubeflow Notebook


커스텀 이미지

요구 사항

  • 8888 포트로 서비스를 노출해야 합니다.
    • 노트북 서버, VSCode 서버 등 웹 서비스를 8888 포트로 노출하면 CONNECT 버튼을 눌렀을 때 해당 서비스로 연결됩니다.
  • jovyan 유저를 사용해야합니다.
    • chown -R jovyan:users /home/jovyan
  • Jupyter lab
    • NB_PREFIX 환경변수에 설정된 값으로 --ServerApp.base_url="${NB_PREFIX}" 옵션을 사용해야합니다.

Example

설정

Configurations(PodDefaults)

Affinity Config

spawner_ui_config.yaml
spawnerFormDefaults:
affinityConfig:
readonly: false
value: <defaultConfigKey>
options:
{}
# - configKey: <configKey>
# displayName: <displayName>
# affinity: {}
#
# - configKey: "on-demand"
# displayName: "on-demand"
# affinity:
# nodeAffinity:
# requiredDuringSchedulingIgnoredDuringExecution:
# nodeSelectorTerms:
# - matchExpressions:
# - key: "karpenter.sh/capacity-type"
# operator: "In"
# values: ["on-demand"]
# podAntiAffinity:
# requiredDuringSchedulingIgnoredDuringExecution:
# - topologyKey: "kubernetes.io/hostname"
# namespaceSelector: {}
# labelSelector:
# matchExpressions:
# - key: "notebook-name"
# operator: "Exists"

Tolerations Group

spawner_ui_config.yaml
spawnerFormDefaults:
tolerationGroup:
readonly: false
value: <defaultConfigKey>
options:
{}
# - groupKey: <groupKey>
# displayName: <displayName>
# tolerations: []
#
# - groupKey: provisioner-a
# displayName: provisioner a
# tolerations:
# - key: "provisioner"
# value: "a"
# operator: "Equal"
# effect: "NoSchedule"