Aracılığıyla paylaş


Otomatikleştirme

Yazılım tanımlı bulut altyapısında ekipler altyapıyı sağlamak, yapılandırmak ve yönetmek için çeşitli araçlar ve teknikler kullanır. Ekipleriniz geliştikçe ve büyüdükçe portalları ve el ile gerçekleştirilen çalışmaları kullanarak altyapı ve hizmetleri sağlamak, yapılandırmak ve yönetmek için kod ve otomasyon kullanmaya geçiş yapabilir.

Platform otomasyonu ile ilgili dikkat edilmesi gerekenler

  • Kod Olarak Her Şey (EaC) metodolojisini uygulamak, ekiplerinizin önemli avantajları ortaya çıkarmasını, güçlü bir geliştirme kültürü oluşturmasını ve her ekipte bulunan herkesin nasıl ve hangi kaynakların dağıtıldığına bakmasına olanak tanır. EaC, platform ekiplerinizin çevikliklerini ve verimliliklerini geliştiren önemli geliştirme uygulamalarını benimsemelerine de yardımcı olur. Ekipleriniz depolarda kod barındırarak ve yönetmek için sürüm denetim sistemlerini kullanarak değişiklikleri izleyebilir ve hangilerinin üretime taşınacaklarını denetleyebiliyor.
  • Ekipler, kod değişikliklerinin hiçbir zaman tek başına yapılmadığından emin olmak için 4 göz ilkesini izleyebilir ve eş programlamayı veya eş gözden geçirmeyi kullanabilir. Eş programlama ve eş gözden geçirmesi kod kalitesini artırır, ekiplerin değişiklik sorumluluğunu paylaşmasına ve üzerinde anlaşmaya varılan ve dağıtılanlar hakkında ekip bilgisini artırmasına olanak tanır. Kod gözden geçirme, ekip üyelerinin kodlama ve otomasyon için yeni teknikler ve yöntemler öğrenmesi için harika bir yoldur.
  • Teams, eş gözden geçirmeyi zorunlu kılmak için Git gibi sürüm denetim sistemlerini Git depolarıyla birlikte kullanmalıdır. Git depoları, ekiplerinizin önemli dalları tanımlamasına ve dal ilkeleriyle korumalarına olanak tanır. Korumalı bir dalda birleştirilmeden önce, en az sayıda ekip üyesi onayı gibi belirli ölçütleri karşılamak üzere bu dallarda kod değişiklikleri yapılmasını zorunlu kılabilir.
  • Teams, EaC metodolojisini ve değişiklik gözden geçirme sürecini sürekli tümleştirme ve sürekli teslim (CI/CD) süreciyle birbirine bağlamalıdır. Her kod değişikliği statik kod analizi, doğrulama ve test dağıtımlarını yürüten bir CI işlemini otomatik olarak tetiklemelidir. CI, geliştiricilerin gelecekteki sorunlara neden olabilecek hatalar için erken kodlarını (genellikle hızlı başarısız veya sola kaydırma testi olarak adlandırılır) denetlemesini sağlar. Ekibinizin hangi dallanma stratejisini kullandığına bağlı olarak, herhangi bir önemli dalda yapılan değişiklikler farklı ortamlara dağıtımı tetiklemelidir. Değişiklikler onaylandıktan ve ile mainbirleştirildikten sonra CD işlemi bu değişiklikleri üretime dağıtır. Bu kod yönetim sistemi, ekibinize her ortamda çalıştırılanlar için tek bir gerçek kaynağı sağlar.
  • Platformunuzun tamamen kendi kendini iyileştirdiğinden ve iş yükü ekipleriniz için self servis sağladığından emin olmak için platform ekibinizin, iş yükü ekipleri için sağlama, yapılandırma ve platform yönetiminden giriş bölgesi aboneliği sağlamaya kadar her şeyi otomatikleştirmek için çalışması gerekir (genellikle Extreme Automation olarak adlandırılır). Aşırı otomasyon, platform ekibinizin platformunuzu dağıtmak, yapılandırmak ve yönetmek yerine değer sağlamaya odaklanmasını sağlar. Aşırı otomasyon, ekibinize daha fazla otomasyon oluşturmak için daha fazla zaman sağlayan kendi kendini geliştiren bir döngü de oluşturur.
  • Platform ekipleriniz operasyonel etkinlikleri otomatikleştirip insan müdahalesini azalttıkça, azure'da iş yükü ekibi yeniliklerini etkinleştiren ve hızlandıran önemli görevlere odaklanmaları gerekir. Bunu başarmak için platform ekibinizin platformunuzun araçlarını, betiklerini ve yetenek geliştirmelerini yerine koydukları geliştirme ve geliştirme döngülerini yinelemesi gerekir.
  • Ekibinizin Azure Giriş Bölgesi dağıtımını kullanmaya başlamasına yardımcı olmak için kullanabileceğiniz birden çok seçenek vardır. Bu seçenekler geçerli ekip özelliklerine bağlıdır ve ekibiniz geliştikçe büyüyebilir. Daha açık belirtmek gerekirse, Platform Dağıtımı için ilgili Teams'in IaC yeterliliği ve araç tercihlerine bağlı olarak Portal, Bicep veya Terraform tabanlı deneyimler arasında seçim yapabilirsiniz.
    • Kod Olarak Altyapı 'yı (IaC) tanımaya devam eden ve kaynakları dağıtmak ve yönetmek için portal kullanmayı daha iyi bilen yeni ve gelişmekte olan platform ekipleri başlamak için Azure giriş bölgesi hızlandırıcısını kullanabilir ve bu da ekiplerin hala ClickOps yaklaşımını kullanmasını destekler. ClickOps, portallara, yönetim konsollarına ve sihirbazlara tıklayarak kaynakları sağlama, yapılandırma ve yönetme işlemidir. Bu hızlandırıcı, ekibinizin Azure CLI, PowerShell veya IaC'yi daha fazla kullanmak için portalı ilk dağıtım aracı olarak ve platform mühendisliği olgunluğu arttıkça aşamalı olarak kullanmasını sağlar.
    • AzOps çözümü, ekiplerin platform otomasyon ve yönetim uygulamalarını ClickOps temelliden DevOps özellikliye geliştirmesine olanak tanır. Ekibiniz kişisel hesap erişimini kullanmaktan Yalnızca AzOps ve IaC ile CI/CD kullanan DevOps ilkelerini ve uygulamalarını kullanmaya geçiş yapabilir. AzOps, ekibinizin kendi mimarisini getirmesine, Azure Giriş Bölgesi Portalı hızlandırıcısı tarafından dağıtılan mimariyi kullanmasına (AzOps tümleştirmesi ALZ Portal deneyiminin bir parçası olmadığından ilk portal tabanlı dağıtımdan sonra), brownfield dağıtımıyla tümleştirmeye veya platformunuzu derlemek ve kullanıma hazır hale getirmek için özel şablonlar (Bicep veya ARM) kullanmasına olanak tanır.
    • Yerleşik becerilere ve yeteneklere sahip platform ekipleri, DevOps ilkelerine ve uygulamalarına uygun bir ortak yaklaşım benimseyebilir. Ekibiniz, kendi kişisel hesaplarında Azure erişimini kullanmaktan uzaklaşarak ve CI/CD işlem hattınız aracılığıyla tüm işlemleri çalıştırmaya doğru geçiş yaparak IaC ve modern geliştirme uygulamalarını temel almalıdır. Ekibinizin bu geçişi hızlandırmak için ALZ-Bicep veya Azure giriş bölgeleri Terraform modülü gibi IaC tabanlı hızlandırıcıları kullanması gerekir.
  • IaC tabanlı hızlandırıcılar sınırlı yönetim kapsamına sahiptir. Yeni sürümler daha fazla özellik ve daha fazla kaynak yönetimi özelliği sağlar. Hızlandırıcı kullanıyorsanız, ekibiniz bir hızlandırıcıyla başlayan katmanlı bir yaklaşımı dikkate almalı ve ardından bir otomasyon katmanı eklemelidir. Otomasyon katmanı, eski uygulamalar için etki alanı denetleyicisi dağıtımı gibi platform özellikleriyle iş yükü ekiplerinizi tam olarak desteklemek için ekibinizin ihtiyaç duyduğu özellikleri sağlar.
  • Platform ekibiniz DevOps yaklaşımına geçerken acil durum düzeltmelerini işlemek için bir süreç oluşturmaları gerekir. Privileged Identity Management (PIM) uygun izinlerini kullanarak düzeltmeleri gerçekleştirmek üzere erişim isteyebilir ve daha sonra yapılandırma kayması sınırlamak için kodu koda geri getirebilirler veya hızlı bir düzeltme uygulamak için kod kullanabilirler. Ekibinizin her düzeltmeyi daha sonraki bir noktada yeniden çalışabilmesi ve teknik borçlarını sınırlandırabilmesi için her zaman kapsamlarına hızlı düzeltmeler kaydetmesi gerekir. Bazı platform kodları tam olarak gözden geçirilmeyen ve ekip kodlama yönergelerini ve ilkelerini karşılamadığından çok fazla teknik borç gelecekteki yavaşlamalara yol açar.
  • Platformunuza otomasyon eklemek için Azure İlkeleri'ni kullanabilirsiniz. Genellikle Kod Olarak İlke (PaC) olarak adlandırılan Azure İlkelerini dağıtmak ve yönetmek için IaC kullanmayı göz önünde bulundurun. Bu ilkeler günlük toplama gibi etkinlikleri otomatikleştirmenize olanak verir. Birçok PaC çerçevesi de bir muafiyet işlemi uygular, bu nedenle iş yükü ekiplerinizin ilkelerden muafiyet istemesini planlayın.
  • Güvenlik denetimine uymayan kaynakları dağıtmaya çalışırken iş yükü ekiplerine sinyal vermek için "İlke temelli idare" kullanın. İş yükü ekiplerinizin her şeyi Kod olarak kabul etmesine ve kodun deny tek bir şey bildirdiği ve ilkenin dağıtım zamanında bir ayarı değiştirdiği yapılandırma kaymalarından kaçınmasına olanak tanıyan bu durumlara etkisi olan ilkeler dağıtmayı göz önünde bulundurun. bir iş yükü takımının, ilkenin uyumlu tutmak için dağıtım zamanında olarak değiştirildiği true kodunda tanımlı bir modify depolama hesabı supportOnlyHttpsTraffic = false dağıtması gibi etkileri kullanmaktan modify kaçının. Bu, kodun dağıtılandan kaymasına neden olur.

Platform otomasyonu tasarım önerisi

  • Azure platformunun, belgelerinin, dağıtım ve test sürecinin tam saydamlığı ve yapılandırma denetimi için Kod olarak Her Şey yaklaşımını izleyin.
  • Aşağıdakiler dahil olmak üzere tüm kod depolarınızı yönetmek için sürüm denetimini kullanın:
    • Kod olarak Altyapı
    • Kod Olarak İlke
    • Kod Olarak Yapılandırma
    • Kod Olarak Dağıtım
    • Kod Olarak Belgeler
  • Tüm kod değişikliklerinin üretim ortamına dağıtılmadan önce ekibiniz tarafından gözden geçirilmesini sağlamak için 4 göz ilkesini ve eş programlama veya eş gözden geçirme sürecini uygulayın.
  • Ekibiniz için bir dallanma stratejisi benimseyin ve korumak istediğiniz dallar için dal ilkeleri ayarlayın. Dal ilkeleriyle ekiplerin birleştirme değişiklikleri yapmak için çekme isteklerini kullanması gerekir.
  • Kod testlerini ve farklı ortamlara dağıtımı otomatikleştirmek için sürekli tümleştirme ve sürekli teslim (CI/CD) kullanın.
  • Platformunuzun sağlanması, yapılandırılması ve yönetimi ve iş yükü ekipleriniz için giriş bölgesi aboneliklerinin sağlanması gibi her şeyi otomatikleştirmek için çalışın.
  • Azure Giriş Bölgelerini dağıtmaya başlamak için ekibinizin özellikleriyle eşleşen kullanılabilir hızlandırıcılardan birini kullanın.
  • Hızlandırıcı kapsamında olmayan ancak iş yükü ekiplerinizi tam olarak desteklemek için gereken özellikler eklemek için katmanlı dağıtım yaklaşımı kullanmayı planlayın.
  • Hızlı düzeltmeleri uygulamak için kod kullanmak için bir işlem oluşturun. Her düzeltmenin daha sonraki bir noktada yeniden çalışılabilmesi ve teknik borcu sınırlandırabilmeniz için her zaman hızlı düzeltmeleri ekibinizin kapsamına kaydedin.
  • Azure İlkelerini dağıtmak ve yönetmek için Kod Olarak Altyapı 'yi kullanın (genellikle Kod olarak İlke olarak adlandırılır)
  • İlkeler için bir muafiyet işlemi uygulayın. İş yükü ekiplerinizin ilkelerden muafiyet istemesini ve gerektiğinde ekiplerin engellemesini kaldırmaya hazır olmasını planlayın.
  • Güvenlik denetimine uymayan kaynakları dağıtmaya çalışan iş yükü ekiplerini engellemek için "İlke temelli idare" kullanın. Bu, kodun dağıtılandan farklı bir durum bildirdiği yapılandırma kaymasını azaltmaya yardımcı olur.

Daha fazla bilgi edinin