Wann

22/07/2024 - 26/07/2024    
Ganztägig

Wo

ETC Trainingcenter
Modecenterstrasse 22, Wien, Wien, 1030, Wien

Veranstaltungstyp

  • Cloud Computing-Konzepte, einschließlich eines Verständnisses von PaaS-, SaaS- und IaaS-Implementierungen.
  • Erfahrung in Bezug auf Azure-Verwaltung und Azure-Entwicklung mit nachgewiesenen Kenntnissen in mindestens einem dieser Bereiche
  • Kenntnisse in Bezug auf Versionskontrolle, agile Softwareentwicklung und die wichtigsten Prinzipien der Softwareentwicklung Es wäre hilfreich, wenn Sie Erfahrung in einem Unternehmen hätten, das Software liefert. 

Dieser Training vermittelt die Kenntnisse und Fähigkeiten zur Entwicklung und Umsetzung von DevOps-Prozessen und -praktiken. Die Trainingteilnehmer*innen lernen, wie sie DevOps planen, Quellcodeverwaltung verwenden, Git für ein Unternehmen skalieren, Artefakte konsolidieren, eine Strategie für das Abhängigkeitsmanagement entwerfen, Geheimnisse verwalten, Continuous-Integration-Ansätze und eine Strategie zum Erstellen von Containern implementieren, eine Releasestrategie entwerfen, einen Releaseverwaltungsworkflow einrichten, ein Bereitstellungsmuster implementieren und Feedbackmechanismen optimieren.
Die Teilnehmer dieses Trainings sind daran interessiert, DevOps-Prozesse zu entwerfen und zu implementieren oder die Zertifizierungsprüfung für Microsoft Azure DevOps-Lösungen abzulegen.
Introduction to DevOps

  • What is DevOps?
  • Explore the DevOps journey
  • Identify transformation teams
  • Explore shared goals and define timelines

Choose the right project

  • Explore greenfield and brownfield projects
  • Decide when to use greenfield and brownfield projects
  • Decide when to use systems of record versus systems of engagement
  • Identify groups to minimize initial resistance
  • Identify project metrics and key performance indicators (KPIs)

Describe team structures

  • Explore agile development practices
  • Explore principles of agile developmen
  • Define organization structure for agile practices
  • Explore ideal DevOps team members
  • Enable in-team and cross-team collaboration
  • Select tools and processes for agile practices

Choose the DevOps tools

  • What is Azure DevOps?
  • What is GitHub?
  • Explore an authorization and access strategy
  • Migrate or integrate existing work management tools
  • Migrate or integrate existing test management tools
  • Design a license management strategy

Plan Agile with GitHub Projects and Azure Boards

  • Introduction to GitHub Projects and Project boards
  • Introduction to Azure Boards
  • Link GitHub to Azure Boards
  • Configure GitHub Projects
  • Manage work with GitHub Project boards
  • Customize Project views
  • Collaborate using team discussions
  • Agile Plan and Portfolio Management with Azure Boards

Introduction to source control

  • Explore DevOps foundational practices
  • What is source control?
  • Explore benefits of source control
  • Explore best practices for source control

Describe types of source control systems

  • Understand centralized source control
  • Understand distributed source control
  • Explore Git and Team Foundation Version Control
  • Examine and choose Git
  • Understand objections to using Git
  • Describe working with Git locally

Work with Azure Repos and GitHub

  • Introduction to Azure Repos
  • Introduction to GitHub
  • Migrate from TFVC to Git
  • Use GIT-TFS
  • Develop online with GitHub Codespaces

Structure your Git Repo

  • Explore monorepo versus multiple repos
  • Implement a change log
  • Knowledge check

Manage Git branches and workflows

  • Explore branch workflow types
  • Explore feature branch workflow
  • Explore Git branch model for continuous delivery
  • Explore GitHub flow
  • Explore fork workflow
  • Version Control with Git in Azure Repos

Collaborate with pull requests in Azure Repos

  • Collaborate with pull requests
  • Exercise – Azure Repos collaborating with pull requests
  • Examine GitHub mobile for pull request approvals

Identify technical debt

  • Examine code quality
  • Examine complexity and quality metrics
  • Introduction to technical debt
  • Measure and manage technical debt
  • Integrate other code quality tools
  • Plan effective code reviews

Explore Git hooks

  • Introduction to Git hooks
  • Implement Git hooks

Plan foster inner source

  • Explore foster inner source
  • Implement the fork workflow
  • Describe inner source with forks

Manage Git repositories

  • Work with large repositories
  • Purge repository data
  • Manage releases with GitHub Repos
  • Automate release notes with GitHub

Explore Azure Pipelines

  • Explore the concept of pipelines in DevOps
  • Describe Azure Pipelines
  • Understand Azure Pipelines key terms

Manage Azure Pipeline agents and pools

  • Choose between Microsoft-hosted versus self-hosted agents
  • Explore job types
  • Introduction to agent pools
  • Explore predefined agent pool
  • Understand typical situations for agent pools
  • Communicate with Azure Pipelines
  • Communicate to deploy to target servers
  • Examine other considerations
  • Describe security of agent pools
  • Configure agent pools and understanding pipeline styles

Describe pipelines and concurrency

  • Understand parallel jobs
  • Estimate parallel jobs
  • Describe Azure Pipelines and open-source projects
  • Explore Azure Pipelines and Visual Designer
  • Describe Azure Pipelines and YAML

Explore continuous integration

  • Introduction to continuous integration
  • Learn the four pillars of continuous integration
  • Explore benefits of continuous integration
  • Describe build properties
  • Enable Continuous Integration with Azure Pipelines

Implement a pipeline strategy

  • Configure agent demands
  • Implement multi-agent builds
  • Explore source control types supported by Azure Pipelines

Integrate with Azure Pipelines

  • Describe the anatomy of a pipeline
  • Understand the pipeline structure
  • Detail templates
  • Explore YAML resources
  • Use multiple repositories in your pipeline

Introduction to GitHub Actions

  • What are Actions?
  • Explore Actions flow
  • Understand workflows
  • Describe standard workflow syntax elements
  • Explore events
  • Explore jobs
  • Explore runners
  • Examine release and test an action

Learn continuous integration with GitHub Actions

  • Describe continuous integration with actions
  • Examine environment variables
  • Share artifacts between jobs
  • Examine Workflow badges
  • Describe best practices for creating actions
  • Mark releases with Git tags
  • Create encrypted secrets
  • Use secrets in a workflow
  • Implement GitHub Actions for CI/CD

Design a container build strategy

  • Examine structure of containers
  • Work with Docker containers
  • Understand Dockerfile core concepts
  • Examine multi-stage dockerfiles
  • Examine considerations for multiple stage builds
  • Explore Azure container-related services
  • Deploy Docker containers to Azure App Service web apps

Introduction to continuous delivery

  • Explore traditional IT development cycle
  • What is continuous delivery?
  • Move to continuous delivery
  • Understand releases and deployments
  • Understand release process versus release

Create a release pipeline

  • Describe Azure DevOps release pipeline capabilities
  • Explore release pipelines
  • Explore artifact sources
  • Choose the appropriate artifact source
  • Exercise – select an artifact source
  • Examine considerations for deployment to stages
  • Exercise – set up stages
  • Explore build and release tasks
  • Explore custom build and release tasks
  • Explore release jobs
  • Configure Pipelines as Code with YAML

Explore release recommendations
Understand the delivery cadence and three types of triggers
Exercise – select your delivery and deployment cadence
Explore release approvals
Exercise – set up manual approvals
Explore release gates
Use release gates to protect quality
Control Deployments using Release Gates

Provision and test environments

  • Provision and configure target environments
  • Exercise – set up service connections
  • Configure automated integration and functional test automation
  • Understand Shift-left
  • Set up and run availability tests
  • Explore Azure Load Testing
  • Set up and run functional tests

Manage and modularize tasks and templates

  • Examine task groups
  • Exercise – create and manage task groups
  • Explore variables in release pipelines
  • Understand variable groups

Automate inspection of health

  • Automate inspection of health
  • Explore events and notifications
  • Explore service hooks
  • Exercise – set up service hooks to monitor the pipeline
  • Configure Azure DevOps notifications
  • Configure GitHub notifications
  • Explore how to measure quality of your release process
  • Examine release notes and documentation
  • Examine considerations for choosing release management tools
  • Explore common release management tools

Introduction to deployment patterns

  • Explore microservices architecture
  • Examine classical deployment patterns
  • Understand modern deployment patterns

Implement blue-green deployment and feature toggles

  • What is blue-green deployment?
  • Explore deployment slots
  • Exercise – set up a blue–green deployment
  • Introduction to feature toggles
  • Describe feature toggle maintenance

Implement canary releases and dark launching

  • Explore canary releases
  • Examine Traffic Manager
  • Understand dark launching

Implement A/B testing and progressive exposure deployment

  • What is A/B testing?
  • Explore CI-CD with deployment rings

Integrate with identity management systems

  • Integrate GitHub with single sign-on (SSO)
  • Explore service principals
  • Explore Managed Identity

Manage application configuration data

  • Rethink application configuration data
  • Explore separation of concerns
  • Understand external configuration store patterns
  • Introduction to Azure App Configuration
  • Examine Key-value pairs
  • Examine App configuration feature management
  • Integrate Azure Key Vault with Azure Pipelines
  • Manage secrets, tokens and certificates
  • Examine DevOps inner and outer loop
  • Integrate Azure Key Vault with Azure DevOps
  • Enable Dynamic Configuration and Feature Flags

Explore infrastructure as code and configuration management

  • Explore environment deployment
  • Examine environment configuration
  • Understand imperative versus declarative configuration
  • Understand idempotent configuration

Create Azure resources using Azure Resource Manager templates

  • Why use Azure Resource Manager templates?
  • Explore template components
  • Manage dependencies
  • Modularize templates
  • Manage secrets in templates
  • Deployments using Azure Bicep templates

Create Azure resources by using Azure CLI

  • What is Azure CLI?
  • Work with Azure CLI

Explore Azure Automation with DevOps

  • Create automation accounts
  • What is a runbook?
  • Understand automation shared resources
  • Explore runbook gallery
  • Examine webhooks
  • Explore source control integration
  • Explore PowerShell workflows
  • Create a workflow
  • Exercise – Create and run a workflow runbook
  • Examine checkpoint and parallel processing

Implement Desired State Configuration (DSC)

  • Understand configuration drift
  • Explore Desired State Configuration (DSC)
  • Explore Azure Automation State configuration (DSC)
  • Examine DSC configuration file
  • Exercise – Import and compile
  • Exercise – Onboard machines for management
  • Explore hybrid management
  • Implement DSC and Linux Automation on Azure

Implement Bicep

  • What is Bicep?
  • Install Bicep
  • Exercise – Create Bicep templates
  • Understand Bicep file structure and syntax

Introduction to Secure DevOps

  • Describe SQL injection attack
  • Understand DevSecOps
  • Explore Secure DevOps Pipeline
  • Explore key validation points
  • Explore continuous security validation
  • Understand threat modeling

Implement open-source software

  • Explore how software is built
  • What is open-source software
  • Explore corporate concerns with open-source software components
  • Introduction to open-source licenses
  • Explore common open-source licenses
  • Examine license implications and ratings

Software Composition Analysis

  • Inspect and validate code bases for compliance
  • Explore software composition analysis (SCA)
  • Integrate Mend with Azure Pipelines
  • Implement GitHub Dependabot alerts and security updates
  • Integrate software composition analysis checks into pipelines
  • Examine tools for assess package security and license rate
  • Interpret alerts from scanner tools
  • Implement security and compliance in an Azure Pipeline

Static analyzers

  • Explore SonarCloud
  • Explore CodeQL in GitHub
  • Manage technical debt with SonarCloud and Azure DevOps

OWASP and Dynamic Analyzers

  • Plan Implement OWASP Secure Coding Practices
  • Explore OWASP ZAP penetration test
  • Explore OWASP ZAP results and bugs

Security Monitoring and Governance

  • Implement pipeline security
  • Explore Microsoft Defender for Cloud
  • Examine Microsoft Defender for Cloud usage scenarios
  • Explore Azure Policy
  • Understand policies
  • Explore initiatives
  • Explore resource locks
  • Explore Azure Blueprints
  • Understand Microsoft Defender for Identity

Explore package dependencies

  • What is dependency management?
  • Describe elements of a dependency management strategy
  • Identify dependencies
  • Understand source and package componentization
  • Decompose your system
  • Scan your codebase for dependencies

Understand package management

  • Explore packages
  • Understand package feeds
  • Explore package feed manager
  • Explore common public package sources
  • Explore self-hosted and SaaS based package sources
  • Consume packages
  • Introduction to Azure Artifacts
  • Publish packages
  • Package management with Azure Artifacts

Migrate consolidating and secure artifacts

  • Identify existing artifact repositories
  • Migrate and integrating artifact repositories
  • Secure access to package feeds
  • Examine roles
  • Examine permissions
  • Examine authentication

Implement a versioning strategy

  • Understand versioning of artifacts
  • Explore semantic versioning
  • Examine release views
  • Promote packages
  • Exercise – Promote a package
  • Explore best practices for versioning

Introduction to GitHub Packages

  • Publish packages
  • Install a package
  • Delete and restore a package
  • Explore package access control and visibility

Implement tools to track usage and flow

  • Understand the inner loop
  • Introduction to continuous monitoring
  • Explore Azure Monitor and Log Analytics
  • Examine Kusto Query Language (KQL)
  • Explore Application Insights
  • Implement Application Insights
  • Exercise – Add Application Insights to an ASP.NET core application
  • Monitor application performance with Application Insights

Develop monitor and status dashboards

  • Explore Azure Dashboards
  • Examine view designer in Azure Monitor
  • Explore Azure Monitor workbooks
  • Explore Power BI
  • Build your own custom application

Share knowledge within teams

  • Share acquired knowledge within development teams
  • Introduction to Azure DevOps project wikis
  • Integrate with Azure Boards
  • Share team knowledge using Azure Project Wiki

Design processes to automate application analytics

  • Explore rapid responses and augmented search
  • Integrate telemetry
  • Examine monitoring tools and technologie

Manage alerts, blameless retrospectives and a just culture

  • Examine when get a notification
  • Explore how to fix it
  • Explore smart detection notifications
  • Improve performance
  • Understand server response time degradation
  • Reduce meaningless and non-actionable alerts
  • Examine blameless retrospective
  • Develop a just culture

https://www.etc.at/seminare/AZ-400T00