#devops
노트 53개
Frontend › Web
정적 사이트 생성기와 Jamstack정적 사이트 생성기(SSG)는 마크다운 콘텐츠와 템플릿을 빌드 때 HTML로 합쳐 CDN에 올린다. 서버·DB가 없어 빠르고 안전하며, Git push가 곧 배포다. 콘텐츠 사이트는 JS를 거의 보내지 않는 Eleventy·Hugo·Astro가 맞고, 상호작용이 많으면 Next.js 같은 프레임워크를 쓴다. WordPress에서 옮기는 흐름도 정리한다.
Frontend › Web
HTTPS 전환: 인증서 고르기부터 리다이렉트까지사이트를 HTTPS로 옮기는 실무 흐름. 인증서는 검증 수준(DV·OV·EV)과 도메인 범위(단일·다중·와일드카드)로 고르는데, 웹사이트에는 ACME로 자동 발급·갱신하는 DV가 표준이다. 설치 뒤 301 리다이렉트·혼합 콘텐츠 제거·HSTS·서버 설정 점검까지 해야 전환이 끝난다.
Backend › Architecture
대규모 서비스 기술 스택 해부Netflix·Uber·Reddit·Twitter 같은 대규모 서비스의 기술 스택을 계층별로 겹쳐 보고 반복되는 설계 선택을 정리했다. 데이터 성격별로 DB를 고르는 폴리글랏 저장, 캐시를 조회 가속 이상으로 쓰는 네 가지 방식, 비싼 작업을 큐로 미루고 CDC로 캐시를 맞추는 패턴, 표준화된 이벤트 플랫폼, 카나리 배포 중심의 CI/CD, 자동 버그 수정과 전용 하드웨어까지 다룬다.
Backend › Web Basics
웹 서버, WAS, 그리고 Nginx정적 자원을 내주는 웹 서버(Apache·Nginx)와 동적 처리를 맡는 WAS(Tomcat 등)의 역할 분담, 리버스 프록시·로드밸런싱, Nginx의 마스터-워커 구조와 겸하는 역할(웹 서버·프록시·캐시·TLS 종료), 그리고 Nginx의 location·rewrite·proxy_pass로 404를 다른 서버로 넘기는 설정.
Computer Science › Network
리눅스 네트워크 네임스페이스와 ip 명령리눅스에서 네트워크 설정을 다루는 ip 명령의 구조와 출력 읽는 법(인터페이스 플래그·MTU·scope·라우팅 테이블), 한 호스트 안에 격리된 네트워크 공간을 만드는 네트워크 네임스페이스와 veth 쌍, 이것이 컨테이너 네트워크의 바탕이 되는 원리를 정리한다.
Computer Science › Network
웹 PKI의 변천: 인증서 생태계는 왜 바뀌었나CA가 돈을 받고 몇 년짜리 인증서를 팔던 웹 PKI가 CA 침해·대량 감청·SHA-1 충돌·Heartbleed·폐기 실패를 거치며 바뀐 과정. 전방 비밀성, 인증서 투명성(CT), ACME 자동 발급, 브라우저 주도의 규칙 변경, 47일까지 줄어드는 유효 기간이 그 결과이고, 이제 인증서는 수명 주기 전체를 자동화해야 하는 소모품이다.
Computer Science › Network
SSH의 동작: 전송·인증·연결 계층SSH는 믿을 수 없는 네트워크 위에 암호화된 원격 접속 통로를 만든다. 전송 계층이 키 교환과 서버 호스트 키 확인으로 암호화 채널을 열고, 인증 계층이 공개키 등으로 사용자를 확인하며, 연결 계층이 그 하나의 통로를 셸·명령·포트 포워딩·파일 전송 채널로 나눠 쓴다.
Computer Science › Operating System
가상화와 하이퍼바이저하나의 물리 머신 위에 여러 운영체제를 돌리는 서버 가상화의 원리. 하이퍼바이저 Type 1·2 분류와 전가상화·반가상화·하드웨어 지원 가상화의 차이, 운영체제 수준 가상화(컨테이너), 샌드박스로서의 VM, 가상 네트워크 모드를 정리한다.
Computer Science › Operating System
데몬과 systemd터미널과 분리되어 백그라운드에서 도는 데몬의 개념, SysV 방식의 이중 fork 데몬화가 필요했던 이유, 그 일을 대신 해 주는 systemd의 유닛·서비스·타이머, cron을 대체하는 systemd 타이머와 journalctl 로그를 정리한다.
Computer Science › Operating System
리눅스 배포판과 패키지 관리리눅스 커널과 배포판의 관계, Debian·RHEL·Arch 계열의 차이와 패키지 관리자(apt·dnf·pacman), CentOS가 CentOS Stream으로 바뀐 과정과 Rocky Linux·AlmaLinux 같은 대안, 배포판·커널 버전 확인 방법을 정리한다.
Computer Science › Operating System
리눅스 서버 점검: 부하·메모리·자원 한도서버에 들어가면 보는 순서(부하 평균, 커널 로그, 디스크, TCP 상태, I/O), free의 available과 페이지 캐시·버퍼 캐시, 메모리가 바닥날 때 캐시 회수에서 OOM Killer까지 벌어지는 일, open files·max user processes 같은 ulimit 한도와 systemd 설정, 운영 보안 습관을 정리했다.
Computer Science › Operating System
리눅스 접근 제어: DAC, MAC, sudo리눅스가 누가 무엇을 할 수 있는지 정하는 방식. 소유자가 권한을 정하는 DAC(rwx·setuid), 커널 정책이 강제하는 MAC(AppArmor·SELinux), 관리자 권한을 빌려 쓰는 sudo와 sudoers 문법, 비밀번호 정책을 맡는 PAM을 정리한다.
Computer Science › Operating System
자주 쓰는 리눅스 명령어 지도리눅스 명령어를 파일·보기·텍스트 처리·프로세스·시스템 정보·사용자·네트워크·패키지 범주로 묶은 지도. grep·cut·sed·awk·sort·uniq를 파이프로 이어 로그를 훑는 법과, CPU 사용률이 100%일 때 의심할 원인과 확인 순서를 함께 정리한다.
DevOps
개발한 서비스를 안정적으로 빌드·배포·운영하기 위한 인프라와 자동화 지식 모음.
DevOps
12요소 앱클라우드에서 확장·배포·운영하기 쉬운 애플리케이션을 만드는 열두 가지 원칙(코드베이스, 의존성, 설정, 백엔드 서비스, 빌드·릴리스·실행, 프로세스, 포트 바인딩, 동시성, 폐기 가능성, 개발·운영 일치, 로그, 관리 프로세스)을 각 원칙이 막는 문제와 지금의 구현 방식으로 정리했다.
DevOps
고가용성과 재해 복구 설계데이터센터 하나가 통째로 사라져도 서비스를 이어 가기 위한 설계 원칙. RTO·RPO로 목표를 정하고, 백업·파일럿 라이트·웜 스탠바이·액티브-액티브 중 전략을 고르며, 데이터·플랫폼·운영 도구까지 모든 계층을 여러 데이터센터에 나누고, 전환을 정기 훈련으로 검증한다. 복구에 쓰는 운영 도구가 가장 자주 다중화에서 빠진다.
DevOps
관측 가능성: 로그, 트레이스, 메트릭관측 가능성의 세 기둥인 로그(개별 사건), 트레이스(요청 하나의 경로), 메트릭(집계 가능한 수치)의 차이와 수집 구조, OpenTelemetry로 한 표준에 모으는 방법, 메트릭 수집의 풀·푸시 모델과 서비스 디스커버리, 쓰기가 많고 읽기가 몰리는 메트릭에 범용 DB 대신 시계열 DB를 쓰는 이유를 정리한다.
DevOps
내구성 워크플로와 Temporal: 스케줄 배치를 코드로 짜고 상태를 복원하기Jenkins 류로 스케줄 배치를 운영할 때 생기는 디스크 포화·플러그인 충돌·알림 누락 문제를, 실행 상태를 DB에 저장해 재시작에도 이어 실행하는 내구성 워크플로 엔진 Temporal로 옮기는 방식을 정리했다. Workflow·Activity·서버·워커의 구조, cron·Jenkins와의 역할 차이, 중복 실행 방지와 노드 축소 대응 같은 운영 주의점까지 다룬다.
DevOps
배포 전략: 롤링, 블루-그린, 카나리, 섀도, 피처 토글새 버전을 운영에 올리는 방식을 다운타임·롤백 속도·비용·노출 범위로 비교한다. 한 번에 바꾸는 빅뱅(Recreate), 하나씩 바꾸는 롤링, 환경을 통째로 전환하는 블루-그린, 일부 사용자에게 먼저 여는 카나리, 트래픽 사본으로 검증하는 섀도, 배포와 출시를 떼어 내는 피처 토글과 A/B 테스트를 다룬다.
DevOps
서버 장애 진단 패턴서버 장애를 추측이 아니라 계측으로 좁혀 가는 방법과, 자주 반복되는 장애 유형의 증상·원인·해결을 모았다. load average와 CPU·I/O 지표 읽기, 힙 덤프로 메모리 누수 찾기, DB 커넥션 실패와 DNS 역조회, 인덱스를 못 타는 쿼리와 MVCC 죽은 튜플, 세션이 Redis 메모리를 고갈시키는 경우, 선착순 카운터 병목, 피크 트래픽 대비와 사후 분석까지 다룬다.
DevOps
서버리스 아키텍처서버를 예약하지 않고 이벤트가 올 때만 코드를 실행해 실행한 만큼 내는 방식이다. IaaS·PaaS·컨테이너와의 차이, FaaS와 BaaS, 함수를 부르는 네 가지 경로, 함수를 나누는 네 가지 코드 구성(함수당 작업 하나·서비스·모놀리식·그래프), 콜드 스타트·실행 시간·연결 수·종속 같은 제약과 맞는 곳을 정리했다.
DevOps
서비스 운영 준비 체크리스트서버 애플리케이션을 프로덕션에 올리기 전에 확인할 최소 기준을 회복력, 수평 확장, 무중단 배포, 프로세스 감독, 로그, 알림과 헬스 체크, 지표, 고가용성, 부하·장애 테스트, 백업 복구, 보안, 법 열두 분야로 나누고 각 항목을 자세한 노트로 잇는다. 오래된 보안 헤더(X-XSS-Protection, HPKP)처럼 지금은 따르지 않는 항목도 정리한다.
DevOps
스타트업 인프라 선택 원칙작은 팀이 인프라를 고를 때의 판단 기준. 데이터 계층에는 관리형 서비스에 돈을 쓰고, 단순한 도구를 고르고, 관리형 편의 기능은 커스터마이즈 여지를 먼저 보고, 관측 표준(OpenTelemetry)·IdP·의존성 업데이트·비용 추적처럼 늦을수록 비싸지는 것은 처음부터 들인다. 가변 인프라·비대한 이미지·공유 DB 같은 클라우드 네이티브 안티패턴도 함께 정리한다.
DevOps
장애 대응과 포스트모템장애는 탐지 → 전파 → 해결 → 보고 → 회고의 다섯 단계로 다룬다. 해결은 확산을 막는 임시 조치(롤백·재기동·증설·기능 스위치)가 먼저고, 보고서와 비난 없는 포스트모템으로 재발 방지·탐지·처리 개선 과제를 검증 가능한 액션 아이템으로 남긴다.
DevOps
쿠버네티스 구조와 핵심 개념쿠버네티스는 원하는 상태를 선언하면 컨트롤 플레인이 노드의 컨테이너를 그 상태로 계속 맞추는 오케스트레이터다. 컨트롤 플레인(API 서버·etcd·스케줄러·컨트롤러 매니저)과 노드(kubelet·kube-proxy·런타임)의 역할, 파드와 워크로드 리소스, 서비스 네 가지 유형, 쿠버네티스 디자인 패턴, 자주 쓰는 kubectl 명령, 생태계 도구 지도를 정리한다.
DevOps
쿠버네티스 네트워킹: 서비스, DNS, Ingress, NetworkPolicy파드마다 IP를 주는 네트워크 모델과 CNI, 서비스의 가상 IP가 kube-proxy(iptables·nftables·IPVS) 규칙으로 파드에 닿는 원리, 서비스 유형별 세부 동작, CoreDNS와 이름 해석, 외부로 나가는 트래픽, Ingress·Gateway API, NetworkPolicy, 서비스 메시(Istio·Linkerd), 연결·DNS 문제 진단을 정리한다.
DevOps
쿠버네티스 보안: 인증, RBAC, 서비스 계정, 파드 보안쿠버네티스 API에 접근하는 주체를 확인하는 인증(X.509·토큰·OIDC)과 kubeconfig 구조, 권한을 주는 RBAC(Role·ClusterRole·바인딩, verb)와 최소 권한 적용법, 파드가 API를 부르는 서비스 계정과 토큰, 그리고 컨테이너 권한을 줄이는 Pod Security Standards·Pod Security Admission·securityContext를 정리한다.
DevOps
쿠버네티스 스케줄링과 자원 관리, 오토스케일링파드를 어느 노드에 둘지 정하는 nodeSelector·노드 어피니티·파드 (안티)어피니티·토폴로지 분산·테인트와 톨러레이션, CPU·메모리 requests와 limits의 의미와 초과 시 동작, QoS 클래스, LimitRange·ResourceQuota·PriorityClass, 그리고 HPA·VPA·Cluster Autoscaler의 동작 원리와 함께 쓸 때의 주의점을 정리한다.
DevOps
쿠버네티스 운영: Helm, 업그레이드, 관측, 장애 진단, 오퍼레이터, GitOps쿠버네티스 클러스터와 앱을 운영하는 데 필요한 것들: Helm 차트·릴리스·훅, 버전 업그레이드 순서와 etcd 백업·복구, cordon·drain과 PodDisruptionBudget, 로그 구조와 kubectl logs, metrics-server와 Prometheus 모니터링, CrashLoopBackOff·ImagePullBackOff 진단과 kubectl debug, CRD와 오퍼레이터 패턴, Argo CD·Flux GitOps, 멀티 클러스터 관리.
DevOps
쿠버네티스 워크로드와 파드 생명주기파드의 단계(Pending·Running·Succeeded·Failed·Unknown)와 컨테이너 상태, 재시작 정책, 사이드카·앰버서더·어댑터·초기화 컨테이너 패턴, liveness·readiness·startup 프로브, 그리고 Deployment·ReplicaSet·StatefulSet·DaemonSet·Job·CronJob이 파드를 관리하는 방식과 주요 설정(maxSurge·maxUnavailable, 순차 배포, completions·parallelism, concurrencyPolicy)을 정리한다.
DevOps
쿠버네티스 위 웹 서비스의 요청 경로와 구성 요소브라우저 요청이 로드 밸런서, 게이트웨이, 서비스 메시를 거쳐 파드의 컨테이너에 닿고, 그 트래픽이 Prometheus·Grafana로 관측되기까지의 경로와 각 구성 요소(Terraform, Kubernetes, Helm, Istio, API 게이트웨이)의 역할을 프론트엔드 개발자 관점에서 정리했다.
DevOps
쿠버네티스 저장소와 설정: PV·PVC, ConfigMap, Secret파드가 죽어도 남는 저장소를 요청하는 PV·PVC와 접근 모드·회수 정책, StorageClass의 동적 프로비저닝과 CSI, emptyDir·hostPath 같은 볼륨 유형, 그리고 설정과 비밀 값을 이미지 밖에서 넣는 ConfigMap·Secret의 주입 방식, Secret의 실제 보안 수준, 외부 비밀 저장소 연동, 변경이 파드에 반영되지 않는 이유와 해결법을 정리한다.
DevOps
클라우드 기초와 AWS: 서비스 모델, 인프라, 컴퓨팅, 보안 그룹온프레미스와 클라우드의 차이, NIST가 정의한 다섯 가지 특징과 배포 모델, 제공자가 어디까지 관리하느냐로 나뉘는 IaaS·PaaS·SaaS와 공동 책임 모델, 클라우드를 받치는 가상화·네트워크 가상화(SDN·NFV), 리전·가용 영역·엣지 로케이션으로 이루어진 AWS 글로벌 인프라, EC2의 인스턴스 유형과 요금 모델, 관리형 서비스(ECS·EKS·Lambda), 보안 그룹으로 RDS 접속을 여는 법과 배스천 SSH 터널, 콘솔·CLI·SDK와 코드형 인프라.
DevOps
클라우드 네이티브와 코드형 인프라클라우드 네이티브를 개발 프로세스·애플리케이션 구조·배포 단위·인프라의 네 축으로 정의하고, 가상화에서 IaaS·PaaS·컨테이너로 이어진 클라우드의 변천, 전환 로드맵(CNCF 랜드스케이프의 여섯 영역), 전통적 구성 관리와 코드형 인프라(IaC)·GitOps의 차이와 대표 도구를 정리했다.
DevOps
클라우드 비용 최적화와 숨은 비용클라우드 비용을 줄이는 여섯 가지 방법(사용량 줄이기, 유휴 자원 정리, 적정 크기, 비업무 시간 종료, 약정 할인과 스팟, 데이터 전송 최적화)과, 청구서에서 예상 밖으로 커지는 숨은 비용(무료 사용량 경계, 공인 IPv4, 유휴 로드 밸런서, 붙지 않은 디스크와 남은 스냅숏, 객체 스토리지 요청 요금, 미완료 멀티파트 업로드, 송신 데이터 전송)을 정리했다.
DevOps
클라우드 서비스 지도: AWS·Azure·GCP 대응표세 주요 클라우드의 서비스를 컴퓨팅·스토리지·데이터베이스·네트워크·메시징·보안·관측·IaC 범주로 나란히 놓은 대응표, 처음 익힐 AWS 핵심 서비스와 학습 순서, 계층·범위로 고르는 클라우드 로드 밸런서, 수집에서 시각화까지의 빅데이터 파이프라인 단계와 처리 엔진(Hadoop·Spark), 클라우드 모니터링이 갖춰야 할 기능을 정리했다.
DevOps
클라우드 SLA·계약과 규제: 품질 지표, 도입 판단, 계약, 클라우드컴퓨팅법클라우드 서비스의 품질을 가용성·응답성·확장성으로 재는 법과 SLA의 가용률·서비스 크레딧, 어떤 시스템을 먼저 클라우드로 옮길지 고르는 기준과 중요도 평가, 계약 전에 준비할 업무 연속성 계획·출구 전략·보안 통제, 계약서에 꼭 넣을 항목, 그리고 「클라우드컴퓨팅 발전 및 이용자 보호에 관한 법률」이 정한 이용자 권리(사고 통지, 저장 국가 공개, 반환·파기, 임치, 입증 책임 전환)와 공공·금융·의료·교육 분야의 클라우드 규정을 정리했다.
DevOps
플랫폼 엔지니어링: 내부 개발자 플랫폼과 골든 패스플랫폼 엔지니어링은 개발팀마다 반복되는 인프라·배포·보안 작업을 내부 개발자 플랫폼(IDP)이라는 내부 제품으로 묶어 셀프서비스로 제공하는 일이다. 개발자를 고객으로 보는 제품 관점, IDP의 다섯 구성 요소와 플랫폼 오케스트레이터, 포털과 플랫폼의 차이, 골든 패스(포장된 길)의 네 가지 성질과 설계법, 최소 실행 가능 플랫폼에서 시작해 키우는 방식을 정리한다.
DevOps
AWS Lambda의 내부 구조서버리스 함수 서비스 Lambda가 요청을 처리하는 과정을 동기·비동기 호출 경로, 실행 환경을 배정하는 Assignment 서비스와 Placement 서비스, 함수마다 격리하는 Firecracker 마이크로VM, 코드·이미지를 청크로 나눠 공유하는 저장 계층, 콜드 스타트를 줄이는 SnapStart로 나눠 정리했다.
DevOps
ChatOps: 채팅에서 운영하기ChatOps는 배포·조회·알림·장애 대응 같은 운영 작업을 팀 채팅방에서 봇 명령으로 실행하는 협업 방식이다. 누가 무엇을 했는지 모두에게 보이고(투명성), 보면서 배우고(온보딩), 손으로 치던 위험한 명령이 검증된 스크립트가 된다. 구성 요소, 도입 단계, 권한·비밀·알림 피로 같은 위험을 정리한다.
DevOps
CI/CD코드 변경을 자동으로 빌드·테스트하고(CI) 배포까지 이어 주는(CD) 파이프라인의 개념과 단계, dev·QA·UAT·운영으로 산출물을 승격하는 흐름, 파이프라인 설계 시 고려할 것, GitHub Actions 예시와 CI 비밀 값 관리, Docker 이미지 빌드·태그 전략·층 캐시·보안 스캔 게이트·Testcontainers.
DevOps
DevOps, SRE, 플랫폼 엔지니어링, NoOps와 클라우드 거버넌스개발과 운영을 잇는 방식의 갈래를 비교한다. DevOps는 협업 문화와 자동화, SRE는 SLO·에러 버짓으로 신뢰성을 공학 문제로 다루는 실천, 플랫폼 엔지니어링은 개발자가 스스로 쓰는 내부 플랫폼을 제품으로 만드는 일, NoOps는 서버리스로 운영 작업을 클라우드에 넘기는 지향이다. 클라우드를 들인 조직의 운영 모델(중앙 집중·분산·공유 서비스·CCoE), 통제가 아니라 가드레일로서의 거버넌스와 문화 전환, 테스트가 개발자 몫으로 옮겨 간 흐름과 회사 규모별 배포·품질 도구의 변화도 함께 다룬다.
DevOps
DevSecOps와 클라우드 보안: 개발 흐름에 보안 넣기, 위협과 대응DevSecOps는 보안 검사를 출시 직전의 관문이 아니라 개발·빌드·배포·운영 전 과정에 자동화해 넣는 방식이다. 위협 모델링, 코드·의존성·이미지·IaC 자동 검사, 비밀 관리, 지속 모니터링과 취약점 관리가 핵심이고, 특히 SSH 키·토큰·인증서·자격 증명 같은 비밀은 저장소에 넣지 않고 비밀 관리 도구로 짧게 발급해 쓴다. 클라우드에서 생기는 관리적 위협(남용, 내부자, 섀도 IT, APT)과 기술적 위협(API, 가상화 탈출, 계정 탈취, 유출·손실, DoS), CVE·CCE 점검과 제로데이·원데이·올드데이, 확장성을 기준으로 한 보안 솔루션 배치도 다룬다.
DevOps
Docker 네트워크와 볼륨Docker 네트워크 드라이버(bridge·host·none·overlay·macvlan)의 동작, bridge 네트워크의 veth·NAT 원리, 사용자 정의 네트워크와 내장 DNS, 포트 공개(-p)와 EXPOSE의 차이, 컨테이너 간 통신 제한, 그리고 볼륨·바인드 마운트·tmpfs의 차이와 볼륨 수명·드라이버·읽기 전용 마운트, 이미지 층을 저장하는 스토리지 드라이버를 정리한다.
DevOps
Docker 컨테이너 운영: 자원 제한, 보안, 로그, 장애 진단cgroups로 CPU·메모리·I/O·PID를 제한하는 옵션과 CPU 스로틀링·OOM의 원리, 컨테이너 격리를 보강하는 비root 실행·rootless 모드·capability·seccomp·AppArmor·SELinux, Docker 소켓과 Docker in Docker의 위험, 비밀 값 전달과 이미지 스캔·서명, 로깅 드라이버와 로그 회전, docker stats·events·Prometheus 모니터링, 종료 코드·재시작 정책·exec·diff·cp·prune을 이용한 장애 진단을 정리한다.
DevOps
Docker Compose: 여러 컨테이너 묶어 띄우기compose.yaml 하나로 웹 서버·애플리케이션·DB 컨테이너를 정의하고 함께 띄우는 Docker Compose의 최상위 구성, 서비스 주요 키, 환경 변수 관리(.env·environment·env_file 우선순위), depends_on과 healthcheck로 시작 순서 제어, 네트워크 분리, 볼륨 공유, 여러 파일 겹치기, 스케일링, secrets, 점검 명령.
DevOps
Dockerfile 작성과 컨테이너의 PID 1이미지와 컨테이너의 관계와 층 구조, Dockerfile 명령(RUN·CMD·ENTRYPOINT 조합, COPY·ADD, ARG·ENV, WORKDIR, USER, HEALTHCHECK), 베이스 이미지(Debian·Alpine·distroless·scratch) 고르기, 컨테이너가 바로 꺼지는 이유와 PID 1·좀비 프로세스 문제(tini·--init), 디버깅 요령, 멀티 스테이지 빌드·빌드 캐시·BuildKit, 태그 전략·레지스트리·댕글링 이미지·save·load 같은 이미지 관리.
DevOps
Packer와 머신 이미지 굽기Packer는 템플릿 하나로 AMI·GCE 이미지·VM·컨테이너 이미지를 자동으로 만드는 HashiCorp의 이미지 빌더다. 소스(빌더)로 임시 머신을 띄우고 프로비저너로 설정한 뒤 스냅숏을 떠서 후처리기로 넘기는 흐름, HCL2 템플릿과 packer init·build, Dockerfile과의 차이, 골든 이미지와 불변 인프라에서의 쓰임을 정리한다.
DevOps
S3·CloudFront로 정적 사이트 배포하기빌드한 SPA·정적 사이트를 AWS에 올리는 표준 구성. 비공개 S3 버킷을 원본으로 두고 CloudFront가 OAC로만 읽어 HTTPS·압축·엣지 캐시를 맡으며, ACM 인증서(us-east-1)와 Route 53 별칭 레코드로 커스텀 도메인을 붙인다. SPA 라우팅 처리, 캐시 헤더와 무효화, GitHub Actions에서 OIDC로 배포하는 워크플로까지 정리한다.
DevOps
Terraform: 코드로 클라우드 인프라 만들기Terraform은 원하는 인프라를 HCL 코드로 선언하면, 상태 파일과 비교한 계획(plan)을 보여 주고 승인 뒤 제공자 API를 호출해 실제 자원을 만든다(apply). write → init → plan → apply 흐름, HCL 파일 규칙과 데이터 소스, import·graph·destroy 명령, 상태 파일과 원격 백엔드·잠금, 모듈, 드리프트와 불변 인프라, CI에서의 운영 방식을 정리한다.
DevOps
VM과 컨테이너OS 전체를 가상화하는 VM과 애플리케이션 단위로 격리하는 Docker 컨테이너의 차이, Docker의 핵심 개념과 클라이언트·데몬·레지스트리 구조, dockerd·containerd·runc 런타임 계층과 OCI 표준, Docker와 쿠버네티스의 관계, 컨테이너가 많아질 때 필요한 오케스트레이션·오토 스케일링(Swarm·Kubernetes·ECS), MSA에서의 장단점을 다룬다.
AI & Data
평가 주도 개발(EDD): AI 기능을 테스트하며 다듬기평가 주도 개발은 TDD를 AI의 불확실성에 맞게 바꾼 개발 방식이다. 문제를 API 계약처럼 정의하고, 제로샷 기준선을 만들고, 결정적 검사·사람·LLM 심판을 섞은 평가 체계를 세운 뒤, 작고 겨냥한 수정으로 프롬프트를 개선한다. 프롬프트·지표·테스트 입력은 코드처럼 버전 관리하고 CI에서 회귀를 막는다.
AI & Data
MLOps: 머신러닝을 운영 환경에서 굴리기MLOps는 머신러닝(ML)과 운영(Ops)을 합친 말로, 모델을 서비스에 올리고 데이터·모델 버전 관리, 모니터링, 재학습까지 계속 돌리는 일이다. 생명 주기별 구성 요소와 도구, 프로젝트를 고르고 지표·베이스라인을 정하는 법, Kubeflow Pipelines로 본 학습·배포 파이프라인, ML 시스템에 필요한 테스트, 피처 테이블과 학습·서빙 불일치를 막는 법, 파이프라인을 먼저 잇고 모델은 나중에 키우는 원칙을 정리했다.