Worldpay は開発プロセスを根本的に変革し、Global Kubernetes Orchestration Platform (GKOP) と呼ばれる社内開発者向けプラットフォームの基盤として 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 との統合により短期トークンを提供し、埋め込み認証情報の必要性を排除することでセキュリティを強化します。
- 堅牢なセキュリティ:このプラットフォームにはコンテナランタイムのセキュリティと脆弱性レポート機能が含まれており、拡大する攻撃対象領域を管理する際の開発者の労力を軽減します。
- 使いやすさと信頼性:ハウツーガイド、サービスのサンプル、具体的な手順を提供することで、成熟度の異なるどのチームにとっても利用しやすくなります。このプラットフォームは高い信頼性を実現するように設計されており、ピーク負荷に対応し、開発者の信頼を醸成します。
- 広範な Operator: GKOP はサードパーティーおよび自社構築の Operator を活用して Kubernetes API を拡張し、セルフサービス機能を提供します。たとえば、これにはデータベース、キャッシング、メッセージング用の Operator や、PCI コンプライアンス用のカスタム Egress プロキシ Operator などが含まれます。
API 駆動型セルフサービスと自動検証
GKOP の基盤となるのは、API 駆動型セルフサービス機能です。これにより、すべてのプラットフォームサービスが 1 つの製品に統合され、開発者がそれぞれの要求を満たせるようになります。Worldpay はこのパラダイムに取り組み、新しいプラットフォームが追加されるたびに自動化され、これがセルフサービスの原則に準拠するものであることを確認します。
安定性を維持し、この柔軟性に関連するリスクを軽減するために、Worldpay は自動化された検証とレビューを非常に重視しています。Kubernetes Webhook を介して設定されたカスタムのバリデータサービスは、API リクエストがベストプラクティスと設定済みのルールを順守しているかどうかをチェックします。このプロセスには以下のことが含まれます。
- ロールベースのアクセス制御 (RBAC) チェック:ユーザーの権限を検証します。
- 変更用 Webhook:適切なデフォルト値を追加したり、Pod トポロジー分散制約などの改善点を追加します。
- スキーマ準拠:Kubernetes API は、リソースがスキーマに準拠しているかどうかを自動的にチェックします。
- 検証用 Webhook:ベストプラクティスに準拠していないことをユーザーに警告したり、許容されない値についてはリクエストを拒否します。
- 永続性と調整:リソースが永続化され、調整されます。
この自動検証により、推奨事項やドキュメントへのリンクが提供されます。また、OpenShift のアップグレード中の問題を防ぐために、Pod Disruption Budget などの重要なルールも適用します。プラットフォームリソースの場合、GitHub のプルリクエストによってバリデータがトリガーされます。バリデータはスキーマの検証を実行して変更を提案し、自動的に決定できない場合は人のエンジニアにレビューをエスカレーションすることもできます。事前設定済みで承認されたリソースを使用してテンプレート化されたオンボーディング・ワークフローと自動マージ機能を組み合わせることで、スケーリングがさらに加速し、開発者にとっての使いやすさが向上します。
優れた開発者エクスペリエンスを強化
Worldpay は開発者を社内顧客と認識しており、シームレスなエクスペリエンスを提供することに重点を置いています。これには、2 年前に公開された開発者ポータルから容易にアクセスできるドキュメントも含まれます。ポータルはインナーソースモデルに従っており、開発者は誰でも貢献できます。
Worldpay はさらに、GKOP Free Tier バージョンも構築しました。これは、機能が制限されたサンドボックス環境で毎日再プロビジョニングされます。これにより、Worldpay の社員なら誰でも正式なオンボーディングなしにログインしたり、namespace を作成したり、ワークロードをデプロイしたりできます。この「スタートが簡単な」方法は、新しいユーザーが GKOP の包括的なセルフサービス機能を理解するのに役立ちます。
開発者エンゲージメントは、フォーラム、ロードショー、OpenShift チャットを通じて促進されます。ここでは開発者が質問したり、フィードバックを提供したりできます。Worldpay は、開発者がプラットフォームのロードマップに影響を与え、OpenShift の Windows コンテナサポートの実装や GitOps による継続的デプロイメントモデルの改善などのイニシアチブに貢献することを積極的に奨励しています。
GKOP の未来
リリースから 5 年が経った現在、Worldpay は GKOP を進化させ続けています。今後の計画には、障害や手動プロセスの削減、導入の増加、より多くの OpenShift 機能の利用を通じて、開発者による導入をさらに強化することが含まれます。また、OpenShift Service Mesh、データベースと Kafka メッセージングのサポート、継続的かつ合成テストによるテストカバレッジ、拡張されたプラットフォーム・ステータス・ダッシュボードなどの新機能の追加に向けて取り組んでいます。Worldpay の小規模な専任チームは、OpenShift と Kubernetes を使った仕事に情熱を傾け、コラボレーティブで楽しい環境を促進しています。
今年初めにロンドンで開催された OpenShift Commons Gathering での (Worldpay の Matt Simons 氏、Bernd Malmqvist 氏、Michal Umlawski 氏による) Worldpay の講演をご覧ください。
製品トライアル
Red Hat ラーニングサブスクリプション | 製品トライアル
執筆者紹介
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 (人工知能)
お客様が AI ワークロードをどこでも自由に実行することを可能にするプラットフォームについてのアップデート
オープン・ハイブリッドクラウド
ハイブリッドクラウドで柔軟に未来を築く方法をご確認ください。
セキュリティ
環境やテクノロジー全体に及ぶリスクを軽減する方法に関する最新情報
エッジコンピューティング
エッジでの運用を単純化するプラットフォームのアップデート
インフラストラクチャ
世界有数のエンタープライズ向け Linux プラットフォームの最新情報
アプリケーション
アプリケーションの最も困難な課題に対する Red Hat ソリューションの詳細
仮想化
オンプレミスまたは複数クラウドでのワークロードに対応するエンタープライズ仮想化の将来についてご覧ください