Worldpay ha trasformato radicalmente i propri processi di sviluppo sfruttando Red Hat OpenShift come base per la piattaforma di sviluppo interna, denominata Global Kubernetes Orchestration Platform (GKOP). Questo cambiamento strategico ha permesso a Worldpay di offrire ai suoi team di sviluppo funzionalità self service, promuovendo una cultura improntata su collaborazione ed efficienza.
GKOP: Non solo OpenShift
GKOP è una piattaforma di livello enterprise basata su Red Hat OpenShift, lanciata nel 2020. È conforme agli standard PCI DSS e gestisce un parco di 28 cluster in più regioni. Worldpay considera GKOP un prodotto, non solo una piattaforma. Per garantire operatività e affidabilità, il team GKOP ha sviluppato un'automazione completa.
“GKOP è il nostro prodotto, perché offre molto oltre a OpenShift. Abbiamo creato molta automazione attorno al prodotto e la struttura portante di GKOP è costituita dall'orchestrazione e dalla gestione della configurazione.” Ci siamo chiesti: “Come possiamo realizzarlo? Come possiamo eseguire un parco di cluster e gestirli su larga scala?”, si è chiesto Bernd Malmqvist, Director of Platform Engineering presso Worldpay. “La nostra gestione dei cluster consiste sostanzialmente nel rendering della configurazione [che viene poi] applicata ai cluster downstream. Negli esercizi di ripristino di emergenza, eliminiamo una regione e la ricostruiamo da zero, dall'inizio alla fine, entro un'ora e mezza. Ciò è possibile perché la configurazione è pre-renderizzata. Quando un cluster torna online, è possibile applicare immediatamente la configurazione.”
L'agilità dei cluster consente a Worldpay di creare sandbox e cluster di sviluppo, e provvede regolarmente al provisioning (quotidianamente per le sandbox e settimanalmente per i cluster). Gli ambienti con priorità più alta, come quelli di staging e produzione, sono più longevi. Le versioni settimanali della piattaforma raggruppano le modifiche e le promuovono a partire dagli ambienti di livello inferiore fino a quelli di livello superiore, assicurandosi che tutti i cluster siano copie l'uno dell'altro; ciò aiuta a rilevare le regressioni prima che raggiungano la fase di produzione.
I pilastri di una piattaforma convincente
La definizione di piattaforma convincente data da Worldpay è incentrata sull'esperienza dell'utente e sull'efficienza. Deve essere facile da usare, incentrata sulle esigenze dei consumatori e deve offrire funzionalità self-service con feedback immediato. Durante la creazione di GKOP, Worldpay aveva i seguenti obiettivi.
- Flessibilità e ampia offerta di funzionalità: la piattaforma offre funzionalità indipendenti ma interattive, che offrono flessibilità e assistenza agli sviluppatori.
- Set integrato di strumenti CI/CD: è dotato di strumenti CI/CD integrati che guidano gli sviluppatori nel ciclo di vita dell'applicazione, evitando loro di dedicare ore all'integrazione con vari strumenti.
- Servizi di livello enterprise integrati: GKOP si integra perfettamente con i servizi enterprise di Worldpay come NTP, endpoint di autenticazione, gestione dei segreti, gestione dei certificati e logging. In particolare, la sua integrazione con AWS STS fornisce token di breve durata. Questo migliora la sicurezza, eliminando la necessità di credenziali di tipo embedded.
- Sicurezza affidabile: la piattaforma include la sicurezza del runtime dei container e la creazione di report sulle vulnerabilità per ridurre il lavoro degli sviluppatori nella gestione di una superficie di attacco in espansione.
- Semplicità di utilizzo e affidabilità: l’offerta di guide pratiche, servizi di esempio e istruzioni dettagliate garantisce l'accessibilità da parte dei team con diversi livelli di preparazione. La piattaforma è progettata per essere affidabile, in grado di gestire i picchi di carico e di ispirare la fiducia degli sviluppatori.
- Estendibilità degli operatori: GKOP sfrutta operatori di terze parti e interni per estendere l'API Kubernetes e fornire funzionalità self service, come operatori per database, caching, messaggistica e un operatore proxy di uscita personalizzato per la conformità PCI.
Convalida automatizzata e self service basata su API
Un elemento chiave di GKOP è la sua funzionalità self service basata su API, che unifica tutti i servizi della piattaforma in un prodotto compatto, consentendo agli sviluppatori di soddisfare le proprie richieste. Worldpay si impegna a seguire questo modello assicurandosi che ogni nuova piattaforma aggiunta sia automatizzata e rispetti ai principi del self service.
Per mantenere la stabilità e ridurre i rischi associati a questa flessibilità, Worldpay attribuisce grande importanza alla convalida e alla revisione automatizzate. Il servizio di convalida personalizzato, configurato tramite webhook di Kubernetes, verifica la conformità delle richieste API alle procedure consigliate e alle regole configurate. Questo processo prevede i seguenti passaggi.
- Controllo dell'accesso basato sui ruoli (RBAC): verifica delle autorizzazioni utente.
- Webhook mutante: aggiunta di valori predefiniti o miglioramenti sensibili, come i vincoli di diffusione della topologia dei pod.
- Conformità dello schema: l'API Kubernetes verifica automaticamente se la risorsa è conforme allo schema.
- Webhook di convalida: segnala agli utenti la mancata conformità alle procedure consigliate o il rifiuto di richieste di valori non consentiti.
- Persistenza e riconciliazione: la risorsa viene resa permanente e riconciliata.
Questa convalida automatizzata può fornire consigli e collegamenti alla documentazione. Inoltre, applica regole critiche, come quelle per i budget di interruzione dei pod, al fine di prevenire problemi durante gli upgrade di OpenShift. Per le risorse della piattaforma, una richiesta pull di GitHub attiva il validatore, che esegue la convalida dello schema, suggerisce le modifiche e può anche inoltrare le revisioni a un ingegnere se una decisione non può essere presa automaticamente. Flussi di lavoro di onboarding basati su modelli con risorse preconfigurate e approvate, insieme all'unione automatica, accelerano ulteriormente la scalabilità e la facilità d'uso per gli sviluppatori.
Crea un'esperienza di sviluppo ottimale
Riconoscendo gli sviluppatori come clienti interni, Worldpay punta a fornire un'esperienza semplificata. Include una documentazione facilmente accessibile tramite un portale per sviluppatori lanciato due anni fa. Il portale segue un modello di sorgente interna, che consente a qualsiasi sviluppatore di contribuire.
Worldpay ha anche creato una versione del piano gratuito di GKOP, un ambiente sandbox ripristinato quotidianamente con funzionalità limitate, che consente a qualsiasi dipendente Worldpay di accedere, creare uno spazio dei nomi e distribuire carichi di lavoro senza una procedura di onboarding formale. Questo modo semplice per iniziare aiuta i nuovi utenti a comprendere le funzionalità self service complete di GKOP.
Il coinvolgimento dei consumatori viene promosso attraverso forum, roadshow e chat su OpenShift, in cui gli sviluppatori possono porre domande e inviare commenti. Worldpay incoraggia attivamente gli sviluppatori a influenzare la roadmap della piattaforma e a contribuire alle iniziative, come l'implementazione del supporto per i container Windows di OpenShift o il miglioramento dei modelli di deployment continuo con GitOps.
Il futuro di GKOP
Dopo cinque anni di attività, Worldpay continua a lavorare sull’evoluzione di GKOP. In futuro, prevede l’ulteriore miglioramento del percorso di sviluppo riducendo ostacoli e processi manuali, aumentando l'adozione e utilizzando più funzionalità di OpenShift. Punta inoltre ad aggiungere nuove funzionalità come OpenShift Service Mesh, supporto per database e messaggistica Kafka, test continui e sintetici e una dashboard ampliata per lo stato della piattaforma. In ogni caso, il piccolo ma dedicato team di Worldpay continua a svolgere il proprio lavoro con OpenShift e Kubernetes, creando un ambiente collaborativo e piacevole.
Guarda l'intervento di Matt Simons, Bernd Malmqvist e Michal Umlawski (Worldpay) all'evento OpenShift Commons Gathering di Londra, tenutosi all'inizio di quest'anno.
Prova prodotto
Red Hat Learning Subscription | Versione di prova
Sull'autore
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.
Altri risultati simili a questo
RPM and DNF features and enhancements in Red Hat Enterprise Linux 10.1
From maintenance to enablement: Making your platform a force-multiplier
The Truth About Netcode | Compiler
Becoming a Coder | Command Line Heroes
Ricerca per canale
Automazione
Novità sull'automazione IT di tecnologie, team e ambienti
Intelligenza artificiale
Aggiornamenti sulle piattaforme che consentono alle aziende di eseguire carichi di lavoro IA ovunque
Hybrid cloud open source
Scopri come affrontare il futuro in modo più agile grazie al cloud ibrido
Sicurezza
Le ultime novità sulle nostre soluzioni per ridurre i rischi nelle tecnologie e negli ambienti
Edge computing
Aggiornamenti sulle piattaforme che semplificano l'operatività edge
Infrastruttura
Le ultime novità sulla piattaforma Linux aziendale leader a livello mondiale
Applicazioni
Approfondimenti sulle nostre soluzioni alle sfide applicative più difficili
Virtualizzazione
Il futuro della virtualizzazione negli ambienti aziendali per i carichi di lavoro on premise o nel cloud