2017-05-05 3 views
0

Chaos engineering 사례가 널리 사용되고 있습니다. 하나의 일반적인 예는 Netflix '자신의 Chaos Monkey입니다. 그러나 카오스 원숭이는 종종 무작위 목표물에 대해 임시 공격을합니다. 특정 서비스의 탄력성을 향상시키기 위해 혼돈 실험이 일반적인 CI/CD pipeline에서 어떻게 작동하는지 궁금합니다.Chaos Engineering은 파이프 라인의 일부로 보일 수 있습니까?

  • 혼돈 실험 (일반적으로)에는 완전한 기능 환경이 필요하기 때문에 언제 실행합니까? 테스트 또는 하류와 동시에 실행됩니까?
  • 커밋마다 혼란 실험을 실행 하시겠습니까?
  • 카오스 실험을 실행하는 데 얼마나 오래 걸립니까? 60 분 CPU 스파이크는 예를 들어 "빠른 장애"접근을 방해 할 수 있습니다.
  • 카오스 실험이 파이프 라인에서 실패 할 수 있습니까? 무엇이 '실패'를 구성합니까?

답변

1

우리는 혼돈 엔지니어링 노력을 시작하고 있지만 질문에 대한 몇 가지 생각을하겠습니다.

  • 인스턴스/용기는 우리가 기본 인프라가 자동으로 처리하기 위해 기대 킬 :

    실험의 적어도 세 가지 종류가 있습니다.

  • 느리고 사용할 수없는 종속성과 같이 수준이 높지만 현지화 된 오류가 발생합니다.
  • 데이터 센터 나 지역 다운과 같은 대규모 장애.

빌드 파이프 라인의 경우 일반적으로 소프트웨어 자체가 오류에 응답하는 역할을하기 때문에 스위트 스폿은 중간에 위치합니다 (즉, 상위 수준이지만 지역화 된 오류). 예를 들어 소프트웨어에는 트립, 스로틀 링, 자동화 된 장애 조치 (failover) 등의 회로 차단기가 포함될 수 있습니다. 소프트웨어 기능인 경우 작동하거나 작동하지 않을 수 있으며 빌드가이를 확인해야합니다.

실패에 대한 복원력이 시스템 요구 사항 인 경우, 실패한 실험은 파이프 라인을 실패하게됩니다. 예를 들어 392 빌드가 올바르게 작동하는 회로 차단기를 가지고 있고 393 빌드가 그렇지 않다고 가정하십시오. 그것은 빌드가 요구 사항을 충족시키지 못했기 때문에 실패 일 것입니다.

관련 문제