Udostępnij za pośrednictwem


Planowanie nowoczesnych platform aplikacji

Metodologia planowania Cloud Adoption Framework pomaga utworzyć ogólny plan wdrożenia chmury w celu kierowania programami i zespołami zaangażowanymi w transformację cyfrową opartą na chmurze. Te wskazówki zawierają szablony służące do tworzenia listy prac i planów tworzenia niezbędnych umiejętności w zespołach, które są oparte na tym, co próbujesz zrobić w chmurze.

Zastosowanie metodologii planowania koncentruje się na pięciu zasad racjonalizacji majątku cyfrowego. Najbardziej typowa ścieżka do chmury koncentruje się na szybkości, wydajności i powtarzalności procesów migracji i modernizacji. Z pięciu rs, planowanie zwykle określa priorytety opcji ponownego hostu z ograniczoną obsługą równoległą dla opcji ponownego inicjowania i odbudowy.

Majątek cyfrowy

Podczas planowania majątku cyfrowego należy zebrać dane spisu i racjonalizować majątek. W planie wdrożenia kontenera ważne jest, aby wszystkie zasoby, na przykład maszyny wirtualne, dane i aplikacje, były grupowane według obsługiwanego obciążenia. Po zakończeniu grupowania i podstawowej racjonalizacji można ocenić te obciążenia, aby określić pakiet i ponownie hostować lub zmienić opcje.

Standardowy szablon planu wdrożenia chmury odpowiada za typy pracy wymaganej w typowym wysiłku dotyczącym wdrażania chmury. Należy jednak dodać zadania do planu pakowania obciążenia do kontenerów i aranżacji aprowizacji kontenerów.

Przestroga

W tym artykule założono, że czytelnik korzysta już z najlepszych rozwiązań opisanych w serii artykułów dotyczących tworzenia planu wdrożenia chmury w usłudze Azure DevOps. Jeśli śledzisz plan wdrożenia chmury w arkuszu kalkulacyjnym lub innych narzędziach do śledzenia projektów, poniższe sekcje nadal mają zastosowanie, ale należy dostosować kroki umożliwiające podjęcie działań w zakresie dodawania danych do planu.

Ostrzeżenie

Włączenie nowoczesnej strategii platformy aplikacji do standardowych procesów migracji (lub fabryki migracji) będzie wymagało dojrzałej implementacji zadań związanych z projektowaniem architektur obciążeń przed migracją. Kontynuowanie tej strategii bez tych zadań spowoduje opóźnienie procesu migracji i może prowadzić do złych decyzji dotyczących architektury wdrożonych hostów kontenerów i obsługi obciążeń.

Identyfikowanie potencjalnych obciążeń

W scenariuszu nowoczesnej platformy aplikacji długoterminowe zwroty, które wymagają większych inwestycji z góry, mają priorytet nad bardziej wydajnymi procesami migracji. Długoterminowe inwestycje są reprezentowane w określonych częściach planu jako zwiększony nacisk na umożliwienie innowacji i usprawnianie operacji dla określonych grup obciążeń.

Aby rozpocząć dopasowywanie strategii i planu, zidentyfikuj wszelkie obciążenia, które prawdopodobnie będą miały wpływ na dodanie nowoczesnych platform aplikacji w strategii wdrażania chmury. Te założenia zostaną zweryfikowane przed wdrożeniem wszelkich zmian technicznych. Aby ułatwić identyfikację potencjalnych kandydatów, poszukaj następujących kryteriów w portfolio obciążeń:

  • Aktywne inwestycje w programowanie lub metodyki DevOps: Procent obciążeń produkcyjnych będzie w fazie aktywnego programowania. Niektóre mogą być nawet zarządzane za pomocą ciągłych praktyk Metodyki DevOps.
  • Przenośność obciążenia: Niektóre obciążenia mają wpływ na zgodność, ochronę danych lub ograniczenia operacyjne, które mogą wymagać przenośności między chmurą prywatną, krawędzią, a nawet wieloma dostawcami chmury publicznej.
  • Konsolidacja obciążeń: Wiele obciążeń (szczególnie obciążeń o niskim wykorzystaniu) może być kandydatami do konsolidacji na hostach kontenerów, co skutkuje kilkoma serwerami/maszynami wirtualnymi i zmniejszeniem kosztów operacyjnych.
  • Starsze obciążenia: Starsze obciążenia mogą blokować aktualizacje systemów operacyjnych, a nawet zapobiegać migracji do chmury. Starsze obciążenia, które nie są zgodne z funkcjami platformy Azure, mogą być kandydatem do migracji na hoście kontenera.

Dokumentowanie obciążeń kandydatów

Uwaga

Poniższa lista zagadnień powinna być udokumentowana tylko dla kandydatów do migracji zidentyfikowanych przy użyciu powyższych kryteriów.

Podczas tworzenia planu wdrożenia chmury każde obciążenie jest udokumentowane zgodnie ze wskazówkami w temacie Definiowanie i określanie priorytetów obciążeń. Każde obciążenie, które są kandydatami do scenariusza nowoczesnej platformy aplikacji, będzie wymagać dodatkowych informacji w celu przeprowadzenia planu. W tym artykule podkreślono znaczenie dokumentowania danych wejściowych biznesowych i technicznych w celu zdefiniowania obciążenia. W przypadku kandydatów do nowoczesnej platformy aplikacji należy dodać następujące punkty danych do definicji obciążenia.

Dane wejściowe biznesowe

Poniżej przedstawiono punkty danych związane z działalnością biznesową, które mogą mieć wpływ na decyzję o dołączeniu obciążenia do nowoczesnej strategii platformy aplikacji.

  • Sterowniki zgodności: Jakie konkretne kryteria zgodności są istotne dla hostowania tego obciążenia w chmurze prywatnej?
  • Sterowniki ochrony danych: Jakie środki ochrony danych napędzają zagadnienia dotyczące hostowania tego obciążenia w chmurze prywatnej?
  • Ograniczenia operacyjne: Jakie ograniczenia operacyjne są związane z zagadnieniami dotyczącymi hostowania tego obciążenia w chmurze prywatnej?
  • Wyniki nowoczesnej platformy aplikacji: Który z poniższych elementów jest czynnikiem stojącym za oceną tego obciążenia jako kandydata do kontenera? Metodyka DevOps, przenośność, konsolidacja, starsza wersja lub wiele z tych sterowników.
  • Model operacyjny: Czy to obciążenie będzie zarządzane centralnie (przez centralny zespół IT/CCoE), co spowoduje oddzielenie centralnie (przez zespół ds. obciążeń) lub operacje przedsiębiorstwa (centralna pomoc techniczna i operacje specyficzne dla obciążeń)?

Dane wejściowe techniczne

Poniżej przedstawiono punkty danych zespołów technologicznych, które mogą mieć wpływ na decyzję o dołączeniu obciążenia do nowoczesnej strategii platformy aplikacji.

Zagadnienia dotyczące lokalizacji:

Zagadnienia związane z miejscem, w którym będzie hostowane obciążenie.

  • Wymaganie dotyczące hostingu w chmurze publicznej: Czy istnieje określone ograniczenie techniczne związane z wymaganiami chmury publicznej?
  • Wymaganie hostingu w chmurze prywatnej: Czy istnieje określone ograniczenie techniczne związane z wymaganiem dotyczącym chmury prywatnej?
  • Wymaganie dotyczące hostingu usługi Edge: Czy istnieje określone ograniczenie techniczne związane z wymaganiem dotyczącym krawędzi?
  • Wymaganie dotyczące przenośności: Czy istnieje określone ograniczenie techniczne związane z wymaganiami dotyczącymi przenośności w chmurze?

Zagadnienia dotyczące operacji:

Zagadnienia związane z operacjami platformy, hostów i obciążeń.

  • Podstawowa platforma w chmurze: Organizacje powinny zdefiniować podstawową platformę w chmurze w celu zapewnienia narzędzi do zarządzania operacjami. Niektóre organizacje mogą mieć więcej niż jedną podstawową platformę w chmurze do zarządzania różnymi typami operacji. Jaka jest podstawowa platforma w chmurze do obsługi tego obciążenia?
  • Dodatkowe platformy operacyjne: Czy to obciążenie będzie również zarządzane przez dodatkowe platformy operacyjne?
  • Wymagania dotyczące hostingu w chmurze: Czy to obciążenie wymaga określonej strategii hostingu w chmurze? Przenośność chmury publicznej, chmury prywatnej lub chmury
  • Ustandaryzowana platforma orkiestracji: Jeśli firma ma standardowe rozwiązanie do orkiestracji kontenerów, uwzględnij nazwę ustandaryzowanej platformy do uwzględnienia. Przykłady: Azure Kubernetes Service (AKS), aparat AKS lub kubernetes.
  • Zagadnienia dotyczące orkiestracji niestandardowej: Czy istnieje wymaganie dla niestandardowej platformy orkiestracji kontenerów? Jeśli tak, wyjaśnij to wymaganie.
  • Standardowe operacje hosta: Zakłada się, że obciążenia nie są wrogie i mogą być hostowane na udostępnionych kontenerach obsługiwanych przez standardowe operacje hosta. Czy to obciążenie jest zgodne z tym podejściem?
  • Zagadnienia dotyczące niestandardowych operacji hosta: Jeśli obciążenie nie jest zgodne ze standardowymi operacjami, jakie konkretne wymagania należy wziąć pod uwagę podczas ustanawiania rozwiązań dotyczących operacji hosta dla tego obciążenia?

Zagadnienia dotyczące aplikacji:

Zagadnienia specyficzne dla sposobu tworzenia aplikacji i będą opracowywane w przyszłości.

  • Środowisko uruchomieniowe platformy jako usługi (PaaS): Dostawcy chmury publicznej tworzą spójne środowiska uruchomieniowe aplikacji, często określane jako oferty platformy jako usługi (PaaS). Na platformie Azure środowiska uruchomieniowe PaaS udostępniane przez Azure App Service. Czy ta aplikacja może działać w środowisku uruchomieniowym PaaS? Które środowisko uruchomieniowe jest najbardziej zgodne?
  • Ustandaryzowane środowisko uruchomieniowe: Jeśli aplikacja nie jest zgodna ze środowiskiem uruchomieniowym PaaS, czy istnieje ustandaryzowane środowisko uruchomieniowe udostępniane przez organizację? Na którym środowisku uruchomieniowym zostanie utworzone to obciążenie?
  • Zagadnienia dotyczące niestandardowego środowiska uruchomieniowego: Jakie konkretne zagadnienia wymagają dostosowanego środowiska uruchomieniowego dla tego obciążenia?
  • Ograniczenia środowiska uruchomieniowego: Czy istnieją ograniczenia nałożone na aplikację przez wybrane środowisko uruchomieniowe?
  • Zależności aplikacji: Czy to obciążenie jest zależne od istniejących systemów znajdujących się w określonej lokalizacji (na przykład publicznej lub prywatnej)? Przykłady obejmują system ERP, taki jak SAP działający w określonym rozwiązaniu.
  • Grawitacja danych: Czy to obciążenie jest zależne od źródła danych, które znajduje się w określonej lokalizacji (na przykład publicznej lub prywatnej)? Przykłady mogą obejmować zależność od danych w oprogramowaniu SAP lub innych scentralizowanych źródłach danych.
  • Zagadnienia dotyczące listy zatwierdzonych: Czy zagadnienia dotyczące operacji niestandardowych są zatwierdzone do użycia na platformie w chmurze? Które zatwierdzone usługi muszą być uwzględnione we wdrożeniu?

Zagadnienia dotyczące początkowych kontenerów

Pakowanie obciążeń w kontenerach to pierwsza treść pracy, nad którą należy zaplanować i nad którymi pracowaliśmy. Drugi polega na planowaniu hostowania tych kontenerów.

Rozwiązania PaaS dla standardowych środowisk uruchomieniowych, orkiestracji i operacji

Niektóre obciążenia są wysoce samodzielne i niekoniecznie korzystają z zaawansowanych mechanizmów kontroli i wymagań dotyczących infrastruktury, które są dostarczane z dużą platformą, na przykład Kubernetes. Tylko dlatego, że obciążenie jest konteneryzowane, nie oznacza, że musi zostać wdrożone na platformie Kubernetes. Platforma Azure oferuje różne rozwiązania do uruchamiania obciążeń w ramach portfolio, które nie wymagają poziomu zarządzania i infrastruktury wymaganej przez usługę AKS. Każde z poniższych rozwiązań będzie zgodne z tym podejściem do planowania:

Rozważ użycie bardziej uproszczonego rozwiązania dla kontenerów z obciążeniami, których nie oczekujesz, że wzrośnie złożoność i które są zgodne z celami i limitami tych rozwiązań.

Standaryzacja aranżacji przy użyciu niestandardowych środowisk uruchomieniowych i operacji w chmurze publicznej

W przypadku tych obciążeń, które nie mogą działać na w pełni zarządzanej platformie PaaS i muszą być przekazywane na kontrolkach na poziomie infrastruktury, chęć korzystania z zaawansowanych funkcji wdrażania, takich jak te oferowane przez koordynatorów kontenerów, lub spodziewać się wzrostu złożoności modułowej, zwrócić się do Azure Kubernetes Service (AKS). Usługa AKS rozwiązuje oba rozwiązania dotyczące hostingu kontenerów, ale oferuje również rozbudowane opcje architektury, SRE, zabezpieczeń, wdrażania, monitorowania i infrastruktury.

Zestaw funkcji platformy jest wymagany do nauki platformy zarówno na poziomie operatora klastra, jak i na poziomie obciążenia. Uwzględnianie edukacji zespołów operacyjnych, zespołów architektury i zespołów inżynierów obciążeń na osie czasu migracji. Ponadto, ponieważ usługa AKS jest platformą, upewnij się, że zespoły obciążeń rozumieją rozdzielenie obowiązków w ramach tej platformy w porównaniu z ich bieżącym układem hostingu. Może to być podobne w jakiś sposób, ale prawdopodobnie będzie to powieść w innych.

Dostosowywanie aranżacji, środowisk uruchomieniowych i operacji w chmurze publicznej

W przypadku bardzo wyspecjalizowanych obciążeń lub określonych wymagań organizacyjnych platforma Azure oferuje dwie inne główne platformy w przestrzeni aranżacji kontenerów.

  • Azure Red Hat OpenShift
  • Azure Service Fabric

Jeśli istnieje powód do zapoznania się z alternatywami, upewnij się, że czas jest przydzielony, aby zrozumieć korzyści i kompromisy wszystkich opcji platformy. Domyślne rozwiązanie platformy Azure to usługa AKS, a ta dokumentacja zakłada, że usługa AKS jest wybraną technologią.

Standaryzacja operacji na różnych platformach w chmurze

Często klienci wdrażają różne orkiestratory kontenerów w chmurach prywatnych, w środowiskach brzegowych i chmury publicznej. Aby ustandaryzować operacje na różnych platformach w chmurze, klienci mogą uwzględnić ujednolicone podejście do operacji, rozszerzając swoje narzędzia do obsługi w chmurze na wiele platform w chmurze.

Na platformie Azure organizacje mogą ustandaryzować operacje w różnych orkiestratorach, dołączając różne hosty kontenerów do usługi Azure Arc dla platformy Kubernetes. To narzędzie zapewnia spójne monitorowanie, operacje i ład na każdym hoście kontenerów.

Środowiska uruchomieniowe aplikacji w chmurze prywatnej i środowiskach brzegowych

Gdy obciążenia muszą być uruchamiane w chmurze prywatnej lub środowisku brzegowym, ale obciążenie jest najlepiej obsługiwane przez środowisko uruchomieniowe PaaS, istnieje kilka narzędzi, które mogą umożliwić deweloperom tworzenie spójnych środowisk uruchomieniowych PaaS przy użyciu Azure App Service:

  • Azure Stack HCI: Umożliwia hostowanie Azure App Service natywnie w usłudze Azure Stack zarządzanych przez operatora usługi Azure Stack.
  • Usługa Azure Stack HCI dla usługi AKS: Umożliwia hostowanie niestandardowych środowisk uruchomieniowych działających w usłudze AKS w usłudze Azure Stack, zarządzanych przez operatorów usługi Azure Stack i AKS w celu umożliwienia przenoszenia do innych rozwiązań Kubernetes.
  • Azure App Service na platformie Kubernetes z usługą Azure Arc: umożliwia hostowi Kubernetes dostarczanie usług aplikacji na platformie Azure. Wszystkie hosty stają się małym wystąpieniem Azure App Service. Ponieważ każdy host jest również dołączany do usługi Azure Arc, te hosty można również zarządzać za pomocą spójnych operacji hosta w chmurze.

Nowoczesny plan gotowości platformy aplikacji

Oprócz planu umiejętności wdrażania chmury zespoły wdrożeniowe ds. chmury mogą wymagać opracowania umiejętności związanych z kontenerem i platformą Kubernetes przed wykonaniem planu:

Upewnij się, że czas jest przydzielany zespołom obciążeń do dokumentowania i uruchamiania planów migracji w trybie suchym. Istniejąca aplikacja lub system zewnętrzny (zarówno zależności, jak i systemy, które zależą od tego obciążenia), może być konieczne zmodyfikowanie z dodatkową elastycznością w celu obsługi nakładu pracy nad migracją. Dotyczy to zarówno środowisk przedprodukcyjnych, jak i produkcyjnych.

Następny krok: Przeglądanie środowiska lub strefy docelowej platformy Azure

Poniższa lista artykułów przeprowadzi Cię do wskazówek w określonych punktach w podróży wdrażania chmury, aby pomóc Ci w pomyślnym scenariuszu wdrażania chmury.