테스트를 위해 작은 클러스터를 만드는 경우가 많습니다. kind를 이용해 멀티 노드 클러스터를 만드는 간단한 명령어를 정리합니다. 3개의 컨트롤 플레인, 5개의 워커노드를 구성하는 명령어 입니다. YAML을 저장하고 불러올 필요없이 STDIN 방식으로 간편하게 만들 수 있습니다. 다음 명령어를 한번에 실행해주세요: KIND_CLUSTER_NAME="cluster-3-5"cat 실행 결과는 다음과 같습니다. kind에서 클러스터의 이름은 `cluster-3-5`이고, 쿠버네티스에서 컨텍스트의 이름은 `kind-cluster-3-5` 입니다. 기본적으로 kind에서 클러스터를 활성화하면 컨텍스트가 전환됩니다. 다시 전환하기 위해서는 다음 명령어를 이용하세요. # using kubectlkubectl..
차트를 로컬에 내려받기 위해 사용하는 `helm pull` 명렁어에 대한 짧은 지식 정리입니다. 헬름 차트를 내려받을 때 두 가지 방식을 사용합니다. 간단히 정리하겠습니다. ⚓️ 1. 헬름 차트 레지스트리의 경우헬름에서 제공하는 기존 방식입니다. 차트를 추가해야 내려받을 수 있습니다. nginx-ingress를 예시로 하면 다음과 같이 pull 할 수 있습니다.helm repo add nginx https://helm.nginx.com/stablehelm pull nginx/nginx-ingress --untar ⚓️ 2. OCI 레지스트리의 경우Open Container Initiative(OCI) 규격은 원격 리포지토리의 특정 차트를 바로 지칭하는 방식입니다. 쉽게 말하면 `helm repo ..
이번 글은 오늘은 애프터 오블완#0 (2024년 11월 30일) 입니다. 제가 올해 많이 쓴 앱은 k9s 입니다. 주제: 올해 가장 많이 쓴 앱은? DevOps 엔지니어라면 당연히 k9s죠 올해 가장 많이 쓴 앱은 k9s 입니다. 실무에서 쿠버네티스 모니터링하고 제어하는 아주 간단한 도구입니다. 온프레미스와 퍼블릭 쿠버네티스 모두 지원하고, 멀티클러스터도 지원해서 업무효율이 많이 오릅니다. `kubectl` 로 시작하는 많은 명령들을 단축키와 UI로 대신해줍니다. 그것도 터미널에서요! k9s에 대한 소개를 적어둔 제 블로그가 있습니다. DevOps를 하시는 분들께 도움이 되었으면 합니다. 그리고 주제별로 많이 썼던 앱을 리스팅해보겠습니다. 개발 도구: Visual Studio Code (..
이번 글은 오늘은 애프터 오블완#-1(2024년 11월 29일) 입니다. 주제: 올해 새롭게 시작한 취미는?올해는 아니지만 새롭게 시작한 취미는 '라즈베리파이로 홈 클러스터를 만들기' 입니다. 명함 크기의 작은 컴퓨터 4개를 연합해서, 집에서 클라우드 서비스를 운영하는 것 입니다. 저비용 고효율인 ARM 개발에 관심이 있었고, 집에서 노트북만 끌어안고 있기보다는 뭔가 만들어 보자는 생각에 시작하게 되었습니다. 2년 전에 조금씩 실험해 보다가, 본격적으로 시작한 것은 작년 하반기였습니다. 지금은 '1단계'라 부를 수 있는 정도는 완성했습니다. 프로젝트의 진행도를 보시려면 이 글을 참고 하시면 좋습니다. 저의 다른 블로그 입니다. https://blog.jyje.live/posts/proje..
이어서 호머를 이용해 대시보드를 만들어 볼 겁니다. 인그레스된 쿠버네티스 서비스에 접근하는 대시보드 인데요. 이는 서비스의 상태를 파악하는 모니터링과, 분산된 인그레스를 한 곳에 모아 편하게 접근할 수 있는 포털의 기능을 함께 수행합니다. 포털로 사용하는 대시보드의 장점은 개발자, 사용자에게 모두 좋은 접근성을 제공한다는 점 입니다. 이 블로그에서는 호머의 설치법과 git을 이용한 대시보드 구성에 대해 살펴보겠습니다. 대신 쿠버네티스의 오퍼레이터 패턴을 이용하여 설치하겠습니다. ✨ 소개호머에 대한 소개는 이전 블로그인 '🍩 호머(Homer): YAML로 만드는 간편 대시보드 도구를 소개합니다'를 참고해 주세요. 설치법은 공식문서에 있는 설치법을 따라하겠습니다. 호머를 설치하면 이런 모습입니다..
이전 포스팅에서 GitOps를 위한 Argo CD 소개와 설치, 그리고 App of Apps 패턴 사용법을 살펴보았습니다. 이 포스팅에서는 git 리포지토리를 좀 더 활용해보겠습니다. 아래에 보이는 CRD 처럼 Argo CD App에 헬름 차트 리포지토리를 직접 명시할 경우가 있습니다. 이 때 Argo CD는 사용자 대신 원격 저장소로부터 차트를 캐싱하여 대상 쿠버네티스에 배포하게 됩니다. 이럴 경우, 관리가 단순해지는 장점이 있는 대신 두 가지 단점이 있습니다: `1. 차트 템플릿을 커스텀 할 수 없습니다`, `2. 원격 저장소가 다운될 경우에 배포를 갱신할 수 없습니다`. 이 단점을 해결하기 위해 원격 차트도 함께를 관리하는 방법이 있습니다. 이 포스팅에서는 원격 차트를 커스텀 차트와 GitOps로 ..