Unggu
Preview Image

[CKA] 취득후기 및 1년간의 DevOps 운영 후 느낀점

과거 개발자의 역할이 좋은 코드를 작성하는 것에 집중되어 있었다면, 현재는 그 산출물을 직접 배포하고 운영하는 것까지 포함하는 DevOps 엔지니어로 그 역할이 확장되고 있다. CKA를 취득하고 1년간 AKS 기반의 DevOps 업무를 하면서 경험한 내용을 함께 정리해보았다. CKA 취득 후기 CKA는 완전히 낯선 쿠버네티스를 처음 공부하기에 적...

Preview Image

[Azure AKS] Proxy 환경에서 X-Forwarded-For 헤더가 AppGW IP로 변경되는 문제

서비스에서 Client IP를 사용하는 이유 서비스에서 접속한 Client IP를 확인할 일은 많습니다. Admin 페이지의 IP 기반 접근 제어 고객 요청에 대한 감사 / 추적 로그 On-Premise 환경의 경우 사내 별도의 프록시 서버 없이 사내 L4로 고객 요청이 직접 유입되기 때문에 별도의 처리 없이 logic level에서 ...

Preview Image

[AKS 장애 사례] Azure Ingress Annotation 중괄호 문법 제한과 404 에러

Azure 환경에서 Ingress의 특정 어노테이션은 예기지 못한 동작 유발할 수 있습니다. (라우팅 실패) 이 글에서는 실제 사례를 통해 Ingress의 Silent Failure가 발생했는지 집중적으로 조사하고, 이 과정에서 얻은 Lesson Learned를 정리해 보겠습니다. 구조 및 개념 설명 현재 서비스의 네트워크 구조는 간단하게 아래와...

Preview Image

[Java] 정규표현식을 활용한 Java 개발

Java 개발을 하다보면 특정 패턴이 반복되는 자연어를 처리할 일이 많습니다. 개인정보에 대한 마스킹, 로그의 대한 패턴 분석 그럴때마다 parse를 통해 분석을 할 수 있겠지만 복잡한 문자열 검색이나 치환 작업을 간단한 패턴으로 대체할 수 있는 방식으로 정규 표현식(Regular Expression, Regex)를 사용하면 가독성 좋은 코드를 작성...

Preview Image

[Cloud Design Pattern] SAGA 패턴

트랜잭션과 정의 트랜잭션은 한 번에 실행되어야 하는 여러 작업을 포함할 수 있는 작업의 단위이며, ACID 원칙을 준수해야 합니다. 원자성: 모든 작업이 성공하거나 작업이 성공하지 않습니다. 일관성: 데이터가 유효한 상태에서 다른 유효한 상태로 전환됩니다. 격리: 동시 트랜잭션은 순차 트랜잭션과 동일한 결과를 생성합니다. 내구성: ...

Preview Image

[Cloud Design Pattern] SpringBoot에서 Azure Event Hub를 통한 pub-sub 패턴 구현

Pub-Sub 패턴이란 송신자(publisher)와 수신자(Subscriber)가 서로 알지 못한 상태로도 비동기 통신할 수 있도록 하는 메세징 패턴입니다. 일반적인 통신(Rest API) A라는 publisher 서비스와 B라는 Consumer라고 가정하겠습니다. B서비스는 A서비스에게 요청하기 위해서는 아래와 같은 제약사항이 존재합니다. ...