본문 바로가기
프로그래밍

프로그래밍 「 추천 편」여러 Kubernetes 클러스터를 관리하기 위한 세 가지 최고의 도구

by grapedoukan 2023. 6. 4.
728x90

여러 클러스터 환경에서 작업하는 것은 어려울 수 있습니다. 잘못된 클러스터에 대해 명령을 실행하는 자신을 발견하는 것은 매우 쉽습니다. 컨텍스트를 전환할 때마다 kubectl config use-context <context_name> 명령을 실행해야 하는 경우 하루에 여러 번 컨텍스트를 전환하는 것은 매우 지루하고 시간이 많이 소요될 수 있습니다.

오늘은 여러 k3 클러스터에서 작업을 쉽게 수행할 수 있는 8가지 도구를 소개하겠습니다. 다음 기준에 따라 각 도구의 유용성을 평가할 것입니다.

 

속도:

선택할 수 있는 k8s 클러스터가 여러 개 있는 경우 k8s 컨텍스트를 얼마나 빨리 전환할 수 있습니까? 모든 클러스터 컨텍스트를 아직도 기억하고 있습니까?

융통성:

도구에 여러 구성 파일 지원과 같은 고급 기능이 있습니까?

안전:

여러 터미널을 동시에 열 수 있고 각 터미널이 자체 클러스터 컨텍스트에서 실행될 수 있습니까? 한 터미널에서 클러스터 컨텍스트를 전환하면 다른 터미널에 영향을 주어 오류율이 발생합니까?

위의 평가 지표를 기반으로 아래 3가지 도구를 살펴보겠습니다.

쿠벡텍스

Kubectx는 k8s 클러스터를 전환하는 데 가장 널리 사용되는 도구이지만 기능이 제한되어 있습니다! 선택할 수 있는 모든 kubeconfigs 목록을 표시할 수 있습니다. 그거에요!

Kubectx 설치

Kubectx는 Linux, Windows 및 macOS와 같은 모든 주요 플랫폼에서 작동합니다. helm과 같은 패키지 관리자를 통해 설치할 수 있습니다. kubectl krew install ctx를 사용하여 Kubectl 플러그인으로 설치할 수도 있습니다. 자세한 내용은 여기에서 확인할 수 있습니다.

Kubectx의 단점

쿠버네티스에서 컨텍스트를 변경할 때 kubectx는 모든 터미널 세션에 대해 전역적으로 변경되므로, 여러 터미널이 서로 다른 클러스터를 독립적으로 관리할 수 없다.

쿠비

Kubie는 kubectx의 대안입니다. 빠르고 유연하며 kubeconfig 파일에 영향을 미치지 않습니다.

· kubie ctx를 사용하여 현재 셸의 Kubernetes 컨텍스트를 전환합니다.

· kubie exec <context> <namespace> <Kubectl 명령>을 사용하면 특정 컨텍스트 내에서 단일 kubectl 명령을 실행할 수 있습니다.

· 여러 kubeconfig 파일을 관리할 수 있으며 ~/.kube/kubie.yaml 파일의 설정을 수정하여 Kubie의 동작을 사용자 지정할 수 있습니다.

Kubie 설치

Kubie 패키지는 macOS 및 Linux에서 사용할 수 있지만 Windows에서는 사용할 수 없습니다. 자세한 내용은 여기를 참조하십시오.

쿠베스위치

Kubeswitch는 Kubectx와 Kubie의 핵심 기능을 가지고 있습니다. 그것은 분명히 승자이자 우리가 미래에 사용할 도구이기도 합니다.

· Hooks(Git Hooks와 유사)를 사용하면 선택한 시간에 실행 파일/인라인 셸 명령을 자동으로 실행할 수 있습니다.

· 검색 인덱싱 기능을 활성화하면 수백 개의 Kubernetes 컨텍스트에서 번개처럼 빠른 검색을 수행할 수 있습니다. 이는 여러 로컬 및 원격 시스템의 모든 컨텍스트를 인덱싱합니다. 오래된 결과를 방지하기 위해 인덱스를 수동으로 새로 고쳐야 합니다.

다른 기능들

· 변경 내역 — 이전에 전환한 모든 컨텍스트의 목록입니다.

· Context aliases(컨텍스트 별칭) — 빠르게 액세스할 수 있도록 컨텍스트에 대한 별칭입니다.

· 터미널 격리 — 서로 다른 터미널 창에서 여러 클러스터에 액세스합니다.

Kubeswitch 설치

MacOS를 사용하지 않는 경우 소스 코드 또는 바이너리 파일에서 다운로드 및 설치가 약간 복잡할 수 있습니다. 그러나 시간을 할애할 가치가 있습니다. 자세한 내용은 여기를 참조하십시오.

kubectx 대 kubie 대 kubeswitch

728x90