생각했으면 행동한다 GitHub

전체 글 206

HyperText Transfer Protocol

시작IT 관련 학부생이었다면 네트워크나 프로그래밍 관련 전공수업에서 HTTP는 무조건 들어봤을 것이다. 이번에는 지식을 견고히 하고 확장하는 차원에서 HTTP를 다뤄보려고 한다. HTTP - HyperText Transfer ProtocolHTTP는 클라이언트와 서버가 데이터를 주고 받는 데에 사용되는 통신 규칙(Protocol)이다. 보통 클라이언트는 웹브라우저가, 서버는 웹 서버가 그 역할을 맡는다. 그렇다면 클라이언트와 서버가 주고 받는 데이터란 무엇인가? 명칭에서 알 수 있듯, 하이퍼텍스트(HyperText)다. 하이퍼텍스트란, 문서 안의 다른 문서나 리소스로 연결되는 링크를 포함할 수 있도록 하는 구조화된 텍스트를 의미한다.비선형적 구조 : 일반적인 책이나 문서는 순서에 따라 읽지만 하이퍼텍스트..

CS/네트워크 2025.10.24

이미지 경량화의 여정(2) - Jdeps와 Jlink

다른 도전2025.09.21 - [Container & Orchestration/Docker] - 이미지 경량화의 여정(1) - Distroless에 대하여 이미지 경량화의 여정(1) - Distroless에 대하여개요최근에 컨테이너를 공부하고 있다. 자주 다루는 기술을 단순히 "해봤다"에 그치지 않고 더 깊이 있게 이해하려 한다.오늘 다루는 주제인 컨테이너 이미지 경량화가 그 일환이다.컨테이너 이aitidev.tistory.com 지난 번에는 Distroless 이미지를 사용한 과정과 결과에 대해 포스팅했다.이번에는 또 다른 방법으로 이미지 최적화를 진행해볼 생각이다. 바로 jdeps와 jlink를 이용한 방법이다. Layered Jar를 적용한 기존 이미지에도 이를 사용할 수 있는지 알아보겠다. jd..

AWS 리전 장애, 그리고 벤더 종속

AWS US-EAST-1(버지니아)에서 장애 발생한국 시간으로 10월 20일 오후 4시 경, AWS에서 최초이자 가장 큰 리전인 US-EAST-1에서 장애가 발생했다.AWS에서 제공 중인 다양한 서비스가 먹통이 된 것이다. 이로 인해, 해당 리전에 실행 중인 각종 서비스가 사용불가 상태가 됐다. Canva, 퍼플렉시티, 스냅챗, 로블록스, Docker Hub 등등.현재는 거의 해결되었고 대부분의 서비스도 복구가 되었다. (AWS Config·Redshift·Connect 같은 서비스는 현재도 처리 중에 있다고 한다. 아마 곧 복구 될 것 같다.)하지만 AWS에서 공식적으로 원인을 발표하진 않았다. 일부는 급작스럽게 증가한 AI 컴퓨팅 리소스 때문이라고 한다. 일리 있지만 결국 내부자가 아니라면 절대 모..

Insight 2025.10.21

다중 서버 환경에서 세션 인증 기반 방식의 문제점?

생각거리다중 서버 환경에서 세션 기반 인증 방식을 사용하는 경우 발생할 수 있는 문제점은?요즘 면접에 대비한 다양한 질문을 받고 있다. 그 중에 깊게 생각해볼 질문만 정리해보려 한다. 위의 질문이 그것이다.여기서 다중 서버 환경이라고 한다면 MSA를 의미하는 것이라고 생각한다. 세션 기반 인증은 로그인을 진행할 때 클라이언트에게 받은 민감정보(아이디와 비밀번호)를 DB에 찾아 일치하는 정보가 있다면 세션을 발급한다. 이후에 클라이언트는 인증이 필요한 요청을 할 때마다 세션을 함께 보낸다.정리는 했다. 그러면 어떤 문제가 발생할 수 있을까? 한 10분 가량 쓰면서 생각해봤는데 두 가지 측면에서 나뉜다.성능잦은 세션 발급이 서버의 성능 저하를 유발하고 DB에 과부하를 줄 수 있다. 또한 그만큼 세션이 발급된..

Insight 2025.10.01

DHCP

무엇?오늘은 평소에 곧잘 WiFi를 연결하는 과정에서 사용되는 DHCP(Dynamic Host Configuration Protocol)에 대해서 공부한 내용을 정리하고자 한다.DHCP는 IP만이 아니라 서브넷(prefix), 기본 게이트웨이, DNS 서버까지, 네트워크 통신에 필요한 다른 구성 정보를 함께 자동으로 할당해주는 자동 설정 프로토콜이다.우리가 컴퓨터나 스마트폰으로 인터넷(네트워크)에 연결할 때마다 매번 IP주소를 할당하지 않아도 되는 이유가 바로 이 DHCP 덕분이다. 참고로 무선(Wi-Fi)뿐 아니라 유선 LAN도 똑같이 DHCP를 쓴다. 왜 필요한가?일반적으로 가정에서 쓰이는 공유기를 예로 들어보자.보통 DHCP 서버 역할을 일반 가정집에서는 공유기가 맡고 있다.만약 우리가 와이파이에 ..

CS/네트워크 2025.09.30

이미지 경량화의 여정(1) - Distroless에 대하여

개요최근에 컨테이너를 공부하고 있다. 자주 다루는 기술을 단순히 "해봤다"에 그치지 않고 더 깊이 있게 이해하려 한다.오늘 다루는 주제인 컨테이너 이미지 경량화가 그 일환이다.컨테이너 이미지는 가벼울수록 보안과 비용적인 측면에서 이점이 크다. 일단 가벼운 이미지는 차지하는 공간이 적다. 예를 들어 ECR에 이미지를 저장해둔다면 그만큼 저장에 따른 비용을 감소할 수 있다. 네트워크 전송 비용도 마찬가지다. 또한 작은 사이즈는 그만큼 공격할 수 있는 표면이 적다. 따라서 경량화는 꼭 필요한 엔지니어링이다.비용을 보면 이미지 사이즈가 크면 클수록 많은 요금이 부과됨을 알 수 있다.참고로 ECR의 비용 발생 요인은 저장과 인터넷으로의 송신량이다. 자세한 사항은 소개페이지에서 확인할 수 있다. 본론으로 돌아와서 ..

컨테이너 이미지 사이즈가 다르다?

의문 발생2025.07.29 - [Container & Orchestration/Docker] - Docker, 보안, 그리고 이미지 최적화 Docker, 보안, 그리고 이미지 최적화배경프로젝트 진행 중에 컨테이너 이미지 보안에 관련해서 지적을 받았기에 조치를 진행하고 있었다. 문득 이보다 더 효율적으로 만들 수 있지 않나 싶었다. 이미지 크기를 줄이고 캐시까지 적aitidev.tistory.com 이전 프로젝트에서 한 가지 실험을 위해 윈도우 컴퓨터에서 컨테이너 이미지를 빌드하였다.그런데 Mac(arm64)에서는 빌드 이후 이미지 사이즈가 445MB였는데 윈도우(amd64)에서 진행하니 289MB다..! 무시하기에는 너무 큰 차이기 때문에 어떤 게 실제 크기의 이미지인지, 왜 이런 일이 발생한 것인지 ..

Problems 2025.09.19

Kubernetes - HPA 오류 해결하는 여정

참고 - ArgoCD + HPA Metric이 필요하다No Metric API왜인지 HPA가 동작하기 않기에 kubectl get hpa 명령어로 확인해보았다. 그런데 unknown으로 잡히는 것 아닌가? 뭔가 문제인지 알아보니 HPA에서 Metric를 수집할 수 없기 때문에 동작하지 않는 것이었다. 지금껏 promethus로 필요한 메트릭을 수집하고 있다보니 metrics-server를 없다는 것을 이제 알았다.prometheus와 연동하게 할 수 있지만 시간이 없는 관계로 이를 생략하고 일단 metrics-server를 설치하였다.# 리포 추가/업데이트helm repo add metrics-server https://kubernetes-sigs.github.io/metrics-server/helm r..

Problems 2025.09.12

Terraform - State Lock 획득 실패 문제

배경EKS를 켜기 위해 Terraform에서 plan 명령어를 실행하였다. 처음 시도했을 때 내가 모르는 variables를 입력하라고 해서 강제로 종료하였다. 나중에 알고보니 AWS Secret manager에서 필요한 값이다. 팀원 분이 적용해주셨는데 바쁜 나머지 정보 공유가 되지 않은 것 같다.어쨌든 정체를 파악하고 2번째로 Terraform plan 명령어를 시도하니 다음과 같은 에러가 발생하였다.│ Error: Error acquiring the state lock│ │ Error message: operation error DynamoDB: PutItem, https response error StatusCode: 400, RequestID: PI3UVPVOJ9HUK4QKERQ1L9U7NFVV..

Problems 2025.09.11

Docker Container는 어떻게 격리성을 갖출까?

의문의 시작점2025.07.29 - [Container & Orchestration/Docker] - Docker, 보안, 그리고 이미지 최적화 Docker, 보안, 그리고 이미지 최적화배경프로젝트 진행 중에 컨테이너 이미지 보안에 관련해서 지적을 받았기에 조치를 진행하고 있었다. 문득 이보다 더 효율적으로 만들 수 있지 않나 싶었다. 이미지 크기를 줄이고 캐시까지 적aitidev.tistory.com이전에 작성한 글에서 언급하지 않았었다. Docker에 빌드 과정이나 캐싱에 대해 알아보는데(캐싱은 더 공부가 필요하다..) 점점 Docker의 동작 원리에 관심이 가기 시작했다. 문득 Docker가 어떻게 호스트와 격리된 공간, 컨테이너를 만드는지 궁금했다.호스트 OS 커널을 빌려 사용한다는 건 알겠는데 ..

반응형