AKS에 대한 보안 DevOps

Kubernetes Service
Monitor
Pipelines
정책
GitHub

솔루션 아이디어

이 문서는 솔루션 아이디어입니다. 잠재적인 사용 사례, 대체 서비스, 구현 고려 사항 또는 가격 책정 지침과 같은 추가 정보로 콘텐츠를 확장하려면 GitHub 피드백을 제공하여 알려 주세요.

DevOps와 Kubernetes는 함께 사용하면 더 좋습니다. Azure에서 Kubernetes와 함께 보안 DevOps를 구현하면 속도와 보안 사이의 균형을 달성하고 대규모로 코드를 더 빠르게 제공할 수 있습니다.

잠재적인 사용 사례

동적 정책 제어와 함께 CI/CD를 사용하여 개발 프로세스 주변에 가드레일을 배치한 다음 지속적인 모니터링을 통해 피드백 루프를 가속화합니다. Azure Pipelines를 사용하여 Azure Policy를 통해 중요한 정책을 적용하면서 빠르게 제공합니다. Azure는 빌드 및 릴리스 파이프라인에 대한 실시간 가시성과 규정 준수 감사 및 다시 구성을 쉽게 적용할 수 있는 기능을 제공합니다.

아키텍처

아키텍처 다이어그램은 Helm 차트에 대한 CI/CD 파이프라인과 AKS 프로덕션 클러스터에 대한 Azure 컨테이너를 통해 소스 코드에 대한 내부 루프를 보여 줍니다.

이 아키텍처의 Visio 파일을 다운로드합니다.

데이터 흐름

  1. 개발자는 동일한 Kubernetes 클러스터에서 애플리케이션의 서로 다른 부분을 함께 빠르게 반복, 테스트 및 디버그합니다.
  2. 코드는 GitHub 리포지토리에 병합된 후 Azure Pipelines에서 자동화된 빌드 및 테스트를 실행합니다.
  3. 릴리스 파이프라인은 코드가 변경될 때마다 미리 정의된 배포 전략을 자동으로 실행합니다.
  4. Kubernetes 클러스터는 앱 리소스 및 구성의 원하는 상태를 정의하는 Helm 차트와 같은 도구를 사용하여 프로비전됩니다.
  5. 컨테이너 이미지가 Azure Container Registry로 푸시됩니다.
  6. 클러스터 운영자는 AKS 클러스터에 대한 배포를 관리하기 위해 Azure Policy에서 정책을 정의합니다.
  7. Azure Policy는 AKS 컨트롤 플레인 수준에서 파이프라인의 요청을 감사합니다.
  8. 앱 원격 분석, 컨테이너 상태 모니터링 및 실시간 로그 분석은 Azure Monitor를 사용하여 가져옵니다.
  9. 인사이트는 문제를 해결하는 데 사용되며 다음 스프린트 계획에 반영됩니다.

구성 요소

  • GitHub Enterprise는 개발자가 조직 및 오픈 소스 커뮤니티 내에서 협업할 수 있는 소스 코드를 호스팅합니다. GitHub Enterprise는 사용자가 작성한 코드와 오픈 소스 종속성에서 취약성을 식별하는 고급 보안 기능을 제공합니다.
  • Azure Pipelines는 애플리케이션을 자동으로 빌드하고 릴리스하기 위해 연속 통합 및 지속적 제공 작업을 제공하는 서비스입니다.
  • Azure Container Registry는 Docker 컨테이너 이미지를 호스팅합니다. 이 서비스에는 클라우드용 Microsoft Defender와 통합된 컨테이너 이미지 검사가 포함됩니다.
  • Azure Kubernetes Service는 인프라의 가용성과 보안을 보장하기 위해 Azure에서 완전 관리형 Kubernetes 클러스터를 제공합니다.
  • Azure Policy를 사용하면 정책을 만들기, 할당 및 관리할 수 있습니다. 정책은 리소스에 대해 다양한 규칙과 효과를 적용하여 리소스가 회사 표준 및 서비스 수준 약정을 준수하도록 유지합니다. Azure Kubernetes Service와도 통합됩니다.
  • Azure Monitor를 사용하면 애플리케이션 및 인프라의 가용성과 성능에 대한 정보를 가져올 수 있습니다. 또한 신호에 대한 액세스를 제공하여 솔루션의 상태를 모니터링하고 비정상적인 작업을 조기에 발견합니다.

참가자

Microsoft에서 이 문서를 유지 관리합니다. 원래 다음 기여자가 작성했습니다.

보안 주체 작성자:

다음 단계

관련 아키텍처를 참조하세요.