DevOps Denetim ListesiDevOps Checklist

DevOps, geliştirme, kalite güvencesi ve birleşik bir kültür IT işlemlere tümleştirmesini ve yazılım teslim işlemler kümesini ' dir.DevOps is the integration of development, quality assurance, and IT operations into a unified culture and set of processes for delivering software. Bu denetim, DevOps kültürü ve işlem değerlendirmek için bir başlangıç noktası olarak kullanın.Use this checklist as a starting point to assess your DevOps culture and process.

KültürCulture

İş hizalamasını aşağıdaki yollarla, kuruluşlar ve takımlar arasında emin olun.Ensure business alignment across organizations and teams. Başarılı işlemler için risk kaynakları, amacı, hedefler ve bir kuruluş içindeki öncelikler üzerinde çakışıyor olabilir.Conflicts over resources, purpose, goals, and priorities within an organization can be a risk to successful operations. İş, geliştirme ve işlem ekipleri tüm uygun olduğundan emin olun.Ensure that the business, development, and operations teams are all aligned.

Yazılım yaşam döngüsünün tüm ekip anlayan emin olun.Ensure the entire team understands the software lifecycle. Takımınız genel yaşam döngüsünü uygulama anlaması gerekir ve yaşam döngüsü hangi kısmını uygulama şu anda kullanımda.Your team needs to understand the overall lifecycle of the application, and which part of the lifecycle the application is currently in. Bu, tüm takım üyelerini ne bunlar artık yapıyor olmanız gereken ve hangi bunlar verilecek planlama ve gelecekte Hazırlama yardımcı olur.This helps all team members know what they should be doing now, and what they should be planning and preparing for in the future.

Döngü süresini azaltın.Reduce cycle time. İçin geliştirilen kullanılabilir yazılım fikirlerinden taşımak için gereken süreyi en aza indirmeyi amaçlamanız.Aim to minimize the time it takes to move from ideas to usable developed software. Boyutu ve test yük düşük tutmak için ayrı sürümler kapsamını sınırlandırın.Limit the size and scope of individual releases to keep the test burden low. Mümkün olduğunda derleme, test, yapılandırma ve dağıtım işlemlerini otomatikleştirin.Automate the build, test, configuration, and deployment processes whenever possible. Geliştiriciler ve işlemler arasında ve geliştiriciler arasında iletişim için herhangi bir engellerini temizleyin.Clear any obstacles to communication among developers, and between developers and operations.

Gözden geçirin ve işlemleri iyileştirmesine.Review and improve processes. İşlemler ve yordamlar, otomatik ve el ile hiçbir zaman son.Your processes and procedures, both automated and manual, are never final. Geçerli iş akışları, yordamları ve belgeleri, normal gözden geçirmeleri sürekli gelişim amacı ile ayarlayın.Set up regular reviews of current workflows, procedures, and documentation, with a goal of continual improvement.

Öngörülü planlama yapın.Do proactive planning. Proaktif bir şekilde hata planlayın.Proactively plan for failure. Bunlar ortaya çıktığında, düzeltmek için doğru ekip üyelerine İlerlet ve çözümü doğrulamak olduğunda sorunlarını hızla belirlemek için yerinde işlemler söz konusudur.Have processes in place to quickly identify issues when they occur, escalate to the correct team members to fix, and confirm resolution.

Hatalardan öğrenin.Learn from failures. Hataları kaçınılmaz, ancak bunları yinelemekten kaçının hatalardan öğrenmek önemlidir.Failures are inevitable, but it's important to learn from failures to avoid repeating them. İşletimsel bir hata oluşursa, sorun, belge nedeni ve çözümü önceliklendirme ve öğrenilen tüm dersleri paylaşın.If an operational failure occurs, triage the issue, document the cause and solution, and share any lessons that were learned. Mümkün olduğunda, hata, bu tür gelecekte otomatik olarak algılamak için yapı işlemlerinizi güncelleştirin.Whenever possible, update your build processes to automatically detect that kind of failure in the future.

Veri toplamak ve hız için İyileştir.Optimize for speed and collect data. Planlanan her geliştirme, bir varsayım olur.Every planned improvement is a hypothesis. Olası en küçük artışlarla çalışır.Work in the smallest increments possible. Yeni fikirleri denemeleri kabul eder.Treat new ideas as experiments. Kendi verimliliklerini değerlendirmek için üretim verilerini toplayabilir, böylece denemeleri izleme.Instrument the experiments so that you can collect production data to assess their effectiveness. Hızlı varsayım yanlışsa başarısız olmaya hazır olun.Be prepared to fail fast if the hypothesis is wrong.

Öğrenme için zaman tanıyın.Allow time for learning. Hataları hem başarı öğrenme için iyi fırsatlar sağlar.Both failures and successes provide good opportunities for learning. Yeni projelere taşımadan önce önemli dersler toplamak ve bu dersler, uygulamanızın ekibiniz tarafından absorbed emin olmak yeterli zaman tanıyın.Before moving on to new projects, allow enough time to gather the important lessons, and make sure those lessons are absorbed by your team. Ayrıca takım vermek zaman becerileri, denemeler yapın ve yeni araçları ve teknikleri hakkında bilgi edinin.Also give the team the time to build skills, experiment, and learn about new tools and techniques.

Belge işlemlerini.Document operations. Tüm araçları, süreçleri ve otomatik görevlerle Ürün kodunuz aynı düzeyde bir kaliteyi belgeleyin.Document all tools, processes, and automated tasks with the same level of quality as your product code. Geçerli tasarım ve mimari kurtarma işlemleri ve diğer bakım işlemleri ile birlikte destek sistemlerinin belgeleyin.Document the current design and architecture of any systems you support, along with recovery processes and other maintenance procedures. Aslında gerçekleştirdiğiniz, adımları teorik olarak uygun işlemler odaklanın.Focus on the steps you actually perform, not theoretically optimal processes. Düzenli olarak gözden geçirin ve belgeleri güncelleştirin.Regularly review and update the documentation. Kod için anlamlı açıklamalar, özellikle ortak API'leri dahil edilir ve kod belgelerinde mümkün olduğunca otomatik olarak oluşturmak için Araçlar kullanın emin olun.For code, make sure that meaningful comments are included, especially in public APIs, and use tools to automatically generate code documentation whenever possible.

Bilgi paylaşın.Share knowledge. Belgeler, yalnızca kişilere yok ve dosyayı bulması biliyorsanız, kullanışlıdır.Documentation is only useful if people know that it exists and can find it. Belge düzenli ve kolayca bulunabilir olduğundan emin olun.Ensure the documentation is organized and easily discoverable. Yaratıcı olun: Kahverengi paketleri (resmi olmayan sunumlar), videolar veya haber bültenlerimize bilgi paylaşmak için kullanın.Be creative: Use brown bags (informal presentations), videos, or newsletters to share knowledge.

GeliştirmeDevelopment

Geliştiriciler, üretim ortamına benzer ortamlarda sağlar.Provide developers with production-like environments. Geliştirme ve test ortamları üretim ortamına eşleşmezse, test ve sorunları tanılamak zordur.If development and test environments don't match the production environment, it is hard to test and diagnose problems. Bu nedenle, tutmak geliştirme ve test ortamları olarak üretim ortamında mümkün olduğunca yakın.Therefore, keep development and test environments as close to the production environment as possible. Örnek veriler ve değil gerçek üretim verileri (gizlilik veya uyumluluk nedeniyle) olsa bile, test verileri üretim ortamında kullanılan verilerle tutarlı olduğundan emin olun.Make sure that test data is consistent with the data used in production, even if it's sample data and not real production data (for privacy or compliance reasons). Örnek test verilerini anonimleştirme oluşturup planlayın.Plan to generate and anonymize sample test data.

Tüm yetkili takım üyeleri altyapı sağlayın ve uygulamayı dağıtmayı emin olun.Ensure that all authorized team members can provision infrastructure and deploy the application. Üretim benzeri kaynaklarını ayarlama ve uygulama dağıtımı karmaşık el ile gerçekleştirilen görevleri veya sistemin ayrıntılı teknik bilgi dahil değildir.Setting up production-like resources and deploying the application should not involve complicated manual tasks or detailed technical knowledge of the system. Oluşturabilir veya üretim benzeri kaynakları için operasyon ekibinin olmadan dağıtma herkes doğru izinlere sahip olması gerekir.Anyone with the right permissions should be able to create or deploy production-like resources without going to the operations team.

Bu öneri, herkes Canlı güncelleştirmeleri Üretim dağıtımı gönderebilir kapsıyor değil.This recommendation doesn't imply that anyone can push live updates to the production deployment. Onun hakkında azalan uyuşmazlıkları geliştirme ve üretim ortamına benzer ortamlarda oluşturmak için QA takımlar için.It's about reducing friction for the development and QA teams to create production-like environments.

Öngörü için uygulamayı izleyin.Instrument the application for insight. Uygulama durumunu anlamak için nasıl gittiğini ve olup, hatalar veya sorunlar yaşıyor bilmeniz gerekir.To understand the health of your application, you need to know how it's performing and whether it's experiencing any errors or problems. Her zaman tasarım gereksiniminin olarak izleme içerir ve uygulamaya başından itibaren araçları oluşturun.Always include instrumentation as a design requirement, and build the instrumentation into the application from the start. Kök neden analizi, ancak ayrıca telemetri ve ölçümleri genel durumunu ve uygulama kullanımını izlemek için olay günlüğünü izleme içermesi gerekir.Instrumentation must include event logging for root cause analysis, but also telemetry and metrics to monitor the overall health and usage of the application.

Teknik borç izleyin.Track your technical debt. Birçok projesinde bir derece ya da başka bir kod kalitesini üzerinden yayın öncelik.In many projects, release schedules can get prioritized over code quality to one degree or another. Bu durumda her zaman izleyin.Always keep track when this occurs. Kısayollar veya diğer uygun durumda olmayan uygulamaları belge ve gelecekte bu sorunları yeniden ziyaret etmeniz saati zamanlayın.Document any shortcuts or other nonoptimal implementations, and schedule time in the future to revisit these issues.

Güncelleştirmeleri doğrudan üretime göndermeden göz önünde bulundurun.Consider pushing updates directly to production. Genel sürüm döngü süresini azaltmak için kod tamamlama doğrudan üretim test düzgün bir şekilde gönderme göz önünde bulundurun.To reduce the overall release cycle time, consider pushing properly tested code commits directly to production. Kullanım [özelliğini değiştirir] feature-toggles hangi özelliklerinin etkin olduğu denetlemek için.Use feature toggles to control which features are enabled. Bu, hızlı bir şekilde serbest bırakmak için geliştirme taşımak etkinleştirmek veya özellikleri devre dışı bırakmak için değiştirme düğmelerini kullanarak sağlar.This allows you to move from development to release quickly, using the toggles to enable or disable features. Geçiş yapar de faydalı testleri gibi gerçekleştirirken kanarya sürümleri, belirli bir özellik üretim ortamında bir alt kümesine dağıtıldığı.Toggles are also useful when performing tests such as canary releases, where a particular feature is deployed to a subset of the production environment.

Test ediliyorTesting

UI testlerini otomatikleştirir.Automate testing. El ile yazılım testi sıkıcı ve hataya açık.Manually testing software is tedious and susceptible to error. Genel test görevleri otomatik hale getirmek ve yapı işlemlerinizi testleri tümleştirin.Automate common testing tasks and integrate the tests into your build processes. Otomatikleştirilmiş test, tutarlı test kapsamı ve yeniden üretilebilirliğini sağlar.Automated testing ensures consistent test coverage and reproducibility. Tümleşik kullanıcı Arabirimi testleri de otomatik bir araç tarafından gerçekleştirilmelidir.Integrated UI tests should also be performed by an automated tool. Azure geliştirme olanağı sunar ve yardımcı olabilecek test kaynaklarını yapılandırmak ve testi yürütün.Azure offers development and test resources that can help you configure and execute testing. Daha fazla bilgi için geliştirme ve test.For more information, see Development and test.

Hataları için test edin.Test for failures. Bir sistem için bir hizmet bağlanamıyorsanız, bunu nasıl yanıt?If a system can't connect to a service, how does it respond? Hizmet yeniden kullanılabilir olduğunda kurtarabilir miyim?Can it recover once the service is available again? Hata ekleme testi gözden geçirme standart bir parçası olarak test ve hazırlık ortamı olun.Make fault injection testing a standard part of review on test and staging environments. Test işlemi ve yöntemler olgun olduğunda, üretim ortamında bu testlerin çalıştırılmasını göz önünde bulundurun.When your test process and practices are mature, consider running these tests in production.

Üretim ortamında test edin.Test in production. Yayın işlemini, Üretim dağıtımı ile sonlanmıyor.The release process doesn't end with deployment to production. Dağıtılan koda beklendiği gibi çalıştığından emin olmak için testler sahip.Have tests in place to ensure that deployed code works as expected. Sık güncelleştirilen dağıtımlar için bakım normal bir parçası olarak test üretim zamanlayın.For deployments that are infrequently updated, schedule production testing as a regular part of maintenance.

Performans sorunları erken belirlemek için performans testleri otomatik hale getirin.Automate performance testing to identify performance issues early. Ciddi performans sorunu etkisini koddaki bir hata olarak önemli olabilir.The impact of a serious performance issue can be as severe as a bug in the code. Otomatik işlev sınamaları uygulama hataları engellerken performans sorunlarını algılayamayabilir.While automated functional tests can prevent application bugs, they might not detect performance problems. Gecikme süresi, yükleme süreleri ve kaynak kullanımı gibi ölçümler için kabul edilebilir performans hedeflerini tanımlayın.Define acceptable performance goals for metrics like latency, load times, and resource usage. Otomatik performans testleri uygulamayı bu hedefleri karşıladığından emin olmak için yayın işlem hattında, içerir.Include automated performance tests in your release pipeline, to make sure the application meets those goals.

Kapasite testi gerçekleştirin.Perform capacity testing. Bir uygulama test koşullar altında sorunsuz çalışma ve ardından üretim ölçeği veya kaynak kısıtlamaları nedeniyle sorun.An application might work fine under test conditions, and then have problems in production due to scale or resource limitations. Her zaman beklenen kapasite ve kullanım sınırlarını tanımlayın.Always define the maximum expected capacity and usage limits. Uygulama bu sınırları işlemek ancak bu sınırlar aşıldığında ne de test emin olmak için test edin.Test to make sure the application can handle those limits, but also test what happens when those limits are exceeded. Kapasite test düzenli aralıklarla gerçekleştirilmesi gerekir.Capacity testing should be performed at regular intervals.

Üretim kodu için bir güncelleştirme yapıldığında ilk sürümünden sonra performans ve kapasite testleri çalıştırmanız gerekir.After the initial release, you should run performance and capacity tests whenever updates are made to production code. Geçmiş verileri testleri ince ayar yapma ve ne tür testler uygulanması gerektiğini belirlemek için kullanın.Use historical data to fine-tune tests and to determine what types of tests need to be performed.

Otomatik güvenlik sızma testi gerçekleştirin.Perform automated security penetration testing. Diğer tüm işlevlerden test olarak, uygulamanızı güvenli olduğu kadar önemlidir.Ensuring your application is secure is as important as testing any other functionality. Otomatik sızma derleme ve dağıtım işlemini standart bir parçası olun.Make automated penetration testing a standard part of the build and deployment process. Normal güvenlik testlerini ve dağıtılan uygulamaları, açık bağlantı noktalarını, uç noktaları ve saldırıları için izleme tarama güvenlik açığı zamanlayın.Schedule regular security tests and vulnerability scanning on deployed applications, monitoring for open ports, endpoints, and attacks. Otomatikleştirilmiş test, düzenli aralıklarla kapsamlı güvenlik incelemeleri gereksinimini kaldırmaz.Automated testing does not remove the need for in-depth security reviews at regular intervals.

Otomatikleştirilmiş iş sürekliliği testi gerçekleştirin.Perform automated business continuity testing. Yedekleme kurtarma ve yük devretme dahil olmak üzere, büyük ölçekli iş sürekliliği için testleri geliştirirsiniz.Develop tests for large-scale business continuity, including backup recovery and failover. Bu testleri düzenli olarak gerçekleştirilecek otomatik işlemleri ayarlayın.Set up automated processes to perform these tests regularly.

SürümRelease

Dağıtımları otomatikleştirin.Automate deployments. Test etmek için uygulama dağıtma, hazırlama ve üretim ortamlarını otomatik hale getirin.Automate deploying the application to test, staging, and production environments. Otomasyon hızlı ve daha güvenilir dağıtımlar sağlar ve tutarlı dağıtımları için desteklenen herhangi bir ortam sağlar.Automation enables faster and more reliable deployments, and ensures consistent deployments to any supported environment. Dağıtımlar tarafından neden olan insan hatası riski kaldırır.It removes the risk of human error caused by manual deployments. Bu da, yayınlar için olası bir kapalı kalma süresi etkilerinin en aza indirmek için kullanışlı bir kez, zamanlama kolaylaştırır.It also makes it easy to schedule releases for convenient times, to minimize any effects of potential downtime.

Sürekli Tümleştirme kullanın.Use continuous integration. Sürekli Tümleştirme (CI) merkezi bir geliştirici koda tüm codebase düzenli bir zamanlamaya göre birleştirme ve sonra otomatik olarak standart yapı ve test işlemleri gerçekleştiren bir uygulamadır.Continuous integration (CI) is the practice of merging all developer code into a central codebase on a regular schedule, and then automatically performing standard build and test processes. Bir takımın tamamı bir kod temeli üzerinde çakışmaları olmadan aynı anda çalışabilir CI sağlar.CI ensures that an entire team can work on a codebase at the same time without having conflicts. Ayrıca, kod kusurlarını mümkün olduğunca erken bulunan sağlar.It also ensures that code defects are found as early as possible. Tercihen, her zaman bu kodu kaydedilmiş veya iade için CI işlemine çalıştırmanız gerekir.Preferably, the CI process should run every time that code is committed or checked in. En azından, günde bir kez çalıştırmanız gerekir.At the very least, it should run once per day.

Benimsemeyi göz önünde bir santral dayalı geliştirme modeli.Consider adopting a trunk based development model. Bu modelde, geliştiricilerin tek bir dalın (gövde) kaydedin.In this model, developers commit to a single branch (the trunk). İşlemeler hiçbir zaman yapıyı sonlandıran bir gereksinim yoktur.There is a requirement that commits never break the build. Bu model, CI, tüm özellik çalışmalarına santral gerçekleştirilir ve işleme olduğunda herhangi bir birleştirme çakışması çözümlenir çünkü kolaylaştırır.This model facilitates CI, because all feature work is done in the trunk, and any merge conflicts are resolved when the commit happens.

Sürekli teslim kullanmayı düşünün.Consider using continuous delivery. Sürekli teslim (CD) kod her zaman otomatik olarak oluşturma, test etme ve üretim ortamına benzer ortamlarda dağıtımı kodu dağıtmaya hazır olan sağlama uygulamadır.Continuous delivery (CD) is the practice of ensuring that code is always ready to deploy, by automatically building, testing, and deploying code to production-like environments. Eksiksiz bir CI/CD işlem hattı oluşturmak için sürekli teslim ekleme kodu olabildiğince çabuk hataları ve kısa bir süre içinde düzgün bir şekilde test edilmiş güncelleştirmeleri kullanıma sunduğunu sağlar algılamanıza yardımcı olur.Adding continuous delivery to create a full CI/CD pipeline will help you detect code defects as soon as possible, and ensures that properly tested updates can be released in a very short time.

Sürekli dağıtım CI/CD işlem hattı üzerinden geçen tüm güncelleştirmeleri otomatik olarak gereken ek bir işlemdir ve bunları üretime dağıtır.Continuous deployment is an additional process that automatically takes any updates that have passed through the CI/CD pipeline and deploys them into production. Sürekli dağıtım, sağlam otomatik test etme ve Gelişmiş işlem planlama gerektirir ve tüm takımlar için uygun olmayabilir.Continuous deployment requires robust automatic testing and advanced process planning, and may not be appropriate for all teams.

Küçük artımlı değişiklikler yapın.Make small incremental changes. Büyük kod değişiklikleri, hatalar'ı tanıtmak için büyük bir potansiyeline sahiptir.Large code changes have a greater potential to introduce bugs. Mümkün olduğunda, değişiklikleri küçük tutun.Whenever possible, keep changes small. Bu, olası her değişikliğin etkilerini sınırlar ve anlamanıza ve sorunları hata ayıklamayı kolaylaştırır.This limits the potential effects of each change, and makes it easier to understand and debug any issues.

Değişiklikleri görünürlüğünü denetleme.Control exposure to changes. Güncelleştirmeleri son kullanıcılarınıza görünür olduğunda, denetimdeki olduğunuzdan emin olun.Make sure you're in control of when updates are visible to your end users. Denetime özellik değiştirir özellikleri son kullanıcılar için etkin olduğunda kullanmayı düşünün.Consider using feature toggles to control when features are enabled for end users.

Dağıtım riskini azaltmak için sürüm yönetimi stratejileri uygulayın.Implement release management strategies to reduce deployment risk. Bir uygulama güncelleştirmesi her zaman Üretim dağıtımı riskiyle kapsar.Deploying an application update to production always entails some risk. Bu riski en aza indirmek için stratejileri gibi kullanın [kanarya sürümleri] canary-release veya [mavi-yeşil dağıtımlarına] blue-green güncelleştirmeleri bir alt kümesine dağıtmak için Kullanıcılar.To minimize this risk, use strategies such as canary releases or blue-green deployments to deploy updates to a subset of users. Güncelleştirme beklendiği gibi çalıştığını onaylayın ve ardından güncelleştirme dağıtımı sistemin geri kalanı için.Confirm the update works as expected, and then roll the update out to the rest of the system.

Tüm değişiklikleri belgeleyin.Document all changes. Küçük güncelleştirmeler ve yapılandırma değişiklikleri karışıklık ve sürüm oluşturma çakışma bir kaynak olabilir.Minor updates and configuration changes can be a source of confusion and versioning conflict. Her zaman ne kadar küçük olursa olsun herhangi bir değişiklik Temizle kaydını tutun.Always keep a clear record of any changes, no matter how small. Değişiklikler, uygulanan düzeltme ekleri, ilke değişiklikleri ve yapılandırma değişiklikleri de dahil olmak üzere her şeyi oturum açın.Log everything that changes, including patches applied, policy changes, and configuration changes. (Bu günlüklerde hassas verileri içermez.(Don't include sensitive data in these logs. Örneğin, günlük bir kimlik bilgisi güncelleştirildi, ve kimin değişiklik yapıldığında, ancak güncelleştirilmiş kimlik kayıt yoktur.) Değişiklikleri kaydını ekibin tamamı için görünür olmalıdır.For example, log that a credential was updated, and who made the change, but don't record the updated credentials.) The record of the changes should be visible to the entire team.

Dağıtımları otomatikleştirin.Automate Deployments. Tüm dağıtımları otomatikleştirin ve amaçlıyoruz sorunları algılamak için sistemleri sahip.Automate all deployments, and have systems in place to detect any problems during rollout. Güncelleştirme bunların hepsinin üretim yerini almadan önce mevcut kodunuzu ve üretim, veri koruma için bir risk azaltma işlemi var.Have a mitigation process for preserving the existing code and data in production, before the update replaces them in all production instances. Değişiklikleri geri veya İleri düzeltmeleri almak için otomatik bir yönteminiz var.Have an automated way to roll forward fixes or roll back changes.

Değişmez altyapı yapmayı düşünün.Consider making infrastructure immutable. Değişmez altyapı üretime dağıtıldıktan sonra altyapının değiştirilmemesi ilkesidir.Immutable infrastructure is the principle that you shouldn’t modify infrastructure after it’s deployed to production. Aksi takdirde, burada geçici değişikliklerin uygulandığı, bir durumuna geçebilir tam olarak nelerin değiştiğini bilmeniz sabit kolaylaştırır.Otherwise, you can get into a state where ad hoc changes have been applied, making it hard to know exactly what changed. Değişmez altyapı tüm sunucular tüm yeni dağıtımının bir parçası değiştirerek çalışır.Immutable infrastructure works by replacing entire servers as part of any new deployment. Bu kod ve test edilebilir ve dağıtılabilir bir blok olarak için barındırma ortamı sağlar.This allows the code and the hosting environment to be tested and deployed as a block. Sonraki derleme ve dağıtma döngüsü kadar dağıtıldıktan sonra altyapı bileşenlerini değiştiren değildir.Once deployed, infrastructure components aren't modified until the next build and deploy cycle.

İzlemeMonitoring

Sistemleri observable olun.Make systems observable. İşlemler ekibinin, her zaman bir sistem veya hizmetin durumunu ve sistem durumu Temizle görünürlük olmalıdır.The operations team should always have clear visibility into the health and status of a system or service. Dış Sistem durumu uç noktaları ayarlama durumunu izlemek için ayarlayabilir ve uygulamaları operations ölçümleri araç haline getirmek için kodlanmıştır emin olun.Set up external health endpoints to monitor status, and ensure that applications are coded to instrument the operations metrics. Tüm sistemlerdeki olayları ilişkilendirmenize yardımcı olan genel ve tutarlı bir şema kullanır.Use a common and consistent schema that helps you correlate events across systems. [Azure tanılama] azure-diagnostics ve [Application Insights] app-insights Azure kaynaklarının durumunu ve sistem durumu izleme için standart yöntemdir.Azure Diagnostics and Application Insights are the standard method of tracking the health and status of Azure resources. Microsoft [Operations Management Suite] oms merkezi izleme ve yönetim Bulut veya karma çözümler için de sağlar.Microsoft Operation Management Suite also provides centralized monitoring and management for cloud or hybrid solutions.

Toplama ve ilişkilendirmenize günlükleri ve ölçümleri.Aggregate and correlate logs and metrics. Doğru izleme eklenmiş telemetri sisteminin ham performans verilerini ve olay günlüklerini, büyük bir miktarını sağlar.A properly instrumented telemetry system will provide a large amount of raw performance data and event logs. Böylece operasyon personeli her zaman güncel bir resmini sistem durumu sahip telemetri ve günlük verilerini işlenir ve bir kısa sürede, bağıntılı emin olun.Make sure that telemetry and log data is processed and correlated in a short period of time, so that operations staff always have an up-to-date picture of system health. Düzenlemek ve bir başkasına olaylar ilgili olduğunda mümkün olduğunca NET olduğu herhangi bir sorunla görünümünü sunan yollarla veri görüntüleme.Organize and display data in ways that give a cohesive view of any issues, so that whenever possible it's clear when events are related to one another.

Şirket koruma ilkeniz için veriler nasıl işlenir ve ne kadar süreyle depolanmalıdır gereksinimlerine başvurun.Consult your corporate retention policy for requirements on how data is processed and how long it should be stored.

Otomatik uyarılar ve bildirimler uygulayın.Implement automated alerts and notifications. Araçları gibi izleme işlevini ayarlama [Azure İzleyici] azure-monitor desenleri ya da mevcut veya olası sorunları gösterir koşulları algılamak ve sorunları gidermek takım üyesinin uyarıları göndermek için.Set up monitoring tools like Azure Monitor to detect patterns or conditions that indicate potential or current issues, and send alerts to the team members who can address the issues. Hatalı pozitif sonuçlardan kaçınmak için uyarılar ayarlayın.Tune the alerts to avoid false positives.

Varlıklar ve süre sonu için kaynakları izleyin.Monitor assets and resources for expirations. Kaynaklar ve varlıklar, sertifikaları gibi belirli bir süre sonra süresi dolar.Some resources and assets, such as certificates, expire after a given amount of time. Hangi hizmetlerin veya özelliklerin bunlara bağımlı hangi varlıkları sona ve ne zaman sona izlemek emin olun.Make sure to track which assets expire, when they expire, and what services or features depend on them. Otomatik işlemler bu varlıkları izlemek için kullanın.Use automated processes to monitor these assets. İşlem bir varlık süresi dolmadan önce takım ve uygulama kesintiye sona erme nin önemli ölçüde azaltır, İlerlet bildirin.Notify the operations team before an asset expires, and escalate if expiration threatens to disrupt the application.

YönetimManagement

İşlem görevlerini otomatikleştirin.Automate operations tasks. Yinelenen işlem işlemleri el ile işleme hata yapmaya açık.Manually handling repetitive operations processes is error-prone. Mümkün olduğunda tutarlı bir yürütme ve kalite emin olmak bu görevleri otomatikleştirin.Automate these tasks whenever possible to ensure consistent execution and quality. Otomasyon uygulayan kod, kaynak denetiminde tutulan olmalıdır.Code that implements the automation should be versioned in source control. İle diğer herhangi bir kod olduğu gibi Otomasyon araçları test edilmelidir.As with any other code, automation tools must be tested.

Sağlama için bir kod olarak altyapı yaklaşımı benimseyin.Take an infrastructure-as-code approach to provisioning. Kaynakları sağlamak için gereken el ile yapılandırma miktarını en aza indirin.Minimize the amount of manual configuration needed to provision resources. Bunun yerine, betikleri kullanın ve [Azure Resource Manager] resource-manager şablonları.Instead, use scripts and Azure Resource Manager templates. Kaynak denetimi, bakımını yaptığınız herhangi bir kod gibi komut dosyaları ve şablonları unutmayın.Keep the scripts and templates in source control, like any other code you maintain.

Kapsayıcıları kullanmayı düşünün.Consider using containers. Kapsayıcıları, uygulama dağıtmak için standart bir paket tabanlı arabirim sağlar.Containers provide a standard package-based interface for deploying applications. Kapsayıcıları kullanarak, bir uygulamanın tüm yazılım, bağımlılıklar ve dağıtım işlemini önemli ölçüde basitleştirir uygulamayı çalıştırmak için gerekli dosyaları içeren kendi içindeki paketleri kullanılarak dağıtılır.Using containers, an application is deployed using self-contained packages that include any software, dependencies, and files needed to run the application, which greatly simplifies the deployment process.

Kapsayıcılar ayrıca ortamlar genelinde tutarlılık sağlayan temel işletim sistemi, uygulama arasındaki bir Soyutlama Katmanı oluşturun.Containers also create an abstraction layer between the application and the underlying operating system, which provides consistency across environments. Bu soyutlama bir kapsayıcıdan diğer işlemleri veya bir konak üzerinde çalışan uygulamalar da ayırabilirsiniz.This abstraction can also isolate a container from other processes or applications running on a host.

Dayanıklılık ve kendi kendini iyileştirecek şekilde uygular.Implement resiliency and self-healing. Dayanıklılık hatalardan kurtarmak için bir uygulama özelliğidir.Resiliency is the ability of an application to recover from failures. Dayanıklılık stratejileri, geçici hataları yeniden deneme ve ikincil bir örneği veya hatta başka bir bölgeye yük devretmeyi içerir.Strategies for resiliency include retrying transient failures, and failing over to a secondary instance or even another region. Daha fazla bilgi için güvenilir Azure uygulamaları tasarlama .For more information, see Designing reliable Azure applications . Uygulamalarınızın kesintiler veya diğer sistem hataları yönetebilir ve hemen bildirilen sorunları izleyin.Instrument your applications so that issues are reported immediately and you can manage outages or other system failures.

Bir işlem el ile vardır.Have an operations manual. Bir işlem el ile veya runbook bir sistem korumak için işlem personel için gereken yönetim bilgi ve yordamları belgeleri.An operations manual or runbook documents the procedures and management information needed for operations staff to maintain a system. Ayrıca herhangi bir işlem senaryoları ve oyuna hizmetinize bir hata veya başka bir kesinti sırasında gelebilir azaltma planları belgeleyin.Also document any operations scenarios and mitigation plans that might come into play during a failure or other disruption to your service. Geliştirme işlemi sırasında bu belgeleri oluşturabilir ve ardından güncel tutun.Create this documentation during the development process, and keep it up to date afterwards. Bu bir oturma belge gözden, test ve düzenli olarak geliştirdik.This is a living document, and should be reviewed, tested, and improved regularly.

Paylaşılan belgeleri büyük/küçük harf önemlidir.Shared documentation is critical. Takım üyeleri katkıda bulunan ve bilgi paylaşmak için teşvik edin.Encourage team members to contribute and share knowledge. Ekibin tamamı belgelere erişimi olması.The entire team should have access to documents. Güncelleştirilmiş belgeleri tutmak için takımdaki herkes için kolaylaştırır.Make it easy for anyone on the team to help keep documents updated.

Arama çubuğunda yordamları belgeleyin.Document on-call procedures. Nöbet görevlerini, zamanlamalar ve yordamlar belgelenmiş ve tüm ekip üyelerine paylaşılan emin olun.Make sure on-call duties, schedules, and procedures are documented and shared to all team members. Bu bilgileri her zaman güncel tutun.Keep this information up-to-date at all times.

Üçüncü taraf bağımlılıkları için yükseltme yordamlarını belgeleyin.Document escalation procedures for third-party dependencies. Üzerinde doğrudan denetim yok dış üçüncü taraf hizmetler, uygulamanızın bağlı olduğu durumlarda kesintilere yarayan bir planına sahip olmalıdır.If your application depends on external third-party services that you don't directly control, you must have a plan to deal with outages. Belgeleri, planlanan risk azaltma işlemleri için oluşturun.Create documentation for your planned mitigation processes. Destek kişileri ve yükseltme yolları içerir.Include support contacts and escalation paths.

Yapılandırma Yönetimi'ni kullanın.Use configuration management. Yapılandırma değişiklikleri, planlanmış, işlemler için görünür ve kaydedilmiş olmalıdır.Configuration changes should be planned, visible to operations, and recorded. Bu, bir yapılandırma yönetim veritabanıdır ya da bir yapılandırma olarak kodu yaklaşım alabilir.This could take the form of a configuration management database, or a configuration-as-code approach. Yapılandırma beklenen gerçekten tamamlandığından emin olmak için düzenli olarak denetlenmesi.Configuration should be audited regularly to ensure that what's expected is actually in place.

Bir Azure destek planı almak ve işlem anlayın.Get an Azure support plan and understand the process. Azure'un sunduğu birçok destek planları.Azure offers a number of support plans. Gereksinimlerinize uygun planı saptamak ve nasıl kullanılacağını ekibin tamamı bilir emin olun.Determine the right plan for your needs, and make sure the entire team knows how to use it. Takım üyeleri, plan ayrıntılarını, destek sürecini nasıl çalıştığını ve Azure ile bir destek bileti açmak nasıl anlamanız gerekir.Team members should understand the details of the plan, how the support process works, and how to open a support ticket with Azure. Büyük ölçekli olay kapasitesinden, Azure desteği, hizmet sınırları giderek artan yardımcı olabilir.If you are anticipating a high-scale event, Azure support can assist you with increasing your service limits. Daha fazla bilgi için Azure desteği SSS.For more information, see the Azure Support FAQs.

Kaynaklara erişim verilmesinde en az ayrıcalıklı ilkelerini izleyin.Follow least-privilege principles when granting access to resources. Kaynaklara erişim dikkatli bir şekilde yönetin.Carefully manage access to resources. Bir kullanıcıya açıkça bir kaynağa erişim verilir sürece varsayılan olarak, erişiminin engellenmesi.Access should be denied by default, unless a user is explicitly given access to a resource. Yalnızca görevlerini tamamlamak ihtiyaç duydukları bir kullanıcı erişimi verme.Only grant a user access to what they need to complete their tasks. Kullanıcı izinleri izlemek ve normal güvenlik denetimleri gerçekleştirin.Track user permissions and perform regular security audits.

Rol tabanlı erişim denetimi kullanın.Use role-based access control. El ile kullanıcı hesapları ve erişim kaynaklara atama olmamalıdır.Assigning user accounts and access to resources should not be a manual process. Kullanım [rol tabanlı erişim denetimi] rbac erişim (RBAC) verme temel alarak [Azure Active Directory] azure-ad kimlikleri ve grupları.Use role-based access control (RBAC) grant access based on Azure Active Directory identities and groups.

İzleme sistemi hata sorunları izlemek için kullanın.Use a bug tracking system to track issues. Sorunları izlemek için en iyi yolu, öğeleri kaçırmayın, iş yinelenen veya ek sorunları kolaydır.Without a good way to track issues, it's easy to miss items, duplicate work, or introduce additional problems. Hataların durumunu izlemek için resmi olmayan fişleri iletişimi güvenmeyin.Don't rely on informal person-to-person communication to track the status of bugs. Bir hata izleme aracında gerçekleşenlere sorunlarla ilgili ayrıntıları kaydeder, onları adreslemek üzere kaynakları atamak ve bir denetim kaydı ilerleme ve durumu sağlamak için kullanın.Use a bug tracking tool to record details about problems, assign resources to address them, and provide an audit trail of progress and status.

Tüm kaynaklar bir değişiklik yönetim sisteminde yönetin.Manage all resources in a change management system. Değişiklikleri kolayca takip ve denetlenen, DevOps süreci tüm yönlerini yönetimi ve sürüm oluşturma sistemi eklenmelidir.All aspects of your DevOps process should be included in a management and versioning system, so that changes can be easily tracked and audited. Bu kod, altyapı, yapılandırma, belgeleri ve betikleri içerir.This includes code, infrastructure, configuration, documentation, and scripts. Tüm bu tür kaynak kod test/derleme/gözden geçirme süreci boyunca olarak kabul eder.Treat all these types of resources as code throughout the test/build/review process.

Denetim listelerini kullanın.Use checklists. Süreçlerinin izlendiğinden emin olmak için işlem denetim listeleri oluşturun.Create operations checklists to ensure processes are followed. Büyük bir el ile bir şey kaçırmayın yaygın bir uygulamadır ve bir denetim listesi aşağıdaki aksi atlamış ayrıntılara dikkat zorlayabilirsiniz.It’s common to miss something in a large manual, and following a checklist can force attention to details that might otherwise be overlooked. Denetim listelerinin bakımını ve sürekli olarak görevleri otomatikleştirme ve süreçlerini kolaylaştırabilirsiniz yollarını bakın.Maintain the checklists, and continually look for ways to automate tasks and streamline processes.

DevOps hakkında daha fazla bilgi için bkz. [DevOps nedir?] what-is-devops Visual Studio sitesinde.For more about DevOps, see What is DevOps? on the Visual Studio site.