System Delay

System delay 관련 내용

  1. Delay
    1. Pod 라이프사이클 관리
    2. k8s 에코시스템
    3. 접근제어
    4. PV(persistence Volume), PVC(Persistence Volume Claim)
      1. 개요
      2. PV/PVC 라이프사이클

Delay


Pod 라이프사이클 관리

  • 애플리케이션의 배포, 운영, 확장, 그리고 종료까지의 모든 단계를 포함
  • Kubernetes와 같은 컨테이너 오케스트레이션 플랫폼을 사용하여 Pod의 라이프사이클을 관리하는 것이 일반적
주요단계내용
PendingPod가 클러스터에서 승인되었지만, 아직 실행 준비가 되지 않은 상태 (이 단계에서는 네트워크를 통해 컨테이너 이미지를 다운로드하는 시간도 포함)
RunningPod가 노드에 바인딩되고, 모든 컨테이너가 생성된 상태 (적어도 하나의 컨테이너가 실행 중이거나 시작 또는 재시작 중)
SucceededPod 내의 모든 컨테이너가 성공적으로 종료된 상태
FailedPod 내의 하나 이상의 컨테이너가 실패로 종료된 상태
UnknownPod의 상태를 알 수 없는 경우 (일반적으로 노드와의 통신 오류로 인해 발생합니다.)

k8s 에코시스템

  • 컨테이너화된 애플리케이션의 배포, 관리, 확장을 자동화하는 다양한 도구와 서비스의 집합을 의미
  • 에코시스템은 Kubernetes를 중심으로 다양한 오픈 소스 및 상용 솔루션이 함께 작동하여 클라우드 네이티브 애플리케이션을 효과적으로 운영할 수 있도록 지원

  • Kubernetes 에코시스템의 주요 구성 요소
주요구성요소설명
컨테이너 런타임Docker, containerd, CRI-O 등 다양한 컨테이너 런타임이 Kubernetes와 함께 사용됨
네트워킹Calico, Flannel, Weave 등 네트워킹 솔루션이 클러스터 내에서의 통신을 관리
스토리지Ceph, GlusterFS, Longhorn 등 다양한 스토리지 솔루션이 데이터 저장을 지원
모니터링 및 로깅Prometheus, Grafana, ELK 스택 등이 클러스터의 상태를 모니터링하고 로그를 수집
CI/CDJenkins, GitLab CI, Argo CD 등 지속적 통합 및 배포 도구가 애플리케이션의 자동 배포를 지원
보안Istio, Linkerd, OPA 등 서비스 메쉬와 정책 관리 도구가 보안을 강화

접근제어

  • 접근제어 유형
접근제어설명
RBAC(역할 기반 접근 제어)사용자가 시스템, 네트워크 또는 리소스에 접근할 수 있는 권한을 역할에 따라 관리하는 방법</br>각 사용자는 하나 이상의 역할을 할당받고, 각 역할에는 특정 권한이 부여
ABAC(속성 기반 접근 제어)속성을 기반으로 접근 권한을 부여함</br>예를 들어, 사용자 속성(부서, 직급), 리소스 속성(파일 유형, 보안 등급), 환경 속성(접속 시간, 위치) 등을 조합하여 접근 권한을 결정</br>ABAC는 유연성과 세밀한 제어를 제공하지만, 설정과 관리가 복잡할 수 있음
PBAC(정책 기반 접근 제어)정책에 따라 접근 권한을 부여함</br>정책은 특정 조건을 만족할 때 접근을 허용하거나 거부하는 규칙의 집합</br>>예를 들어, 특정 시간대에만 접근을 허용하거나, 특정 네트워크에서만 접근을 허용하는 등의 정책을 설정할 수 있음
MAC(강제 접근 제어)중앙 관리자가 설정한 규칙에 따라 접근 권한을 부여함</br>사용자는 자신의 권한을 변경할 수 없으며, 모든 접근 제어는 중앙에서 관리</br>주로 군사나 정부 기관에서 사용되며, 보안이 매우 중요한 환경에서 유용
DAC(임의 접근 제어)리소스 소유자가 접근 권한을 부여함</br>파일 소유자가 다른 사용자에게 읽기, 쓰기 권한을 부여하거나 제거할 수 있음</br>유연성이 높지만, 보안 관리가 어려울 수 있음.
  1. 개요
    1) 제품소개 및 특장점
    2) 주요 기능 구성도
    - 모니터링 및 운영관리
    - 멀티 클러스터 관리: 이기종 PaaS 클러스터 관리, 멀티 클러스터 통합 대시보드
    - 알림설정 및 로그관리: 이벤트 및 알림관리, 감사 로그 조회
    - 대시보드: 클러스터/네임스페이스 별 대시보드, 네트워크 토폴로지맵
    - 서비스 카탈로그 기반 운영관리: 카탈로그 관리 및 배포, GUI 기반 서비스 프로비저닝
    - DevSecOps
    - CI/CD Task 관리: 빌드/배포 관리, 테스트/정적분석 관리
    - 운영 대시 보드: 파이프라인 현황 조회, 파이프라인 단계별 상세 정보
    - 파이프라인 관리: 내부 결재 (승인/반려), 파이프라인 로그 조회
    - 보안취약점 검사: 소스코드/이미지/런타임 취약점 점검
    - 컨테이너 오케스트레이션
    - 파드 라이프사이클 관리: GUI 기반 기본모드/전문가 모드
    - 오토 스케일링: 네임스페이스/파드 단위 리소스 쿼터 설정
    - 셀프 힐링: 파드/노드 상태 모니터링, 자동 파드 생서 및 재배치
    - 클러스터 자동생성 및 배포: 클러스터 자동 생성 프로세스 템플릿, 공급자연결, 네트워크 설정
    - 서비스 메시기반 네트워크 트래픽 관리: 기본/마이크로서비스 기반 네트워크 트래픽 관리,컨테이너 네트워크 격리, 다양한 애플리케이션 배포 전략
    - 볼륨 관리: PV/PVC 관리, 스토리지 볼륨 동적 프로비저닝
    3) 제품 기능
    4) 논리 구성도
    5) 소프트웨어 구성

  2. 주요 기능
    1) 라이프사이클 관리
    2) CI/CD 기능
    3) 모니터링 기능
    4) 네트워크
    5) 보안 안정성
    6) 효율성
    7) 확장성 및 호환성

PV(persistence Volume), PVC(Persistence Volume Claim)

개요

  • 쿠버네티스는 인프라에 대한 복잡성을 추상화를 통해서 간단하게 하고, 개발자들이 손쉽게 필요한 인프라(컨테이너, 디스크, 네트워크)를 설정할 수 있도록 하는 개념을 가지고 있음

  • 그래서, 인프라의 종속적인 부분은 시스템 관리자가 설정하도록 하고, 개발자는 이에 대한 이해 없이도 간단하게 사용할 수 있도록 디스크 볼륨 부분에 PV와 PVC의 개념을 도입

    • 시스템 관리자가 실제 물리 디스크를 생성한 후에 이 디스크를 PV라는 이름으로 쿠버네티스에 등록
    • 개발자는 Pod는 생성할 때, 볼륨을 정의하고 이 볼륨 정의 부분에 물리적 디스크에 대한 특성을 정의하는 것이 아니라 PVC를 지정하여 관리자가 생성한 PV와 연결

pv_pvc

PV/PVC 라이프사이클

단계설명
프로비저닝(Provisioning)yaml 파일 등을 이용해 정적(static) 또는 동적(dynamic)의 PV를 생성하는 단계</br>정적은 PV를 수동으로 생성하여 PVC에 직접 바인딩 한 후 사용하는 것</br>동적은 별도의 PV 생성 없이 PVC의 정의에 따라서 맞는 물리 디스크 생성 및 PV 생성을 자동화하는 것
바인딩(Binding)PV를 PVC에 연결시키는 단계</br>PVC는 사용자가 요청하는 볼륨을 PV에 요청하고 PV는 그에 맞는 볼륨이 있으면 할당</br>만약 PVC가 요청하는 볼륨이 PV에 없다면 해당 요청은 무한정 남아있게 되고, PVC가 요청하는 볼륨이 PV에 생성되면 그 요청은 받아들어져 할당</br>PV와 PVC는 ClaimRef를 사용하는 1:1 관계이며 바인딩이 정상적으로 완료될 경우 bound 상태가 됨
사용(Using)클러스터는 PVC를 확인하여 바인딩된 PV를 찾고 해당 볼륨을 Pod에서 사용할 수 있도록 해줌</br>만약 Pod가 사용 중인 PVC를 삭제하려고 하면 Storage Object in Use Protection에 의해 삭제되지 않dma</br>만약 삭제 요청을 했다면 Pod가 PVC를 사용하지 않을 때까지 삭제 요청은 연기됨
회수(Reclamiming)PV는 연결된 PVC가 삭제된 후 다시 다른 PVC에 의해서 재사용이 가능</br>때문에 사용이 종료된 PVC를 삭제할 때, 사용했던 PV의 데이터를 지울 지 유지할 지에 대한 정책을 Reclaim Policy를 이용하여 설정이 가능</br>- Retain: 삭제하지 않고 데이터를 유지(PV도 데이터도 모두 유지)</br>- Recycle: 재사용이 가능하며 재사용 시 데이터의 내용을 자동으로 rm -rf로 삭제한 후, 재사용 (PV만 유지, 데이터는 삭제)</br>- Delete: 사용이 종료되면 해당 볼륨은 삭제 (PV도 데이터도 모두 삭제)

© 2018. All rights reserved.

Powered by Hydejack v8.4.0