본문 바로가기

전체 글143

AI 관련 용어 정리 보호되어 있는 글 입니다. 2025. 8. 20.
파드 네트워크 10년 이상 동안 소프트웨어 정의 네트워크(SDN, Software-Defined Network)는 호스트 간 통신 문제를 해결함으로써 급속히 성장했다. 쿠버네티스에서는 이런 원칙과 욕구가 유지된다. 서비스가 호스트에서 파드로 이동하더라도 워크로드의 주소 지정 가능성과 라우팅 가능성이 있는지는 확인해야 한다. 또한 파드가 호스트에서 소프트웨어로 실행되고 있을 때, 가장 일반적인 소프트웨어 정의 네트워크를 설정한다. 네트워크 고려사항파드 네트워크에 대한 구현 세부정보를 보기 전에 주요 고려사항부터 알아보자.IPAM (IP Address Management)라우팅 프로토콜캡슐화 (encapsulation) 및 터널링IPv4 및 IPv6함호화된 (encrypted) 워크로드 트래픽네트워크 폴리시 IP주소 관리.. 2025. 8. 11.
컨테이너 스토리지 컨테이너 스토리지는 말 그대로 컨테이너에서 데이터를 저장하는 공간을 말한다. 그런데 여기서 중요한 건 컨테이너의 스토리지는 기본적으로 휘발성이라는 점이다. 컨테이너는 이미지를 기반으로 실행되는데, 실행 중 생성된 데이터는 컨테이너 파일시스템에 저장된다. 컨테이너를 삭제하거나 재시작하면 이 데이터는 사라진다. 스토리지 고려사항쿠버네티스 스토리지 패턴 및 옵션을 알아보기전에 스토리지 요구사항에 대한 주요 고려사항을 분석해 보자. 인프라 및 애플리케이션 수준에서는 다음 요구 사항을 반드시 고려해야 한다.액세스 모드볼륨 확장동적 프로비저닝블록, 파일 및 오브젝트 스토리지임시 데이터프로바이더 선택액세스 모드애플리케이션을 지원할 수 있는 세 가지 액세스 모드가 있다. - ReadWriteOnce(RWO) - 단일.. 2025. 8. 8.
컨테이너 런타임 쿠버네티스는 컨테이너 오케스트레이터이다. 그런데 쿠버네티스 자체는 컨테이너를 생성, 시작 및 중지하지 못한다. 대신 이런 작업을 처리하는 것이 컨테이너 런타임이라 하는 연결 가능한 컴포넌트에 위임하는 식이다. 여기서 컨테이너 런타임이란클러스터 노드에서 컨테이너를 생성하고 관리하는 소프트웨어이다. 리눅스에서 컨테이너 런타임은 cgroup 및 네임스페이스와 같은 커널 기본 요소 세트를 사용해 컨테이너 이미지에서 프로세스를 생성한다. 본질적으로 쿠버네티스, 구체적으로는 kubelet은 컨테이너 런타임과 함께 작동하여 컨테이너를 실행하는 것이다. 컨테이너의 출현Control groups와 네임스페이스는 컨테이너를 구현하는 데 필요한 기본 요소다. cgroups는 프로세스가 사용할 수 있는 리소스 (ex Cpu,.. 2025. 8. 7.
Kubernetes vCluster 실습 위한 작업.. 안녕하세요 오랜만입니다... 약 5개월동안 많은일이 있었네요 ㅎㅎ; 저는 2025 상반기에 대기업 최종면탈을 하고 멍하니 있다가.. 한국전자기술연구원 (KETI)에 합격해서 2025.08.01 부로 연구원으로 일하게 되었습니다. 맡게된 연구과제가 클라우드 연구과제라 좋은기회라 생각해서 일단 다니기로 결심했습니다!!! (경험이 없어서 서탈을 자주 하는 듯) 그래서 학부때 잠깐(?) 건드려본 쿠버네티스를 본격적으로 공부를 하게되었습니다.. 화이팅~! Virtual Cluster 란? vCluster (Virtual Cluster)는 Kubernetes 클러스터 내에서 실행되는 가상화된 Kubernetes 클러스터입니다. 즉, 기존 Kubernetes 클러스터의 네임스페이스 내에서 별도의 컨트롤 플레인(co.. 2025. 8. 6.
[Monitoring] 구축 (Prometheus + Grafana) 이번에는 Urdego의 모니터링 구축 과정에 대해 다뤄볼려 합니다. MSA 에서 서비스가 분산되어 있는데 모니터링을 어떻게 해야 할까 🤔 모니터링 (Monitoring)모니터링의 정의는 인프라 및 응용프로그램의 성능이나 효율성을 확인하는 작업이다.각 대상에서 수집한 Metric 정보를 통해서 리소스, 사용률, 트래픽등을 수치로 표현하는 기능인 셈이다. 여기서 Metric 정보를 수집하는 방법에는 Push 와 Pull 2가지 방식이 존재한다.  Push-based SystemPush 방식은 애플리케이션에서 데이터들을 직접 모니터링 시스템으로 보내주는 방식이다.새로운 애플리케이션이 추가되더라도 모니터링 시스템에 데이터를 보내기만하면 되지만 Metric을 중앙에서 정의하기 때문에 새로운 Metric을 수용하.. 2025. 3. 4.
[TensorFlow - NSFW] 부적절한 컨텐츠 감지 이번에는 Urdego 컨텐츠 서비스의 부적절한 컨텐츠 감지에 대한 포스팅을 작성하고자 합니다  도입 계기Urdego 프로젝트는 사용자가 생성하는 컨텐츠(UGC)를 게임에 사용하는 특성익명성이 보장되는 플랫폼에서 '유해 콘텐츠가 업로드될 가능성' 해결방법Amazon Rekognition (AWS에서 제공하는 부적절한 이미지 및 비디오 감지 API)Cloud Vision API - SafeSearch (GCP에서 제공하는 유해성 컨텐츠 감지)Green-eye (Naver에서 제공하는 음란물 차단 AI)등등...찾아보면서 느낀점은 API를 사용하면 손쉽게 구축할 수 있지만 역시 사용에 따른 비용이 발생한다는 점이다..블로그 포스팅하면서 매번 언급했지만 Urdego는 이미 비용문제 -> 홈서버로 구축했기에 부가.. 2025. 2. 18.
[깃허브 액션 - CI&CD] Self-hosted Runner 이번에는 urdego 백엔드 서비스들의 CI&CD 를 위한 깃허브 액션 도입에 대해 다뤄 볼려 합니다 도입 계기urdego 프로젝트는 여러개의 마이크로서비스 (User, Content, Game, 등) 으로 구성되어있어 각 서비스의 코드 변경 시마다 수동으로 빌드, 테스트, 배포를 진행하기에는 무리가 있었다.다수의 팀원이 협업하는 환경에서는 코드 병합시 의도치 않은 오류가 발생하거나 환경별 종속성으로 인한 문제가 드러나기도 하기에 코드 변경 사항에 대해 자동으로 빌드와 테스트를 실행하고 배포까지 자동화하는 도구가 필요했는데 Github Actions를 선택했다. Self-hosted ??urdego는 이미 AWS의 EC2 비용이 부담스러워 홈서버로 구축했기에 Github Actions의 퍼블릭 클라우드 .. 2025. 1. 12.
Kafka 핵심 개념 [실전 카프카 개발부터 운영까지 by 고승범] 분산 시스템분산 시스템은 쉽게말해 네트워크상에서 연결된 컴퓨터들의 그룹을 말하며 단일 시스템이 갖기 못한 높은 성능을 목표로 한다. 성능이 높다는 장점 이외에도 하나의 서버 또는 노드가 장애가 발생할 때 다른 서버 또는 노드가 대신 처리하므로 장애 대응이 탁월하다. 또한 부하가 높은 경우에는 시스템 확장이 용이하다. 카프카도 분산 시스템으로 최초 구성한 클러스터의 리소스가 한계치에 도달하여 더욱 높은 메시지 처리량이 필요할 경우, 브로커를 추가하는 방식으로 확장이 가능하다.카프카에서 브로커는 온라인 상태에서 매우 간단하게 추가가 가능하다. 최초에 하나의 카프카 클러스터가 총 3대의 브로커로 운영 중이여도 서비스가 폭발적으로 증가할 경우 나중엔 총 30대 또는.. 2025. 1. 2.
Kafka 개요 [실전 카프카 개발부터 운영까지 by 고승범] Kafka -> LinkedIn에서 처음 개발 도입사례잘란도의 규모가 커지고 사업이 다각화되면서 내부적으로 데이터에 대한 온갖 요구사항이 불거지기 시작 -> 데이터의 변화가 스트림으로 컨슈머 측에 전달되는 이벤트 드리븐 시스템으로 전환 -> 이를 통해 컨슈머들은 자신의 오규사항에 따라 데이터를 처리하거나 구독이 가능 Event Driven Architecture분산 아키텍처 환경에서 이벤트를 생성하고 발행된 이벤트를 수신자에게 전송하는 구조수신자는 그 이벤트를 처리하는 방식으로, 상호 간 결합도를 낮추기 위해 비동기 방식으로 메시지를 전달하는 패턴이다.각 마이크로서비스는 함께 작동하지만 서로 다른 비즈니스 로직을 적용하고 자체 출력 이벤트를 보낼 수 있으며주.. 2025. 1. 2.