자격증

Pod Networking 파드 레이어의 네트워킹은 어떻게 되는가? 클러스터에는 많은 파드가 실행될 것이다. 파드는 어떻게 주소 지정되는지, 서로 어떻게 통신하는 지 클러스터 내에서 이러한 파드에서 실행되는 서비스에 어떻게 접근하는지? 그리고 클러스터 외부에서 어떻게 접근하는 지 등이 고려해야할 문제이다. 쿠버네티스는 현재로서는 이러한 문제들에 대해서 내장 솔루션을 제공하지 않는다. 그래서 이런 문제들을 해결하기 위한 네트워킹 솔루션을 구현해야한다. 위 이미지를 보면 쿠버네티스가 파드 네트워킹에 대한 요구사항을 제시했다. 각 파드가 고유한 IP 주소를 가져야한다. 각 파드는 해당 IP 주소를 사용해 동일한 노드 내의 다른 모든 파드에 도달할 수 있어야한다. 각 파드는 동일한 IP 주소를 사용해 다른 노드..
Networking 선수 지식 - Switching Routing 네트워크란 무엇인가? 클라우드에 두 대의 컴퓨터(A와 B), 노트북, 데스크탑, 가상 머신이 있는 경우 시스템 A가 B에 어떻게 도달하는가? 이를 스위치에 연결하면 스위치는 두 시스템을 모두 포함하는 네트워크를 생성한다. 각 호스트에는 스위치에 연결하기 위한 물리적 또는 가상 인터페이스가 필요하다. 호스트의 인터페이스를 보려면 IP link 명령을 사용 이 경우 스위치에 연결하기 위해 Eth0이라는 인터페이스를 살펴보자. 네트워크 주소가 192.168.1.0인 네트워크라고 가정한다. 그런 다음 시스템에 동일한 네트워크의 IP 주소를 할당하면된다. 이렇게 하려면 ip addr 명령을 사용하면된다. 링크가 연결되고 IP 주소가 할당되면 이제 ..
Storage Storage in Docker (건너뛰어도 됨) 쿠버네티스 같은 컨테이너 오케스트레이션 도구의 스토리지를 이해하려면 먼저 Docker에서 스토리지가 어떻게 작동하는지 이해하면 더 쉬워질 것이다. Docker에서는 스토리지 드라이버와 볼륨 드라이버가 있다. Docker를 설치하면 기본적으로 /var/lib/docker/ 경로에 폴더 구조를 생성한다. aufs, containers, image, volumes 등 여러 개의 폴더가 있다. 여기가 docker가 기본ㄱ밧으로 모든 데이터를 저장하는 곳이다. 여기서 데이터란 Docker 호스트에서 실행되는 이미지 및 컨테이너와 관련된 파일을 말한다. 먼저 Docker의 계층 구조를 이해해보자 Docker는 이미지를 구축할 때 레이어드 아키텍처에 구..
Service Accounts Service Account 의 개념은 Authentication, Authorization, RBAC 등의 쿠버네티스의 다른 보안 관련 개념과 연결되어 있다. 쿠버네티스에서 Account는 두 개의 유형으로 분리되어 있다. 하나는 User Account 또 다른 하나는 Service Account. User Account는 사람이 사용하고 Service Account는 컴퓨터가 사용한다. User Account는 관리 작업을 수행하기 위해 클러스터에 액세스하는 관리자가 될 수 있고 응용프로그램 배포 등을 위해 클러스터에 액세스하는 개발자가 될 수 있다. Service Account는 앱이 쿠버네티스 클러스터와 상호 작용할 때 사용하는 계정이다. 예를 들어 프로메테우스 같은..
KubeConfig curl 을 이용해서 REST API에 대한 파드 목록을 조회하는 방법을 사용할 때 kube-apiserver 주소로 curl 요청을 보내면서 옵션으로 bearer 파일과 CA 인증서를 전달해 사용자를 인증하는 데 사용한다. 그렇다면 kubectl 명령어를 사용하는 것은 어떨까? kubectl 명령어를 사용하면서 키, 인증서 등등 여러가지 옵션을 사용하는 것은 매우 귀찮은 작업이 되기 때문에 kubeconfig라는 구성파일에 이를 저장해 놓는다. 그래서 우리가 여태까지 kubectl 명령어를 사용할 때 키,인증서 등등의 옵션 없이도 명령어를 사용할 수 있었던 것이다. 기본적으로 kubectl 도구는 사용자의 홈 디렉토리/.kube/config 파일을 찾는다. 이 파일에는 Cluster..
Security 강의 개요 쿠버네티스 보안의 초기 단계 쿠버네티스 접근 가능 이유, 접근 통제 방법 다양한 인증 메커니즘 보안 관련 또는 인증서 관련 이슈 핸들 Security Primitives 쿠버네티스 호스트부터 시작해보자. 호스트에 대한 모든 액세스는 보안 처리가 되어야한다. Root 액세스 해제, 암호 기반 인증 해제, Only SSH 키 기반 인증만 사용 가능해야한다. 클러스터 보안을 위해 어떤 위험과 조치를 취해야 할까? 쿠버네티스의 중심에는 kube-apiserver가 있다. kubectl 이나 API에 직접 액세스 함으로써 상호작용 하게된다. API를 통하게 되면 클러스터에서 거의 모든 작업을 수행할 수 있다. API 서버 자체에 대한 액세스를 제어하는 게 1차 방어선이다. 두가지 결정을..
Cluster Maintenance 강의 개요 운영체제 업그레이드 클러스터 업그레이드, 클러스터 end to end 업그레이드 백업과 복원 OS Upgrade 유지보수 목적으로 노드를 제거해야 하는 시나리오에 대해 논의해보자. 소프트웨어 기반 업그레이드나 패치 적용, 보안 패치 등을 클러스터에 적용하는 것이다. 노드와 파드가 응용 프로그램을 제공해준다. 허나 노드 중 하나가 다운이되면 어떻게 되는가? 파드가 접근이 불가능해진다. 예를 들어 레플리카셋으로 구성된 파드가 있다면 노드가 죽어도 파드가 계속 유지될 것이다. 만약 레플리카셋으로 구성되어 있지 않다면? 노드가 중지되면 파드는 영향을 받고 다른 노드에 올라오지 않으니 사용자가 애플리케이션을 이용하는데 영향을 줄것이다. 노드가 Up 상태로 변경되면 K..
웹 페이지를 배포했다고 앞 페이지에서 안내 했음 페이지 확인 해보니 blue deployment를 분석하고 pod가 몇개 배포 되었는지 확인하라 grep 명령어로 간단히 확인했는데 아래와 같이 확인해도 된다. controlplane ~ ➜ k get deploy frontend -n default -o jsonpath='{.spec.replicas}' 4 애플리케이션을 배포하는 데 사용되는 컨테이너 이미지는 무엇입니까? controlplane ~ ➜ k get deploy frontend -n default -o jsonpath='{.spec.template.spec.containers[*].image}' kodekloud/webapp-color:v1 deployment를 분석하고 현재 전략이 어떻게 되..
Application Lifecycle Management 강의 개요 응용 프로그램 수명 주기 관리에 대해 생각해보자. 업데이트와 롤백에서 시작해 응용 프로그램을 구성하는 다양한 방법 Self-Healing Application Rolling Update & Rollbacks 먼저 배포 시 롤아웃과 버전 관리를 이해해보자 처음 배포를 실행하게 되면 새로운 롤아웃으로 인해 새로운 배포 Revision을 생성하게 된다. 새로 앱이 업그레이드 되면 컨테이너 버전이 새 것으로 업데이트 되면 새 롤아웃이 트리거되고 새 배포 Revision이 생성된다. 배포 과정 중 일어난 변화를 추적할 수 있게 해주고 필요하다면 배포의 이전 버전으로 되돌릴 수 있게 해준다. kubectl rollout status deploym..
Nowon9159
'자격증' 태그의 글 목록 (2 Page)