전가상화 & 반가상화 개념
Full virtualization은 emulate하고 para virtualization은 guest가 협력합니다 수정하지 않은 guest는 trap과 emulate를 거치고, 수정한 guest는 hypercall로 직접 요청합니다. Full virtualization Un...
Full virtualization은 emulate하고 para virtualization은 guest가 협력합니다 수정하지 않은 guest는 trap과 emulate를 거치고, 수정한 guest는 hypercall로 직접 요청합니다. Full virtualization Un...

Type 1은 hardware 위에, Type 2는 host OS 위에 놓입니다 Type 2에만 host operating system layer가 추가되어 편의성을 얻는 대신 hardware 접근 경로가 길어집니다. Type 1 (bare metal) Virtual mach...
Hypervisor가 하나의 physical machine을 여러 VM으로 나눕니다 각 guest가 자신의 kernel을 가지므로 virtual machine은 container와 다른 격리 단위를 제공합니다. Application guest operating system 안에서 실행됩니다. ...
Stateless filter는 return rule이 필요하고 Stateful filter는 flow를 기억합니다 Connection tracking이 있으면 첫 packet의 허용 결과를 return path에 재사용할 수 있어 두 번째 rule이 줄어듭니다. Stateless path ...

제로부터 시작하는 백엔드 프로그래밍 과거에는 Java의 Spring Boot를 사용했고, Docker와 Kubernetes를 배우게 되면서 Go 언어를 알게 되었고 흥미가 생겨 해당 언어를 공부하고 최근 Gin-Gonic 프레임워크를 사용해서 백엔드 프로젝트를 수행했던 경험이 있습니다. 최근 백악관에서 C/C++ 사용을 자제하는 뉴스를 접하고 러스...

Go scheduler는 많은 goroutine을 적은 OS thread에 배치합니다 blocking syscall로 한 thread가 park되면 scheduler가 남은 goroutine을 다른 thread에 배치해 실행을 이어갑니다. Go program go 키워드로 goroutine을 계속 생성합니다. ...

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를 켜면, 부팅 우선순위에 따라 ...