DevOps ellenőrzőlistaDevOps Checklist

A DevOps a fejlesztés, a minőségbiztosítás és az informatikai műveletek integrálása egy egységes kultúrába és a szoftverek kézbesítésének folyamataiba.DevOps is the integration of development, quality assurance, and IT operations into a unified culture and set of processes for delivering software. Ezt a feladatlistát kiindulási pontként használhatja a DevOps kulturális környezetének és folyamatának értékeléséhez.Use this checklist as a starting point to assess your DevOps culture and process.

KultúraCulture

Győződjön meg arról, hogy a vállalatok és a csapatok üzleti igazodnak.Ensure business alignment across organizations and teams. A szervezeten belüli erőforrásokra, célra, célokra és prioritásokra vonatkozó ütközések a sikeres műveletek kockázatát jelenthetik.Conflicts over resources, purpose, goals, and priorities within an organization can be a risk to successful operations. Győződjön meg arról, hogy az üzleti, fejlesztési és üzemeltetési csapatok mindegyike össze van igazítva.Ensure that the business, development, and operations teams are all aligned.

Győződjön meg arról, hogy a teljes csapat ismeri a szoftver életciklusát.Ensure the entire team understands the software lifecycle. A csapatnak ismernie kell az alkalmazás általános életciklusát, és az alkalmazás azon részét, amely az alkalmazás aktuálisan elérhető.Your team needs to understand the overall lifecycle of the application, and which part of the lifecycle the application is currently in. Ez segíti az összes csapattagot arról, hogy mit csinálnak most, és mit kell megtervezniük és előkészíteniük a jövőben.This helps all team members know what they should be doing now, and what they should be planning and preparing for in the future.

Csökkentse a ciklus időpontját.Reduce cycle time. Az ötletekből a használható fejlesztett szoftverre való áttéréshez szükséges idő csökkentése.Aim to minimize the time it takes to move from ideas to usable developed software. Korlátozza az egyes kiadások méretét és hatókörét, hogy a tesztelési terhek ne legyenek alacsonyak.Limit the size and scope of individual releases to keep the test burden low. A létrehozási, tesztelési, konfigurálási és üzembe helyezési folyamatok automatizálása, amikor csak lehetséges.Automate the build, test, configuration, and deployment processes whenever possible. Szüntesse meg a fejlesztők közötti kommunikációt, valamint a fejlesztők és a műveletek közötti összes akadályt.Clear any obstacles to communication among developers, and between developers and operations.

Áttekintheti és javíthatja a folyamatokat.Review and improve processes. Az automatikus és a manuális folyamatok és eljárások nem véglegesek.Your processes and procedures, both automated and manual, are never final. Az aktuális munkafolyamatok, eljárások és dokumentáció rendszeres felülvizsgálatának beállítása a folyamatos fejlesztés céljával.Set up regular reviews of current workflows, procedures, and documentation, with a goal of continual improvement.

Proaktív tervezés.Do proactive planning. Proaktív módon tervezze meg a hibát.Proactively plan for failure. Vannak olyan folyamatok, amelyek segítségével gyorsan azonosíthatja a problémákat, és megerősítheti a csapat tagjait a javításhoz és a megoldás megerősítéséhez.Have processes in place to quickly identify issues when they occur, escalate to the correct team members to fix, and confirm resolution.

A hibák megismerése.Learn from failures. A hibák elkerülhetetlenek, de fontos megtanulni a hibáktól az ismétlés elkerüléséhez.Failures are inevitable, but it's important to learn from failures to avoid repeating them. Ha működési hiba történik, a probléma osztályozása, az ok és a megoldás dokumentálása, valamint a megszerzett tapasztalatok megosztása.If an operational failure occurs, triage the issue, document the cause and solution, and share any lessons that were learned. Amikor csak lehetséges, frissítse a felépítési folyamatokat, hogy a jövőben automatikusan azonosítsa a hibát.Whenever possible, update your build processes to automatically detect that kind of failure in the future.

Optimalizálhatja a sebességet és gyűjtheti az adatokat.Optimize for speed and collect data. Minden tervezett fejlesztés egy hipotézis.Every planned improvement is a hypothesis. A legkisebb növekmények használata lehetséges.Work in the smallest increments possible. Új ötletek kezelése kísérletként.Treat new ideas as experiments. A kísérleteket úgy alakíthatja ki, hogy a hatékonyságuk felméréséhez éles adatokat gyűjtsön.Instrument the experiments so that you can collect production data to assess their effectiveness. Készüljön fel arra, hogy fail fast, ha a hipotézis helytelen.Be prepared to fail fast if the hypothesis is wrong.

A tanulás időpontjának engedélyezése.Allow time for learning. A hibák és a sikerek is jó lehetőségeket biztosítanak a tanuláshoz.Both failures and successes provide good opportunities for learning. Az új projektekre való áttérés előtt elegendő időt kell igénybe venni a fontos leckék összegyűjtésére, és meg kell győződnie arról, hogy a csapata befogadja ezeket a leckéket.Before moving on to new projects, allow enough time to gather the important lessons, and make sure those lessons are absorbed by your team. A csapat számára is lehetővé teszi a képességek, a kísérletezés és az új eszközök és technikák megismerését.Also give the team the time to build skills, experiment, and learn about new tools and techniques.

Dokumentumok műveletei.Document operations. Dokumentálja az összes eszközt, folyamatot és automatizált feladatot ugyanazzal a minőségi szinttel, mint a termékkód.Document all tools, processes, and automated tasks with the same level of quality as your product code. Dokumentálja az Ön által támogatott rendszerek aktuális tervét és architektúráját, valamint a helyreállítási folyamatokat és az egyéb karbantartási eljárásokat.Document the current design and architecture of any systems you support, along with recovery processes and other maintenance procedures. Koncentráljon a ténylegesen végrehajtott lépésekre, nem elméletileg optimális folyamatokra.Focus on the steps you actually perform, not theoretically optimal processes. Rendszeresen tekintse át és frissítse a dokumentációt.Regularly review and update the documentation. A kód esetében ügyeljen arra, hogy az értelmes megjegyzéseket tartalmazza, különösen a nyilvános API-kat, és az eszközök használatával automatikusan hozza létre a kód dokumentációját, amikor csak lehetséges.For code, make sure that meaningful comments are included, especially in public APIs, and use tools to automatically generate code documentation whenever possible.

Ossza meg tudását.Share knowledge. A dokumentáció csak akkor hasznos, ha valaki tudja, hogy létezik, és megtalálja.Documentation is only useful if people know that it exists and can find it. Győződjön meg arról, hogy a dokumentációt megszervezték és könnyen felderíthetők.Ensure the documentation is organized and easily discoverable. Legyen kreatív: Brown-táskák (informális bemutatók), videók vagy hírlevelek használata az ismeretek megosztásához.Be creative: Use brown bags (informal presentations), videos, or newsletters to share knowledge.

FejlesztésDevelopment

A fejlesztőket éles környezetben is megadhatja.Provide developers with production-like environments. Ha a fejlesztési és tesztelési környezetek nem egyeznek az éles környezettel, nehezen tesztelheti és diagnosztizálhatja a problémákat.If development and test environments don't match the production environment, it is hard to test and diagnose problems. Ezért a fejlesztési és tesztelési környezeteket a lehető leghamarabb meg kell őrizni az éles környezetben.Therefore, keep development and test environments as close to the production environment as possible. Ügyeljen arra, hogy a tesztelési adatok konzisztensek legyenek az éles környezetben használt adatokkal, még akkor is, ha az adatok mintaadatok, és nem valós termelési adatok (adatvédelmi vagy megfelelőségi okokból).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). Tervezze meg a minta-tesztelési névtelenség.Plan to generate and anonymize sample test data.

Győződjön meg arról, hogy az összes jogosult csapattag kiépítheti az infrastruktúrát, és üzembe helyezheti az alkalmazást.Ensure that all authorized team members can provision infrastructure and deploy the application. A termeléshez hasonló erőforrások beállítása és az alkalmazás üzembe helyezése nem tartalmazhat bonyolult manuális feladatokat vagy a rendszer részletes műszaki ismereteit.Setting up production-like resources and deploying the application should not involve complicated manual tasks or detailed technical knowledge of the system. A megfelelő engedélyekkel rendelkező felhasználók az operatív csapat nélkül hozhatnak létre vagy telepíthetnek éles környezethez hasonló erőforrásokat.Anyone with the right permissions should be able to create or deploy production-like resources without going to the operations team.

Ez az ajánlás nem jelenti azt, hogy bárki leküldheti az éles környezetben üzemelő példányok élő frissítéseit.This recommendation doesn't imply that anyone can push live updates to the production deployment. A fejlesztési és a QA-csapatok súrlódásának csökkentése az éles környezetek létrehozásához.It's about reducing friction for the development and QA teams to create production-like environments.

Az alkalmazás betekintést nyújt az eszközre.Instrument the application for insight. Az alkalmazás állapotának megismeréséhez ismernie kell, hogyan végezheti el az alkalmazást, és hogy észlel-e hibákat vagy problémákat.To understand the health of your application, you need to know how it's performing and whether it's experiencing any errors or problems. Mindig a kialakítási követelményként adja meg a rendszerállapotot, és indítsa el az üzembe helyezést az alkalmazásból a Start menüből.Always include instrumentation as a design requirement, and build the instrumentation into the application from the start. A rendszerállapot-naplózásnak tartalmaznia kell az eseménynaplózást a kiváltó okok elemzéséhez, de a telemetria és mérőszámokat is, amelyek az alkalmazás általános állapotát és használatát figyelik.Instrumentation must include event logging for root cause analysis, but also telemetry and metrics to monitor the overall health and usage of the application.

Kövesse nyomon a technikai adósságait.Track your technical debt. Számos projektben a kiadási ütemtervek prioritási sorrendbe kerülhetnek a kódok minőségétől függően.In many projects, release schedules can get prioritized over code quality to one degree or another. Mindig kövesse nyomon, ha ez történik.Always keep track when this occurs. Dokumentálja a parancsikonokat vagy más, optimálisan megvalósítható implementációkat, és ütemezze a jövőben az időt a problémák újbóli megkereséséhez.Document any shortcuts or other suboptimal implementations, and schedule time in the future to revisit these issues.

Javasoljuk, hogy a frissítéseket közvetlenül az éles környezetbe kényszerítse.Consider pushing updates directly to production. A kiadási ciklus teljes idejének csökkentése érdekében érdemes lehet a megfelelően tesztelt kód véglegesítését közvetlenül az éles környezetbe leküldeni.To reduce the overall release cycle time, consider pushing properly tested code commits directly to production. A szolgáltatás kapcsolóinak használatával szabályozhatja, hogy mely funkciók engedélyezettek.Use feature toggles to control which features are enabled. Ez lehetővé teszi, hogy a fejlesztésből gyorsan kidobjon, a váltások használatával engedélyezze vagy tiltsa le a funkciókat.This allows you to move from development to release quickly, using the toggles to enable or disable features. A váltások akkor is hasznosak, ha olyan teszteket végez, mint például a Kanári-kiadások, amelyekben egy adott szolgáltatás az éles környezet egy részhalmazára van telepítve.Toggles are also useful when performing tests such as canary releases, where a particular feature is deployed to a subset of the production environment.

TesztelésTesting

Tesztelés automatizálása.Automate testing. A szoftver manuális tesztelése unalmas, és hiba miatt nem lehetséges.Manually testing software is tedious and susceptible to error. Automatizálja a gyakori tesztelési feladatokat, és integrálja a teszteket a Build folyamataiba.Automate common testing tasks and integrate the tests into your build processes. Az automatizált tesztelés biztosítja a konzisztens tesztelési lefedettséget és a reprodukálhatóságot.Automated testing ensures consistent test coverage and reproducibility. Az integrált felhasználói felületi teszteket egy automatizált eszköznek is el kell végeznie.Integrated UI tests should also be performed by an automated tool. Az Azure olyan fejlesztési és tesztelési erőforrásokat kínál, amelyek segítségével konfigurálhatja és végrehajthatja a tesztelést.Azure offers development and test resources that can help you configure and execute testing. További információ: fejlesztés és tesztelés.For more information, see Development and test.

Hibák tesztelése.Test for failures. Ha egy rendszer nem tud kapcsolódni a szolgáltatáshoz, hogyan reagál?If a system can't connect to a service, how does it respond? Visszaállíthatja a szolgáltatást, ha a szolgáltatás újra elérhetővé válik?Can it recover once the service is available again? A hibák befecskendezése a tesztelési és átmeneti környezetekben történő ellenőrzés szabványos részét képezi.Make fault injection testing a standard part of review on test and staging environments. Ha a tesztelési folyamat és a gyakorlatok érettek, érdemes lehet ezeket a teszteket éles környezetben futtatni.When your test process and practices are mature, consider running these tests in production.

Tesztelés éles környezetben.Test in production. A kiadási folyamat nem fejeződik be éles környezetben történő üzembe helyezéssel.The release process doesn't end with deployment to production. Ellenőrizze, hogy a telepített kód a várt módon működik-e.Have tests in place to ensure that deployed code works as expected. A ritkán frissített központi telepítések esetében a karbantartás rendszeres részeként ütemezze a termelési teszteket.For deployments that are infrequently updated, schedule production testing as a regular part of maintenance.

A teljesítmény-tesztelés automatizálásával azonosíthatja a teljesítménnyel kapcsolatos problémákat.Automate performance testing to identify performance issues early. A súlyos teljesítménnyel kapcsolatos problémák befolyásolhatják a kódban fellépő hibákat.The impact of a serious performance issue can be as severe as a bug in the code. Habár az automatizált működési tesztek megakadályozhatják az alkalmazások hibáinak elhárítását, előfordulhat, hogy nem észlelhetők a teljesítményproblémák.While automated functional tests can prevent application bugs, they might not detect performance problems. Elfogadható teljesítménybeli célokat határozhat meg a metrikák, például a késés, a betöltési idő és az erőforrás-használat tekintetében.Define acceptable performance goals for metrics like latency, load times, and resource usage. Automatikus teljesítménytesztek belefoglalása a kiadási folyamatba annak biztosítása érdekében, hogy az alkalmazás megfeleljen a céloknak.Include automated performance tests in your release pipeline, to make sure the application meets those goals.

Végezzen kapacitás-tesztelést.Perform capacity testing. Az alkalmazások a tesztelési körülmények között is működhetnek, és a méretezési vagy erőforrás-korlátozások miatt problémák merülhetnek fel az éles környezetben.An application might work fine under test conditions, and then have problems in production due to scale or resource limitations. Mindig adja meg a maximális várható kapacitást és a használati korlátot.Always define the maximum expected capacity and usage limits. Ellenőrizze, hogy az alkalmazás képes-e kezelni ezeket a korlátokat, de tesztelje is, mi történik, ha túllépi a korlátokat.Test to make sure the application can handle those limits, but also test what happens when those limits are exceeded. A kapacitás tesztelését rendszeres időközönként kell végrehajtani.Capacity testing should be performed at regular intervals.

A kezdeti kiadás után a teljesítmény-és kapacitás-teszteket kell futtatnia, amikor frissíti az éles programkódot.After the initial release, you should run performance and capacity tests whenever updates are made to production code. A korábbi adatmennyiségek használatával finomíthatja a teszteket, és meghatározhatja, hogy milyen típusú teszteket kell végrehajtania.Use historical data to fine-tune tests and to determine what types of tests need to be performed.

Automatikus biztonsági behatolás-tesztelés végrehajtása.Perform automated security penetration testing. Az alkalmazások biztonságának biztosítása olyan fontos, mint bármely más funkció tesztelése.Ensuring your application is secure is as important as testing any other functionality. Az automatikus behatolás tesztelésével a létrehozási és a telepítési folyamat szabványos részét képezheti.Make automated penetration testing a standard part of the build and deployment process. Rendszeres biztonsági tesztek és sebezhetőségi vizsgálat ütemezett végrehajtása a telepített alkalmazásokon, a nyitott portok, végpontok és támadások figyelése.Schedule regular security tests and vulnerability scanning on deployed applications, monitoring for open ports, endpoints, and attacks. Az automatizált tesztelés nem távolítja el rendszeres időközönként a részletes biztonsági felülvizsgálatok szükségességét.Automated testing does not remove the need for in-depth security reviews at regular intervals.

Automatizált üzletmenet-folytonossági tesztek végrehajtása.Perform automated business continuity testing. Tesztelje a nagy léptékű üzletmenet folytonosságát, beleértve a biztonsági mentést és a feladatátvételt is.Develop tests for large-scale business continuity, including backup recovery and failover. Automatizált folyamatokat állíthat be a tesztek rendszeres végrehajtásához.Set up automated processes to perform these tests regularly.

KiadásRelease

Az üzembe helyezések automatizálása.Automate deployments. Automatizálja az alkalmazás üzembe helyezését tesztelési, átmeneti és éles környezetekben.Automate deploying the application to test, staging, and production environments. Az Automation lehetővé teszi a gyorsabb és megbízhatóbb üzembe helyezést, és biztosítja a támogatott környezetek egységes üzembe helyezését.Automation enables faster and more reliable deployments, and ensures consistent deployments to any supported environment. Eltávolítja a manuális központi telepítések által okozott emberi hibák kockázatát.It removes the risk of human error caused by manual deployments. Emellett megkönnyíti a kiadások kényelmes időpontra történő ütemezett leállítását, így csökkentve az esetleges állásidő hatásait.It also makes it easy to schedule releases for convenient times, to minimize any effects of potential downtime. A rendszerek a bevezetése során felmerülő problémák észlelésére, valamint a javítások vagy a módosítások visszaállításának automatizált módjára vonatkoznak.Have systems in place to detect any problems during rollout, and have an automated way to roll forward fixes or roll back changes.

Folyamatos integráció használata.Use continuous integration. A folyamatos integráció (CI) az összes fejlesztői kód központi kódjába való egyesítésének gyakorlata rendszeres időközönként, majd a szabványos Build-és tesztelési folyamatok automatikus elvégzése.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. A CI gondoskodik arról, hogy egy teljes csapat egyszerre működjön a rendszerterhelésen, és ne legyen ütközés.CI ensures that an entire team can work on a codebase at the same time without having conflicts. Azt is biztosítja, hogy a kód hibái a lehető leghamarabb megtalálhatók legyenek.It also ensures that code defects are found as early as possible. Lehetséges, hogy a CI-folyamatnak a kód véglegesítése vagy beadásakor minden alkalommal futnia kell.Preferably, the CI process should run every time that code is committed or checked in. Legalább naponta egyszer kell futnia.At the very least, it should run once per day.

Érdemes lehet egy Trunk-alapú fejlesztési modelltalkalmazni.Consider adopting a trunk based development model. Ebben a modellben a fejlesztők egyetlen ág (a törzs) számára véglegesítenek.In this model, developers commit to a single branch (the trunk). Követelmény, hogy a véglegesítés soha ne szakítsa meg a buildet.There is a requirement that commits never break the build. Ez a modell elősegíti a CI-t, mivel minden funkció a törzsben zajlik, és az egyesítési ütközések megoldódik, amikor a végrehajtás történik.This model facilitates CI, because all feature work is done in the trunk, and any merge conflicts are resolved when the commit happens.

A folyamatos kézbesítést érdemes használni.Consider using continuous delivery. A folyamatos teljesítés (CD) az a gyakorlat, amely biztosítja, hogy a kód mindig készen áll a telepítésre, így automatikusan kiépítheti, tesztelheti és üzembe helyezheti a programkódot az éles környezetekben.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. A folyamatos kézbesítés a teljes CI/CD-folyamat létrehozásához a lehető leghamarabb segítséget nyújt a hibakódok észlelésében, és gondoskodik arról, hogy a megfelelően tesztelt frissítések rövid idő alatt is kioldhatók legyenek.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.

A folyamatos üzembe helyezés egy további folyamat, amely automatikusan végrehajtja a CI/CD folyamaton keresztül átadott frissítéseket, és üzembe helyezi őket éles környezetben.Continuous deployment is an additional process that automatically takes any updates that have passed through the CI/CD pipeline and deploys them into production. A folyamatos üzembe helyezés robusztus automatikus tesztelést és speciális folyamat-tervezést igényel, és nem minden csapat számára megfelelő.Continuous deployment requires robust automatic testing and advanced process planning, and may not be appropriate for all teams.

Kis növekményes módosításokat hajthat végre.Make small incremental changes. A nagyméretű kódok módosítása nagyobb potenciállal rendelkezik a hibák bevezetésében.Large code changes have a greater potential to introduce bugs. Ha lehetséges, tartsa a módosításokat kis mértékben.Whenever possible, keep changes small. Ez korlátozza az egyes változások lehetséges következményeit, és megkönnyíti a problémák megértését és hibakeresését.This limits the potential effects of each change, and makes it easier to understand and debug any issues.

A változtatások hatásának szabályozása.Control exposure to changes. Győződjön meg arról, hogy az Ön felügyelete alatt áll, amikor a frissítések megjelennek a végfelhasználók számára.Make sure you're in control of when updates are visible to your end users. Vegye fontolóra a funkció bekapcsolását annak vezérléséhez, hogy a funkciók engedélyezve legyenek a végfelhasználók számára.Consider using feature toggles to control when features are enabled for end users.

A kiadás-felügyeleti stratégiák megvalósítása a telepítési kockázat csökkentése érdekében.Implement release management strategies to reduce deployment risk. Egy alkalmazás frissítésének üzembe helyezése mindig bizonyos kockázatokat von maga után.Deploying an application update to production always entails some risk. Ennek a kockázatnak a csökkentése érdekében olyan stratégiákat használjon, mint például a Kanári-kibocsátások vagy a kék-zöld környezetek, hogy a frissítéseket a felhasználók egy részhalmazára telepítse.To minimize this risk, use strategies such as canary releases or blue-green deployments to deploy updates to a subset of users. Győződjön meg arról, hogy a frissítés a várt módon működik, majd a frissítés a rendszer többi részébe.Confirm the update works as expected, and then roll the update out to the rest of the system.

Dokumentálja az összes módosítást.Document all changes. A kisebb frissítések és a konfigurációs változások zavart és verziószámozási ütközéseket okozhatnak.Minor updates and configuration changes can be a source of confusion and versioning conflict. Mindig törölje az összes módosítást, függetlenül attól, hogy milyen kicsi.Always keep a clear record of any changes, no matter how small. Naplózza az összes módosítást, beleértve az alkalmazott javításokat, a szabályzat módosításait és a konfigurációs módosításokat.Log everything that changes, including patches applied, policy changes, and configuration changes. (Ne tartalmazzon bizalmas adatokat ezekben a naplókban.(Don't include sensitive data in these logs. Jelentkezzen be például, hogy a hitelesítő adatok frissítve lettek, és ki hajtotta végre a módosítást, de ne jegyezze fel a frissített hitelesítő adatokat.) A módosítások rekordjának láthatónak kell lennie a teljes csapat számára.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.

Gondolja át, hogy az infrastruktúra nem változtatható meg.Consider making infrastructure immutable. A megváltoztathatatlan infrastruktúra az az elv, hogy az infrastruktúra nem módosítható az éles környezetben való üzembe helyezés után.Immutable infrastructure is the principle that you shouldn't modify infrastructure after it's deployed to production. Ellenkező esetben olyan állapotba kerülhet, amelyben az ad hoc változások érvénybe lépnek, így nehéz megismerni, hogy pontosan mi változott.Otherwise, you can get into a state where ad hoc changes have been applied, making it hard to know exactly what changed. A nem módosítható infrastruktúra úgy működik, hogy az összes új központi telepítés részeként lecseréli a teljes kiszolgálókat.Immutable infrastructure works by replacing entire servers as part of any new deployment. Ez lehetővé teszi a kód és az üzemeltetési környezet tesztelését és üzembe helyezését blokkként.This allows the code and the hosting environment to be tested and deployed as a block. A telepítés után az infrastruktúra-összetevők nem módosulnak a következő Build és üzembe helyezési ciklusig.Once deployed, infrastructure components aren't modified until the next build and deploy cycle.

FigyelésMonitoring

Legyenek megfigyelhető rendszerek.Make systems observable. Az operatív csapatnak mindig egyértelmű láthatósággal kell rendelkeznie egy rendszer vagy szolgáltatás állapotával és állapotával kapcsolatban.The operations team should always have clear visibility into the health and status of a system or service. Állítsa be a külső állapot végpontokat az állapot figyelésére, és győződjön meg arról, hogy az alkalmazások kódolva vannak az operatív metrikák kiszámításához.Set up external health endpoints to monitor status, and ensure that applications are coded to instrument the operations metrics. Használjon olyan közös és konzisztens sémát, amely megkönnyíti az események összekapcsolását a rendszerek között.Use a common and consistent schema that helps you correlate events across systems. Azure Diagnostics és Application Insights az Azure-erőforrások állapotának és állapotának nyomon követésére szolgáló szabványos módszer.Azure Diagnostics and Application Insights are the standard method of tracking the health and status of Azure resources. A Microsoft Operation Management Suite központosított figyelést és felügyeletet biztosít a Felhőbeli vagy hibrid megoldások számára.Microsoft Operation Management Suite also provides centralized monitoring and management for cloud or hybrid solutions.

A naplók és a metrikák összesítése és korrelálása.Aggregate and correlate logs and metrics. Egy megfelelően kihelyezett telemetria rendszer nagy mennyiségű nyers teljesítményadatokat és eseménynaplót biztosít.A properly instrumented telemetry system will provide a large amount of raw performance data and event logs. Győződjön meg arról, hogy a telemetria és a naplózási adatok feldolgozása és kezelése rövid idő alatt történik, így az operatív munkatársak mindig naprakész képet biztosítanak a rendszerállapotról.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. Olyan módon rendszerezheti és jelenítheti meg az adatmegjelenítést, amely az esetleges problémák egységes áttekintését teszi lehetővé, így ha lehetséges, akkor egyértelmű, hogy az események egymáshoz kapcsolódnak.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.

A vállalati adatmegőrzési szabályzatban megtudhatja, hogyan dolgozza fel az adatok feldolgozásának módját, és hogy mennyi ideig legyen tárolva.Consult your corporate retention policy for requirements on how data is processed and how long it should be stored.

Automatikus riasztások és értesítések implementálása.Implement automated alerts and notifications. Olyan figyelési eszközöket állíthat be, mint a Azure monitor a lehetséges vagy aktuális problémákat jelző mintázatok vagy feltételek észlelésére, valamint riasztások küldésére a csapattagok számára, akik képesek a problémák megoldására.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. A riasztások finomhangolásával elkerülhetők a hamis pozitívok.Tune the alerts to avoid false positives.

A lejárati eszközök és erőforrások figyelése.Monitor assets and resources for expirations. Bizonyos erőforrások és eszközök, például a tanúsítványok, egy adott időtartam után lejárnak.Some resources and assets, such as certificates, expire after a given amount of time. Ügyeljen arra, hogy nyomon követhesse, mely eszközök lejárnak, mikor járnak le, és milyen szolgáltatások vagy szolgáltatások függenek rajtuk.Make sure to track which assets expire, when they expire, and what services or features depend on them. Ezeket az eszközöket az automatizált folyamatokkal figyelheti.Use automated processes to monitor these assets. Értesítse az operatív csapatot az eszköz lejárata előtt, és ha a lejárat fenyegetést jelent az alkalmazás megszakadására, megszakítja a műveletet.Notify the operations team before an asset expires, and escalate if expiration threatens to disrupt the application.

KezelésManagement

Operatív feladatok automatizálása.Automate operations tasks. Az ismétlődő műveleti folyamatok manuális kezelését a hiba miatt.Manually handling repetitive operations processes is error-prone. Ha lehetséges, automatizálja ezeket a feladatokat a következetes végrehajtás és a minőség biztosítása érdekében.Automate these tasks whenever possible to ensure consistent execution and quality. Az automatizálást megvalósító programkódot a verziókövetés verziójában kell megadni.Code that implements the automation should be versioned in source control. Más kódokhoz hasonlóan az Automation-eszközöket is tesztelni kell.As with any other code, automation tools must be tested.

A kiépítéshez szükséges infrastruktúra-kód megközelítés.Take an infrastructure-as-code approach to provisioning. Csökkentse az erőforrások kiépítéséhez szükséges manuális konfiguráció mennyiségét.Minimize the amount of manual configuration needed to provision resources. Ehelyett használjon parancsfájlokat és Azure Resource Manager sablonokat.Instead, use scripts and Azure Resource Manager templates. Tartsa meg a szkripteket és a sablonokat a forrás vezérlőelemben, például az Ön által fenntartott egyéb kódokat.Keep the scripts and templates in source control, like any other code you maintain.

Használjon tárolókat.Consider using containers. A tárolók standard csomag alapú felületet biztosítanak az alkalmazások telepítéséhez.Containers provide a standard package-based interface for deploying applications. A tárolók használatával az alkalmazások olyan önálló csomagok használatával települnek, amelyek az alkalmazás futtatásához szükséges szoftvereket, függőségeket és fájlokat tartalmazzák, ami jelentősen leegyszerűsíti a telepítési folyamatot.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.

A tárolók is létrehoznak egy absztrakt réteget az alkalmazás és a mögöttes operációs rendszer között, amely a környezetek közötti konzisztenciát biztosítja.Containers also create an abstraction layer between the application and the underlying operating system, which provides consistency across environments. Ez az absztrakció a gazdagépen futó más folyamatokból vagy alkalmazásokból is elkülönítheti a tárolókat.This abstraction can also isolate a container from other processes or applications running on a host.

Hozzon létre rugalmasságot és önjavító képességeket.Implement resiliency and self-healing. A rugalmasság az alkalmazás azon képessége, hogy helyreálljon a hibáktól.Resiliency is the ability of an application to recover from failures. A rugalmassági stratégiák közé tartozik az átmeneti hibák újbóli kipróbálása, valamint a másodlagos példány vagy akár egy másik régió közötti feladatátvétel.Strategies for resiliency include retrying transient failures, and failing over to a secondary instance or even another region. További információ: megbízható Azure-alkalmazások tervezése .For more information, see Designing reliable Azure applications . Az alkalmazások azonnali jelentésének elszámolása az alkalmazásokban, valamint az kimaradások vagy más rendszerhibák kezelése.Instrument your applications so that issues are reported immediately and you can manage outages or other system failures.

Rendelkeznie kell egy üzemeltetési kézikönyvtel.Have an operations manual. A műveletek manuális vagy runbook dokumentálják az operatív munkatársaknak a rendszer fenntartásához szükséges eljárásokat és felügyeleti információkat.An operations manual or runbook documents the procedures and management information needed for operations staff to maintain a system. Olyan üzemeltetési forgatókönyveket és kockázatcsökkentő terveket is dokumentálhat, amelyek a szolgáltatás meghibásodása vagy más megszakadása során kerülhetnek szóba.Also document any operations scenarios and mitigation plans that might come into play during a failure or other disruption to your service. Hozza létre ezt a dokumentációt a fejlesztési folyamat során, és később tartsa naprakészen.Create this documentation during the development process, and keep it up to date afterwards. Ez egy élő dokumentum, és rendszeresen át kell vizsgálni, tesztelni és javítani kell.This is a living document, and should be reviewed, tested, and improved regularly.

A megosztott dokumentáció kritikus fontosságú.Shared documentation is critical. Ösztönözzék a csapattagokat, hogy járuljanak hozzá az ismeretekhez, és megosszák velük.Encourage team members to contribute and share knowledge. A teljes csapatnak hozzáféréssel kell rendelkeznie a dokumentumokhoz.The entire team should have access to documents. A dokumentumok frissítését megkönnyítheti a csapat számára.Make it easy for anyone on the team to help keep documents updated.

Meghívásos eljárások dokumentálása.Document on-call procedures. Győződjön meg arról, hogy a hívási feladatok, az ütemtervek és az eljárások dokumentálva vannak, és meg vannak osztva minden csapattag számára.Make sure on-call duties, schedules, and procedures are documented and shared to all team members. Mindig naprakészen tarthatja ezeket az adatokat.Keep this information up-to-date at all times.

A harmadik féltől származó függőségekkel kapcsolatos eszkalációs eljárások dokumentálása.Document escalation procedures for third-party dependencies. Ha az alkalmazása az Ön által közvetlenül nem felügyelt külső szolgáltatástól függ, az kimaradások kezeléséhez tervvel kell rendelkeznie.If your application depends on external third-party services that you don't directly control, you must have a plan to deal with outages. Dokumentáció létrehozása a tervezett kockázatcsökkentő folyamatokhoz.Create documentation for your planned mitigation processes. Adja meg a támogatási partnereket és a eszkalációs útvonalakat.Include support contacts and escalation paths.

Használja a konfiguráció felügyeletét.Use configuration management. A konfiguráció módosításait meg kell tervezni, látni kell a műveleteket, és rögzíteni kell őket.Configuration changes should be planned, visible to operations, and recorded. Ez egy konfigurációs felügyeleti adatbázis vagy egy konfigurációs kód szerinti megközelítés formáját képezheti.This could take the form of a configuration management database, or a configuration-as-code approach. A konfigurációt rendszeresen naplózni kell, hogy a várt érték valóban érvényben legyen.Configuration should be audited regularly to ensure that what's expected is actually in place.

Szerezzen be egy Azure-támogatási csomagot, és ismerkedjen meg a folyamattal.Get an Azure support plan and understand the process. Az Azure számos támogatási csomaggalrendelkezik.Azure offers a number of support plans. Határozza meg az igényeinek megfelelő tervet, és győződjön meg arról, hogy a teljes csapat tudja, hogyan használhatja azt.Determine the right plan for your needs, and make sure the entire team knows how to use it. A csapattagoknak ismerniük kell a csomag részleteit, a támogatási folyamat működését, valamint azt, hogyan lehet támogatási jegyet nyitni az Azure-ban.Team members should understand the details of the plan, how the support process works, and how to open a support ticket with Azure. Ha nagy léptékű eseményt várt, az Azure-támogatás segíthet a szolgáltatás korlátainak növelésében.If you are anticipating a high-scale event, Azure support can assist you with increasing your service limits. További információ: Azure-támogatással kapcsolatos gyakori kérdések.For more information, see the Azure Support FAQs.

Az erőforrásokhoz való hozzáférés engedélyezésekor kövesse a legalacsonyabb jogosultsági elveket.Follow least-privilege principles when granting access to resources. Az erőforrásokhoz való hozzáférés körültekintő kezelése.Carefully manage access to resources. Alapértelmezés szerint meg kell tagadni a hozzáférést, kivéve, ha egy felhasználó explicit módon hozzáférést kap egy erőforráshoz.Access should be denied by default, unless a user is explicitly given access to a resource. Csak a felhasználónak kell megadnia a feladataik elvégzéséhez szükséges hozzáférést.Only grant a user access to what they need to complete their tasks. Felhasználói engedélyek nyomon követése és rendszeres biztonsági naplózás végrehajtása.Track user permissions and perform regular security audits.

Azure szerepköralapú hozzáférés-vezérlés használata.Use Azure role-based access control. A felhasználói fiókok kiosztása és az erőforrásokhoz való hozzáférés nem lehet manuális folyamat.Assigning user accounts and access to resources should not be a manual process. Az Azure szerepköralapú hozzáférés-vezérlés (Azure RBAC) hozzáférést biztosít a Azure Active Directory identitások és csoportok alapján.Use Azure role-based access control (Azure RBAC) grant access based on Azure Active Directory identities and groups.

A hibák követéséhez használjon hibakövető rendszer használatát.Use a bug tracking system to track issues. A problémák nyomon követése nélkül egyszerűen kihagyhatja az elemeket, duplikálhatja a munkát, vagy további problémákat is bevezethet.Without a good way to track issues, it's easy to miss items, duplicate work, or introduce additional problems. A hibák állapotának nyomon követése érdekében ne támaszkodjon informális személyről személyes kommunikációra.Don't rely on informal person-to-person communication to track the status of bugs. Egy hibakövető eszköz használatával rögzítheti a problémák részleteit, erőforrásokat rendelhet hozzájuk, és megadhatja a folyamat előrehaladását és állapotát.Use a bug tracking tool to record details about problems, assign resources to address them, and provide an audit trail of progress and status.

Egy változás-felügyeleti rendszer összes erőforrásának kezelése.Manage all resources in a change management system. A DevOps folyamatának minden aspektusát egy felügyeleti és verziószámozási rendszerbe kell foglalni, hogy a változások könnyen követhetők és ellenőrizhetők legyenek.All aspects of your DevOps process should be included in a management and versioning system, so that changes can be easily tracked and audited. Ide tartozik a kód, az infrastruktúra, a konfiguráció, a dokumentáció és a parancsfájlok.This includes code, infrastructure, configuration, documentation, and scripts. Az összes ilyen típusú erőforrást kódként kezelheti a test/Build/felülvizsgálati folyamat során.Treat all these types of resources as code throughout the test/build/review process.

Ellenőrzőlista használata.Use checklists. Hozzon létre műveleti feladatlistákat a folyamatok követéséhez.Create operations checklists to ensure processes are followed. Gyakori, hogy egy nagyméretű manuális kihagy valamit, és egy ellenőrzőlistát követve olyan részletekre is kényszerítheti a részleteket, amelyek egyébként figyelmen belül lehetnek.It's common to miss something in a large manual, and following a checklist can force attention to details that might otherwise be overlooked. Tartsa karban a feladatlistákat, és folyamatosan keresse a feladatok automatizálásának és a folyamatok egyszerűsítésének módját.Maintain the checklists, and continually look for ways to automate tasks and streamline processes.

További információ a DevOps: Mi a DevOps? a Visual Studio webhelyén.For more about DevOps, see What is DevOps? on the Visual Studio site.