포트 포워딩 Kubernetes 리소스에 대한 간단한 가이드

Kubernetes는 사람들이 인프라를 배포, 오케스트레이션 및 구축하는 방식을 변경합니다. 이 기사에서는 로컬 시스템에서 내부 Kubernetes 리소스에 액세스하는 가장 간단한 방법을 배웁니다.

💼 사용 사례



PostgreSQL을 클러스터에 배포했으며 이를 공개적으로 노출하고 싶지는 않지만 일부 쿼리를 만들고 DB에 액세스하려고 합니다.

🎉 솔루션



Kubernetes 기본 포트 전달 기능을 사용합니다. 특정 Kubernetes API를 사용하면 단일 HTTP 연결을 통해 클러스터 리소스에서 localhost로의 터널을 만들 수 있습니다. 결과적으로 Kubernetes 클러스터에서 localhost 5432 포트 PostgreSQL에 액세스할 수 있습니다.

kubectl로 할 수 있습니다.

kubectl port-forward -n default deployment/postgres 8432:5432


또는 매우 간단한 오픈 소스 GUI를 사용할 수 있습니다 – Kube Forwarder . CLI 도구를 사용하는 것은 훌륭하지만 몇 가지 필수 기능이 없습니다.

  • 자동 재연결(연결이 안정적이지 않은 경우 수동으로 명령을 다시 실행해야 함)

  • 자동 완성(항상 서비스 이름, 네임스페이스를 염두에 두어야 합니다. 메모에 몇 가지 힌트가 있음)

  • 다중 클러스터 지원(무언가를 전달할 때마다 컨텍스트를 전환하는 것도 좋은 경험이 아님)

  • 그래서 우리는 그것을 염두에 두고 Kube Forwarder – easy to use Kubernetes port-forwarding manager을 개발했습니다.



    우리가 가진 다른 중요한 기능:

  • kube 구성 클러스터 자동 가져오기

  • 북마크된 모든 클러스터 및 리소스 가져오기/내보내기(팀과 공유하기에 적합)

  • 여러 서비스를 동시에 전달

  • 제로 기본 종속성(kubectl CLI 없이 작동)

  • Kube Forwarder❓로 리소스를 전달하는 방법



    처음 하는 경우 매우 간단한 3단계 프로세스 –
  • 클러스터 구성 추가
  • 전달하려는 리소스 찾기
  • 전달 시작

  • 클러스터 구성 추가

    이미 kubeconfig 파일이 있는 경우 Kube Forwarder는 다음과 같은 클러스터를 가져오도록 제안합니다.



    다른 옵션도 있습니다.
  • 하나 이상의 파일을 선택하여 클러스터 추가
  • 구성을 일반 텍스트로 붙여넣습니다. 새 클러스터를 생성하고 일부 배포에 액세스하려는 경우 유용할 수 있습니다
  • .
  • Kube Forwarder JSON에서 구성을 복원합니다. 데브옵스로서 쿠버네티스에 익숙하지 않은 개발팀을 위해 사용하기 쉬운 포워딩을 준비하고 싶을 때 유용합니다.

  • 전달하려는 리소스 찾기



    Kube Forwarder는 네임스페이스, 팟(Pod), 배치별로 자동 완성 기능이 있어 전달을 위한 새 리소스를 추가하는 프로세스를 매우 간단하게 만듭니다.

    로컬 포트(로컬 머신의 포트) 및 리소스 포트(앱이 시작된 포트)로 설정합니다. 다른 분야는 추가 설명이 필요하지 않다고 생각합니다.
    리소스를 추가했으면 "재생"버튼을 누르고 로컬 컴퓨터에서 서비스에 액세스합니다.

    🙏 여러분의 피드백을 기다리고 있습니다.



    우리는 이와 같은 앱이 생산성을 높이고 더 많은 사람들이 Kubernetes를 사용하도록 유도할 수 있다고 믿습니다. 앱에 대한 귀하의 생각과 앱을 개선할 수 있는 아이디어를 알려주세요.

    우리는 Electron으로 앱을 구축했기 때문에 macOS, Windows 및 Linux에서 잘 작동합니다.

    Github - ⭐ https://github.com/pixel-point/kube-forwarder

    좋은 웹페이지 즐겨찾기