애플리케이션 플랫폼을 변경하는 방법

플랫폼을 변경하면 애플리케이션과 인프라를 최신화하여 멀티 클라우드 및 하이브리드 환경 전반에서 성능, 확장성, 제어 능력을 개선할 수 있는 효율적인 방법이 제공됩니다. 이 모든 것이 애플리케이션을 다시 작성하지 않고도 가능합니다.

학습 목표

이 글을 읽은 후에 다음을 할 수 있습니다:

  • 플랫폼 변경으로 애플리케이션 최신화가 지원되는 방법 설명
  • 플랫폼 변경 전략의 핵심 단계 나열
  • 플랫폼 변경을 통해 성장을 촉진하고 위험을 줄이며 비용을 관리하는 방법 설명

관련 콘텐츠


계속 알아보시겠어요?

인터넷에서 가장 인기 있는 인사이트를 한 달에 한 번 정리하는 Cloudflare의 월간 요약본 theNET를 구독하세요!

Cloudflare가 개인 데이터를 수집하고 처리하는 방법은 Cloudflare의 개인정보 취급방침을 참조하세요.

글 링크 복사

플랫폼 변경이란?

리플랫폼은 클라우드 마이그레이션 전략으로, 조직에서 컴퓨팅 환경 간에 애플리케이션을 부분적으로 이동시키는 경우가 많습니다. 전체 재구축 또는 리호스팅과는 달리 리플랫폼은 핵심 애플리케이션 기능을 변경하지 않고 인프라 수준에서 선택적으로 개선하는 데 중점을 둡니다. 그 목표는 일반적으로 보안을 개선하고, 애플리케이션 인프라를 통합하며, 새로운 기능 추가를 간소화하고, 향후 개발을 위해 보다 효율적인 기반을 마련하는 것입니다.

조직에서 플랫폼 변경을 선택하는 이유는?

레거시, 하이브리드, 분편화된 클라우드 환경 전반에서 성능을 유지하고 복잡성을 관리하는 데 점점 더 많은 어려움을 겪으면서 플랫폼을 변경해야 하는 조직이 많습니다. 대부분의 경우 이러한 복잡성은 다음과 같은 실제 상황에 의해 자체적으로 만들어집니다.

  • 분산된 클라우드 채택: 개별 팀에서 자체 애플리케이션에만 집중하여 클라우드 솔루션을 선택할 때 완전한 자율성을 갖는 경우가 많았습니다. 이렇게 하면 초기 배포가 가속화되기는 했지만, 아키텍처의 일관성이 없고 비즈니스 전반에 걸쳐 중복 작업이 발생했습니다.
  • 인수합병: M&A를 통한 비즈니스 확장 때문에 또 다른 복잡성이 추가됩니다. 새로 통합된 애플리케이션은 서로 다른 아키텍처와 클라우드 공급자에서 실행되는 경우가 많으므로 통합과 일관된 관리가 어렵습니다.
  • 부분적인 클라우드 채택: 많은 기업에서 클라우드 네이티브 성능, 확장성, 복원력을 위해 애플리케이션을 다시 설계하지 않고 애플리케이션을 클라우드로 옮기는 기본적인 리호스팅으로 클라우드 여정을 시작했습니다. 따라서 클라우드 투자 가치가 제한되고 운영상의 공백이 생깁니다.

이러한 구조적 요인 외에도, 애플리케이션이 여러 클라우드에 걸쳐 확장됨에 따라 인프라 비용이 계속 증가합니다. 기존의 데이터 센터 전략과 단편적인 클라우드 채택으로 인해 생태계가 비대해지고 분편화되었습니다.

보안에 대한 압박도 커질 수 있습니다. 기업에서는 일반적으로 두 가지 어려운 경로 중 하나를 따릅니다. 각 퍼블릭 클라우드 내에 네이티브 보안 제어를 구축하기 위해 팀에서는 일관성이 없는 정책, UI, API를 탐색해야 합니다. 타사 보안 오버레이를 적용하면 운영 오버헤드가 증가하고 가시성 격차가 발생하는 경우가 많습니다.

성능 및 콘텐츠 전송 요구 사항도 그에 못지않게 부담이 되고 있습니다. 팀에서는 미디어 최적화, 콘텐츠 파이프라인, 다중 장치 전송을 위해 여러 도구와 전문 워크플로우를 관리해야 합니다. 개발자는 혁신보다 대기 시간 및 플랫폼 제약 문제를 해결하는 데 더 많은 시간을 할애합니다.

이러한 문제들이 융합되면서 플랫폼 변경이 성장의 원동력이 될 수 있습니다. 플랫폼 변경은 기업에서 환경을 간소화하고 무분별한 운영 방식을 줄이며 멀티 클라우드 및 하이브리드 아키텍처에서 제어 능력을 되찾는 데 도움이 되는 동시에 팀에서 더 큰 민첩성과 자신감으로 미래 혁신을 지원할 수 있도록 지원합니다.

플랫폼 변경의 작동 방식

플랫폼 변경은 인프라 변경이 일어나기 훨씬 전에 시작되는 구조화된 프로세스입니다.

현재 애플리케이션의 평가

플랫폼 변경을 결정하기 전에 조직에서는 기존 애플리케이션을 평가해야 합니다. 여기에는 각 애플리케이션의 아키텍처, 종속성, 인프라 풋프린트를 이해하는 것이 포함됩니다. 이러한 가시성이 없으면 팀에서는 호환되지 않는 서비스를 마이그레이션하거나 주요 성능 병목 현상을 놓치게 되어 새로운 환경으로 이어질 수 있습니다.

평가해야 할 중요한 영역은 다음과 같습니다.

  • 플랫폼 호환성: 현재 애플리케이션 구성 요소가 대상 플랫폼(예: Kubernetes, 서버리스, 컨테이너)에서 안정적으로 실행될 수 있나요? 유연성을 제한하는 독점 서비스나 하드웨어에 대한 종속성이 있나요?
  • 확장성 제한: 애플리케이션을 수평적으로 확장하는 데 방해가 되는 아키텍처 제약이 있나요? 여러 클라우드 또는 여러 지역에 걸쳐 워크로드를 효율적으로 분산할 수 있나요?
  • 성능 및 대기 시간: 어떤 구성 요소가 대기 시간 또는 처리량 문제에 민감한가요? 이미지 전송, 동영상 렌더링, 캐싱을 위한 최적화 기회가 있나요?
  • 보안 및 규정 준수: 현재 어떤 클라우드 네이티브 보안 제어가 마련되어 있으며, 그 휴대성은 어느 정도인가요? 이러한 정책을 여러 환경에 걸쳐 다시 적용할 때 위험이 있나요?
  • 운영 오버헤드: 애플리케이션을 현재 상태로 유지하고 모니터링하는 데 얼마나 많은 도구와 수동 프로세스가 필요할까요?

이 평가를 통해 어떤 애플리케이션이 플랫폼 변경에 적합한 후보인지 우선순위를 정할 수 있습니다. 일부 애플리케이션은 전체 리팩터링이나 간단한 리프트 앤 시프트(리호스팅)에 더 적합할 수 있으므로 모든 애플리케이션의 플랫폼을 변경할 필요는 없습니다. 목표는 플랫폼 변경으로 비용 절감, 성능 향상, 운영 간소화 측면에서 가장 큰 가치가 제공되는 부분을 파악하는 것입니다.

프로세스 초기에 플랫폼 호환성과 확장성을 철저히 평가하면 애플리케이션을 마이그레이션하는 동안 예기치 못한 비용으로 인한 비용이 발생하는 것을 방지할 수 있습니다. 이 계획 단계에서는 마이그레이션 경로가 이론적인 아키텍처 다이어그램이 아닌 실제 제약 조건 및 비즈니스 우선 순위를 기반으로 하도록 합니다.

기존 스택을 대체하지 않고 개선하기

플랫폼 변경은 새로운 플랫폼을 선택하고 효과가 있는 것을 포기하는 것이 아닙니다. 대부분의 기업에서는 깨끗한 상태로 시작하지 않습니다. 대신, 점진적인 접근 방식을 취합니다. 즉, 확장성, 탄력성, 성능을 향상시키기 위해 기존 스택을 개선하는 동시에, 점진적으로 서비스형 플랫폼(PaaS) 기능을 도입하여 현재의 서비스형 인프라(IaaS)서비스형 소프트웨어(SaaS) 전략을 보완합니다.

PaaS는 대체물이 아니라 가속기 역할을 합니다. 기업에서는 기존 환경 위에 PaaS 솔루션을 계층화함으로써 전체 아키텍처 재구성을 방해하지 않고도 자동 확장, 관리형 서비스, 더 빠른 배포와 같은 클라우드 네이티브 이점을 누릴 수 있습니다. 이러한 접근 방식을 통해 팀에서는 핵심 시스템을 안정적으로 유지하면서 중요한 구성 요소를 최신화할 수 있습니다.

기존 스택에 PaaS를 도입할 때 성공을 보장하는 데 도움이 되는 몇 가지 핵심 요소는 다음과 같습니다.

  • 확장성 및 탄력성: 현재의 아키텍처와 원활하게 통합되고, 수평적 확장, 자동 프로비저닝, 그리고 트래픽 급증을 원활하게 흡수할 수 있는 기능을 제공하는 솔루션을 채택합니다.
  • 클라우드 네이티브 서비스: 관리형 데이터베이스, 서버리스 컴퓨팅, 통합 콘텐츠 전송을 살펴보면서 운영상의 복잡성을 줄이고 개발 주기를 단축합니다.
  • 생태계 및 지원: 기존 DevOps 도구 및 CI/CD 파이프라인과의 호환성을 보장하고 강력한 문서, 커뮤니티 지원, 엔터프라이즈급 서비스 약속을 갖춘 공급자를 선택합니다.
  • 규제 준수 및 데이터 주권: 데이터 보호, 지역 호스팅, 규제 준수에 대한 규제 준수 표준을 충족하는 서비스를 선택하여 확장 규모에 맞춰 거버넌스를 조정합니다.
  • 투명한 가격 모델: 예측 가능한 사용량 기반 가격 정책으로 플랫폼의 우선순위를 지정하여 시간이 지남에 따라 비용을 관리합니다.

대부분의 기업에서는 하이브리드 또는 멀티 클라우드 전략에 계속 의존하여 성능, 비용 최적화, 위험 관리의 균형을 유지합니다. 점진적 플랫폼 변경이 이러한 현실에 적합하며, 조직에서는 단일 벤더나 아키텍처에 종속되지 않고 안정성과 민첩성을 향상할 수 있습니다.

호환성을 위한 애플리케이션 업데이트

목적지가 정의되면 개발팀에서는 새로운 환경에서 효과적으로 실행할 애플리케이션을 준비해야 합니다. 이를 위해서는 플랫폼 호환성을 보장하고 성능을 최적화하기 위해 기술적 조정이 필요한 경우가 많습니다.

원활한 전환을 위한 핵심 단계는 다음과 같습니다.

  • 코드 및 종속성 업데이트: 하드코딩된 구성을 리팩터링하고, 사용 중단된 라이브러리를 대체하며, 이동성을 방해하는 모놀리식 제약 조건을 제거합니다.
  • 데이터베이스 마이그레이션: 복제, 백업 및 복원, 라이브 마이그레이션 등의 적절한 전략을 선택하여 환경 간에 이동하는 동안 데이터 무결성을 유지합니다.
  • API 호환성: 외부 및 내부 API 종속성을 평가하여 버전 조정을 보장하고 마이그레이션 중이나 마이그레이션 후에 중대한 변경 사항을 방지합니다.
  • 컨테이너화: 많은 워크로드의 경우 애플리케이션 구성 요소를 컨테이너화하면 환경 전반에 걸쳐 이동성과 오케스트레이션이 원활해집니다.
  • 코드형 구성: 인프라 및 서비스 구성을 선언적으로 관리하여 드리프트의 위험을 줄입니다.

이러한 업데이트는 프로덕션을 밀접하게 반영하는 스테이징 환경에서 반복적으로 테스트해야 하며, 팀에서 본격적인 배포 전에 문제를 해결할 수 있도록 해야 합니다.

마이그레이션 및 검증

플랫폼 변경의 마지막 단계에서는 애플리케이션을 마이그레이션하고 새로운 환경에서의 성능, 안정성, 무결성을 검증하는 데 중점을 둡니다. 이때 애플리케이션 마이그레이션 계획을 잘 수립하고 마이그레이션 전략을 잘 정의하면 좋은 결과를 얻을 수 있습니다. 마이그레이션 실행 중, 특히 실시간 트랜잭션 또는 분산 데이터베이스와 관련된 시스템의 경우 데이터 무결성을 유지하는 것이 중요합니다.

이를 위해 조직에서는 암호화 해시 또는 체크섬을 사용하여 전송 중에 데이터가 변경되지 않고 유지되는지 확인하는 경우가 많습니다. 암호화를 이용하면 전송 중인 데이터의 기밀성과 무결성이 보장되는 반면, 디지털 서명을 이용하면 변조를 감지하거나 추적성을 보장할 수 있습니다. 마이그레이션 후 해시 값을 비교하거나, 일관성 검사를 실행하거나, 데이터베이스 네이티브 도구를 사용하여 모든 데이터가 정확하게 복제되었는지 확인하여 무결성을 검증합니다.

블루-그린 배포, 카나리아 릴리스, 트래픽 미러링 등의 기술을 통해 다운타임을 최소화해야 하며, 이를 통해 팀은 전체 전환 없이 애플리케이션 동작을 검증할 수 있습니다.

  • 블루-그린 배포에서는 두 개의 동일한 환경(블루 및 그린)이 사용되므로 최소한의 중단으로 두 환경 사이에 트래픽이 전환될 수 있습니다.
  • 카나리아 릴리스는 소규모 사용자 하위 집합에 변경 사항을 점진적으로 적용하여 확장하기 전에 문제를 모니터링합니다.
  • 트래픽 미러링은 라이브 프로덕션 트래픽의 사본을 스테이징 환경으로 전송하여 최종 사용자에게 영향을 주지 않고 실시간 테스트가 가능합니다.

애플리케이션이 가동되면 초점은 검증으로 바뀝니다. 기능 테스트를 수행하여 핵심 로직, 워크플로우, 사용자 경험이 의도한 대로 작동하는지 확인합니다. 성능 테스트에서는 플랫폼이 변경된 애플리케이션을 이전 상태와 비교하여 개선 사항을 확인하거나 속도 저하, 오류, 속도, 안정성 문제를 찾아냅니다. 보안 검증을 통해 액세스 제어, 모니터링 도구, 보안 정책이 새로운 스택에 정확하게 다시 적용되었는지 확인합니다. 또한관찰 가능성도 필수적입니다. 런타임 동작에 대한 가시성을 제공하고 문제를 조기에 식별할 수 있도록 메트릭, 로그, 추적이 마련되어 있어야 합니다.

궁극적으로 검증에 성공하면 애플리케이션이 실행되는지 확인할 수 있지만, 더 잘 실행되고 더 안전하게 실행되며 향후 개발 요구 사항에 따라 확장하고 진화할 수 있는 위치에 있는지도 확인할 수 있습니다.

Cloudflare가 애플리케이션 최신화를 지원하는 방법

Cloudflare에서는 최적화된 콘텐츠 전송, 현지화된 데이터 스토리지, 동적 트래픽 조정, 통합 Zero Trust 보안을 갖춘 SASE 아키텍처를 통해 기존 스택을 확장하여 플랫폼 변경을 지원합니다. 규제 준수에 대한 가시성을 확보하면서 생성형 AI 위협, 악의적 구성 요소, API 공격을 차단합니다. Cloudflare에서는 서버리스 컴퓨팅 및 에지 캐싱을 통해 점진적으로 애플리케이션을 최신화하여 멀티 클라우드 및 하이브리드 환경 전반에 걸쳐 확장성, 성능, 제어 능력을 개선하도록 지원합니다.

애플리케이션 최신화AI 보안에 대해 자세히 알아보세요.

FAQ

플랫폼 변경이란?

리플랫폼은 조직이 애플리케이션의 일부를 한 컴퓨팅 환경에서 다른 컴퓨팅 환경으로 옮기는 클라우드 마이그레이션 전략입니다. 이는 핵심 애플리케이션 코드를 다시 작성하지 않고, 주로 인프라 수준에서 목표 지향적인 개선을 수행하는 활동으로 이루어집니다. 주요 목표는 보안을 강화하고, 인프라를 통합하며, 기능 추가를 간소화하고, 향후 개발을 위해 보다 효율적인 기반을 구축하는 것입니다.

조직에서 애플리케이션 리플랫폼을 선택하는 이유는 무엇입니까?

조직은 기존 시스템, 하이브리드 설정 및 다양한 클라우드 환경에서 성능을 유지하고 복잡성을 관리하는 데 따르는 문제를 해결하기 위해 플랫폼 변경을 선택하는 경우가 많습니다. 이러한 복잡성은 여러 팀에 의한 분산된 클라우드 채택, 인수 합병을 통한 새로운 애플리케이션의 통합, 그리고 클라우드의 이점을 완전히 활용하지 못한 초기의 부분적인 클라우드 도입으로 인해 발생할 수 있습니다. 단편화된 환경에서 인프라 비용 증가와 보안 압력 증가는 리플랫폼의 필요성을 촉진합니다.

리플랫폼은 리호스팅 또는 전체 재구축과 어떻게 다릅니까?

리호스팅(최소한의 변경으로 애플리케이션을 클라우드로 이전) 또는 전체 재구축(애플리케이션을 완전히 재개발)과 달리 리플랫폼은 인프라 수준에서 선택적으로 개선하는 데 중점을 둡니다. 애플리케이션 전체를 다시 작성하지 않고 애플리케이션과 인프라를 최신화하는 것을 목표로 합니다.

리플랫폼 프로세스의 초기 단계는 무엇입니까?

리플랫폼 프로세스는 기존 애플리케이션에 대한 철저한 평가로 시작됩니다. 여기에는 아키텍처, 종속성 및 인프라 풋프린트를 이해하는 것이 포함됩니다. 이 중요한 단계는 호환 가능한 서비스, 잠재적인 성능 병목 현상, 마이그레이션의 전반적인 실현 가능성을 파악하여 마이그레이션 계획이 실제 제약 조건 및 비즈니스 목표에 부합하도록 보장합니다.

리플랫폼에서 서비스형 플랫폼(PaaS) 모델은 어떤 역할을 합니까?

PaaS 모델은 기존 환경을 완전히 대체하지 않고 클라우드 네이티브 기능을 추가하여 리플랫폼을 가속화합니다. 기업에서는 전체 아키텍처 재구성에 따른 광범위한 중단 없이 자동 확장, 관리형 서비스, 더 빠른 배포와 같은 이점을 얻을 수 있습니다. 이 점진적인 접근 방식은 핵심 시스템의 안정성을 유지하면서 중요한 구성 요소를 최신화하는 데 도움이 됩니다.

리플랫폼 중 호환성을 위해 애플리케이션을 업데이트할 때 필요한 주요 기술 조정은 무엇입니까?

원활한 전환을 위해 개발 팀은 일반적으로 하드 코딩된 구성을 리팩터링하고, 오래된 라이브러리를 교체하고, 코드에서 모놀리식 제약 조건을 제거해야 합니다. 다른 주요 단계로는 데이터 무결성을 유지하면서 데이터베이스를 마이그레이션하는 것, 호환성을 위해 애플리케이션 프로그래밍 인터페이스(API) 종속성을 평가하는 것, 이동성을 위해 애플리케이션 구성 요소를 컨테이너화하는 것, 그리고 코드형 구성(CaC)을 통해 인프라를 관리하는 것이 포함됩니다.

조직이 애플리케이션 마이그레이션 및 검증 중 다운타임을 최소화하려면 어떻게 해야 합니까?

조직은 “블루-그린” 배포, 카나리아 릴리스, 트래픽 미러링과 같은 기술을 사용하여 애플리케이션 마이그레이션 및 검증 중 다운타임을 최소화할 수 있습니다. 블루-그린 배포는 트래픽을 원활하게 전환하기 위해 두 개의 동일한 환경을 운영하는 것을 포함합니다. 카나리아 릴리스는 더 폭넓은 배포 전에 변경 사항을 소규모 사용자 그룹에 점진적으로 도입하는 것입니다. 또한 트래픽 미러링은 최종 사용자에게 영향을 주지 않고 테스트할 수 있도록 라이브 프로덕션 트래픽을 스테이징 환경으로 보내는 것을 말합니다.

마이그레이션 단계에서 데이터 무결성을 유지하기 위해 어떤 방법이 사용됩니까?

마이그레이션 중 데이터 무결성을 유지하기 위해 조직에서는 암호화 해시 또는 체크섬을 사용하여 전송 중에 데이터가 변경되지 않고 유지되는지 확인하는 경우가 많습니다. 조직은 전송 중에 데이터 기밀성과 무결성을 보장하기 위해 암호화를 사용하고, 변조를 감지하거나 추적성을 제공하기 위해 디지털 서명을 사용합니다. 마이그레이션 후 해시 값을 비교하거나, 일관성 검사를 실행하거나, 데이터베이스 네이티브 도구를 사용하여 정확한 복제를 확인함으로써 데이터 무결성을 검증합니다.

Cloudflare는 리플랫폼을 통해 애플리케이션 최신화를 어떻게 지원합니까?

Cloudflare는 최적화된 콘텐츠 전송, 현지화된 데이터 스토리지, 동적 트래픽 조정, 통합 Zero Trust 보안과 같은 기능으로 기존 애플리케이션 스택을 개선하여 리플랫폼을 지원합니다. Cloudflare는 생성형 AI(GenAI) 위협, 악성 구성 요소 및 API 공격을 방어하는 데 도움을 주며, 규제 준수를 위한 가시성도 제공합니다. Cloudflare의 서버리스 컴퓨팅 및 에지 캐싱 기능을 통해 애플리케이션을 점진적으로 최신화하여 다양한 클라우드 및 하이브리드 환경 전반에서 확장성, 성능 및 제어 능력을 개선할 수 있습니다.