2025년 06월 24일 작성
1. OpenFGA OpenFGA는 유저-리소스 간 관계 기반의 접근 제어를 수행한다. 시스템이 복잡해짐에 따라 Authorization 모델 또한 복잡성이 증가할 수 있다. 전통적으로 사용하는 RBAC 및 ABAC은 단순하고 빠르게 모델을 세우고 구현할 수 있지만, 리소스가 복잡한 계층으로 구조화되어 있거나 사용자 간 관계에 따라 접근을 제어해야 하는 …
2025년 06월 12일 작성
Goland나 IntelliJ 등 Jetbrains IDE에서 ArgoCD Application을 작성할 때, IDE가 모르는 CRD를 만나면 Unknown resource라며 아래 이미지처럼 거슬리게 만드는 경우가 있다. 툴팁에 있는 Find and use matching Custom Resource Definition as validation sc…
2024년 02월 18일 작성
문제 상황 표면적으로 보이던 에러 상황 프론트엔드에서 로의 모든 request가 404 에러 발생 request가 도착해야할 pod에 어떠한 로그도 찍히지 않았다. 다만, ingress-nginx-controller 로그에는 request가 도착했고 404를 돌려줬다는 로그가 찍혔다. 여기서, 다음 상황이라고 추측했다. 원인 추적 Ingress를 살짝 …
2023년 05월 26일 작성
스프링 배치 메타데이터 스프링 배치에서는 과 의 실행 상태, 파라미터, 컨텍스트 등을 관리하기 위해 메타데이터 테이블을 필요로 한다. 1 메타데이터 엔티티들은 , , , 등이 있고, 이들을 관리하는 테이블들은 총 6개로 다음과 같다. : Job이 실행될 때마다 생성된 JobInstance : JobInstance의 시작/종료 시간, 상태, 종료 메세…
2022년 10월 28일 작성
문제점 Python 3.8에서 추가된 모듈의 를 사용하는 경우, SharedMemory를 사용하던 프로세스가 종료되었을 때, 연결된 공유 메모리 블록까지 릴리즈되어 다른 프로세스에서 사용이 불가능한 문제 발생한다. SharedMemory 세그먼트를 프로세스의 종료와 관계 없이 유지하는 시나리오도 존재할 수 있지만, 파이썬에서는 memory leak로 판…
2022년 04월 07일 작성
요약 Hash Table에서 해시 충돌(Hash Collision)에 대한 해결책으로 Open Addressing, Separate Chaining 등이 있다. Go에서는 Separate Chaining 방법으로 구현되어 있는데, 이 방법은 링크드 리스트와 같이 버킷의 엔트리에 엔트리를 붙이는 방법이다. 링크드 리스트나 트리의 구조로 chaining을 수…
2021년 07월 29일 작성
이 포스팅은 Marko Lukša의 Kubernetes in Action (1st edition)에서 Chapter 5. Services: Enabling Clients to Discover and Talk to Pods를 기반으로 재구성하였습니다. 서비스에 관련된 내용은 총 3편의 시리즈로 포스팅할 예정입니다. 들어가기 전에 지난 포스팅에서는 서비스라는…
2021년 07월 26일 작성
이 포스팅은 Marko Lukša의 Kubernetes in Action (1st edition)에서 Chapter 5. Services: Enabling Clients to Discover and Talk to Pods를 기반으로 재구성하였습니다. 서비스에 관련된 내용은 총 3편의 시리즈로 포스팅할 예정입니다. 쿠버네티스 서비스 1 쿠버네티스 서비스 2…
2021년 07월 23일 작성
수정사항 2021.07.24 21:16 :: 제목 수정, 일부 잘못된 내용 삭제, 주석 수정 NodePort 쿠버네티스 기본 세팅에서 NodePort는 - 범위 내에서 할당된다. 1 이렇게 세팅된 이유는 다음 충돌이 예상되기 때문이다. 2 노드가 실제로 사용하는 포트와 충돌할 수 있음. (예로 번 포트 등) pod host 포트와 충돌할 수 있음. , ,…
2021년 06월 30일 작성
1. What is etcd? distributed reliable key-value store : + istributed system (“엣-시디”로 읽음) 분산 시스템의 운영에 필요한 데이터를 관리하는 용도로 사용된다. 클러스터 구성을 위해 election, consensus(Raft) 등을 처리하고 관련 설정값을 관리한다. CNCF(Cloud N…