본문으로 건너뛰기
로그인 둘러보기
개발·코딩·데이터베이스 · 윈도우즈 유틸

Freelens

0

Freelens는 Kubernetes 클러스터를 시각적으로 관리하기 위한 무료 오픈소스 IDE입니다.

데브옵스컨테이너쿠버네티스쿠버네티스 대시보드클라우드 네이티브

소개

Freelens는 Kubernetes 클러스터를 시각적으로 관리하기 위한 무료 오픈소스 IDE입니다. Freelens Authors가 개발한 이 애플리케이션은 macOS, Windows, Linux에서 동작하며, 복잡한 쿠버네티스 운영을 직관적인 인터페이스로 간소화하는 것을 목표로 합니다. 클러스터 리소스 조회, 포드 로그 확인, 컨테이너 상호작용 등 일상적인 쿠버네티스 작업을 데스크톱 환경에서 직접 처리할 수 있도록 돕습니다.

상세정보

클러스터 및 노드 관리

  • 클러스터 로딩 및 이벤트 조회, 사이드바 페이지 탐색
  • Nodes 목록에서 인스턴스 유형, 노드 그룹, capacity, pods 컬럼 및 리소스 요청 오버레이 확인
  • SOCKS5 프록시를 통한 exec, attach, port-forward 요청 지원
  • kubectl.kubernetes.io/default-container 어노테이션을 존중하여 지정된 컨테이너를 대상으로 동작

포드 및 컨테이너 작업

  • 포드 목록 표시 및 선택
  • 선택한 포드의 실시간 로그 조회 및 로그 파일 다운로드
  • Attach, Pod Shell, Pod Logs 액션을 통한 컨테이너 상호작용
  • 노드 및 포드 메트릭 확인

리소스 및 정책 관리

  • ValidatingAdmissionPolicy 및 ValidatingAdmissionPolicyBinding 리소스 지원
  • events.k8s.io/v1 API 이벤트의 소스 및 반복 횟수 표시
  • Prometheus/Thanos 메트릭 쿼리 및 실패한 쿼리의 서버 오류 메시지 로깅

확장 기능

  • Open Lens용으로 작성된 많은 확장이 이미 Freelens용으로 변환되어 사용 가능
  • 누구나 자체 확장 개발 및 제안 가능

Windows 설치

  • WinGet 사용: winget install Freelensapp.Freelens (–silent, –scope user, –scope machine 옵션 지원)
  • Scoop 사용: scoop bucket add extras 후 scoop install freelens
  • EXE(NSIS) 또는 MSI 인스톨러 직접 다운로드, Portable EXE는 설치 없이 실행 가능

macOS 설치

  • PKG 또는 DMG 패키지를 림스 페이지에서 내려받아 설치
  • Homebrew 사용: brew install --cask freelens

Linux 설치

  • DEB, RPM, AppImage 중 시스템에 맞는 패키지 다운로드
  • AppImage 실행 시 sudo apt install libfuse2 zlib1g-dev 필요
  • Flatpak: flatpak install flathub app.freelens.Freelens 후 flatpak run app.freelens.Freelens
  • Snap: snap install freelens --classic
  • APT 저장소 추가 후 설치, AUR의 freelens-bin 패키지 사용 가능

기본 사용 흐름

  1. Freelens를 실행하고 Kubernetes 클러스터에 연결
  2. 좌측 포드 목록에서 원하는 포드를 선택
  3. 하단 터미널 창에서 해당 포드의 로그를 실시간으로 확인
  4. 필요 시 Download 버튼을 클릭하여 로그 파일 저장

활용 예시

Freelens는 다음과 같은 쿠버네티스 운영 시나리오에서 활용할 수 있습니다.

  • 운영 클러스터의 포드 로그를 실시간으로 모니터링하고 파일로 보관
  • 다중 클러스터 환경에서 사이드바를 통해 노드, 이벤트, 메트릭 정보를 한 화면에서 비교
  • kubectl 명령을 직접 입력하지 않고 Attach, Pod Shell, Pod Logs 액션으로 컨테이너에 접근
  • ValidatingAdmissionPolicy 및 관련 바인딩 리소스를 UI에서 직접 조회 및 관리
  • SOCKS5 프록시 뒤에 있는 클라우스트에서 exec, attach, port-forward 기능 사용

제한 및 라이선스

Freelens는 MIT 라이선스 하에 배포되는 오픈소스 소프트웨어입니다. 쿠버네티스 1.22 미만 클러스터는 번들된 kubectl로 폴백되지만 정상 동작하지 않을 수 있으며, Preferences에서 다른 kubectl을 지정할 수 있습니다. Linux AppImage는 libz.so 및 libfuse.so.2가 필요하며, MSI 패키지의 버전 번호는 마지막 4번째 자리가 항상 0으로 고정되는 패키지 형식적 제한이 있습니다.

화면으로 보는 주요 기능

포드 목록 및 로그 보기

포드 목록 및 로그 보기

포드 목록이 표시된 화면에서 'alertmanager-kube-prometheus-sts' 포드를 선택하고, 하단 터미널 창에서 해당 포드의 로그를 확인하고 있다. 로그는 JSON 형식의 메시지로 구성되어 있으며, 'debug' 레벨과 'http.logging.go:21' 호출을 포함하고 있다. 터미널 창 상단에는 'Pod podinfo-6f4579f7f9-m2mzl' 탭이 열려 있고, 'podinfo' 네임스페이스와 'ReplicaSet podinfo-6f4579f7f9-m2mzl' 컨테이너를 선택한 상태이다. 로그의 시작 날짜는 '07/08/2024, 21:19:26'이며, 'Show timestamps'와 'Show previous terminated container' 옵션은 비활성화되어 있다. 오른쪽 하단에는 'Download' 버튼이 있다.

포드 로그 탐색

포드 로그 탐색

포드 목록 화면에서 'alertmanager-kube-prometheus-sts' 포드가 선택된 상태이며, 하단 터미널 창에서 'podinfo-6f4579f7f9-m2mzl' 포드의 로그를 확인하고 있다. 로그는 JSON 형식의 메시지로 구성되어 있으며, 'debug' 레벨과 'http.logging.go:21' 호출을 포함하고 있다. 터미널 창 상단에는 'Pod podinfo-6f4579f7f9-m2mzl' 탭이 열려 있고, 'podinfo' 네임스페이스와 'ReplicaSet podinfo-6f4579f7f9-m2mzl' 컨테이너를 선택한 상태이다. 로그의 시작 날짜는 '07/08/2024, 21:19:26'이며, 'Show timestamps'와 'Show previous terminated container' 옵션은 비활성화되어 있다. 오른쪽 하단에는 'Download' 버튼이 있다.

시스템 요구사항

Array