꾸준히 고민하고 해결해나가는 엔지니어 한종우입니다.
깃허브2024년 08월 08일
대규모 분산 소프트웨어 시스템의 발전에 따라, 클라우드 네이티브 환경에서 서비스를 운영하는 사례가 증가하고 있습니다. 이러한 환경에서는 수많은 서비스들이 복잡하게 상호작용하며, 서비스 간 의존성이 매우 높아져 관리…
2024년 03월 17일
쿠버네티스 내 Gateway API 프로젝트에서 API 리소스를 관리하는 CLI 도구인 gwctl의 기능 개발에 기여자로 참여했습니다. 이 글에서는 Gateway API 프로젝트와 gwctl을 소개하고, 기여 과정…
2023년 08월 31일
쿠버네티스는 컨테이너화된 애플리케이션을 자동으로 배포, 스케일링 및 관리해주는 오픈소스 프로젝트입니다. 쿠버네티스는 현시점에서 이미 사실상 표준(de-facto standard)이 되었고, 컨테이너 기반 인프라 시장을 선도하고 있습니다.
2023년 07월 31일
워크플로우에서 애플리케이션을 테스트할 때, 데이터베이스나 메모리 캐시 등의 도구를 사용해야 하는 경우가 있습니다. 이런 경우, 워크플로우에서 직접 도구를 설치하고 구성하는 대신 Service Container를 사…
2023년 06월 27일
여러 저장소에서 비슷한 워크플로우를 사용한다고 가정해 봅시다. 만약 워크플로우의 요구사항이 변경된다면, 모든 저장소에서 워크플로우를 수정 해야 합니다. 이는 유지보수를 어렵게 만들고 실수를 유발할 수 있습니다. 각 …
2023년 05월 12일
npm의 자격 증명이 유출되면, 공격자는 npm 레지스트리에 조작된 패키지를 게시할 수 있습니다. 신뢰할 수 있는 패키지로 가장한 악성 패키지를 다운로드하고 사용하는 개발자는 악성 코드에 노출될 수 있습니다. 이러…
2023년 05월 07일
코드를 살펴 보던 중, 아래와 같이 불필요하게 중첩된 조건문을 발견하였습니다. 위 코드를 아래와 같이 Early Return하는 코드로 변경하였습니다. Early Return은 함수에서 조건문을 만족할 때 일찍 반…
2023년 03월 25일
AWS EC2 인스턴스에 접속하는 방법은 여러 가지가 있습니다. 대표적으로 ssh 클라이언트를 사용하는 방법이 있는데, 책이나 인터넷 강의에서도 많이 다루고 있습니다. ssh 클라이언트를 사용하여 접속하는 방법은 …
2023년 03월 16일
멀티 플랫폼 이미지를 빌드한다는 것은 하나의 Dockerfile로 여러 플랫폼에서 실행 가능한 Docker 이미지를 생성하는 것을 의미합니다. 빌드된 이미지는 arm64, armv7, amd64, ppc64le, …
2023년 03월 01일
팀에서 기존 LDAP 인증 기능에 대해 리팩터링을 진행하던 중, 기능을 테스트할 환경이 필요했습니다. 하지만 LDAP이라는 생소한 기술을 처음부터 배우고 환경을 구성하는 것은 시간 상의 문제가 있었습니다. 고민하던…
2023년 01월 27일
리눅스 커널은 오픈소스 프로젝트로 개발되고 있습니다. 커널 개발은 작업한 내용을 패치 형태로 이메일을 통해 제출하는 방식으로 진행됩니다. 이 글에서는 실제로 주석 오탈자를 수정하고 패치 코드를 제출해보며 리눅스 커널에 기여하는 방법에 대해 간단히 소개합니다.
2023년 01월 23일
Docker 컨테이너는 애플리케이션을 개발, 테스트, 배포하는데 유용하게 사용됩니다. 하지만 Docker 이미지의 용량이 클 경우 다운로드, 저장, 배포가 느려지고 네트워크 부하가 증가할 수 있습니다. 이럴 경우에…