April 05, 2025
1. 개요 Kind란? (Kubernetes in Docker)는 Docker 컨테이너 내에서 클러스터를 실행할 수 있도록 도와주는 도구이다. 로컬 환경에서 빠르게 클러스터를 실행하고 테스트하는 데 유용하다. Kind의 아키텍처 구조 는 노드를 컨테이너로 실행하는 방식으로 동작한다. 다음은 의 기본 아키텍처 구조이다. 각 노드는 Docker 컨테…
April 05, 2025
1. 개요 Rate limiting은 API 호출이나 서버 요청을 특정 시간 단위 내에서 제한하는 기법이다. 이는 서버 과부하를 방지하고, 과도한 요청으로 인한 장애를 예방하기 위해 사용된다. 예를 들어, 특정 API에서는 "1초당 20건"과 같은 방식으로 호출 횟수를 제한하기도 한다. 이러한 상황에서 Python으로 개발할 때, 효율적으로 rate li…
April 03, 2025
1. 개요 Git 서브모듈이란? 서브모듈(Git Submodule)은 하나의 저장소 내에 다른 저장소를 포함할 수 있도록 해주는 기능이다. 이를 통해 별도의 저장소를 독립적으로 관리하면서도, 특정 프로젝트 내에서 재사용할 수 있다. 왜, 언제 사용하나? 코드 재사용: 여러 프로젝트에서 동일한 라이브러리나 공통 코드베이스를 유지해야 할 때 유용하다 독…
April 03, 2025
1. 개요 KubeVPN 란? 은 클러스터와 로컬 환경 간의 원활한 네트워크 연결을 제공하는 도구이다. 기존의 port forwarding 방식과는 다음과 같은 차이점이 있다. 방식 설명 Port Forwarding 특정 포트를 로컬로 전달하여 단일 서비스에 접근 가능하지만, 여러 포트나 복잡한 네트워크 설정이 필요할 경우 불편함 KubeVPN 전체 네…
April 02, 2025
개요 을 사용하여 코드 버전 관리를 하다 보면, 작업을 위해 새로운 브랜치를 생성하고 작업한 후 한 뒤에도 로컬에 사용되지 않는 브랜치들이 계속 남아 있게 된다. 원격(Remote) 브랜치의 경우, GitHub의 설정에서 옵션을 활성화하면 자동으로 삭제할 수 있다 하지만 로컬(Local) 브랜치는 자동으로 삭제되지 않으며, 매번 수동으로 해야 한다.…
March 29, 2025
1. 개요 Minikube란? 는 로컬 환경에서 가볍게 클러스터를 실행할 수 있는 도구이다. 를 실습하거나 개발 환경에서 테스트할 때 유용하다. Mac, Linux, Windows에서 실행할 수 있으며, 가상화 기술을 이용해 클러스터를 구성한다. Kubernetes 클러스터 실행 방식 비교 클러스터를 실행하는 방법은 여러 가지가 있으며, 각각 장단점…
March 26, 2025
1. 개요 pipx를 사용해야 하는 이유 Python 패키지를 설치할 때 일반적으로 를 사용하지만, 일부 CLI(Application) 패키지는 전역적으로 설치하면서도 격리된 환경에서 실행하는 것이 더 적합할 수 있다. 이를 위해 를 사용하면 다음과 같은 장점이 있다. pip와의 차이점 특징 기본 설치 위치 가상환경 없음, 시스템 전역 또는 프로젝트 …
March 23, 2025
1. 개요 라즈베리파이4에 64 OS 업그레디 하면서 다시 최신 Golang 설치하려니 기억이 나지 않아서 기록상 남겨둔다. 를 이용해서 설치를 하면 1.19 버전이 설치가 되어서 이 포스팅에서는 수동으로 최신 버전으로 설치하는 방법을 다룬다. 2. 최신 Golang 설치하는 방법 2.1 라즈베리파이 OS 확인 먼저 현재 사용 중인 라즈베리파이의 OS와 …
March 23, 2025
1. 개요 직장 동료의 소개로 를 접하게 되었고 워크플로우기반의 자동화 도구로 다양한 서비스 특히 AI와 연동해서 자동화하기 좋은 도구이다. 이번 포스팅에서는 라즈베리파이에 를 설치하고 구동하는 방법에 대해서 알아본다. 2. 라즈베리파이에 설치하는 방법 2.1 사전 작업 설치된 패키지 최신화 라즈베리파이의 패키지를 최신 상태로 유지하기 위해 다음 명령어…