Skip to content

Feature: Ingress API Compatibility Based on Kubernetes Version (Fix Jupyter Container Exit Issue) #24

@itongxiaojun

Description

@itongxiaojun

🚀 Feature: Ingress API Compatibility Based on Kubernetes Version (Fix Jupyter Container Exit Issue)

Background

In some Kubernetes environments — particularly on version 1.21 and above — the current Ingress creation logic still relies on the deprecated networking.k8s.io/v1beta1 API. As a result, Jupyter containers are created but immediately exit due to failed or invalid Ingress setup, making the service inaccessible.

To fix this bug, the system needs to automatically detect the Kubernetes version at runtime and select the appropriate Ingress API version to use.


Goal

  • Fix the issue where Jupyter containers exit after being created because of failed Ingress configuration
  • Dynamically detect the Kubernetes server version at runtime
  • Choose the correct Ingress API version based on the detected version

Acceptance Criteria ✅

  • Jupyter container startup is stable across supported Kubernetes versions
  • Ingress API version is selected based on whether the version is < 1.21 or ≥ 1.21
  • The networking logic remains backward-compatible and robust

🚀 功能:支持根据 Kubernetes 版本自动适配 Ingress API(修复 Jupyter 容器创建后退出的问题)

背景

当前在最新的 Kubernetes 版本(尤其是 v1.21 及以上)中,系统使用的 Ingress API 版本已被废弃,导致 Jupyter 容器创建后无法访问,最终退出。这是由于仍在使用已废弃的 networking.k8s.io/v1beta1 接口创建 Ingress 所致。

为了修复此问题,需要根据实际的 Kubernetes 集群版本,自动适配 Ingress 的 API 版本,确保兼容性与服务可用性。


目标

  • 修复 Jupyter 容器创建后自动退出的 BUG;
  • 根据Kubernetes 集群版本选择合适的 Ingress API 创建方式;

验收标准 ✅

  • 修复 Jupyter 容器因 Ingress 创建失败而退出的问题;
  • 正确适配 Ingress API:v1.21 前使用 v1beta1,v1.21 及以上使用 v1
  • 保持现有网络逻辑兼容性;

我们将尝试修复这个问题,并让 Jupyter 容器 正常运行。

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions