Google Cloud Well-Architected Framework: FSI 관점의 이 문서에서는 Google Cloud에서 강력한 금융 서비스 산업 (FSI) 워크로드를 빌드, 배포, 운영하기 위한 원칙과 권장사항을 개략적으로 설명합니다. 이러한 권장사항은 관측 가능성, 자동화, 확장성과 같은 기본적인 요소를 설정하는 데 도움이 됩니다. 이 문서의 권장사항은 Well-Architected 프레임워크의 운영 우수성 분야와 일치합니다.
운영 우수성은 Google Cloud 의 FSI 워크로드에 매우 중요합니다. 이러한 워크로드는 규제가 심하고 민감하기 때문입니다. 운영 우수성은 클라우드 솔루션이 변화하는 요구사항에 적응하고 가치, 성능, 보안, 안정성에 대한 요구사항을 충족할 수 있도록 지원합니다. 이러한 영역에서 실패하면 상당한 재정적 손실, 규제 처벌, 평판 손상이 발생할 수 있습니다.
운영 우수성은 FSI 워크로드에 다음과 같은 이점을 제공합니다.
- 신뢰와 평판 유지: 금융 기관은 고객의 신뢰에 크게 의존합니다. 운영 중단이나 보안 침해는 이러한 신뢰를 심각하게 약화시키고 고객 이탈을 야기할 수 있습니다. 운영 우수성은 이러한 위험을 최소화하는 데 도움이 됩니다.
엄격한 규정 준수 요구사항 충족: FSI는 다음과 같은 수많은 복잡한 규정을 준수해야 합니다.
강력한 운영 프로세스, 모니터링, 사고 관리는 규정 준수를 입증하고 처벌을 피하는 데 필수적입니다.
비즈니스 연속성 및 복원력 보장: 금융 시장과 서비스는 지속적으로 운영되는 경우가 많습니다. 따라서 고가용성과 효과적인 재해 복구가 가장 중요합니다. 운영 우수성 원칙은 복원력이 뛰어난 시스템의 설계 및 구현을 안내합니다. 안정성 원칙에서 이와 관련된 자세한 안내를 제공합니다.
민감한 정보 보호: 금융 기관은 매우 민감한 고객 및 금융 데이터를 방대하게 처리합니다. 데이터 유출을 방지하고 개인 정보를 보호하려면 강력한 운영 관리, 보안 모니터링, 신속한 사고 대응이 중요합니다. 보안 필라에서 이와 관련된 자세한 안내를 제공합니다.
중요 애플리케이션의 성능 최적화: 거래 플랫폼, 실시간 분석과 같은 많은 금융 애플리케이션에는 높은 성능과 짧은 지연 시간이 필요합니다. 이러한 성능 요구사항을 충족하려면 고도로 최적화된 컴퓨팅, 네트워킹, 스토리지 설계가 필요합니다. 성능 최적화 지원에서 이와 관련된 자세한 안내를 확인할 수 있습니다.
비용 효과적으로 관리: 금융 기관은 보안 및 안정성 외에도 비용 효율성을 우려합니다. 운영 우수성에는 리소스 사용률을 최적화하고 클라우드 지출을 관리하는 방법이 포함됩니다. 비용 최적화 원칙에서 이와 관련된 자세한 안내를 확인할 수 있습니다.
이 문서의 운영 우수성 권장사항은 다음 핵심 원칙에 매핑됩니다.
SLA 및 해당 SLO와 SLI 정의
많은 FSI 조직에서 애플리케이션의 가용성은 일반적으로 복구 시간 목표 (RTO) 및 복구 지점 목표 (RPO) 측정항목을 기반으로 분류됩니다. 외부 고객에게 서비스를 제공하는 비즈니스에 중요한 애플리케이션의 경우 서비스수준계약 (SLA)도 정의할 수 있습니다.
SLA에는 사용자 만족도 관점에서 시스템의 동작을 나타내는 측정항목 프레임워크가 필요합니다. 사이트 안정성 엔지니어링 (SRE) 관행은 원하는 수준의 시스템 안정성을 달성하는 방법을 제공합니다. 측정항목 프레임워크를 만드는 작업에는 사용자의 관점에서 시스템 상태를 파악하기 위해 주요 수치 지표를 정의하고 모니터링하는 작업이 포함됩니다. 예를 들어 지연 시간 및 오류율과 같은 측정항목은 서비스의 성능을 수치화합니다. 이러한 측정항목을 서비스 수준 지표 (SLI)라고 합니다. 효과적인 SLI를 개발하는 것은 매우 중요합니다. SLI는 안정성을 객관적으로 평가하는 데 필요한 원시 데이터를 제공하기 때문입니다.
의미 있는 SLA, SLI, SLO를 정의하려면 다음 권장사항을 고려하세요.
- 각 중요 서비스의 SLI를 개발하고 정의합니다. 허용되는 성능 수준을 정의하는 타겟 값을 설정합니다.
- SLI에 해당하는 서비스 수준 목표 (SLO)를 개발하고 정의합니다. 예를 들어 SLO는 요청의 99.9% 의 지연 시간이 200밀리초 미만이어야 한다고 명시할 수 있습니다.
- 서비스가 SLO를 충족하지 않는 경우 취해야 하는 내부 시정 조치를 식별합니다. 예를 들어 플랫폼의 복원력을 개선하려면 문제 해결에 개발 리소스를 집중해야 할 수 있습니다.
- 각 서비스의 SLA 요구사항을 검증하고 SLA를 서비스 사용자와의 공식 계약으로 인식합니다.
서비스 수준의 예
다음 표에는 결제 플랫폼의 SLI, SLO, SLA의 예가 나와 있습니다.
비즈니스 측정항목 | SLI | SLO | SLA |
---|---|---|---|
결제 거래 성공 | 성공적으로 처리되고 확인된 모든 시작된 결제 거래의 비율을 나타내는 정량적 측정치입니다. 예: 5분 단위로 측정된 (성공한 거래 수 ÷ 총 유효한 거래 수) × 100 |
특정 기간 동안 성공적인 결제 거래의 비율을 높게 유지하기 위한 내부 타겟입니다. 예: 무효한 요청과 예정된 유지보수를 제외하고 연속 30일 기간 동안 결제 거래 성공률을 99.98% 로 유지합니다. |
결제 거래 처리의 성공률과 속도에 대한 계약상 보증입니다. 예: 서비스 제공업체는 클라이언트가 시작한 결제 거래의 99.0%가 1초 이내에 성공적으로 처리되고 확인될 것이라고 보장합니다. |
결제 처리 지연 시간 | 클라이언트가 시작한 후 최종 확인까지 결제 거래가 처리되는 데 걸리는 평균 시간입니다. 예: 5분 동안 연속으로 측정된 거래 확인의 평균 응답 시간(밀리초)입니다. |
결제 거래가 처리되는 속도에 대한 내부 타겟입니다. 예: 연속 30일 기간 동안 결제 거래의 99.5% 가 400밀리초 이내에 처리되도록 합니다. |
지정된 기간 내에 심각한 결제 처리 문제를 해결하기 위한 계약상 약속입니다. 예: 심각한 결제 처리 문제(거래의 1% 이상에 영향을 미치는 서비스 중단으로 정의됨)의 경우 서비스 제공업체는 문제가 신고되거나 감지된 시점으로부터 2시간 이내에 해결하기로 약속합니다. |
플랫폼 가용성 | 핵심 결제 처리 API와 사용자 인터페이스가 작동하고 클라이언트가 액세스할 수 있는 시간의 비율입니다. 예: (총 운영 시간 - 다운타임) ÷ 총 운영 시간 × 100(분당 측정) |
핵심 결제 플랫폼의 업타임에 대한 내부 목표입니다. 예: 예정된 유지보수 기간을 제외하고 월별 플랫폼 가용성 99.995% 를 달성합니다. |
최소 결제 플랫폼 가동시간에 관한 고객과의 공식적이고 법적 구속력이 있는 약속(미충족 시 결과 포함) 예: 플랫폼은 예정된 유지보수 기간을 제외하고 달력 월별로 최소 99.9% 의 가용성을 유지합니다. 가용성이 최소 수준 미만으로 떨어지면 클라이언트는 0.1% 하락마다 월간 서비스 요금의 5% 에 해당하는 서비스 크레딧을 받습니다. |
SLI 데이터를 사용하여 시스템이 정의된 SLO 내에 있는지 모니터링하고 SLA를 충족하는지 확인합니다. 잘 정의된 SLI 세트를 사용하여 엔지니어와 개발자는 다음 수준에서 FSI 애플리케이션을 모니터링할 수 있습니다.
- 애플리케이션이 배포된 서비스(예: GKE 또는 Cloud Run) 내에서 직접
- 부하 분산기와 같은 인프라 구성요소에서 제공하는 로그를 사용합니다.
OpenTelemetry는 측정항목, trace, 로그를 비롯한 모든 유형의 원격 분석을 캡처하는 오픈소스 표준과 기술 집합을 제공합니다. Google Cloud Managed Service for Prometheus는 대규모 Prometheus의 측정항목 및 작업을 위한 완전 관리형의 확장 가능한 백엔드를 제공합니다.
SLI, SLO, 오류 예산에 대한 자세한 내용은 SRE 핸드북을 참고하세요.
효과적인 알림 및 모니터링 대시보드와 메커니즘을 개발하려면 Google Cloud 모니터링과 함께 Google Cloud Observability 도구를 사용하세요. 보안 관련 모니터링 및 감지 기능에 대한 자세한 내용은 보안 필라를 참고하세요.
사고 관리 프로세스 정의 및 테스트
잘 정의되고 정기적으로 테스트되는 인시던트 관리 프로세스는 Google Cloud의 FSI 워크로드의 가치, 성능, 보안, 안정성에 직접적으로 기여합니다. 이러한 프로세스를 통해 금융 기관은 엄격한 규제 요구사항을 충족하고, 민감한 데이터를 보호하고, 비즈니스 연속성을 유지하고, 고객의 신뢰를 지킬 수 있습니다.
사고 관리 프로세스를 정기적으로 테스트하면 다음과 같은 이점이 있습니다.
- 최고 부하에서 성능 유지: 정기적인 성능 및 부하 테스트를 통해 금융 기관은 클라우드 기반 애플리케이션과 인프라가 성능 저하 없이 최고 거래량, 시장 변동성, 기타 수요가 높은 시나리오를 처리할 수 있는지 확인할 수 있습니다. 이 기능은 원활한 사용자 환경을 유지하고 금융 시장의 요구사항을 충족하는 데 매우 중요합니다.
- 잠재적인 병목 현상 및 제한사항 식별: 스트레스 테스트는 시스템을 한계까지 밀어붙이므로 금융 기관은 중요한 운영에 영향을 미치기 전에 잠재적인 병목 현상과 성능 제한사항을 식별할 수 있습니다. 이러한 사전 대응적 접근 방식을 통해 금융 기관은 최적의 성능과 확장성을 위해 인프라와 애플리케이션을 조정할 수 있습니다.
- 신뢰성 및 복원력 검증: 카오스 엔지니어링 또는 시뮬레이션된 장애를 비롯한 정기적인 테스트는 금융 시스템의 신뢰성과 복원력을 검증하는 데 도움이 됩니다. 이 테스트를 통해 시스템이 장애로부터 원활하게 복구되고 고가용성을 유지할 수 있습니다. 이는 비즈니스 연속성에 필수적입니다.
- 효과적인 용량 계획 실행: 성능 테스트는 다양한 부하 조건에서 리소스 사용률에 관한 유용한 데이터를 제공하며, 이는 정확한 용량 계획에 매우 중요합니다. 금융 기관은 이 데이터를 사용하여 향후 용량 요구사항을 선제적으로 예측하고 리소스 제약으로 인한 성능 문제를 방지할 수 있습니다.
- 새 기능 및 코드 변경사항을 성공적으로 배포: 자동화된 테스트를 CI/CD 파이프라인에 통합하면 변경사항과 새 배포가 프로덕션 환경에 출시되기 전에 철저히 검증됩니다. 이 접근 방식은 운영 중단을 초래할 수 있는 오류 및 회귀 위험을 크게 줄여줍니다.
- 시스템 안정성에 관한 규제 요구사항 충족: 금융 규정에서는 기관이 중요한 시스템의 안정성과 신뢰성을 보장하기 위해 강력한 테스트 관행을 갖추도록 요구하는 경우가 많습니다. 정기적인 테스트는 이러한 요구사항을 준수함을 입증하는 데 도움이 됩니다.
인시던트 관리 프로세스를 정의하고 테스트하려면 다음 권장사항을 고려하세요.
명확한 사고 대응 절차 수립
잘 정립된 침해 사고 대응 절차에는 다음 요소가 포함됩니다.
- 효과적이고 조율된 대응을 위해 사고 지휘관, 조사관, 커뮤니케이터, 기술 전문가에게 정의된 역할과 책임
- 사고 발생 시 정보가 신속하고 효과적으로 공유되도록 정의된 커뮤니케이션 프로토콜 및 에스컬레이션 경로
- 커뮤니케이션, 트리아지, 조사, 해결 단계를 설명하는 런북 또는 플레이북에 문서화된 절차
- 팀이 효과적으로 대응하는 데 필요한 지식과 기술을 갖추도록 정기적으로 교육하고 준비합니다.
성능 및 부하 테스트를 정기적으로 구현
정기적인 성능 및 부하 테스트를 통해 클라우드 기반 애플리케이션과 인프라가 최대 부하를 처리하고 최적의 성능을 유지할 수 있습니다. 부하 테스트는 실제 트래픽 패턴을 시뮬레이션합니다. 스트레스 테스트는 시스템을 한계까지 실행하여 잠재적인 병목 현상과 성능 제한을 식별합니다. Cloud Load Balancing 및 부하 테스트 서비스와 같은 제품을 사용하여 실제 트래픽을 시뮬레이션할 수 있습니다. 테스트 결과를 바탕으로 최적의 성능과 확장성을 위해 클라우드 인프라와 애플리케이션을 조정할 수 있습니다. 예를 들어 리소스 할당을 조정하거나 애플리케이션 구성을 조정할 수 있습니다.
CI/CD 파이프라인 내에서 테스트 자동화
CI/CD 파이프라인에 자동화된 테스트를 통합하면 배포 전에 변경사항을 검증하여 클라우드 애플리케이션의 품질과 안정성을 보장할 수 있습니다. 이 접근 방식을 사용하면 오류와 회귀의 위험이 크게 줄어들고 더 안정적이고 강력한 소프트웨어 시스템을 구축할 수 있습니다. 단위 테스트, 통합 테스트, 엔드 투 엔드 테스트 등 다양한 유형의 테스트를 CI/CD 파이프라인에 통합할 수 있습니다. Cloud Build 및 Cloud Deploy와 같은 제품을 사용하여 CI/CD 파이프라인을 만들고 관리합니다.
지속적으로 개선하고 혁신하기
클라우드에서 금융 서비스 워크로드의 경우 클라우드로의 마이그레이션은 초기 단계일 뿐입니다. 지속적인 개선과 혁신은 다음과 같은 이유로 필수적입니다.
- 혁신 가속화: AI와 같은 새로운 기술을 활용하여 서비스를 개선합니다.
- 비용 절감: 비효율성을 없애고 리소스 사용을 최적화합니다.
- 민첩성 향상: 시장 및 규제 변화에 신속하게 적응합니다.
- 의사결정 개선: BigQuery, Looker와 같은 데이터 분석 제품을 사용하여 충분한 정보를 바탕으로 선택합니다.
지속적인 개선과 혁신을 위해 다음 권장사항을 고려하세요.
정기적으로 회고 실시
회고는 이슈 대응 절차를 지속적으로 개선하고 정기적인 성능 및 부하 테스트 결과를 기반으로 테스트 전략을 최적화하는 데 매우 중요합니다. 회고를 효과적으로 진행하려면 다음을 수행하세요.
- 팀이 경험을 되돌아보고, 잘된 점을 파악하고, 개선이 필요한 부분을 지적할 수 있는 기회를 제공합니다.
- 프로젝트 중요 단계, 주요 인시던트 또는 중요한 테스트 주기 후에 회고를 진행합니다. 팀은 성공과 실패를 통해 학습하고 프로세스와 관행을 지속적으로 개선할 수 있습니다.
- 시작-중지-계속 모델과 같은 구조화된 접근 방식을 사용하여 회고 세션이 생산적이고 실행 가능한 단계로 이어지도록 합니다.
- 회고를 사용하여 안정성을 개선하고 위험을 줄이기 위해 변경 관리 자동화를 추가로 개선할 수 있는 영역을 파악합니다.
학습 문화 조성
학습 문화는Google Cloud에서 사기 감지 및 맞춤형 금융 조언과 같은 서비스를 개선하기 위한 AI 및 ML 기능과 같은 새로운 기술을 안전하게 탐색할 수 있도록 지원합니다. 학습 문화를 장려하려면 다음을 수행하세요.
- 팀이 실험하고, 지식을 공유하고, 지속적으로 학습하도록 장려합니다.
- 실패를 성장과 개선의 기회로 여기는 책임을 묻지 않는 문화를 채택하세요.
- 팀이 위험을 감수하고 혁신적인 솔루션을 고려할 수 있는 심리적으로 안전한 환경을 조성하세요. 팀은 성공과 실패 모두에서 배우며, 이는 더 탄력적이고 적응력이 뛰어난 조직으로 이어집니다.
- 사고 관리 프로세스 및 테스트 연습에서 얻은 지식 공유를 촉진하는 문화를 개발합니다.
클라우드 기술 최신 정보 확인하기
지속적인 학습은 새로운 보안 조치를 이해하고 구현하며, 고급 데이터 분석을 활용하여 더 나은 통계를 얻고, 금융 업계와 관련된 혁신적인 솔루션을 채택하는 데 필수적입니다.
- 최신 발전, 기능, 권장사항에 대한 정보를 파악하여 Google Cloud 서비스의 잠재력을 극대화하세요.
- 새로운 Google Cloud 기능과 서비스가 도입되면 프로세스를 더욱 자동화하고, 보안을 강화하고, 애플리케이션의 성능과 확장성을 개선할 기회를 파악합니다.
- 관련 컨퍼런스, 웹 세미나, 교육 세션에 참여하여 지식을 넓히고 새로운 기능을 이해하세요.
- 팀원들이 Google Cloud 자격증을 취득하도록 장려하여 조직이 클라우드에서 성공하는 데 필요한 기술을 갖추도록 지원하세요.