Infrastructure/Kubernetes (57) 썸네일형 리스트형 [CKA] 명령적(Imperative) vs 선언적(Declarative) Imperative vs Declarative이번 장에서는 Certified Kubernetes Administrator (CKA) 을 준비하며 "명령적 접근법과 선언적 접근법"에 대해서 알아보도록 한다.Imperative vs Declarative명령적 접근법(Imperative Approach)목적지까지 어떻게 가는지 직접 지시하는 방법이다.예를 들어, B거리에서 우회전 C거리에서 죄회전해서 D거리에서 우회전하라고 지시하는 방식이다.선언적 접근법(Declarative Approach)목적지까지 가는 방법을 지시하는 것이 아니라, 목적지를 지정하고 도착하면 알려달라고 요청하는 방법이다.예를 들어, A거리로 가라고 지시하는 방식이다.코드로 인프라를 프로비저닝할 때, 무엇을 어떻게 할 것인지 "명령적 접근.. [CKA] Namespaces Namespaces이번 장에서는 Certified Kubernetes Administrator (CKA) 을 준비하며 "Namespaces"에 대해서 알아보도록 한다.Namespaces쿠버네티스 클러스터가 생성되면 자동으로 기본 네임스페이스를 생성한다.내부 목적을 위해 파드와 서비스 세트, 네트워킹 솔리션, DNS 서비스에 요구되는 것들을 설정한다.사용자가 실수로 서비스를 삭제하거나 수정하는 것을 방지하기 위해 클러스터가 시작할 때 kube-system이란 이름으로 생성한다.kube-public 네임스페이스는 모든 사용자가 사용할 수 있어야 할 리소스가 생성되는 곳이다.기업이나 운영 목적으로 쿠버네티스 클러스터를 사용하는 경우 네임스페이스 사용을 고려해야 한다.예를 들어, 개발과 운영 환경에서 같은 클러.. [CKA] 주요 컴포넌트 주요 구성요소이번 장에서는 Certified Kubernetes Administrator (CKA) 을 준비하며 "주요 구성요소"들에 대해서 알아보도록 한다.ETCDETCD는 쿠버네티스 클러스터의 모든 데이터를 저장하기 위해 사용되는 신뢰할 수 있는 분산 Key-Value 저장소다.Key-Value Store키-값 저장소는 데이터를 "키(Key)"와 "값(Value)"의 쌍으로 저장하는 데이터베이스의 한 형태다.이는 기존의 관계형 데이터베이스(RDBMS)와는 다른 방식으로 데이터를 관리하며, 다음과 같은 특징을 가진다.키(Key):데이터를 고유하게 식별하는 역할을 한다.마치 사전에서 단어와 같은 역할을 하며, 특정 값을 찾기 위한 인덱스 역할을 한다.일반적으로 문자열을 사용하지만, 다른 데이터 형식을 사.. [CKA] Microservices Microservices이번 장에서는 Certified Kubernetes Administrator (CKA) 을 준비하며 마이크로서비스 아키텍처에 대해서 알아본다.Voting app모든 애플리케이션은 Pod에서 실행되고 Pod를 설정한 이후 애플리케이션간 통신을 설정한다.투표 앱과 결과 앱은 사용자들이 쿠버네티스 외부에서 브라우저로 접근할 수 있어야 한다.Redis가 실행되고 있는 Pod는 투표 앱과 Worker 앱이 접근할 수 있어야 한다.Postgres가 실행되고 있는 Pod는 Worker 앱과 결과 앱이 접근할 수 있어야 한다.Worker 앱에는 접근하는 클라이언트가 없다.총 다섯 개의 Pod를 생성하고, 두 개의 ClusterIP 서비스를 생성하며, 두 개의 NodePort 서비스를 생성한다.E.. [CKA] Services Services이번 장에서는 Certified Kubernetes Administrator (CKA) 을 준비하며 Services에 대해서 알아본다.Services쿠버네티스 "Services"는 애플리케이션 내부 및 외부의 다양한 구성 요소 간의 통신을 가능하게 한다.애플리케이션을 다른 애플리케이션 또는 사용자와 연결하는 데 도움이 된다.예를 들어, 애플리케이션에는 사용자에게 프론트엔드 부하를 제공하는 그룹, 백엔드 프로세스를 실행하고 또 다른 그룹, 외부 데이터 소스에 연결하는 세 번째 그룹과 같은 다양한 섹션을 실행하는 Pod 그룹이 있다.이러한 Pod 그룹 간의 연결을 가능하게 하는 것이 "Services"다."Services"는 프론트엔드 애플리케이션을 사용자에게 제공하고 백엔드와 프론트엔드 Po.. [CKA] Networking Networking이번 장에서는 Certified Kubernetes Administrator (CKA) 을 준비하며 쿠버네티스의 네트워킹에 대해서 알아본다.Networking쿠버네티스 클러스터의 단일 노드에 192.168.1.2라는 IP가 할당되어 있으며, 우리가 쿠버네티스 노드에 접근하고 SSH를 사용하는 등의 목적으로 사용된다.참고로 Minikube 설정을 사용하는 경우 Hypervisor 내부의 minikube 가상 머신의 IP 주소에 대해 설정이 된다.Docker 컨테이너와 달리 쿠버네티스는 Pod를 호스팅하며 Pod에 IP 주소를 할당한다.쿠버네티스 각각의 Pod는 자체 내부 IP 주소를 할당 받는다.예시에서는 10.244.*.* 범위의 IP를 할당받게 된다. 쿠버네티스가 처음 구성될 때 주소.. [CKA] Deployment Deployment이번 장에서는 Certified Kubernetes Administrator (CKA) 을 준비하며 Deployment에 대해서 알아본다.Deployment운영 환경에 배포되어야 하는 애플리케이션이 있으며 여러 이유에 의해서 여러 개의 인스턴스로 실행되고 있다.만약 Docker Registry에 새로운 이미지가 올라오게 된다면 모든 인스턴스를 업데이트 해야 한다.이렇게 업데이트가 필요한 경우 서비스가 중단되면 안되기 때문에 한번에 모든 인스턴스를 업데이트할 수는 없다.인스턴스를 하나씩 업데이트하는 방식으로 서비스 중단없이 업데이트할 수 있으며 이러한 업데이트를 롤링 업데이트라 한다.쿠버네티스의 Deployment는 롤링 업데잍를 사용하여 기본 인스턴스를 원활하게 업데이트하고, 변경사항을.. [CKA] ReplicaSet Replication Controller이번 장에서는 Certified Kubernetes Administrator (CKA) 을 준비하며 Replication Controller에 대해서 알아본다.Replication Controller어떤 이유로 애플리케이션이 충돌하고 "Pod"가 실패하는 경우 사용자는 더 이상 애플리케이션에 액세스할 수 없다.사용자가 애플리케이션에 대한 액세스 권한을 잃지 않도록 하려면 동시에 두 개 이상의 인스턴스 또는 "Pod"를 실행해야 한다.이렇게 실행하는 경우 하나가 실패하더라도 다른 하나에서 애플리케이션을 계속 실행할 수 있다."Replication Controller"는 Kubernetes 클러스터에서 단일 Pod의 여러 인스턴스를 실행하여 고가용성을 제공하는 데 도움.. 이전 1 2 3 4 ··· 8 다음