Aracılığıyla paylaş


DevOps için dikkat edilmesi gerekenler

Bu makalede Azure giriş bölgelerinde DevOps ile ilgili önemli noktalar ve öneriler sağlanmaktadır.

DevOps nedir?

DevOps, geliştirme (geliştirme) ve işlemlere (ops) sürekli değer sağlayan kişilerin, süreçlerin ve teknolojinin birleşimidir. DevOps yaklaşımı, kuruluşların verimli ve uygun ölçekte çalışmasına yardımcı olmak için tekrarlanabilir süreçler oluşturan ekip işbirliğini teşvik eder.

Azure giriş bölgeleri bağlamında DevOps, aşağıdaki gibi alanlarda tüm Azure giriş bölgeleri yaşam döngüsü yönetiminden sorumlu ekibinize (veya takımlarınıza) rehberlik eden çerçeve haline gelir:

  • Özerklik ve idare arasında uygun dengeyi sağlamak için diğer ekiplerle sınırları kendi kendine düzenleme ve tanımlama
  • Azure giriş bölgesi mimarisi tasarımını sürekli geliştirme (Conway Yasası)
  • Tasarlanan mimarinin uygulanmasını planlama, önceliklendirme ve yineleme
  • Azure giriş bölgesi kodu için sürüm denetimi, sürekli tümleştirme ve sürekli dağıtım uygulama
  • Sahip olduğunuz sistemler ve platformlar için olayları çalıştırma ve yanıtlama
  • Azure giriş bölgesi sağlama ve kendi kendini düzeltme için uyguladığınız otomasyon düzeyi
  • Kuruluşunuzdaki diğer ekiplerle çevik ve sonuç odaklı bir şekilde işbirliği yapma
  • Güvenlik, kalite, kullanıcı merkezlilik ve sürekli öğrenme için üretken bir kültür oluşturma

Bulut işletim modellerini gözden geçirirken alınan kararlar DevOps çerçevenizi nasıl kullandığınızı etkileyebilir.

DevOps tasarımında dikkat edilmesi gerekenler

  • DevOps çerçevenizi tanımlayın veya kuruluşunuzun DevOps ve bulut benimseme stratejisiyle uyumlu hale getirme. DevOps tanımını ve ekibinizin izlemesi gereken ilkeleri ve uygulamaları ekleyin. DevOps stratejinizi iş stratejinize bağladığınızdan emin olun.

  • Ekibinizin DevOps performansını geliştirmesine olanak sağlayan ölçümler oluşturun. Yüksek performanslı ekipler fikirlerini test etmek, hipotezin nasıl çalıştığını görmek için ölçmek ve sonra gerektiğinde değişiklikler yapmak için bir hipotez kullanır. DevOps'un son amacı dağıtım sıklığı, değişiklik uygulama süresi veya düzeyi düşürülmüş bir hizmeti geri yükleme süresi gibi özellikleri geliştirmektir. Bu ölçümlerin tümünü, sonunda genel iş performansını etkileyecek şekilde tasarlamanız gerekir.

  • Ekibinizin geçerli becerilerine göre ilk olarak uygulaması gereken DevOps uygulamalarını belirleyin ve ekibinizin DevOps ölçümlerini geliştirmesine yardımcı olacak yeni uygulamaları artımlı olarak uygulamak için bir yol haritası tasarlar. Mühendislik özelliklerine ve kaynaklarına yatırım yapmak kritik önem taşır.

  • Ekibinizin DevOps uygulamalarını uygulamak için kullanması gereken DevOps araç zincirini belirleyin. Heterojen DevOps ekosistemleri senaryolarının Azure giriş bölgesi veya iş yükü dağıtımlarının karmaşıklığını artırmasını önlemek için araçların genel DevOps stratejinizle tutarlı olduğundan emin olun.

  • Uyguladığınız DevOps uygulamalarının ve DevOps araçlarının Azure Giriş Bölgelerinizin tasarımı üzerindeki etkisini değerlendirin.

  • Ekibinizin becerilerini sürekli olarak geliştirmek için bir hazırlık planı oluşturun. DevOps modelinin paket uygulaması, anında yetenekli DevOps ekipleri oluşturmaz.

  • Kuruluşunuzun DevOps stratejisi ve bulut çalışma modeliyle en uygun ekip topolojisini belirleyin ve ekipler arasında net sınırlar, sorumluluklar ve bağımlılıklar oluşturun.

  • Tasarım ve uygulamayı güncelleştirmek, olayları çözmek, bağımlılıkları en aza indirmek ve iş öncelikleriyle uyumlu olmak üzere yeni Azure Giriş Bölgesi gereksinimlerini yakalamak için Azure Giriş Bölgelerinden sorumlu ekibin kuruluşunuzdaki diğer ekiplerle nasıl işbirliği yapması gerektiğini belirleyin.

DevOps önerileri

Aşağıdaki bölümler, kuruluşunuzda DevOps çerçevesini uygulamanıza yardımcı olacak öneriler içerir.

DevOps çerçevenizi tanımlama

DevOps çerçevenizi oluşturmak için önceden tanımlanmış kanıtlanmış bir dizi uygulamayla başlamak için zaten kullanılabilir olan çerçeveleri kullanmayı göz önünde bulundurun:

Azure giriş bölgeleri yönetiminiz için DevOps uygulamalarını tanımlama

Azure giriş bölgeleriniz için aşağıdaki DevOps uygulamalarını göz önünde bulundurun:

DevOps uygulama yolculuğunuzu planlama

DevOps uygulama yolculuğunuzu tanımlayın ve kuruluşunuzun bulut benimseme planıyla uyumlu hale getirme.

İstenen DevOps ölçümlerini uygulama

Ekibinizin DevOps performansını ölçmek için hangi ölçümleri kullanacağınızı belirleyin. Ekibinizde iş sonuçlarıyla bağlantı kuran istenen alışkanlıkları yönlendirmek için ölçümleri kullanın. Ekibinizin etkinlikler üzerindeki etkisini ölçmesini sağlamak için ölçümler oluşturun. Saydamlık güveni yükseltdiğinden ve kuruluş hedefleriyle uyumluluğu yönlendirdiğinden önemli ölçümlerin herkes tarafından görünür olmasını sağlayın.

İş etkisini geliştirmek için DevOps performansını ölçen ölçümlere örnek olarak şunlar verilebilir:

  • İş Sonuçları:

    • Ekiplerinizi "çıkış" zihniyetinden ve "sonuç" zihniyetinden uzaklaştırmak için Bir araç olarak Hedefler ve Önemli Sonuçlar'ı kullanın. Örneğin, Azure'a dağıtılan ilke sayısına göre uyumluluk derecelendirmesini geliştiren iş yüklerinin sayısını kullanabilirsiniz.
    • Müşteri veya son kullanıcı memnuniyeti. Örnek olarak Net Promoter Score (NPS), anketler, röportajlar verilebilir.
    • İş büyümesi. Daha fazla kârlılık, artan gelir ve yeni gelir kaynağı alımları buna örnek olarak verilebilir.
    • ölçümleri Kişiler. Örnek olarak Çalışan Net Yükseltici Puanı (eNPS), kullanım, saklama ve memnuniyet verilebilir.
    • Maliyetler. Örneğin, maliyetlerde düşüş kullanabilirsiniz.
  • Yazılım teslim performansı:

    • Değişiklik için Sağlama Süresi, hata düzeltmesi için geçen süre, yeni özellik veya başka bir değişikliğin fikirden dağıtıma ve üretime geçmesi.
    • Dağıtım Sıklığı, kodun günlük dağıtımları üretime değişir.
    • Ortalama Geri Yükleme Süresi, bir olay oluştuktan sonra üretimde hizmeti geri yüklemek için geçen süre.
    • Değişiklik Hata Yüzdesi, üretimde yapılan değişikliklerin yüzdesi (yapılandırma değişiklikleri gibi) hataya neden olur.
  • Kalite:

    • Hata çıkış oranı, son kullanıcılarınız tarafından tanımlanan hata sayısı.
    • Planlanmamış iş veya yeniden çalışma, planlanmamış iş veya yeniden çalışma yaparken harcanan zaman yüzdesi.
    • Etkin hatalar, henüz düzeltilmemiş hata sayısı.
    • Kod Durumu, birim testi yapılmamış kodun yüzdesi.

DevOps teknoloji ekosisteminizi tanımlama

Azure Giriş Bölgelerinizin yaşam döngüsünü yönetmeyi seçtiğiniz DevOps araç zinciri aşağıdakileri etkiler:

  • DevOps ilkelerini ve uygulamalarını uygulamaya yönelik stratejileriniz
  • DevOps yaşam döngünüz için güvenlikle ilgili dikkat edilmesi gerekenler
  • Azure Giriş Bölgeleri yaşam döngüsü yönetiminizin genel mimari tasarımı

Her DevOps işleminizde hangi araçların kullanılacağını belirlemek için daha önce tanımladığınız DevOps çerçevesini kullanın. Ekiplerinizin ihtiyaçlarına en uygun DevOps teknolojilerini seçin, ancak kuruluşunuz genelinde standartlaştırmaya ulaşmanıza olanak tanıyan ancak DevOps ekosistemlerinizde çok fazla karmaşıklık veya heterojenlikten kaçınan bir denge bulun.

Farklı DevOps aşamalarında DevOps teknolojilerine örnek olarak şunlar verilebilir:

  • Planlama: Atlassian Jira, Atlassian Trello, Azure Boards, GitHub
  • Sürekli tümleştirme (CI) ve test: Atlassian Bitbucket, Azure Repos, GitHub Repos, npm, NuGet, Selenium, SmartBear Salatalık, SonarSource SonarQube, Zed Saldırı Proxy'si
  • Sürekli teslim (CD): Atlassian Bamboo, Azure Pipelines, GitHub Actions, Jenkins, Octopus Deploy, Perforce Puppet, RedHat Ansible
    • Kod olarak altyapı: Bicep, Pulumi, Terraform
    • Bootstrapping: ArgoCD GitOps, Flux GitOps, Progress Chef, PowerShell İstenen Durum Yapılandırması (DSC)
  • İşlemler: Azure Otomasyonu, Azure İzleyici, CISCO Splunk, Grafana, Microsoft Power BI
  • İşbirliği ve geri bildirim: Atlassian Confluence, Azure DevOps Wiki'leri, GitHub Tartışmaları, GitHub Wiki'leri, Microsoft Teams, Slack, Stack Overflow

Aşağıdaki diyagramda Azure DevOps araç zinciri seçimiyle örnek bir DevOps çerçevesi gösterilmektedir:

Azure DevOps araç zinciri seçimi ile DevOps çerçevesi diyagramı.

Aşağıdaki diyagramda Azure DevOps ve GitHub araç zinciri seçimi ile örnek bir DevOps çerçevesi gösterilmektedir:

Azure DevOps ve GitHub araç zinciri seçimi ile DevOps çerçevesi diyagramı.

Sonraki adım