오늘도 기록하는 중 GitHub

kubernetes 9

Kubernetes - Federation

🌐 Kubernetes Federation🎯 Federation?Kubernetes Federation은 단일 클러스터가 아닌 분산된 다중 클러스터 환경을 단일 제어 평면에서 관리하기 위한 표준화된 솔루션이다. 이는 여러 개의 Kubernetes 클러스터를 중앙에서 관리하고 최적화하는 기술로, 하이브리드 클라우드, 멀티 클라우드, 지리적으로 분산된 데이터 센터 운영 등에 활용되어 서비스 확장성과 가용성을 극대화할 수 있다.Federation은 두 가지 주요 버전으로 발전해왔다. 초기 Federation v1은 클러스터 연합을 위한 기본 기능을 제공했지만, Federation v2는 Kubernetes Operator를 활용한 CRD(Custom Resource Definitions) 기반의 개선된 아..

Kubenetes 2025.05.23

Kubernetes - 서비스 카탈로그와 서비스 브로커

☁️ 서비스 카탈로그와 서비스 브로커?클라우드 네이티브 환경이 발전하면서 다양한 서비스의 프로비저닝, 관리, 연결은 점점 더 복잡해지고 있다. 이러한 복잡성을 해결하고 개발 생산성을 향상시키기 위해 서비스 카탈로그와 서비스 브로커라는 개념이 등장했으며, 이들은 Open Service Broker API (OSB API)라는 표준을 통해 상호작용한다. 이번에는 핵심 개념과 구현 방안에 대해서 다뤄보고자 한다.📜 Open Service Broker API - 클라우드 서비스 자동화의 표준 프로토콜OSB APIOpen Service Broker API (OSB API)는 클라우드 플랫폼(예: 쿠버네티스, Cloud Foundry)과 외부 서비스 제공자 간의 통신을 위한 표준 규약이다. 마치 레스토랑에서 웨이..

Kubenetes 2025.05.22

Kubernetes - 멀티 테넌시 환경 구축

🔄 쿠버네티스 멀티 테넌시 환경 구축이번에 실습을 겸해 쿠버네티스의 멀티 테넌시 환경을 구축하게 됐다. 테넌시와 테넌트가 무엇인지, 어떻게 멀티 테넌시 환경을 구축할 수 있는지에 대해서 다뤄보고자 한다!🤔 멀티 테넌시란 무엇인가?멀티 테넌시(Multi-tenancy)는 하나의 소프트웨어 인스턴스가 여러 사용자 그룹, 즉 테넌트(tenant)에게 서비스를 제공하도록 설계된 소프트웨어 아키텍처다. 쿠버네티스 컨텍스트에서는 하나의 쿠버네티스 클러스터를 여러 테넌트가 공유하는 형태를 의미한다.테넌트의 정의테넌트는 쿠버네티스에서 다양하게 정의될 수 있다. 한 조직 내 여러 팀, 다수의 고객사, 또는 독립적인 사용자 그룹을 의미할 수 있다. 예를 들면 다음과 같다.다중 팀 사용 환경 조직 내 여러 팀이 클러스터..

Kubenetes 2025.05.21

Istio란?

🚀 서비스 메시이번엔 쿠버네티스를 다룰 때 자주 나오는 기술인 Istio에 대해 알아보려고 한다! 설치는 나중에 쿠버네티스를 본격적으로 다뤄볼 때 언급하고 오늘은 이게 무엇인지에 대해서만 작성하려고 한다.🌐 서비스 메시란 무엇인가?서비스 메시는 마이크로서비스 아키텍처에서 서비스 간 통신을 관리하고 제어하는 인프라 레이어를 의미한다. 현대적인 클라우드 네이티브 애플리케이션이 복잡해지면서 서비스 간 통신 문제를 해결하기 위한 방법으로 등장했다. 서비스 메시는 서비스 간 통신에 대한 네트워킹, 보안, 관측 기능을 애플리케이션 코드와 분리하여 제공한다.서비스의 수가 증가하면 잠재적 통신 경로의 수도 기하급수적으로 증가한다. 예를 들어 두 서비스에는 오직 두 개의 통신 경로만 있지만, 10개의 서비스에는 90..

Kubenetes 2025.05.19

Kubernetes - Admission Controller

kubectl와 RBACkubectl의 명령어로 파드를 생성하고자 하면 kube-apiserver로 전달된 이후 파드가 생성되고 최종적으로 해당 파드 정보가 ETCD 데이터베이스에 저장된다. 지금까지 간단한 명령어만으로 이런 일련의 작업을 한 번에 해온 것이다.그렇다면 해당 작업을 간단히 처리해주는 kubectl은 어떤 식으로 동작하는 걸까?다음을 보자. 순서대로 설명해보도록 하겠다.kubectl -> Authenticaion -> Authorization -> Admission Controller -> Create Podkubectl로 kube-apiserver에 명령을 보낸다.apiserver에서 인증(Authentication) 절차를 거치게 되는데 이는 보통 인증서로 이뤄진다. 이 과정에서 요청을..

Kubenetes 2025.05.14

Docker Swarm!

Docker의 Swarm이란 최근 쿠버네티스에 대해 다루었는데 이번에는 도커 자체적으로 제공하는 오케스트레이션 툴인 "docker swarm"에 대해 다루겠다! 쿠버네티스와 무엇이 다른지도 짚어볼 생각이다.도커에서도 쿠버네티스와 같이 여러 대의 서버 자원을 합쳐 하나의 클러스터로 만들어서 자원을 병렬로 확장할 수 있다. 도커 스웜은 도커 엔진 자체적으로 내장된 기능이다. 클러스터 관리, 자동화, 고가용성 및 확장성을 제공한다.아래와 같이 스웜 모드 클러스터 정보를 출력해보면 기본적으로 비활성 상태인 것을 알 수 있다.docker info | grep SwarmSwarm : inactive # 출력구조도커 스웜 모드는 기본적으로 "매니저 노드"와 "워커 노드"로 구성돼 있다. 워커 노드는 실제 컨테이너가 ..

Docker 2025.04.25

Kubernetes (4)

Kubernetes의 배포 전략과 컨트롤러DeploymentDeployment는 쿠버네티스에서 애플리케이션의 배포와 업데이트를 관리하는 핵심 컨트롤러다. 이를 통해 ReplicaSet의 생성 및 관리부터 애플리케이션 업데이트와 롤백까지 선언적으로 수행할 수 있다. Deployment를 사용하면 Pod 및 ReplicaSet을 명시적으로 생성할 수 있으며, 쿠버네티스 컨트롤 플레인은 현재 상태를 지속적으로 모니터링하여 원하는 상태로 유지한다.Deployment의 주요 기능은 다음과 같다.Pod와 ReplicaSet의 생명주기를 자동으로 관리한다.다양한 애플리케이션 배포 전략을 지원한다.문제가 발생했을 때 이전 버전으로 롤백하는 기능을 제공한다.애플리케이션의 확장성과 스케일링을 자동화한다.Deployment..

Kubenetes 2025.04.14

Kubernetes (2)

개념 정리쿠버네티스의 핵심 개념인 Pod, Service, Volume, ConfigMap 및 Secret을 중심으로 이해하기 쉽게 정리해보고자 한다!Pod - Container, Label, NodeSchedulePod의 기본 개념Pod는 쿠버네티스에서 배포할 수 있는 가장 작은 단위로, 하나 이상의 컨테이너를 포함한다. 같은 Pod 내의 컨테이너들은 스토리지와 네트워크를 공유하며 서로 로컬호스트처럼 통신할 수 있다.노드 스케줄링쿠버네티스는 자동으로 Pod를 노드에 배치하지만, 특정 노드에 Pod를 배치해야 하는 경우가 있다. 이를 위한 방법으로는nodeSelector: Pod 명세의 spec 섹션에 특정 레이블을 가진 노드를 지정하는 방법Node Affinity: 노드 선택에 더 유연한 표현식을 제공..

Kubenetes 2025.04.10
반응형