반응형

분류 전체보기 312

Helm values.schema.json 완벽 정리

Overview오늘은 Helm Chart 개발에서 유용한 기능인 `values.schema.json` 에 대해 알아보겠다. Helm은 기본적으로 `values.yaml` 파일을 통해 사용자 정의 값을 설정하게 되는데, 이 값의 유효성 검사를 자동화하고 싶을 때 `values.schema.json` 을 사용할 수 있다. Helm `values.schema.json` 은 Helm Chart에서 제공하는 값(`values.yaml`)의 스키마를 정의하는 표준 JSON Schema 파일이다. 이 스키마를 통해, 사용자가 제공하는 값이 올바른 형식과 타입을 가지고 있는지 사전에 검증할 수 있다.​     📅 관련 글Helm에 대한 내용들은 이전 포스팅을 참고하길 바란다.2022.09.06 - [Container..

배포하다 서비스 터진 적 있다면? 꼭 알아야 할 Kubernetes 전략 가이드

OverviewKubernetes Deployment Strategy는 새로운 버전의 애플리케이션을 서비스 중단 없이 안정적으로 배포하기 위한 핵심 메커니즘이다. 기본적으로 Kubernetes는 RollingUpdate 전략을 사용하여 점진적으로 Pod를 교체하지만, 사용자의 요구사항에 따라 다양한 방식의 전략을 선택하거나 커스터마이징할 수 있다. 대표적인 전략은 다음과 같다.RollingUpdate: 기존 Pod를 하나씩 교체하며 가용성을 유지 (기본값)Recreate: 모든 기존 Pod를 제거한 후 새 버전을 일괄 생성 (다운타임 발생)Blue/Green: 별도 환경을 구성하여 스위칭 기반 배포 (빠른 롤백 가능)Canary: 일부 사용자 대상으로 점진적 배포 후 트래픽 확장 (실사용 기반 검증)..

Zero Trust 보안 모델 – 더 이상 신뢰하지 말고, 검증하라

Overview제로 트러스트(Zero Trust)는 “기본적으로 누구도 신뢰하지 않는다”는 철학을 바탕으로 한 최신 보안 모델이다.과거에는 기업 네트워크 내부를 신뢰할 수 있는 안전한 영역으로 보고, 외부만 방어하면 된다는 ‘경계 기반 보안(perimeter security)’이 주류였습니다. 하지만 클라우드 확산, 재택근무 증가, BYOD(Bring Your Own Device) 환경, 그리고 고도화된 공격 기법들로 인해 이러한 모델은 더 이상 안전하지 않다. 제로 트러스트는 사용자가 어디에 있든, 어떤 디바이스를 쓰든 항상 검증하고 최소 권한만 부여하는 원칙을 따른다. 이는 단순한 기술 도입이 아닌, 조직 전체의 보안 전략과 문화의 변화를 요구한다. 제로 트러스트의 핵심 원칙기본적으로 아무..

Kubernetes Endpoint와 EndpointSlice 완벽 정리

Overview쿠버네티스에서 서비스는 클러스터 내의 여러 파드(Pod)로 트래픽을 라우팅하는 역할을 한다.이때 서비스가 실제 어떤 파드로 연결해야 할지를 저장하는 객체가 바로 `Endpoint` 와 `EndpointSlice` 이다.오늘은 이 두 객체의 차이점과 진화 과정, 그리고 실제 운영 환경에서 어떤 의미를 가지는지까지 깊이 있게 알아본다.   📅 관련 글2024.02.02 - [Container Orchestration/Kubernetes] - Kubernetes Network        Endpoint란?Endpoint는 서비스에 연결된 모든 파드의 IP와 포트 정보를 가진 객체이다. 쉽게 말해 "이 서비스가 어디로 트래픽을 보낼지"를 담고 있는 주소록이다.kind: EndpointsapiV..

Kubernetes에서 Source IP를 보존하는 방법

OverviewKubernetes 클러스터에서 외부로부터 들어오는 요청의 Source IP(클라이언트 IP) 를 정확히 파악하는 것은 로깅, 보안 분석, 감시(Audit), 접근 제어 등 다양한 운영 및 보안 목적에서 매우 중요하다.그러나 Kubernetes의 기본 네트워크 구성에서는 서비스 타입에 따라 요청이 kube-proxy, NAT, ingress proxy 등을 거치며 Source IP가 변경되거나 소실되는 경우가 발생한다. 이 글에서는 Kubernetes 환경에서 Source IP가 왜 사라지는지, 그리고 이를 보존하기 위해 어떤 설정을 적용해야 하는지를 Service 타입별, Ingress 방식별로 정리한다.또한 실습을 통해 실제 요청 시 IP가 어떻게 보이는지, 어떻게 보존할 수 있는지를 ..

OpenStack Trove란? (Database as a Service - DBaaS)

Overview오늘은 OpenStack Trove에 대해 알아보겠다. Trove는 OpenStack 환경에서 MySQL, PostgreSQL, MongoDB 등 다양한 데이터베이스를 서비스 형태(DBaaS)로 제공하는 컴포넌트이다. 사용자는 직접 데이터베이스를 설치·설정할 필요 없이, OpenStack CLI 또는 API로 필요한 DB 인스턴스를 바로 생성하고 관리할 수 있다.​     📅 관련 글2022.05.11 - [Openstack] - Openstack이란?2022.07.29 - [Openstack] - Openstack Nova란?2022.08.08 - [Openstack] - Openstack Neutron이란? (network)2022.08.08 - [Openstack] - Opensta..

Openstack 2025.05.15

리눅스 커널 파라미터(sysctl) 기초와 실전 적용

Overview리눅스 커널 파라미터(kernel parameters, sysctl 설정)는 운영체제의 동작을 런타임에 세부 조정할 수 있게 해주는 설정 값들이다. 이러한 파라미터들은 가상 파일시스템인 `/proc/sys` 경로를 통해 노출되며 (`/proc/sys/vm/swappiness` 등), `sysctl` 명령어를 사용하여 조회하거나 변경할 수 있다. 주요 활용 분야로는 성능 튜닝, 보안 강화, 네트워킹 설정 등이 있으며, 메모리 관리부터 네트워크 스택 동작, 시스템 보안 옵션까지 다양한 커널 동작을 제어한다. 예를 들어 메모리 관리 관련 파라미터를 조정해 성능을 개선하거나, 특정 네트워크 기능을 활성/비활성화하여 트래픽 처리나 보안을 최적화하고, 보안과 관련된 파라미터를 조절해 시스템을..

Linux 2025.05.15

ArgoCD Slack Notification 설정 방법

OverviewArgoCD는 GitOps 기반 Kubernetes 배포 자동화 도구로, 애플리케이션의 배포 상태를 지속적으로 모니터링하고 관리해준다.특히 배포 실패(Sync Failed), 애플리케이션 비정상(Health Degraded) 같은 상황에서는 빠르게 알람을 받을 수 있어야 장애 대응이 쉬워진다/오늘은 ArgoCD의 Notification 기능을 이용해, 특정 이벤트 발생 시 Slack 알람을 받는 방법을 정리해보겠다.     📅 관련 글2023.05.16 - [IaC/CI CD Tool] - ArgoCD란?2023.08.09 - [IaC/CI CD Tool] - ArgoCD 설치 AWS & GCP2023.10.02 - [IaC/CI CD Tool] - ArgoCD ApplicationSet..

IaC/CI CD Tool 2025.05.08

OpenStack Manila란? (Shared File System as a Service - SFaaS)

Overview오늘은 OpenStack Manila에 대해 알아보겠다.OpenStack Manila는 SFaaS (Shared File System as a Service) 기능을 제공하여, OpenStack 환경에서 NFS, CIFS 등 공유 파일 시스템을 쉽게 사용할 수 있도록 지원하는 서비스이다.    📅 관련 글2022.05.11 - [Openstack] - Openstack이란?2022.07.29 - [Openstack] - Openstack Nova란?2022.08.08 - [Openstack] - Openstack Neutron이란? (network)2022.08.08 - [Openstack] - Openstack 배치 서비스 Placement란?2022.08.08 - [Openstack]..

Openstack 2025.05.01

대량 데이터 처리와 데이터 아키텍처 설계(OLAP & OLTP)

Overview오늘날 대부분의 웹 서비스와 엔터프라이즈 시스템은 대량의 데이터를 다루게 된다. 단일 서버나 단순한 데이터베이스 구조로는 이러한 대규모 데이터를 효율적으로 처리하기 어렵기 때문에, 효과적인 데이터 아키텍처 설계가 필수적이다.  본 글에서는 대량 데이터 처리를 위한 기본 개념인 OLTP와 OLAP의 차이점을 살펴보고, 데이터베이스 샤딩(Sharding)과 파티셔닝(Partitioning) 전략에 대해 정리해보겠다.     📅 관련 글2024.04.25 - [Database] - DB 샤딩(Sharding): 개념 및 동작방식2023.04.21 - [Database] - DB 스키마란?(Schema)         1. OLTP vs. OLAP  OLTP (Online Transaction ..

Data Enginnering 2025.04.29
반응형