Zalecenia dotyczące implementowania automatyzacji
Dotyczy tego Power Platform zalecenia dotyczącego listy kontrolnej doskonałości operacyjnej Well-Architected:
OE:08 | Zautomatyzuj wszystkie zadania, które nie korzystają z wglądu i zdolności adaptacyjnych interwencji człowieka, są wysoce proceduralne i mają okres przydatności do użycia, który zapewnia zwrot z inwestycji w automatyzację. Preferuj gotowe oprogramowanie do automatyzacji zamiast niestandardowych wdrożeń, jeśli są dostępne. Traktuj całą automatyzację jako składniki obciążenia, stosując do projektowania i implementacji filary dobrze zaprojektowanej struktury. |
---|
W tym przewodniku opisano zalecenia dotyczące automatyzacji przetwarzania w obciążeniach. Możesz automatyzować powtarzalne i łatwe do wykonania zadania podatne na błędy ludzkie, aby zwiększyć wydajność, przestrzegać norm i tworzyć spójność. Automatyzacja umożliwia wydajniejszą pracę zespołów operacyjnych i inżynierów, ponieważ zapewnia im więcej czasu na pracę nad innymi usprawnieniami. Automatyzacja to wydajne narzędzie we wszystkich aspektach zarządzania obciążeniami. Przemyśl dobrze implementację automatyzacji w celu uprawnienia organizacji.
Kluczowe strategie projektowania
W miarę rozwijania obciążenia roboczego szukaj możliwości wykorzystania automatyzacji w celu zmniejszenia obciążenia związanego z zarządzaniem i zminimalizowania błędów ludzkich. Oceń te możliwości i zastanów się nad wartością, jaką wnoszą one do Twojej organizacji. Aby zmaksymalizować wartość inwestycji w automatyzację, nadawaj priorytety zadaniom, które są proste, proceduralne i mają długi okres przydatności do użycia. Zastosowanie automatyzacji nie jest techniką typu „wszystko albo nic”. Mogą to być operacje wymagające interwencji użytkownika, na przykład punkty podjęcia decyzji. Z automatyzacji tych strumieni pracy można nadal korzystać podczas wykonywania innych zadań.
Wybieranie zadań docelowych do zautomatyzowania
Aby upewnić się, że prawidłowo wybierasz priorytet zadań, które korzystają z automatyzacji, należy rozważyć następujące zalecenia:
Wybieraj łatwe zwycięstwa. Skoncentruj się na zadaniach bardzo proceduralnych i podatnych na błędy ludzkie. Te zadania można bardzo łatwo zautomatyzować. Są dobrze zdefiniowane, nie są wolne od zmiennych, które dodają złożoność i są wykonywane w ramach zwykłych operacji. I odwrotnie, nie traktuj priorytetowo automatyzacji zadań, które wymagają pisania złożonych skryptów w celu uwzględnienia zmiennych zjawisk lub które rzadko występują. Przykłady zadań o wysokim stopniu automatyzacji obejmują nadanie uprawnień, tworzenie środowisk lub stosowanie zasad w środowiskach. Zadania te mogą być wykonywane w harmonogramie, jako odpowiedź na zdarzenie lub alert monitorowania albo w razie potrzeby na podstawie czynników zewnętrznych.
Poszukaj sposobów, aby zwiększyć możliwości operatorów i zwolnić czas ekspertów merytorycznych. W organizacji mogą znajdować się eksperci merytoryczni (MŚP), na których można polegać w przypadku eskalacji, które mogą być niepotrzebne. Na przykład administrator Power Platform może rutynowo prosić o tworzenie nowych środowisk lub stosowanie zasad danych w środowisku podczas uruchamiania przez nowe obciążenia. W przypadku tworzenia portalu zarządzania żądaniami można umożliwić deweloperom żądanie środowisk, które będą automatycznie tworzone po zatwierdzeniu. Można nawet zdecydować, aby automatycznie zatwierdzać żądania niektórych zespołów.
Skoncentruj się na zwrocie z inwestycji. Automatyzacja o wysokiej wartości wymaga minimalnego zakresu zadań zarządzania i zapewnia możliwy do zademonstrowania poziom wydajności. Jeśli zespół operacyjny może zaoszczędzić godzinę każdego dnia, automatyzując tworzenie środowiska, na przykład możesz zapewnić im czas na znalezienie innych obszarów do poprawy.
Obszary do zaimplementowania automatyzacji
Wdrażaj automatyzację w całym cyklu życia obciążeń, od programowania po codzienne zarządzanie. Skorzystaj z poniższych przykładów, aby ułatwić rozważenie szerokich obszarów cyklu życia obciążeń, które mogą skorzystać z automatyzacji:
Definicja, wykonywanie i zarządzanie potokiem: Użyj narzędzi ciągłej integracji i ciągłego dostarczania (CI/CD), takich jak Azure DevOps inne narzędzia DevOps, aby automatycznie zdefiniować potok i sposób jego działania. Narzędzia te mogą ułatwić automatyzację zadań z zestawu CI/CD lub innych zadań, takich jak tworzenie raportów.
Wdrożenia: użyj narzędzi, takich jak szablony usługi Azure Resource Manager, Bicep, Terraform i Ansible, aby zautomatyzować procesy tworzenia i wydawania obciążeń.
Testowanie: Dostępne są niektóre narzędzia do automatyzacji procesów testowania. Narzędzia te mogą znacznie odciążać zespół zapewniania jakości i zapewniać, że testy są ustandaryzowane i wiarygodne.
Monitorowanie i zgłaszanie alertów: użyj narzędzi dostępnych w rozwiązaniu do monitorowania, aby automatycznie rejestrować nowo wdrożone zasoby i konfigurować akcje wyzwalane przez alerty, aby przyspieszyć korygowanie w przypadku wystąpienia problemów.
Zarządzanie konfiguracją: Użyj narzędzi aranżacji i zasad, aby upewnić się, że wszystkie zasoby działają w tej samej konfiguracji i że wymagania dotyczące zgodności są wymuszane w całym obciążeniu.
Inne zadania administracyjne: Użyj skryptów, aby zautomatyzować powtarzalne zadania, takie jak tworzenie środowisk lub stosowanie zasad.
Zatwierdzenia: Umożliw systemom automatyczne podejmowanie decyzji o zatwierdzaniu na podstawie wstępnie zdefiniowanych reguł w celu zwiększenia wydajności przepływów pracy z bramkami zatwierdzania. Ta metoda zachęca do korzystania ze standardowych formularzy i szablonów, co powoduje zwiększenie wydajności procesów. Automatyczne zatwierdzanie w wysokich środowiskach może być ryzykowne. Należy się skoncentrować i przetestować zautomatyzowane zatwierdzenie, aby upewnić się, że w celu zatwierdzenia zostały zdefiniowane określone kryteria.
Dołączanie nowych użytkowników i nowych pracowników: można zautomatyzować wiele zadań skojarzonych z dołączaniem nowych użytkowników aplikacji lub nowych pracowników, takich jak przyznawanie uprawnień lub dostęp do zasobów.
Wybór właściwego narzędzia do automatyzacji
Opracowanie własnej automatyzacji we własnym zakresie jest czasochłonne i może stanowić obciążenie związane z zarządzaniem dla zespołu programistów. Muszą oni konserwować narzędzie do automatyzacji tak samo jak inne programy wewnętrzne. Zalecane jest użycie narzędzi, które nie są dostępne do wykorzystania w dowolnym momencie. Pomiędzy narzędziami komercyjnymi, open source i platformami chmurowymi dostępnych jest wiele opcji. Najprawdopodobniej do zautomatyzowania potrzebnych narzędzi użyjesz wielu narzędzi. Można zastanowić się nad zadaniami, które mają zostać rozwiązane przy użyciu automatyzacji, i zainwestować w narzędzia, które można specjalnie przeznaczyć do obsługi tych zadań. Nie należy wybierać narzędzi, które zazwyczaj są wybierane, a dopiero później rozważać zadania.
Integruj automatyzację z obciążeniem
W przypadku każdego narzędzia służącego do tworzenia automatyzacji należy ułatwić operatorom dostęp do niego i zarządzać nim. Udostępnij czytelne i łatwe w użyciu interfejsy dla zespołu ds. obciążeń. Można zapewnić dostęp do potoków, interfejsów API i bibliotek ciągłej integracji/ciągłego wdrażania. Podobnie jak w przypadku obciążenia, który obsługuje automatyzacja, musisz całościową zarządzać tą automatyzacją. Bezpieczna automatyzacja na takim samym poziomie, jak inne składniki obciążenia. Monitoruj automatyzację i poddaj ją tym samym protokołom testowania, co inne składniki obciążenia.
Kwestie wymagające rozważenia
Czasami efektywność, którą uzyskujesz dzięki automatyzacji, przewyższa obciążenie związane z zarządzaniem opracowaniem własnego rozwiązania, jeśli żadne gotowe rozwiązania nie spełniają Twoich wymagań. W tych przypadkach należy zgłaszać zmiany w działaniach developmentu. Mocno skoncentruj się na opracowywaniu tylko tego, gdzie trzeba eliminować luki, których nie można rozwiązać przy użyciu gotowych rozwiązań, a także zminimalizować złożone problemy, takie jak zależności.
W przypadku zespołów operacyjnych zarządzanie zarządzaniem i rozwiązywaniem problemów może być trudne w przypadku złożonej automatyzacji, która wymaga wysokiego stopnia konserwacji. Zadania zautomatyzowane mogą być ściśle ukierunkowane na wykonywanie tylko zadań dyskretnych. Należy zminimalizować zależności w przypadku innych narzędzi lub składników.
Należy przemyśleć korzystanie z procesów ręcznych. Jeśli zdecydujesz nie automatyzować operacji, należy dokładnie udokumentować proces ręczny, tworząc listę kontrolną krok po kroku dla operatorów. Ta praktyka zmniejsza prawdopodobieństwo wystąpienia błędu przez użytkownika, na przykład błędnie uruchamiając zły proces. Dokumentacja pomaga również zaprojektować automatyzację dla tego procesu w przyszłości.
W przypadku korzystania z ręcznego i zautomatyzowanego podejścia należy zachować szczególną ostrożność. Jeśli skrypt działa przez większość procesu, a następnie przejmuje rolę użytkownika w określonej części lub podjęciu określonej decyzji, ważne jest, aby nadać osobie kontekst i informacje niezbędne do podjęcia dobrze poinformowanych decyzji.
Ułatwienia Power Platform
Power Automate Umożliwia automatyzację Power Platform obciążeń, na przykład niestandardową automatyzację procesów cyfrowych do obsługi zadań obciążeń, takich jak przepływy zatwierdzania. Dzięki Power Automate można tworzyć przepływy pracy na podstawie wbudowanych łączników i szablonów. Duży ekosystem łączników oprogramowania jako usługi (SaaS) umożliwia łączenie aplikacji, takich jak Microsoft 365 platforma Azure, dane i urządzenia w chmurze. Możesz używać łączników administracyjnych Power Platform do łączenia się z usługą Power Platform i wykonywania zadań operacyjnych, takich jak tworzenie środowisk lub udostępnianie aplikacji.
Power Automate Zatwierdzenia (po wyjęciu z pudełka) lub zestaw zatwierdzeń (rozwiązanie niestandardowe) umożliwiają implementowanie zarówno prostych, jak i złożonych przepływów zatwierdzania, które mogą pomóc w scenariuszach automatyzacji. Więcej informacji znajdziesz w artykule Omówienie szablonów zatwierdzeń biznesowych.
Akcje GitHub umożliwiają deweloperom tworzenie zautomatyzowanych przepływów pracy cyklu życia tworzenia oprogramowania. Za pomocą akcji GitHub dla platformy Microsoft Power Platform można tworzyć przepływy pracy w swoim repozytorium, aby tworzyć, testować, pakowania, wydawać i wdrażać aplikacje; wykonywać automatyzację; oraz zarządzać botami i innymi składnikami zbudowanymi na platformie Power Platform.
Microsoft Power Platform Narzędzia kompilacji mogą służyć do automatyzowania typowych zadań kompilacji i wdrażania związanych z aplikacjami opartymi na Power Platform bazie.
Akcelerator ALM to zestaw aplikacji, skryptów i potoków zaprojektowanych w celu automatyzacji procesu ciągłej integracji/ciągłego dostarczania. Zestaw narzędzi używa Power Platform i Azure DevOps do dostarczania kompleksowego środowiska ALM (zarządzanie cyklem życia aplikacji) zarówno dla deweloperów rozwiązań niskokodowych, jak i profesjonalnych.
Power Platform Zestaw startowy CoE to implementacja referencyjna, która zawiera zbiór składników i narzędzi zaprojektowanych, aby pomóc Ci rozpocząć opracowywanie strategii przyjmowania i wspierania Power Platform. Zestaw startowy CoE zawiera rozbudowane zestawy procesów automatyzujące zadania administracyjne i wykonywanie zadań, takich jak identyfikowanie bez właściciela i wysoce używanych aplikacji.
Narzędzia do programowania i rozszerzalności są dostępne dla administratorów w celu organizowania i automatyzowania rutynowych działań dla swoich najemców. Dostępne narzędzia to łączniki, interfejs wiersza polecenia Power Platform , polecenia cmdlet PowerShell i interfejsy API.
Informacje pokrewne
- Zarządzanie żądaniami środowiska, część zestawu startowego CoE
- Szablony zatwierdzeń biznesowych