Pomiń nawigację

Zespół ds. konsoli Xbox w firmie Microsoft obejmuje rolę SRE w celu opracowania rozwiązania do przesyłania strumieniowego

Zobacz, w jaki sposób zespół operacyjny i deweloperzy stali się zaufanymi partnerami na potrzeby tworzenia globalnie dystrybuowanego wdrożenia na platformie Kubernetes.

Przeczytaj całą historię

Wyzwanie: Tworzenie procesu na skalę globalną

Podobnie jak wiele zespołów operacyjnych, zespół ds. inżynierii i operacji niezawodności konsoli Xbox (xREO) spędzał dużo czasu na wykonywaniu powtarzalnych, ręcznych zadań na potrzeby obsługi centrów danych, wdrażania nowego kodu i reagowania na problemy powstałe w wyniku pracy w monolitycznej, sztywnej architekturze, której nie zaprojektowali. Ich praca zapewniła działającą usługę milionom aktywnych subskrybentów miesięcznie w ponad 40 krajach i regionach. Jednak gdy zadaniem zespołu było wspieranie projektu xCloud, środowiska przesyłania strumieniowego gier z bardzo małymi wymaganiami dotyczącymi opóźnień dla graczy na całym świecie, stało się jasne, że muszą oni wyjść poza tradycyjną rolę inżyniera usług, zwiększyć współpracę i wymyślić nowy sposób działania.

"Even small changes posed a significant risk, which meant we spent a lot of our time firefighting. Our mode of operation was mostly reactive, and we weren't really empowered to do much about it."

James Whitesides, kierownik projektu ds. roli SRE, zespół Xbox Reliability and Operations

Rozwiązania dotyczące skalowania korzystające z współpracy i automatyzacji

Na początku projektu zespół deweloperów rozpoznał, że musi wprowadzić środowisko xREO, aby ułatwić projektowanie i tworzenie nowej architektury, która będzie korzystać z zasięgu globalnego platformy Azure. Począwszy od kontenerów do dekoderowania kodu usługi z infrastruktury i platformy Kubernetes jako jednoznacznego wyboru orkiestracji, zespoły wybrały w pełni zarządzaną usługę Azure Kubernetes Service (AKS), aby wyeliminować dużą złożoność zarządzania.

Jednak nawet w przypadku tego usprawnionego systemu liczba zadań ręcznych wymaganych do zbudowania każdego klastra Kubernetes szybko przytłaczyła zespół xREO. Aby zapewnić powtarzalność i automatyzację postanowiono utworzyć potok ciągłej integracji/ciągłego dostarczania (CI/CD) z usługi Azure Pipelines przy użyciu szablonów platformy Azure Resource Manager do szybkiego aprowizowania zasobów.

"Now, in the SRE role, we build the platform with the devs, and we are part of their deployment process. We're really focused on building and improving rather than burning down checklists."

James Whitesides, kierownik projektu ds. roli SRE, zespół Xbox Reliability and Operations

Podejmowanie nowej roli z nową misja

Obecnie za pomocą potoku ciągłej integracji/ciągłego wdrażania wdrażane jest ponad 35 mikrousług opartych na usłudze AKS zależnych od ponad 100 zasobów (na region) w wielu regionach platformy Azure, których liczba wkrótce jeszcze wzrośnie. Aby wdrożyć nowy region, zespół dodaje sześć wierszy kodu i czeka na jego uruchomienie.

Dzięki całkowicie zautomatyzowanemu wdrożeniu zespół xREO zaczął pełnić rolę SRE i poświęca większość czasu na tworzenie nowych narzędzi, a nie rozwiązywanie problemów. Zespół xREO, czyli zaufany partner zespołu programistycznego, często odbywa konsultacje i skupia się na proaktywnej, wartościowej i satysfakcjonującej pracy.

Przyjrzyjmy się bliżej transformacji zespołu do roli SRE.

Przeczytaj całą historię