Active Solution Play
En hel del av den kunskap vi sprider spelas in. Här har vi samlat några guldkorn.
En hel del av den kunskap vi sprider spelas in. Här har vi samlat några guldkorn.
Continuous delivery is more popular than ever before, with more and more teams doing continuous integration and using cloud platforms for faster delivery. But no matter how good your tooling is, if your architecture doesn't allow you to easily change, build and deploy small parts of your application with zero downtime you won't reap the benefits of continuous delivery.
In this session we will discuss how we can design our architecture to support continuous delivery. We will cover topics such as Micro services, designing for stability with patterns such as Circuit Breaker, and how we can achieve zero downtime deployments for our applications and databases.
Continuous delivery and DevOps is all about delivering value faster to our end users while keeping the quality at a high level and reducing the downtime to a minimum. Traditional development strategies such as feature and release branching allows us to work and stabilize in isolation, but by doing so we are no longer integrating continuously which in the end will slow us down. So, how can we whip new code as often as possible (even every commit) without breaking stuff in production?
In this session you will learn about techniques such as Feature Flags, A/B testing, Canary releases and Dark Launches and how we can implement this using Azure DevOps, Microsoft Azure and Application Insighs to be able to ship new functionality into production as fast as possible, and learn about how these features are being used so that we can learn and improve along the way.
Azure DevOps (previously known as Visual Studio Team Services) is a broad product suite with tools that assists small and large software development teams that want to deliver high quality software at a rapid speed.
In session we will walk through all major features in Azure DevOps, such as Azure Boards, Azure Pipelines and Azure Repos, and look at how we can continuously deliver value to or end users and implement DevOps practices such as Infrastructure as Code and testing in production using Azure.
With the number of technologies, languages and platforms that is part of most projects today just keeps on increasing, beginning work on a new project can be daunting. We often end up spending a lot of time installing the correct version of SDK's and build tools until we can make the project build and run. And then we have the same requirements for our build environment, and too often we find that build failures are due to differences between the local development machines and the build server environment,
In this session you will learn how to use Docker to define and run your builds both locally and on the build server. By describing your builds in Dockerfile we can make sure that it will build anywhere, without any other dependencies than Docker.
We will also look at how we can run build agents inside a Docker container to make sure that our build infrastructure is immutable and reliable.
Event-driven architectures is very common in a microservices world, enabling flexible and decoupled designs for the applications that we build.
But eventing is also very useful when it comes to our infrastructure and CI/CD platforms. Being able to chain together containers in simple or complex workflows, triggered by different events coming from inside or outside the cluster, opens up a world of possibilites.
In this session we will look at two event-based platforms for Kubernetes:
* Brigade brings event-based scripting to Kubernetes, making it easy to chain together containers and run them serially or in parallell, triggered by events such as GitHub events, Docker pushes or any other trigger. We'll look at how we can automate deployments to Kubernetes when a Pull Request is created, and removes it once the PR is completed
* KEDA (Kubernetes-based Event Driven Autoscaling) enables autoscaling for event driven Kubernetes workloads. KEDA supports multiple event sources, such as Kafka, RabbitMQ and Azure Service Bus, and natively integrates with Azure Function tooling. Scaling out the number of pods based on the number of messages in our message queue is a perfect example of the power that KEDA brings, which will be show during this session
Moving to microservices architecture brings with it a lot of complexity. Things like state management, service discovery and resilient service communication becomes very important and needs to be implemented properly when building distributed systems.
Dapr is a new portable, event-driven runtime that makes it easy for enterprise developers to build resilient microservices applications, by providing best practice implementations as building blocks that you can use in your distributed applications.
Join me in in this session to learn about how Dapr works, which problems it solves and how to get started with it.
In this session we will look at a new option in Azure for running cloud native applications, called Azure Container Apps. This service makes it easy to deploy a multi-service application to the cloud, where each service can be scaled individually, and without worrying about provisioning and managing any infrastructure.