DevOps/Infra

· DevOps/Infra
0. 들어가며현대적인 애플리케이션은 설정(configuration)과 코드의 분리를 기본 원칙으로 삼는다.애플리케이션 코드를 변경하지 않고도 환경에 따라 동적으로 설정을 바꾸고, 민감한 정보(비밀번호, API 키 등)는 안전하게 다뤄야 한다.쿠버네티스는 이를 위해 ConfigMap과 Secret이라는 리소스를 제공하며, 이 둘을 통해 설정의 외부화와 보안성을 동시에 달성할 수 있다. 1. 왜 설정 외부화가 필요한가?환경마다 달라지는 값들을 코드에 직접 넣는 건 유지보수와 보안 측면에서 매우 위험하다.로컬: DB_HOST=localhost운영: DB_HOST=prod-db.internal테스트: DB_HOST=mock-db모든 환경에 맞는 설정을 코드가 아닌 외부 리소스에 선언하고,애플리케이션이 이를 주입..
· DevOps/Infra
0. 들어가며쿠버네티스에서 "배포"란 단순히 컨테이너를 실행하는 걸 넘어서,서비스가 안정적으로 살아 있고, 필요 시 자동으로 복구되며, 트래픽 변화에 따라 유연하게 확장되는 것까지를 포함한다.그리고 이 전 과정을 책임지는 게 바로 워크로드 리소스(Workload Resource) 들이다. 1. Deployment - 애플리케이션 배포의 기본 단위Deployment는 쿠버네티스에서 가장 기본이자 핵심이 되는 워크로드 리소스다.단일 Pod을 수동으로 띄우는 것이 아니라,"이 애플리케이션이 몇 개의 인스턴스로, 어떤 방식으로 실행되어야 하는지"를 선언하고그 선언대로 유지되도록 컨트롤러가 자동으로 관리한다. 1.1 실무에서 Deployment가 중요한 이유배포/롤백을 안전하게 처리해야 한다.트래픽 증가에 따라 ..
· DevOps/Infra
0. 들어가며쿠버네티스의 모든 실행 단위는 결국 Pod에서 시작된다.Pod는 우리가 실행하는 컨테이너의 직접적인 실행 환경이자, 쿠버네티스에서 가장 기본적인 단위다.“쿠버네티스는 컨테이너를 관리한다”라고 말하지만, 정확히는 "컨테이너를 Pod이라는 추상화로 감싸서 관리한다"고 보는 게 맞다.이번 글에서는 Pod이란 무엇인지, 어떤 구조로 되어 있는지, 어떤 식으로 동작하는지 정리해본다. 1. Pod란 무엇인가Pod는 하나 이상의 컨테이너를 실행할 수 있는 논리적 단위로, 쿠버네티스에서 컨테이너가 배치되는 기본 단위다.간단히 말하면, Pod = 컨테이너 + 실행에 필요한 환경(네트워크, 볼륨, 설정 등)을 묶어놓은 상자라고 생각하면 된다.보통은 하나의 컨테이너를 하나의 Pod으로 실행하지만,여러 개의 컨테..
· DevOps/Infra
0. 들어가며쿠버네티스를 배우기 시작하면서 자주 마주하게 되는 키워드가 있다. 바로 선언형(Declarative)이다. 그리고 쿠버네티스의 모든 구성요소는 리소스(객체, Object)라는 개념으로 정의된다. 이 글에서는 쿠버네티스가 리소스를 어떻게 정의하고, 개발자들은 그것을 어떻게 선언적으로 작성해서 관리하는지를 정리해본다. 1. 선언형 vs 명령형쿠버네티스에서는 리소스를 두 가지 방식으로 관리할 수 있다.1.1 명령형 Imperative 방식kubectl run nginx --image=nginx 단일 명령어로 리소스를 생성하거나 제어빠르게 실험하거나 일회성으로 쓸 땐 편리함하지만 상태 관리가 어렵고 이력 추적이 불가능1.2 선언형 Declarative 방식# YAMLapiVersion: v1kind..
· DevOps/Infra
0. 들어가며쿠버네티스를 처음 접할 때 가장 먼저 마주하는 질문 중 하나는,“Kubernetes는 정확히 어떤 구조로 동작하는가?” 라는 것이다.쿠버네티스는 단일 실행 파일이 아니라, 여러 개의 컴포넌트들이 유기적으로 동작하는 분산 시스템이다.이러한 구조를 이해하면, 단순한 명령어 실행을 넘어서 클러스터를 어떻게 설계하고 운영해야 할지에 대한 감이 잡힌다. 1. Kubernetes 클러스터란?Kubernetes 클러스터는 하나 이상의 마스터 노드(Control Plane)와여러 개의 워커 노드(Worker Node)로 구성된다.마스터 노드는 클러스터의 두뇌 역할을 하며, 전반적인 상태를 감시하고 명령을 내린다.워커 노드는 실제로 사용자의 컨테이너(Pod)를 실행하는 작업 공간이다. 이 구조는 마치 본사(..
· DevOps/Infra
0. 들어가며쿠버네티스는 원래 현재 lg cns camp 교육 듣는 과정에 있었지만, 교육이 진행되면서 시간관계상 누락됐다.나는 최종프로젝트 팀으로 금융을 선택해서 쿠버네티스를 다루게 되었는데, 쿠버네티스에 대한 지식이 전무했기 때문에 멘토링을 통해 멘토님께 쿠버네티스 몇가지 배운 것들과 스스로 찾아보며 공부한 내용들을 개념, 기초 부터 큰 틀을 정리하고 디테일적인 부분 순으로 챕터별로 정리해서 블로그에 적어보려한다. 1. 쿠버네티스란 무엇인고?애플리케이션이 단순히 "잘 작동하는 코드"에서 끝나던 시대는 지났다.오늘날의 소프트웨어는 빠르게 배포되고, 안정적으로 운영되며, 수많은 사용자 요청을 효율적으로 처리할 수 있어야 한다.이러한 운영 환경의 변화 속에서 컨테이너(Container) 기술은 빠르게 대세..
chillmyh
'DevOps/Infra' 카테고리의 글 목록 (2 Page)