[요약] Policy driven approach to secure your CI/CDworkflow

2024. 3. 12. 10:41·CloudNative/event review

reference (KubeDay Singapore 2023 - Policy driven approach to secure your CI/CDworkflow)

https://static.sched.com/hosted_files/kubedaysingapore2023/75/Policy%20driven%20approach%20to%20secure%20your%20CI_CD%20workflow%20-%20Kubeday%20Singapore.pdf

 

  • Cloud-Native CI/CD 써야하는 이유
    • Container와 k8s를 위해 설계됨
    • pipeline as a service로 운영 부담 없음
    • 서로 독립된 파이프라인
    • 컨테이너 이미지로서의 라이프사이클을 갖음
    • native kubernetes resource 임
    • k8s로 관리됨
    • configmap을 통해 configuration
  • Tekton
    • k8s 맞춤형
    • 독립된 컨테이너에서 파이프라인 동작하여 on-demand scaling
    • k8s RABC 과 security모델은 파이프라인과 워크로드의 보안을 보장
    • 세분화된 파이프라인 실행 제어로 유연하고 파워풀한 요구사항 지원
  • Tekton Core Concepts
    • 기본: fetch task(clone step) -> build task(build step, push step, digest step) -> deploy task(apply step)
    • Step
      • 볼륨, 환경 변수등과 함께 커맨드를 컨테이너에서 실행
    • Task
      • Step의 리스트로 순차적으로 동일 파드에서 실행
    • Pipeline
      • 순서에 따라 input/output 과 실행된 Task들의 그래프
    • Input/Output Resource
      • task와 pipeline의 input/output
    • Task Run
      • input/output을 가지고 Task를 호출
    • Pipeline Run
      •  input/output을 가지고 pipeline을 호출
  • Pipeline as Code
    • pipeline as code 는 gitlab 과 같은 소스제어관리(SCM) 시스템에 위치한 파일에 tekton CI/CD pipeline과  task를 정의할 수 있게 함
    • pipeline을 코드로 저장하는것은 코드 변화에 따른 파이프라인 변화의 버저닝, 리뷰, 협업에 유리하며, SCM에서 바로 파이프라인의 상태를 보거나 실행제어할 수 있게 함
    • 장점: 버전관리, 재사용성, 협업, 자동화, 확장성, 변화관리
    • dependency가 없다. 다 연결할 수 있다는게 PaC의 강점
    • pull, push request를 받아서 동작하고 동작상태를 리턴
    • 권한이 있는 사람만 파이프라인을 실행할 수 있다는 보안성이 가장 큰 장점
  • Tekton Chains
    • tekton의 security part로 SLSA level2에 달성하는 변조 방지 형식 처리 by 출처 생성, 저장, 서명
    • controller를 통해 taskRuns 완료를 모니터링하여 동작
  • ArgoCD
    • 깃옵스는 선언적이고, 불변성, 버저닝을 상태 저장을 통해 강제함
    • 지속적으로 시스템을 관측하여 원하는 상태가 되도록 소스로부터 상태 정의를 자동으로 pull
  • 정책
    • 여러정책들.. 코드 품질, 테스트, 보안, 배포, 접근제어, 취약점등등에 대한 정책이 필요
    • CI/CD에서도 정책 지원이 필요한데, kyverno, OPA 등이 있음
  • Kyverno
    • k8s를 위한 Policy engine
    • configuration을 검증, 변경, 생성 가능
    • OCI image metadata 검사
    • cosign signature 확인
    • in-toto(전체, as a total or whole) 증명 확인 
    • namespace 들 전반에 걸쳐 동기화
    • 라벨 셀렉터와 와이들카드를 통해 리소스 매칭
    • CI
      • default namespace를 제외하고 일관되게 생성
      • 원할한 실행을 위한 충분한 securityContext 소유
      • 서명된 번들만 사용
      • 특정 label / annotation으로 트리깅
    • CD
      • 클러스터 배포전 이미지 검증 보장
  • DEMO
    • kyverno fetch -> 정적 검사 -> 빌드 -> push -> tekton chain -> kyverno 이미지 검사 -> gitOps -> 배포

 

  • 리뷰 후기
    • 요약하려 하였으나, 번역에 가까워졌다. 그만큼 뺄 내용이 많이 없었음. 돌다리도 두드리게됨
    • tekton chains 와 kyverno에 대한 필요성 공감. showcase 추가 필요하다
728x90

'CloudNative > event review' 카테고리의 다른 글

[요약] Handling Billions of Metrics with Prometheus/Thanos  (1) 2024.03.18
[요약] Improve Monitoring and Observability for Kubernetes with OSS tools  (0) 2024.03.06
[요약] Optimising Kafka Consumers with Kubernetes and KEDA:Lessons from the Trenches  (0) 2024.03.05
cloud native 관련 링크  (0) 2024.01.26
'CloudNative/event review' 카테고리의 다른 글
  • [요약] Handling Billions of Metrics with Prometheus/Thanos
  • [요약] Improve Monitoring and Observability for Kubernetes with OSS tools
  • [요약] Optimising Kafka Consumers with Kubernetes and KEDA:Lessons from the Trenches
  • cloud native 관련 링크
yunapapa
yunapapa
working on the cloud
    250x250
  • yunapapa
    supermoon
    yunapapa
  • 전체
    오늘
    어제
    • 분류 전체보기 (94)
      • 개발 (20)
        • java (17)
        • web (2)
        • MSX (1)
        • Go (0)
      • CloudNative (50)
        • App Definition & Developeme.. (17)
        • Orchestration & Management (4)
        • Runtime (3)
        • Provisioning (7)
        • Observability & Analysis (14)
        • event review (5)
      • AWS (7)
      • 환경관련 (17)
      • 취미생활 (0)
        • 맛집 (0)
        • 게임 (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • CNCF Past Events
    • Kubernetes Korea Group
  • 공지사항

  • 인기 글

  • 태그

    devops
    helm
    dop-c02
    gitlab
    kubernetes
    오블완
    티스토리챌린지
    springboot
    APM
    OpenShift
    Java
    AWS
    k8s
    istio
    Pinpoint
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
yunapapa
[요약] Policy driven approach to secure your CI/CDworkflow
상단으로

티스토리툴바