W tym artykule opisano rozwiązanie, które śledzi zmiany wprowadzane przez administratorów usług i dodaje proces zatwierdzania do wdrożeń w dzierżawach platformy Microsoft 365. Może to pomóc w zapobieganiu nieśledzonych zmianach dzierżaw platformy Microsoft 365 i zapobieganiu dryfowaniu konfiguracji między wieloma dzierżawami platformy Microsoft 365.
Architektura
Pobierz plik programu Visio z tą architekturą.
Przepływ pracy
- Administrator 1 dodaje, aktualizuje lub usuwa wpis w rozwidleniu administratora 1 pliku konfiguracji platformy Microsoft 365.
- Administrator 1 zatwierdza i synchronizuje zmiany z rozwidlonym repozytorium administratora 1.
- Administrator 1 tworzy żądanie ściągnięcia w celu scalenia zmian w repozytorium głównym.
- Potok kompilacji jest uruchamiany w żądaniu ściągnięcia.
- Administratorzy przeglądają kod i scalają żądanie ściągnięcia.
- Scalone żądanie ściągnięcia wyzwala potok w celu skompilowania plików formatu obiektów zarządzanych (MOF). Potok wywołuje usługę Azure Key Vault, aby pobrać poświadczenia używane w plikach MOF.
- Zadanie programu Azure PowerShell w potoku wieloestowym używa skompilowanych plików MOF do wdrażania zmian konfiguracji za pośrednictwem usługi Microsoft365DSC.
- Administratorzy weryfikują zmiany w przygotowanej dzierżawie platformy Microsoft 365.
- Administratorzy otrzymują powiadomienie z procesu zatwierdzania w usłudze Azure DevOps dla produkcyjnej dzierżawy platformy Microsoft 365. Administratorzy zatwierdzają lub odrzucają zmiany.
Składniki
- azure Pipelines to usługa Azure DevOps służąca do ciągłej integracji i ciągłego dostarczania (CI/CD). Użyj usługi Azure Pipelines, aby przetestować i skompilować kod i wysłać go do dowolnego miejsca docelowego. Za pomocą usługi Azure Pipelines można również zaimplementować bramy jakości, aby zapewnić wdrażanie zmian w kontrolowany i spójny sposób.
- Usługa Key Vault zwiększa bezpieczeństwo magazynu tokenów, haseł, certyfikatów, kluczy interfejsu API i innych wpisów tajnych. Zapewnia również ściśle kontrolowany dostęp do tych wpisów tajnych. Usługa Key Vault służy do przechowywania jednostek usługi i certyfikatów używanych do wdrażania zmian konfiguracji w dzierżawach platformy Microsoft 365.
- Usługa Microsoft365DSC zapewnia automatyzację wdrażania, konfiguracji i monitorowania dzierżaw platformy Microsoft 365 za pośrednictwem konfiguracji żądanego etapu programu PowerShell (DSC). Użyj usługi Microsoft365DSC, aby wdrożyć zmiany konfiguracji w dzierżawach platformy Microsoft 365 za pośrednictwem usługi Azure Pipelines.
- Rozszerzenie DSC programu Windows PowerShell to platforma zarządzania w programie PowerShell. Można go użyć do zarządzania infrastrukturą programowania przy użyciu modelu konfiguracji jako kodu. Ten model jest podstawową technologią używaną przez usługę Microsoft365DSC.
Alternatywy
Za pomocą rozszerzenia DSC w usłudze Azure Automation można przechowywać konfiguracje w centralnej lokalizacji i dodawać raportowanie zgodności z żądanym stanem.
Ta architektura używa usługi Key Vault do przechowywania certyfikatów usługi aplikacja systemu Azure lub poświadczeń użytkownika używanych do uwierzytelniania w dzierżawie platformy Microsoft 365. Usługa Key Vault zapewnia skalowalność. Alternatywnie można użyć zmiennych potoku, aby zmniejszyć złożoność rozwiązania. Korzystając z maszyny wirtualnej platformy Azure dla systemów Windows i DSC, można zastosować i monitorować konfigurację do dzierżaw platformy Microsoft 365 korzystających z usługi Microsoft365DSC. Grupy akcji platformy Azure umożliwiają wysyłanie wiadomości e-mail do administratorów platformy Microsoft 365, gdy maszyna wirtualna z systemem Windows platformy Azure wykryje dryf konfiguracji przy użyciu usługi Microsoft 365DSC. Ponadto grupa akcji platformy Azure może uruchomić element webhook, aby wyzwolić element Runbook platformy Azure w celu wygenerowania raportu o dryfie konfiguracji w dzierżawach platformy Microsoft 365.
Szczegóły scenariusza
Wiele firm wdraża praktyki DevOps i chce zastosować te rozwiązania do swoich dzierżaw platformy Microsoft 365. Jeśli nie wdrożysz metodyki DevOps dla platformy Microsoft 365, może wystąpić kilka typowych problemów:
- Błąd konfiguracji
- Wyzwania związane ze śledzeniem zmian konfiguracji
- Brak procesu zatwierdzania modyfikacji dzierżawy
Korzystając z rozwiązania opisanego w tym artykule, można zautomatyzować zmiany konfiguracji dzierżawy platformy Microsoft 365 przy użyciu usług Azure DevOps i Microsoft365DSC. Microsoft365DSC to moduł DSC programu PowerShell. Służy do konfigurowania dzierżaw platformy Microsoft 365 i zarządzania nimi w prawdziwym stylu metodyki DevOps, który jest konfiguracją jako kodem.
Potencjalne przypadki użycia
To rozwiązanie może pomóc w zarządzaniu konfiguracją dzierżawy platformy Microsoft 365 w kontrolowany i zautomatyzowany sposób przy użyciu narzędzi i rozwiązań DevOps w różnych obszarach:
- Środowiska programistyczne, testowe, akceptcyjne i produkcyjne.
- Wiele dzierżaw klientów, takich jak w scenariuszu dostawcy usług zarządzanych.
Kwestie wymagające rozważenia
Te zagadnienia implementują filary struktury Azure Well-Architected Framework, która jest zestawem wytycznych, które mogą służyć do poprawy jakości obciążenia. Aby uzyskać więcej informacji, zobacz Microsoft Azure Well-Architected Framework.
Większość osób zaczynających się od rozszerzenia DSC programu PowerShell uważa, że nauka zajmuje trochę czasu. Pomaga to, jeśli masz solidną wiedzę na temat programu PowerShell i doświadczenie w tworzeniu skryptów.
Zabezpieczenia
Zabezpieczenia zapewniają ochronę przed celowymi atakami i nadużyciami cennych danych i systemów. Aby uzyskać więcej informacji, zobacz Lista kontrolna przeglądu projektu dotycząca zabezpieczeń.
Większość zasobów platformy Microsoft365DSC obsługuje uwierzytelnianie za pośrednictwem nazwy użytkownika i hasła. Nie zalecamy uwierzytelniania tego typu, ponieważ najlepsze rozwiązania firmy Microsoft zalecają uwierzytelnianie wieloskładnikowe. Jeśli zasoby platformy Microsoft 365 obsługują te zasoby, poświadczenia aplikacji są preferowaną metodą. Program SharePoint w usłudze Microsoft 365, identyfikator entra firmy Microsoft i inne zasoby obsługują poświadczenia aplikacji.
Jeśli tworzysz rozwiązanie Microsoft365DSC w usłudze Azure DevOps, możesz również skorzystać z zabezpieczeń w usłudze Azure Pipelines i procesu zatwierdzania w celu zabezpieczenia wdrożenia w dzierżawie produkcyjnej.
Optymalizacja kosztów
Optymalizacja kosztów dotyczy sposobów zmniejszenia niepotrzebnych wydatków i poprawy wydajności operacyjnej. Aby uzyskać więcej informacji, zobacz Lista kontrolna przeglądu projektu dotycząca optymalizacji kosztów.
Aby uzyskać informacje o cenach usługi Azure DevOps, zobacz Cennik usługi Azure DevOps. Jeśli do rozwiązania dołączasz usługę Key Vault, zobacz Cennik usługi Key Vault.
Możesz również użyć kalkulatora cen platformy Azure, aby oszacować koszty.
Sprawność operacyjna
Doskonałość operacyjna obejmuje procesy operacyjne, które wdrażają aplikację i działają w środowisku produkcyjnym. Aby uzyskać więcej informacji, zobacz Lista kontrolna projektu dotycząca doskonałości operacyjnej.
Niektóre zespoły operacyjne uważają, że usługa Azure DevOps jest narzędziem dla deweloperów. Jednak te zespoły mogą korzystać z korzystania z usługi Azure DevOps. Zespoły ds. operacji mogą wykonywać następujące czynności:
- Przechowuj swoje skrypty w repozytorium i dodaj kontrolę źródła i przechowywanie wersji.
- Automatyzowanie wdrożeń skryptów.
- Użyj tablic do śledzenia zadań i projektów.
Używanie modelu konfiguracji jako kodu nie jest jednorazowym zadaniem. Jest to zmiana sposobu pracy i fundamentalnej zmiany dla wszystkich członków zespołu. Zmiany nie są już wprowadzane ręcznie. Zamiast tego wszystko jest implementowane w skryptach i wdrażane automatycznie. Wszyscy członkowie zespołu muszą mieć umiejętności, aby wprowadzić tę zmianę.
Efektywność wydajności
Wydajność to możliwość skalowania obciążenia w celu spełnienia wymagań, które są na nim nakładane przez użytkowników w wydajny sposób. Aby uzyskać więcej informacji, zobacz Lista kontrolna przeglądu projektu pod kątem wydajności.
To rozwiązanie można użyć podczas pracy z wieloma środowiskami, wieloma obciążeniami lub wieloma zespołami. Proces weryfikacji można skonfigurować tak, aby eksperci musieli zatwierdzić każde obciążenie. Rozwiązanie można również rozszerzyć w celu wdrożenia w wielu dzierżawach na potrzeby scenariuszy, w tym scenariuszy programowania, testowania, akceptacji i produkcji lub w wielu organizacjach.
Wdrażanie tego scenariusza
Oficjalny dokument dotyczący platformy Microsoft 365 DSC, managing Microsoft 365 in true DevOps style with Microsoft365DSC and Azure DevOps (Zarządzanie platformą Microsoft 365 DSC) zawiera szczegółowe instrukcje wdrażania tego scenariusza.
Współautorzy
Ten artykuł jest obsługiwany przez firmę Microsoft. Pierwotnie został napisany przez następujących współautorów.
Główny autor:
- Derek Smay | Starszy architekt rozwiązań w chmurze
Następne kroki
- Zarządzanie platformą Microsoft 365 w prawdziwym stylu metodyki DevOps przy użyciu usług Microsoft365DSC i Azure DevOps
- Kod źródłowy usługi Microsoft365DSC
- Kanał Usługi Microsoft365DSC w serwisie YouTube
- Witryna platformy Microsoft365DSC
- Narzędzie generatora eksportu usługi Microsoft365DSC