2024/08/28 3

[k8s] Namespace

네임스페이스는 쿠버네티스(Kubernetes) 클러스터에서 리소스를 그룹화하고 논리적으로 구분하는 방법을 제공하는 기능이다. 네임스페이스를 사용하면 동일한 클러스터 내에서 서로 다른 프로젝트, 팀, 또는 환경(예: 개발, 테스트, 프로덕션) 간에 리소스를 격리할 수 있다. 네임스페이스의 주요 기능리소스 격리:네임스페이스는 쿠버네티스 리소스를 논리적으로 구분하여 서로 간섭하지 않도록 한다. 예를 들어, 동일한 이름의 파드(Pod)나 서비스(Service)를 다른 네임스페이스에 중복 생성할 수 있다.접근 제어:RBAC(Role-Based Access Control)을 통해 네임스페이스별로 권한을 설정할 수 있다. 이를 통해 특정 사용자나 그룹이 특정 네임스페이스에서만 리소스를 관리하도록 제한할 수 있다.리소..

DevOps/K8S 2024.08.28

[k8s] Service

서비스는 쿠버네티스 클러스터 내의 여러 파드를 하나의 엔드포인트로 묶어주는 역할을 한다. 파드들은 클러스터 내에서 동적으로 생성되고 제거되기 때문에 IP 주소가 변할 수 있지만, 서비스는 일관된 IP 주소와 DNS 이름을 제공하여 파드들의 변경에도 불구하고 안정적인 네트워크 접속을 보장한다. 서비스의 유형ClusterIP기본 서비스 유형으로, 클러스터 내부에서만 접근 가능한 IP 주소를 제공한다.클러스터 외부에서는 접근할 수 없으며, 내부 통신에 주로 사용된다.마이크로서비스 간의 내부 통신, 데이터베이스 접근 등 내부 네트워크에서의 통신.NodePort외부에서 노드 IP의 특정 포트(:)로 들어오는 요청을 감지하여, 해당 포트와 연결된 파드로 트래픽을 전달하는 유형의 서비스다.NodePort 서비스를 생..

DevOps/K8S 2024.08.28

[k8s] 배포 흐름

쿠버네티스는 선언적인 시스템(Declarative System)으로, 사용자가 원하는 시스템의 상태를 정의하고, 시스템이 이 상태를 유지하도록 하는 방식으로 동작한다.API 서버쿠버네티스 API 서버는 클러스터의 중앙 API 엔드포인트로, 사용자와 클러스터 간의 인터페이스 역할을 한다.사용자가 쿠버네티스 클러스터에 요청을 보내면, API 서버가 이 요청을 처리하고 클러스터의 상태를 업데이트한다.API 서버는 모든 리소스의 현재 상태를 관리하고, 이를 etcd에 기록한다.etcdetcd는 쿠버네티스의 분산 키-값 저장소로, 클러스터의 구성 정보를 영구적으로 저장한다.모든 쿠버네티스 리소스의 상태는 etcd에 저장되며, API 서버는 이 정보를 읽고 쓴다.etcd는 클러스터의 현재 상태와 목표 상태를 저장한..

DevOps/K8S 2024.08.28