관리 메뉴

피터의 개발이야기

[kubernetes] 개발환경 목차, kubectl, Datree, eksctl, k9s, skaffold, LENS, OPENLENS 본문

Kubernetes/kube 개발환경

[kubernetes] 개발환경 목차, kubectl, Datree, eksctl, k9s, skaffold, LENS, OPENLENS

기록하는 백앤드개발자 2024. 1. 13. 12:50
반응형

 

ㅁ 들어가며

 쿠버네티스의 개발환경에 대해서 여러 글을 작성하였습니다. 어떤 글이 정리되어 있는지 목차를 작성하였습니다.

 

ㅁ kubectl

[kubernetes] kubectl 사용법

쿠버네티스를 사용하면서 가장 많이 접하는 것은 kubectl이라는 커맨드라인이다. 쿠버네티스 자원들의 CRUD, 생성된 자원들의 모니터링 및 트러블 슈팅, 트래픽 운영상황에서의 클러스터 관리까지 다양한 명령어가 존재한다. Devops 시스템을 운영하면서 꼭 필요했던 명령어, 혹은 미쳐 몰랐지만 꼭 필요한 명령어를 빠르게 찾아가는 방법을 이 글에서 정리하고자 한다.

 

[kubernetes] Kubectl 명령어 모음

자주 쓰는 명령어를 22개 항목으로 나열하여 정리하였다.

 

[kubernetes] kubectl 자동완성

쿠버네티스를 관리하기 위한 가장 필수사항입니다. JAVA개발을 IDE를 통해 하듯이 kubectl 자동완성은 개발을 위해 큰 도움이 됩니다.

 

 [kubernetes] kubectl node-shell 사용법

kubectl 명령어를 통해 pod가 속해 있는 nodeZ로 바로 ssh 접속이 가능한 방법이 있어 정리하였다.

 

[kubernetes] kubectl 다중 클러스터 접근하기, context 변경

 kubernetes 환경을 AWS EKS와 로컬 Docker Desktop을 다중으로 운영 중이다. 상황에 따라 클러스터를 다중으로 접속해야 하는 상황이 발생하여 Cluster 환경을 조회하고 변경하는 과정을 정리하였다.

 

[kubernetes] context 변경을 돕는 kubectx

 쿠버네티스를 관리하면서 로컬(minikube, docker desktop), AWS(개발, 검수, 운영) 다수의 클러스터를 관리할 경우 context를 자주 옮겨야 한다. kubectl의 기능을 이용할 수 있지만, context를 변경 및 관리를 돕는 kubectx가 있어서 그 설치와 사용법을 정리하였다.

 

[kubernetes] 네임스페이스 변경을 돕는 kubens

쿠버네티스 신규 인프라 테스트를 할 때에 namespace를 신규로 만들어 작얼 할 때가 많다. 그럴 때에 -n {namespace이름}을 번번히 입력해야하는데, 네임스페이스를 변경을 돕는 kubens가 있어서 설치 방법 및 사용법을 정리하였다.

 

 

[kubernetes] kubecolor 사용법, kubectl 색상화

kubectl 출력을 색상화하는 방법에 대해서 정리하였다.

 

[kubernetes] kubectl convert 설치 및 사용법

  kubectl convert은 쿠버네티스 커맨드 라인 도구인 kubectl의 플러그인으로서, 특정 버전의 쿠버네티스 API로 작성된 매니페스트를 다른 버전으로 변환할 수 있도록 한다. 이것은 매니페스트를 최신 쿠버네티스 릴리스의 사용 중단되지 않은 API로 마이그레이션하는 데 특히 유용하다.

 

ㅁ Datree

[kubernetes] Datree 사용법, 자동완성기능

 DevOps 개발자로서 k8s schema를 편집할 일이 자주 발생한다. 편집된 k8s에 대한 보안적, 문법적 이슈에 대해서 검증해 줄 수 있는 Datree를 사용 중 인데, 자동완성기능과 쿠버네티스 타켓 버젼을 바꾸는 방법을 정리하였다.

 

[kubernetes]  Datree란, Yaml validation, kubernetes schama validation

kubernetes 구성 시 스크립트 오류는 실행을 해야지만 알 수 있다.
datree은 코드에서 오류를 자동적으로 검사하여, 오류사항을 미리 예방할 수 있다.
datree란 무엇인지 알아보고 실제로 사용해 보고 이를 정리하였다.

 

ㅁ eksctl

[kubernetes] eksctl 설치 및 zsh bash 쉘 자동 완성 활성화, eksctl 자동완성

aws eks를 컨트롤 할 수 있는 eksctl의 자동완성기능을 설정하는 방법을 정리하였다.

 

ㅁ k9s

[kubernetes] k9s 설치 및 사용법

  터미널 기반 UI를 통해 쿠버네티스를 쉽고 직관적으로 관리할 수 있는 도구입니다.

 

[kubernetes] k9s의 xray, pluses 기능

k9s의 새로운 기능인 xray, pluses 기능을 사용하기 위해 업그레이드 과정과 신규 기능에 대해서 설명하였습니다.

 

 

ㅁ kubernetes IDE

ㅇ [kubernetes] LENS 설치 및 minikube 클러스터 연동

 ㅇ kubernetes의 IDE라고 표현할 정도로 클러스터의 모니터링과 관리를 도와주는 LENS라는 프로그램의 설치 및 클러스터 연결과정을 정리하였다. 

 ㅇ 치명적인 문제점은 유료라는 것이다. 그래서 7일동안 사용해본 후기 형태의 글이다.

 

ㅇ [kubernetes] OpenLens 설치 및 minikube 연동, OpenLens 노드/포드 메뉴 확장

ㅇ LENS의 무료버젼이다.

ㅇ 일부 기능이 제한되어서 별도의 확장 플로그인 설치 과정이 필요하다.

ㅇ OpenLens를 설치하고 minikube와 연동한 후, 확장 플로그인 설치과정을 정리하였다. 

 

ㅁ cdk8s

 ㅇ [kubernetes] cdk8s란 무엇인가요?

cdk8s는 객체 지향 익숙한 프로그래밍 언어를 사용하여 Kubernetes 객체 yaml을 생성하기 위한 프레임워크입니다. cdk8s는 순수한 Kubernetes YAML을 생성합니다. cdk8s를 사용하여 어디에서나 실행되는 모든 Kubernetes 클러스터에 대한 애플리케이션을 정의할 수 있습니다.

ㅁ skaffold

[kubernets] skaffold란, Kubernetes 로컬 개발환경

  Kubernetes의 로컬 개발환경은 고통스러운 프로세스일 수 있다. 일반적인 워크플로를 설명하자면, 로컬에서 코드의 수정 및 기능 테스트를 확인하고, 도커 이미지를 빌드 및 태그 지정하고, 배포 구성을 만들고 Kubernetes에 배포한다. 버그가 있거나 업그레이드가 필요한 경우 개발자는 처음부터 동일한 절차를 따라야 한다. 
Skaffold는 Kubernetes 네이티브 애플리케이션을 위한 지속적인 개발을 용이하게 하는 CLI 도구이다. 

 

[kubernets] Kubernetes 로컬 개발환경 skaffold, Intellij

인텔리제이에서 소스를 수정하면 skaffold를 통해 쿠버네티스까지 자동으로 반영해 주는 환경을 구성해 보았습니다.

 

[kubernetes] skaffold 로컬 환경 세팅 트러블슈팅

 skaffold와 Intellij를 연동하여 쿠버네티스 로컬 개발환경 세팅하면서 발생한 문제를 해결하는 과정 정리

 

반응형
Comments