OpenText 홈페이지.
기술 주제

카오스 엔지니어링이란 무엇인가요?

전구에 초점을 맞춘 IT 품목의 일러스트레이션

개요

프로젝트 관리자, 개발자 또는 팀 리더에게 문의하세요. 소프트웨어 개발 수명 주기 동안 결함, 사이버 공격, 시스템 중단 등 여러 가지 문제가 발생할 수 있습니다. 예기치 않은 장애가 발생하면 전체 프로세스가 중단되고 결과가 제한되며 중요한 리소스가 낭비될 수 있습니다.

카오스 엔지니어링

카오스 엔지니어링은 이러한 실패가 어떻게 발생할 수 있는지 연구하고 이를 방지할 수 있는 방법론을 제공하는 학문입니다. 카오스 엔지니어는 장애의 근본 원인을 이해함으로써 장애를 예방하거나 완화하기 위한 계획을 수립할 수 있습니다.

카오스 엔지니어링은 혼돈을 만드는 것이 아니라 통제된 실험을 통해 시스템의 잠재적 장애 지점을 파악하여 문제를 일으키기 전에 미리 파악하는 것입니다. 이를 통해 카오스 엔지니어는 가동 중단 및 기타 장애를 사전에 예방할 수 있습니다.

카오스 엔지니어링이란 정확히 무엇인가요?

카오스 엔지니어링은 시스템에 의도적으로 결함을 주입하여 복원력을 테스트하는 관행입니다. 목표는 잠재적인 장애 지점을 식별하고 실제 중단이나 기타 장애를 일으키기 전에 이를 수정하는 것입니다.

시스템에서 혼란을 일으키는 방법에는 여러 가지가 있지만 가장 중요한 것은 계획을 세우는 것입니다. 계획이 없으면 해결하는 것보다 더 많은 문제가 발생하기 쉽습니다. 계획을 세울 때는 무엇을 테스트할지, 어떻게 테스트할지 결정해야 합니다. 그런 다음 계획이 정해지면 실험을 시작할 수 있습니다.

소프트웨어 개발자는 OpenText™ Professional Performance Engineering, OpenText™ Enterprise Performance Engineering 또는 OpenText™ Core Performance Engineering을 사용하여 카오스 엔지니어링을 워크플로에 쉽게 도입할 수 있습니다. 이러한 솔루션은 성능 부하 테스트를 활용할 뿐만 아니라 소프트웨어 내에서 직접 다른 카오스 엔지니어링 실험을 쉽게 실행할 수 있습니다.

통제된 비프로덕션 환경에서 이러한 이벤트를 생성하면 시스템이 어떻게 반응하는지 테스트하고 잠재적인 문제를 파악할 수 있습니다.

잠재적인 장애 지점을 파악한 후에는 이를 완화하기 위한 작업을 시작할 수 있습니다. 여기에는 모니터링 또는 로깅을 추가하여 문제가 발생했을 때 이를 식별하거나 디자인을 변경하여 장애에 더 탄력적으로 대응하는 것이 포함될 수 있습니다.

카오스 엔지니어링 원칙이란 무엇인가요?

카오스 엔지니어링의 원리는 다음과 같습니다:

  • 계획: 계획: 무엇을 테스트할지, 어떻게 테스트할지 결정합니다. 여기서 목표는 가설을 만드는 것입니다. 시스템에서 무엇이 잘못될 수 있을까요? 악용될 수 있는 잠재적 취약점에는 어떤 것이 있나요?
  • 실험: 시스템에 오류를 주입하고 시스템이 어떻게 반응하는지 확인하세요. 결함 인젝션은 단순히 기존 시스템에 문제를 도입하여 취약점을 노출하는 프로세스입니다. 이는 본질적으로 시스템에 일부러 '렌치'를 던져 어떤 일이 일어나는지 확인하는 습관입니다.
  • 분석: 실험에서 얻은 데이터를 사용하여 잠재적인 실패 지점을 파악하세요.
  • 완화: 완화: 문제를 발견하면 실험을 종료하여 문제를 완화하는 데 집중할 수 있습니다. 그렇지 않으면 문제의 핵심에 도달할 때까지 실험을 확장할 수 있습니다.

카오스 엔지니어링의 장점은 무엇인가요?

그렇다면 어떤 회사가 일부러 물건을 망가뜨릴까요? 시스템 결함을 노출하는 것은 시스템을 더욱 견고하게 만드는 데 필요합니다. 카오스 엔지니어링은 서비스 중단 및 기타 장애를 방지하는 데 도움이 될 수 있습니다. 잠재적인 장애 지점을 파악하고 문제가 발생하기 전에 이를 수정함으로써 장애를 사전에 예방할 수 있습니다.

또한 카오스 엔지니어링은 여러 가지 고객, 비즈니스 및 기술적 이점을 제공합니다. 주요 이점은 기업이 수익에 영향을 미치고 고객의 기대에 부응하는 더 강력한 제품을 만들 수 있다는 것입니다.

복원력 테스트라고도 하는 카오스 엔지니어링은 기업이 시스템의 복원력을 정기적으로 테스트하여 취약점을 평가하는 것을 목표로 하는 디지털 운영 복원력 법(DORA)을 준수하는 데 도움이 될 수 있습니다.

카오스 엔지니어링은 테스트와 어떻게 다른가요?

카오스 엔지니어링은 몇 가지 주요한 점에서 테스트와 다릅니다. 카오스 엔지니어링은 문제를 일으키기 전에 잠재적인 장애 지점을 찾는 데 중점을 둡니다. 반면 테스트는 시스템이 예상대로 작동하는지 확인하는 데 중점을 둡니다. 요컨대, 카오스 엔지니어링은 사전 예방적이지만 테스트는 사후 대응적입니다.

카오스 엔지니어는 라이브 환경에서 문제를 일으키기 전에 제어 장애를 도입하고 수정하여 중단 및 기타 중단을 방지하기 위해 노력합니다. 이러한 제어된 장애는 시스템의 어느 부분이 더 복원력이 있고 어느 부분에 더 많은 작업이 필요한지 파악하는 데 도움이 됩니다. 테스트는 시스템이 완료된 후에만 작동하는지 확인할 수 있습니다.

오픈텍스트 프로페셔널 성능 엔지니어링과 어떤 점이 비슷하나요?

OpenText Professional Performance Engineering 은 주로 특정 유형의 성능 엔지니어링에 중점을 둔 도구입니다. OpenText Professional Performance Engineering을 사용하면 실제 사용 조건을 시뮬레이션하는 고급 부하 테스트를 배포하여 문제를 일으키기 전에 잠재적인 부하 성능 문제를 식별할 수 있습니다.

하지만 오픈텍스트 프로페셔널 성능 엔지니어링은 단순히 안정적인 환경에서 부하 테스트를 실행하는 성능 엔지니어링 툴이 아니라 성능 엔지니어링과 카오스 엔지니어링을 하나의 플랫폼에 결합한 툴입니다.

오픈텍스트 프로페셔널 성능 엔지니어링은 CPU 스파이크, 네트워크 지연 시간, 디스크 장애 등 다양한 유형의 카오스 이벤트를 생성할 수 있는 유명한 서비스형 장애(FaaS) 플랫폼인 Gremlin과 직접 연동됩니다. OpenText Professional Performance Engineering 내에서 직접 Gremlin 카오스 실험을 쉽게 구성 및 시작하고 비정상적인 조건에 기반한 부하 테스트를 실행할 수 있습니다.

전반적으로 오픈텍스트 프로페셔널 성능 엔지니어링을 사용하면 다양한 유형의 혼돈 이벤트 중에 로드 중단을 사전에 방지할 수 있습니다. 이 도구는 문제를 일으키기 전에 잠재적인 장애 지점을 식별하여 시간, 비용 및 귀중한 리소스를 절약할 수 있습니다.

성능 엔지니어링 솔루션으로 카오스 엔지니어링을 구현하세요.

궁극적으로 카오스 엔지니어링은 모든 성공적인 소프트웨어 프로젝트의 원동력입니다. 소프트웨어 개발자는 카오스 엔지니어링을 구현하여 시간이 지나도 견딜 수 있는 프로젝트를 수행할 수 있습니다.

그렘린스테디비트와의 파트너십을 통해 OpenText 성능 엔지니어링 솔루션은 부하가 걸린 시스템과 다양한 혼돈 이벤트의 성능을 동시에 테스트하여 잠재적인 장애 지점을 찾아내고 문제를 사전에 해결할 수 있습니다.

어떻게 도와드릴까요?

각주