
Goroutine이란?
동시성과 병렬성은 자주 같은 말처럼 쓰이지만 서로 다른 개념입니다. 코어가 하나뿐인 기계에서도 동시성은 성립하고, 병렬성은 코어가 여럿이어야 성립합니다. Go는 goroutine과 채널로 동시성을 언어 차원에서 다루고, 실제로 몇 개의 코어에 펼칠지는 런타임이 결정합니다. 둘의 차이와 runtime.GOMAXPROCS(), sync.WaitGroup이...

동시성과 병렬성은 자주 같은 말처럼 쓰이지만 서로 다른 개념입니다. 코어가 하나뿐인 기계에서도 동시성은 성립하고, 병렬성은 코어가 여럿이어야 성립합니다. Go는 goroutine과 채널로 동시성을 언어 차원에서 다루고, 실제로 몇 개의 코어에 펼칠지는 런타임이 결정합니다. 둘의 차이와 runtime.GOMAXPROCS(), sync.WaitGroup이...

Kubernetes 클러스터는 컨테이너를 실행하는 머신의 묶음이 아니라, 선언한 상태를 실제 상태에 계속 맞추는 분산 제어 시스템입니다. 사용자는 API에 원하는 상태를 기록하고, 컨트롤 플레인과 노드 구성 요소는 그 상태를 관찰하고 조정합니다. 이 관점을 잡으면 Pod가 어느 경로로 생성되고, 장애 때 무엇을 먼저 확인할지 이해하기 쉬워집니다. ...
TCP와 UDP는 IP 위에서 응용 프로그램의 데이터를 전달하는 전송 계층 프로토콜입니다. 둘 중 하나가 항상 더 빠르거나 더 낫다는 뜻은 아닙니다. 필요한 전달 보장, 지연 시간, 메시지 경계, 혼잡 제어 책임을 기준으로 선택해야 합니다. TL;DR TCP는 연결 지향적인 신뢰성 있는 순서 보장 바이트 스트림을 제공하며, 손실을 ...

1. LVM(Logical Volume Manager)의 개념 LVM이란 리눅스와 유닉스 기반 운영체제에서 Logical Volume을 효율적이고 유연하게 관리하기 위한 커널의 한 부분이자 프로그램입니다. LVM은 물리적인 디스크를 논리적인 볼륨으로 추상화하여 유연하게 디스크 공간을 활용할 수 있게 해줍니다. -> LV2를 사용 중 디스크 용...

만약 퇴근 1시간 전, 사무실 컴퓨터 40대에 OS를 설치해야 하는데 USB가 1개뿐이라면? 멘붕이 올 수 있다. 이때 사용할 수 있는 기술이 바로 PXE(Pre-boot eXecution Environment)입니다. 실습 환경 => CentOS, VMware 1. PXE의 개념 기본적으로 서버나 PC를 켜면, 부팅 우선순위에 따라 ...

DNS(Domain Name System)는 도메인 이름을 IP 주소를 포함한 DNS resource record로 조회하는 계층형 분산 데이터베이스입니다. 브라우저가 이름을 IP 주소로 “바꾼다”는 설명만으로는 캐시, 위임, authoritative server의 역할을 설명할 수 없습니다. TL;DR authoritative n...
같은 서브넷 안의 장비와 통신할 때는 상대 장비로 프레임을 직접 보낼 수 있습니다. 그러나 목적지 IP 주소가 로컬 네트워크 밖에 있으면 호스트는 패킷을 다음 네트워크로 전달할 라우터를 찾아야 합니다. 이 글은 gateway라는 넓은 용어와 일상적으로 가장 많이 만나는 default gateway의 역할을 분리해 설명합니다. TL;DR ...

NAT(Network Address Translation)는 경계 장비가 패킷 헤더의 주소를 변환하고, 필요하면 전송 계층 식별자까지 바꾸어 서로 다른 주소 영역의 통신을 중개하는 기술입니다. 가정용 공유기의 인터넷 접속에서 흔히 보는 형태는 NAT 중에서도 PAT 또는 NAPT입니다. TL;DR Basic NAT는 IP 주소만 변...

라우팅은 목적지 IP prefix에 맞는 다음 홉을 선택해 패킷을 전달하는 과정입니다. 라우팅 프로토콜은 이 선택에 필요한 경로 정보를 라우터 사이에서 교환하는 규칙이며, RIP와 OSPF는 하나의 자율 시스템 안에서 사용하는 IGP입니다. TL;DR RIP는 이웃에게 목적지까지의 거리 벡터를 알리고, 기본 metric으로 hop ...

네트워크의 모든 컴퓨터 또는 장치가 통신을 하기 위해서는 IP 주소를 가져야 합니다. 1. DHCP란? DHCP(Dynamic Host Configuration Protocol) => DHCP란 Client가 DHCP Server로부터 IP, Subnet Mask, Default Gateway를 동적으로 부여받는 프로토콜입니다. ...