Effettuare il refactoring delle zone di destinazioneRefactor landing zones

Una zona di destinazione è un ambiente per ospitare i carichi di lavoro di cui è stato effettuato il pre- provisioning tramite codice.A landing zone is an environment for hosting your workloads that's preprovisioned through code. Poiché l'infrastruttura della zona di destinazione è definita nel codice, è possibile eseguire il refactoring in modo analogo a qualsiasi altra codebase.Since landing zone infrastructure is defined in code, it can be refactored similar to any other codebase. Il refactoring è il processo di modifica o ristrutturazione del codice sorgente per ottimizzare l'output di tale codice senza modificarne lo scopo o la funzione di base.Refactoring is the process of modifying or restructuring source code to optimize the output of that code without changing its purpose or core function.

La metodologia pronta usa il concetto di refactoring per accelerare la migrazione e rimuovere blocchi comuni.The Ready methodology uses the concept of refactoring to accelerate migration and remove common blockers. I passaggi nella Panoramica di Ready illustrano un processo che inizia con un modello di zona di destinazione predefinito che si allinea meglio alla funzione di hosting.The steps in the ready overview discuss a process that starts with predefined landing zone template that aligns best with your hosting function. Eseguire quindi il refactoring o aggiungere il codice sorgente per espandere le zone di destinazione in grado di fornire tale funzione attraverso una maggiore sicurezza, operazioni o governance.Then refactor or add to the source code to expand the landing zones ability to deliver that function through improved security, operations, or governance. Nell'immagine seguente viene illustrato il concetto di refactoring.The following image illustrates the concept of refactoring.

Illustrazione del refactoring della zona di destinazione: descritta nella sezione successiva di questo articolo Figura 1: refactoring della zona di destinazione.Landing zone refactoring illustration - described in later section of this article Figure 1: Landing zone refactoring.

Blocchi comuniCommon blockers

Quando i clienti adottano il cloud, le considerazioni sulla zona di destinazione sono l'unico blocco più comune per l'adozione e i risultati aziendali correlati al cloud.When customers adopt the cloud, landing zone considerations are the single most common blocker to adoption and cloud-related business results. I clienti tendono a raggiungere uno dei due blocchi seguenti.Customers tend to lean towards one of the following two blockers. Diversi team si avvicinano spesso a uno di questi due blocchi, causando deadlock culturali che rendono difficile l'adozione.Various teams often lean towards one of these two blockers, resulting in cultural deadlocks that make adoption difficult.

Entrambi i blocchi principali sono radicati in un'unica convinzione, l'ambiente cloud e i data center esistenti dovrebbero essere a parità di funzionalità in termini di operazioni, governance e sicurezza.Both of the primary blockers are rooted in one belief, the cloud environment and the existing datacenters should be at or near feature parity regarding operations, governance, and security. Si tratta di un obiettivo a lungo termine.This is a wise long-term goal. Tuttavia, il dolore deriva dal delicato equilibrio tra la tempistica per raggiungere tale obiettivo e la velocità necessaria per fornire i risultati aziendali.But the pain comes from the delicate balance between the timing to achieve that goal and the speed required to deliver business results.

Blocco: azione troppo prestoBlocker: Acting too soon

Sono trascorsi anni e sforzi significativi per raggiungere lo stato attuale di sicurezza, governance e operazioni nel Data Center corrente.It took years and significant effort to reach the current state of security, governance, and operations in the current datacenter. Sono inoltre necessari osservazioni, apprendimento e personalizzazione per soddisfare i vincoli univoci di tale ambiente.It also required observations, learning, and customization to meet the unique constraints of that environment. La replica di queste stesse procedure e configurazioni può richiedere tempo.Replicating those same procedures and configurations will take time. Il raggiungimento della parità completa delle funzionalità può comportare anche l'esecuzione di un ambiente che esegue le sottoprestazioni nel cloud.Reaching complete feature parity may also result in an environment that underperforms in the cloud. Questo approccio di parità, inoltre, comporta in genere una significativa spesa non pianificata nell'ambiente cloud.This parity approach also commonly leads to significant unplanned overspending in the cloud environment. Non tentare di applicare i requisiti di stato corrente a un ambiente di stato futuro come gate di gestione temporanea.Don't try to apply current-state requirements to a future-state environment as an early stage gate. Un approccio di questo tipo si rivela raramente redditizio.Such an approach rarely proves to be profitable.

Blocco comune: funzione troppo presto Figura 2: l'azione troppo presto è un blocco comune.Common blocker: Acting too soon Figure 2: Acting too soon is a common blocker.

Nell'immagine precedente il cliente ha un obiettivo di 100 carichi di lavoro in esecuzione nel cloud.In the image above, the customer has an objective of 100 workloads running in the cloud. Per ottenere questo aspetto, il cliente distribuirà probabilmente il primo carico di lavoro e i primi dieci carichi di lavoro prima di poter rilasciare uno di essi nell'ambiente di produzione.To get there, the customer will likely deploy their first workload and then their first ten or so workloads before they're ready to release one of them to production. Infine, raggiungeranno l'obiettivo del piano di adozione e avranno un portfolio affidabile nel cloud.Eventually, they'll reach the objective of the adoption plan and have a robust portfolio in the cloud. Ma la x rossa nell'immagine mostra la posizione in cui i clienti si bloccano di frequente.But the red x in the image shows where customers commonly get stuck. In attesa dell'allineamento totale è possibile ritardare il primo carico di lavoro in base a settimane, mesi o anche anni.Waiting for total alignment can delay the first workload by weeks, months, or even years.

Blocco: funzioni troppo tardiBlocker: Acting too late

D'altra parte, la funzione troppo tardi può avere conseguenze significative a lungo termine sulla riuscita dell'operazione di adozione del cloud.On the other hand, acting too late can have significant long-term consequences on the success of the cloud adoption effort. Se il team attende di raggiungere la parità delle funzionalità fino a quando non vengono completate le operazioni di adozione, si verificheranno blocchi di blocco non necessari e saranno necessarie diverse escalation per tenere traccia degli sforzi.If the team waits to reach feature parity until the adoption efforts are complete, they will encounter unnecessary roadblocks and require several escalations to keep the efforts on track.

Blocco comune: funzione troppo tardi per la figura 3: l'azione troppo tardiva è un blocco comune.Common blocker: Acting too late Figure 3: Acting too late is a common blocker.

Analogamente a quanto avviene troppo presto, in questa immagine il cliente attende troppo tempo per raggiungere la conformità aziendale nelle zone di destinazione.Similar to acting too soon, in this image, the customer waits too long to reach enterprise readiness across landing zones. Attendendo troppo a lungo, il cliente sarà vincolato alla quantità di refactoring ed espansione che possono eseguire nell'ambiente.By waiting too long, the customer will be constrained on the amount of refactoring and expansion they can do in the environment. Questi vincoli limitano la capacità di proseguire.Those constraints will limit their ability to drive continued success.

Trovare il saldoFinding balance

Per evitare questi blocchi comuni, è consigliabile un approccio iterativo basato sul piano di adozione cloud ben strutturato, che ottimizza le opportunità di apprendimento e riduce al minimo il tempo per il successo aziendale.To avoid these common blockers, we suggest an iterative approach based on well-structured cloud adoption plan, which maximizes learning opportunities and minimizes time to business success. Il refactoring e le attività parallele sono fondamentali per questo approccio.Refactoring and parallel efforts are critical to this approach.

Avviso

I team di adozione che hanno un obiettivo a metà termine (entro 24 mesi) per ospitare più di 1.000 asset (app, infrastruttura o asset di dati) nel cloud sono molto improbabile che vengano completati con un approccio di refactoring.Adoption teams who have a mid-term objective (within 24 months) to host more than 1,000 assets (apps, infrastructure, or data assets) in the cloud are highly unlikely to be successful using a refactoring approach. La curva di apprendimento è troppo alta e la sequenza temporale è troppo stretta per consentire approcci organici al raggiungimento delle competenze.The learning curve is too high and the timeline too tight to allow for organic approaches to skills attainment. Un punto di partenza più completo che richiede meno personalizzazione sarà un percorso migliore per raggiungere gli obiettivi.A more complete starting point requiring less customization will be a better path to achieve your objectives. È probabile che i partner di implementazione siano in grado di offrire un approccio migliore.Your implementation partners will likely be able to guide you through a better approach.

Il resto di questo articolo è incentrato su alcuni vincoli chiave che possono consentire un approccio di refactoring, riducendo al minimo i rischi.The remainder of this article will focus on some key constraints that can empower a refactoring approach, while minimizing risk.

TeoriaTheory

Il concetto di refactoring di una zona di destinazione è semplice, ma l'esecuzione richiede un Guardrails appropriato.The concept of refactoring a landing zone is simple, but execution requires proper guardrails. Il concetto illustrato sopra descrive il flusso di base:The concept shown above outlines the basic flow:

  • Quando si è pronti per creare la prima zona di destinazione, iniziare con una zona di destinazione iniziale definita tramite un modello.When you're ready to build your first landing zone, start with an initial landing zone defined via a template.
  • Una volta distribuita l'area di destinazione, usare gli alberi delle decisioni negli articoli successivi nella Expand your landing zone sezione del sommario per effettuare il refactoring e aggiungere l'area di destinazione iniziale.Once that landing zone is deployed, use the decision trees in the subsequent articles under the Expand your landing zone section of the table of contents to refactor and add to your initial landing zone.
  • Ripetere gli alberi delle decisioni e il refactoring fino a quando non si dispone di un ambiente aziendale che soddisfi i requisiti avanzati dei team di sicurezza, operazioni e governance.Repeat decision trees and refactoring until you have an enterprise-ready environment that meets the enhanced requirements of your security, operations, and governance teams.

Approccio di sviluppoDevelopment approach

Il vantaggio di un approccio basato sul refactoring è la possibilità di creare percorsi di iterazione paralleli per lo sviluppo.The advantage of a refactoring-based approach, is the ability to create parallel iteration paths for development. Nell'immagine seguente viene fornito un esempio di due percorsi di iterazione paralleli: l'adozione del cloud e la piattaforma cloud.The image below provides an example of two parallel iteration paths: cloud adoption and cloud platform. In entrambi i casi, il rischio minimo di diventare un blocco per gli sforzi quotidiani del team.Both progress at their own pace, with minimal risk of becoming a blocker to either team's daily efforts. L'allineamento al piano di adozione e il refactoring di Guardrails possono compromettere le attività cardine e la chiarezza sulle dipendenze a stato futuro.Alignment on the adoption plan and refactoring guardrails can lead to agreement about milestones and clarity about future-state dependencies.

Iterazione parallela della zona di destinazione Figura 4: iterazione parallela di destinazione.Landing zone parallel iteration Figure 4: Landing zone parallel iteration.

Nei percorsi di iterazione di esempio precedenti, il team di adozione del cloud sta eseguendo la migrazione del portfolio dei carichi di lavoro 100 al cloud.In the example iteration paths above, the cloud adoption team is migrating their portfolio of 100 workloads to the cloud. In parallelo, il team della piattaforma cloud si concentra sul piano di adozione del cloud per garantire che l'ambiente sia pronto per tali carichi di lavoro.In parallel, the cloud platform team is focused on staying ahead of the cloud adoption plan to ensure the environment is prepared for those workloads.

In questo esempio, le iterazioni pianificate vengono eseguite come indicato di seguito:In this example, the planned iterations run as follows:

  • Il team della piattaforma cloud avvia le attività di sviluppo distribuendo una zona di destinazione iniziale.The cloud platform team starts the development efforts by deploying an initial landing zone. Tale area di destinazione consente al team di adozione del cloud di distribuire e iniziare a testare il primo carico di lavoro.That landing zone allows the cloud adoption team to deploy and begin testing their first workload.
  • Per prepararsi alla distribuzione successiva del team di adozione del cloud di 10 carichi di lavoro, il team della piattaforma cloud lavora in anticipo per effettuare il refactoring e aggiungere un ambiente connesso, trattando il cloud come una rete perimetrale.To prepare for the cloud adoption team's next deployment of 10 workloads, the cloud platform team works ahead to refactor and add a connected environment, treating the cloud as a perimeter network.
  • Prima che il team di adozione possa rilasciare il primo carico di lavoro di produzione, il team responsabile della sicurezza richiede una verifica della sicurezza.Before the adoption team can release their first production workload, the security team requires a security review. Mentre il team di adozione distribuisce i primi 10 carichi di lavoro, il team della piattaforma si sposta in anticipo per definire e implementare i requisiti di sicurezza.While the adoption team deploys their first 10 workloads, the platform team moves ahead to define and implement security requirements.
  • Nel momento in cui il primo carico di lavoro viene rilasciato in produzione, entrambi i team devono disporre di informazioni sufficienti per prepararsi a un modello di servizio condiviso a lungo termine.By the time the first workload is released to production, both teams should have enough learnings to prepare for a longer term shared service model. La centralizzazione delle architetture di base del servizio consentirà di allineare la governance e il team operativo.Centralizing core service architectures will help align governance and operations team. La centralizzazione dei servizi principali consente di preparare il team di adozione per la scalabilità e il rilascio delle successive diverse ondate di carico di lavoro di produzione.Centralizing core services will help prepare the adoption team to scale and release the next several waves of production workloads.
  • Poiché il team si avvicina al proprio obiettivo di migrare i carichi di lavoro di 100, il team inizierà a spostarsi in un ambiente cloud Center of excellent Collaboration Model e team structure.As the team approaches their goal of migrating 100 workloads, the team will natural begin to move towards more of a cloud center of excellence collaboration model and team structure.

La configurazione di un ambiente aziendale può richiedere tempo.Configuring an enterprise-ready environment will take time. Questo approccio non eliminerà questo requisito.This approach will not eliminate that requirement. Questo approccio è invece progettato per rimuovere i blocchi iniziali e creare opportunità per la piattaforma e i team di adozione per apprendere insieme.Instead, this approach is designed to remove early blockers and create opportunities for the platform and adoption teams to learn together.

Refactoring della zona di destinazione GuardrailsLanding zone refactoring guardrails

Tutti i modelli di area di destinazione iniziali presentano limitazioni.All initial landing zone templates have limitations. Guardrails o i criteri durante il refactoring devono riflettere tali limitazioni.Guardrails or policies during refactoring should reflect those limitations. Prima di iniziare un processo di refactoring della zona di destinazione, è importante comprendere i requisiti a lungo termine del piano di adozione del cloud e la classificazione dei carichi di lavoro candidati, rispetto alle limitazioni dei modelli iniziali.Before beginning a landing zone refactoring process, it is important to understand the long-term requirements of the cloud adoption plan and classification of the candidate workloads, compared to the initial template limitations.

Come esempio di definizione del refactoring di Guardrails, è possibile confrontare l'approccio di sviluppo nell'esempio precedente e il progetto CAF Migration Landing Zone.As an example of establishing refactoring guardrails, lets compare the development approach in the prior example and the CAF Migration landing zone blueprint.

  • Secondo le ipotesi del progetto CAF Migration Landing Zone, questa area di destinazione iniziale non è progettata per i dati sensibili o i carichi di lavoro di importanza critica.Per the assumptions of the CAF Migration landing zone blueprint, this initial landing zone is not designed for sensitive data or mission-critical workloads. Tali funzionalità dovranno essere aggiunte tramite il refactoring.Those features will have to be added through refactoring.
  • In questo esempio, si supponga che il portfolio dei carichi di lavoro 100 necessiti di funzionalità di hosting dei dati cruciali e sensibili.In this example, lets assume that the portfolio of 100 workloads will require both mission critical and sensitive data hosting capabilities.

Per bilanciare questi due requisiti in competizione, il team di adozione e il team della piattaforma accetteranno e funzioneranno nei casi seguenti:To balance these two competing requirements, the adoption team and platform team will agree to and operate under the following conditions:

  • Il team di adozione del cloud assegna priorità ai carichi di lavoro di produzione che non hanno accesso ai dati sensibili e non vengono considerati cruciali.The cloud adoption team will prioritize production workloads that don't have access to sensitive data and are not deemed mission critical.
  • Prima della versione di produzione, il team di sicurezza e operatività convaliderà l'allineamento ai criteri precedenti.Prior to production release, the security and operations team will validate alignment to the prior policy.
  • Il team della piattaforma cloud collaborerà con i team di sicurezza e governance per implementare una linea di base di sicurezza.The cloud platform team will work with the security and governance teams to implement a security baseline. Una volta che la sicurezza approva l'implementazione, il team di adozione verrà cancellato per eseguire la migrazione dei carichi di lavoro che possono accedere ad alcuni dati sensibili.Once security approves the implementation, the adoption team will be cleared to migrate workloads that have access to some sensitive data.
  • Il team della piattaforma cloud collaborerà con il team operativo per implementare una baseline di gestione.The cloud platform team will work with the operations team to implement a management baseline. Una volta che il team operativo approva l'implementazione, il team di adozione verrà cancellato per eseguire la migrazione dei carichi di lavoro con un livello di criticità superiore.Once the operations team approves the implementation, the adoption team will be cleared to migrate workloads with a higher level of criticality.

Per questo esempio, il set precedente di condizioni concordate consentirà al team di adozione di iniziare a eseguire il lavoro di migrazione.For this example, the above set of agreed upon conditions will allow the adoption team get started on their migration effort. Consente inoltre al team della piattaforma di definire le interazioni con altri team, man mano che si basano su un ambiente a lungo termine per l'azienda.It also helps the platform team shape their interactions with other teams, as they build towards a longer-term enterprise ready environment.

Soddisfare i requisiti a lungo termine durante il refactoringMeeting long-term requirements while refactoring

La sezione della metodologia pronta per l'espansione dell'area di destinazione contribuirà a raggiungere i requisiti a lungo termine.The section of the Ready methodology on expanding your landing zone will aid in moving towards the longer term requirements. Man mano che il team di adozione del cloud progredisce con il piano di adozione, vedere espandere la zona di destinazioneper indicazioni utili per prendere decisioni ed effettuare il refactoring per soddisfare i requisiti in evoluzione di diversi team.As the cloud adoption team progresses with their adoption plan, review Expand your landing zone) for guidance to help make decisions and refactor to meet the evolving requirements of various teams.

Iterazione della zona di destinazione parallela Figura 5: metodologie più approfondite che facilitano l'iterazione di una zona di destinazioneParallel landing zone iteration Figure 5: Deeper methodologies assisting a parallel landing zone iteration.

Ogni sottosezione di Espandi la zona di destinazione esegue il mapping a una delle aggiunte descritte nell'immagine precedente.Each subsection of Expand your landing zone maps to one of the additions outlined in the image above. Oltre a queste espansioni di base, le metodologie più approfondite, ad esempio governare o gestire, di questo framework aiuteranno a superare le modifiche di base della zona di destinazione per implementare discipline a lungo termine.Beyond those basic expansions, the deeper methodologies (such as govern or manage) of this framework will aid in going beyond basic landing zone modifications to implement long-term disciplines.

Passaggi successiviNext steps

Per iniziare a usare un processo di refactoring, iniziare a usare le zone di destinazione di Azure.To get started on a refactoring process, get started using Azure landing zones.