Worldpay는 GKOP(Global Kubernetes Orchestration Platform)라는 내부 개발자 플랫폼의 기반으로 Red Hat OpenShift를 활용하여 개발 프로세스를 근본적으로 혁신했습니다. 이러한 전략적 변화를 통해 Worldpay는 개발 팀에 셀프 서비스 기능을 제공하여 역량을 강화하고, 협업과 효율성의 문화를 조성할 수 있었습니다.
GKOP: OpenShift 그 이상
2020년에 출시된 GKOP는 Red Hat OpenShift를 기반으로 구축된 엔터프라이즈 플랫폼입니다. PCI DSS를 준수하며 여러 지역에서 28개의 클러스터를 관리합니다. Worldpay는 GKOP를 단순한 플랫폼이 아닌 제품으로 간주합니다. 원활하고 안정적으로 실행되어야 하기 때문에 GKOP 팀은 이를 중심으로 광범위한 자동화를 구축했습니다.
“GKOP은 단순한 OpenShift 이상의 가치를 제공하기 때문에 우리 고유의 제품입니다. 우리는 그 위에 많은 자동화를 구축했기 때문에 GKOP의 핵심은 오케스트레이션과 구성 관리입니다. ‘우리는 이것을 어떻게 할 것인가? 어떻게 수많은 클러스터를 대규모로 운영하고 관리할 것인가?’라는 질문에서 출발했죠.”라고 Worldpay의 플랫폼 엔지니어링 디렉터인 Bernd Malmqvist는 질문하며, 다음의 설명을 덧붙였습니다. “우리의 클러스터 관리는 기본적으로 구성을 렌더링하고, 그 결과물을 하위 클러스터에 적용하는 방식으로 이루어집니다. 재해 복구 훈련에서는 아예 한 지역을 삭제한 뒤 처음부터 끝까지 새로 구축하는데, 이 모든 과정이 1시간 반 안에 완료됩니다. 구성 파일이 사전에 렌더링되어 있기 때문에 가능한 일입니다. 클러스터가 다시 온라인 상태가 되면 즉시 구성을 적용할 수 있습니다.”
이러한 클러스터 민첩성 덕분에 Worldpay는 샌드박스 및 개발 클러스터를 생성하며, 이 클러스터는 각각 매일 그리고 매주 정기적으로 재프로비저닝됩니다. 스테이징 및 프로덕션과 같이 우선순위가 높은 환경은 더 오래 지속됩니다. 주간 플랫폼 릴리스는 변경 사항을 묶어 하위 환경에서 상위 환경으로 승격시킵니다. 이를 통해 모든 클러스터가 서로 동일한 복사본임을 보장하여 프로덕션 단계에 도달하기 전에 회귀를 파악하는 데 도움이 됩니다.
성공적인 플랫폼 제품의 핵심 요소
Worldpay는 사용자 경험과 효율성을 중심으로 매력적인 플랫폼 제품을 정의합니다. 사용하기 쉽고, 소비자 요구 사항에 중점을 두고, 즉각적인 피드백과 함께 셀프 서비스를 제공해야 합니다. Worldpay는 GKOP를 구축할 때 다음과 같은 목표를 세웠습니다.
- 다채로운 기능과 유연성: 이 플랫폼은 독립적이면서도 인터랙티브 기능을 제공하여 개발자에게 유연성과 지침을 제공합니다.
- 통합 CI/CD 툴셋: 이 플랫폼은 애플리케이션 라이프사이클 전반에 걸쳐 개발자를 안내하는 빌트인 CI/CD 툴과 함께 제공되므로, 개발자가 다양한 툴과 통합하는 데 시간을 할애할 필요가 없습니다.
- 빌트인 엔터프라이즈 서비스 통합: GKOP는 NTP, 인증 엔드포인트, 비밀 정보 관리, 인증서 관리, 로깅과 같은 Worldpay의 엔터프라이즈 서비스와 원활하게 통합됩니다. 특히 AWS STS와의 통합은 단기 토큰을 제공하여 자격 증명을 내장할 필요가 없어 보안을 강화합니다.
- 견고한 보안: 이 플랫폼은 확장되는 공격 표면을 관리하는 데 따른 개발자의 수고를 줄이기 위해 컨테이너 런타임 보안 및 취약점 보고 기능을 포함합니다.
- 사용 편의성과 신뢰성: 사용 방법 가이드, 예시 서비스, 단계별 지침을 제공함으로써 다양한 성숙도 수준의 팀이 플랫폼에 쉽게 접근할 수 있습니다. 이 플랫폼은 최대 부하를 처리하고 개발자의 신뢰를 높일 수 있도록 안정적으로 설계되었습니다.
- 광범위한 오퍼레이터: GKOP는 타사 오퍼레이터와 사내 구축 오퍼레이터를 모두 활용하여 쿠버네티스 API를 확장하고 셀프 서비스 기능을 제공합니다. 예를 들어 데이터베이스용 오퍼레이터, 캐싱, 메시징, 그리고 PCI 컴플라이언스를 위한 사용자 정의 이그레스 프록시 오퍼레이터 등이 있습니다.
API 기반 셀프 서비스 및 자동화된 검증
GKOP의 초석은 API 기반 셀프 서비스 기능으로, 모든 플랫폼 서비스를 하나의 응집력 있는 제품으로 통합하여 개발자가 자신의 요청을 이행할 수 있도록 지원합니다. Worldpay는 이러한 패러다임에 전념하여 모든 신규 플랫폼 추가가 자동화되고 셀프 서비스 원칙을 준수하도록 합니다.
안정성을 유지하고 이러한 유연성과 관련된 위험을 완화하기 위해 Worldpay는 자동화된 검증 및 검토를 매우 중요하게 생각합니다. 쿠버네티스 웹후크를 통해 구성된 사용자 정의 유효성 검사기 서비스는 API 요청이 모범 사례와 구성된 룰을 준수하는지 확인합니다. 이 프로세스에는 다음이 포함됩니다.
- 역할 기반 접근 제어(RBAC) 확인: 사용자 권한을 확인합니다.
- 변이 웹훅: 포드 토폴로지 확산 제약 조건과 같은 합리적인 기본값 또는 개선 사항을 추가합니다.
- 스키마 적합성: 쿠버네티스 API는 리소스가 스키마를 준수하는지 자동으로 확인합니다.
- 유효성 검증 웹훅: 모범 사례를 준수하지 않을 경우 사용자에게 경고하거나 허용되지 않는 값에 대한 요청을 거부합니다.
- 영구 저장과 조정(Persistence and reconciliation): 이후 해당 리소스는 영구적으로 저장되고 조정됩니다.
이러한 자동화된 검증을 통해 권장 사항과 도큐멘테이션 링크를 제공할 수 있습니다. 또한 포드 중단 예산과 같은 중요한 룰을 실행하여 OpenShift 업그레이드 중에 문제가 발생하지 않도록 합니다. 플랫폼 리소스의 경우, GitHub 풀 요청이 유효성 검사기를 트리거하여 스키마 유효성 검사를 수행하고 변경 사항을 제안합니다. 자동으로 의사 결정을 내릴 수 없는 경우에는 머신이 아닌 담당 엔지니어에게 검토를 에스컬레이션할 수도 있습니다. 사전 구성되고 승인된 리소스가 포함된 템플릿 기반 온보딩 워크플로우와 자동 병합 기능이 결합되어 개발자의 확장과 사용 편의성을 더욱 가속화합니다.
우수한 개발자 경험 조성
Worldpay는 개발자를 내부 고객으로 인식하여 원활한 경험을 제공하는 데 중점을 둡니다. 여기에는 2년 전에 출시된 개발자 포털을 통해 쉽게 액세스할 수 있는 설명서가 포함됩니다. 포털은 내부 소스 모델을 따르므로 모든 개발자가 기여할 수 있습니다.
또한 Worldpay는 기능이 제한적인 샌드박스 환경인 GKOP 프리 티어 버전을 구축했습니다. 이 환경은 매일 다시 프로비저닝되며, 모든 Worldpay 직원이 공식적인 온보딩 없이 로그인하여 네임스페이스를 생성하고 워크로드를 배포할 수 있도록 합니다. 이 “손쉬운 시작 방법”은 신규 사용자가 GKOP의 포괄적인 셀프 서비스 기능을 이해하는 데 도움이 됩니다.
소비자 참여는 개발자가 질문하고 피드백을 제공할 수 있는 포럼, 로드쇼, OpenShift 채팅을 통해 촉진됩니다. Worldpay는 개발자가 플랫폼의 로드맵에 영향을 미치고 OpenShift Windows 컨테이너 지원 구현 또는 GitOps를 통한 지속적 배포 모델 개선과 같은 이니셔티브에 기여하도록 적극적으로 권장합니다.
GKOP의 미래
운영 5년이 된 Worldpay는 GKOP를 지속적으로 발전시키고 있습니다. 향후 계획에는 차단 요소와 수동 프로세스를 줄이고, 도입을 늘리고, 더 많은 OpenShift 기능을 활용하여 개발자 여정을 더욱 개선하는 것이 포함됩니다. 또한 OpenShift Service Mesh, 데이터베이스와 Kafka 메시징 지원, 지속적 그리고 합성 테스트를 통한 테스트 적용 범위, 확장된 플랫폼 상태 대시보드와 같은 새로운 기능을 추가하는 것을 목표로 합니다. 이 모든 과정에서 Worldpay의 소규모이지만 헌신적인 팀은 OpenShift와 쿠버네티스를 사용하여 협업하고 즐거운 환경을 조성하는 데 여전히 열정을 쏟고 있습니다.
올해 초 런던에서 열린 OpenShift Commons Gathering에서 Worldpay의 Matt Simons, Bernd Malmqvist, Michal Umlawski가 진행한 발표를 확인해보세요.
저자 소개
Red Hatter since 2018, technology historian and founder of The Museum of Art and Digital Entertainment. Two decades of journalism mixed with technology expertise, storytelling and oodles of computing experience from inception to ewaste recycling. I have taught or had my work used in classes at USF, SFSU, AAU, UC Law Hastings and Harvard Law.
I have worked with the EFF, Stanford, MIT, and Archive.org to brief the US Copyright Office and change US copyright law. We won multiple exemptions to the DMCA, accepted and implemented by the Librarian of Congress. My writings have appeared in Wired, Bloomberg, Make Magazine, SD Times, The Austin American Statesman, The Atlanta Journal Constitution and many other outlets.
I have been written about by the Wall Street Journal, The Washington Post, Wired and The Atlantic. I have been called "The Gertrude Stein of Video Games," an honor I accept, as I live less than a mile from her childhood home in Oakland, CA. I was project lead on the first successful institutional preservation and rebooting of the first massively multiplayer game, Habitat, for the C64, from 1986: https://neohabitat.org . I've consulted and collaborated with the NY MOMA, the Oakland Museum of California, Cisco, Semtech, Twilio, Game Developers Conference, NGNX, the Anti-Defamation League, the Library of Congress and the Oakland Public Library System on projects, contracts, and exhibitions.
채널별 검색
오토메이션
기술, 팀, 인프라를 위한 IT 자동화 최신 동향
인공지능
고객이 어디서나 AI 워크로드를 실행할 수 있도록 지원하는 플랫폼 업데이트
오픈 하이브리드 클라우드
하이브리드 클라우드로 더욱 유연한 미래를 구축하는 방법을 알아보세요
보안
환경과 기술 전반에 걸쳐 리스크를 감소하는 방법에 대한 최신 정보
엣지 컴퓨팅
엣지에서의 운영을 단순화하는 플랫폼 업데이트
인프라
세계적으로 인정받은 기업용 Linux 플랫폼에 대한 최신 정보
애플리케이션
복잡한 애플리케이션에 대한 솔루션 더 보기
가상화
온프레미스와 클라우드 환경에서 워크로드를 유연하게 운영하기 위한 엔터프라이즈 가상화의 미래