Developing Microservices (DMS)

 

Résumé du cours

Microservice architecture is a brave new world! Companies are abandoning the age-old monolith architecture for a modular approach that supports rapid expansion and compression of services. As your company grows, the more you’ll find a transition to microservices is necessary! Make the journey work for your business by mastering an arsenal of tools to plan, communicate, and manage the transition to microservices in a cost effective way. In our labs, you will convert a clumsy monolithic application to agile microservices in a controlled environment. Learn firsthand how and why each step is taken in the orderly decision process of transitioning your environment to 100% microservices!

A qui s'adresse cette formation

This class is targeted for anybody interested in the processes of Microservices; Developers, Operations Staff, Cloud Architects, DevOps and IT Professionals. The lab portion of this class has two paths; one for technical people and one for management.

Pré-requis

This course is intended for students who might not have previous development experience.

Objectifs

You will learn essential microservices concepts including:

  • Refactor, untangle, and split monolithic services to support a transition to microservices.
  • Pay down technical debt by understanding the benefits of supporting your business strategy with microservices.
  • Develop proficiency with the most popular tools used by the experts who routinely deploy microservices.
  • Clearly understand why the microservices revolution is driving DEVOPs towards simpler and more effective automation.
  • Gain experience by deploying an actual microservices solution with API gateway, using Docker, Docker compose, Jenkins, and Kubernetes.
  • Actually carry out the transition of monolith to microservices in a step by step hands on exercise.
  • Learn how to incorporate an API gateway into your microservices ingress.
  • Experiment with stateful solutions for microservices.
  • Deploy Jenkins in a CI/CD pipeline.
  • Learn how to use (and not use) ansible to deploy microservices solutions.

Suite de parcours

Outline: Developing Microservices (DMS)

Introduction to Microservices and the Development Environment-

This section introduces you to the foundations of microservices: What a microservice is, Why organizations have chosen to adopt the microservices model, and How microservices compare to other service architectures. You will perform step-by-step labs, learning ways to efficiently manipulate your microservices development environment. Core Concepts:

  • Defining Microservices
  • Iteration
  • Feedback Loops
  • Scaling
  • Microservices vs Other Architectures
  • Revision Control

Organizational Adoption of Microservices-

You will learn design essentials for adopting microservices, viewed from different roles within an organization: Managers, Operations, and Developers. You will start with a monolithic application, which you will begin transforming into a microservice-based application. The hands-on labs of this section introduce you to the monolithic application you will be converting, and establish a consistent method to test the application’s performance. Core Concepts:

  • Conway’s Law
  • Service Oriented Architecture
  • Infrastructure as a Service
  • Idempotency in Infrastructure
  • Components of a 12 Factor App
  • Defining DevOps

Service Discovery and Connectivity-

You will practice with the various additional infrastructure and code that is needed for transforming an application into a replicable service. You will follow a proven process of building and connecting applications to a service registry through the hands-on labs. Core Concepts:

  • Service Discovery
  • Service Registries
  • DNS based Service Discovery
  • Configuration Variables
  • Legacy Service Connectivity
  • Modern Service Connectivity
  • Security Considerations

Databases and Service Runtime -

You will be introduced to options available to store the state of services, as well as various ways that services can be hosted with several runtime environments. You will create a microservice and integrate it with the existing monolithic based application. Core Concepts:

  • SQL vs NoSQL
  • Volume Storage
  • Object Storage
  • Hypervisors
  • Containers
  • Cloud Services
  • On-Premises Services

Service Definition -

You will study configuration, monitoring, and testing options that apply to microservice development. In the labs, you will continue to build microservices and attach them to the monolith. Core Concepts:

  • Software Releases
  • Configuration Systems
  • Associated Services (Prometheus, Graphana, Jaeger, Vault)
  • Securing Secrets
  • Automated Testing
  • Continuous Integration (Jenkins, Travis, Gitlab)

Deploying and Upgrading Your Microservices -

You will directly apply the latest microservices tools to containerize and test microservices in a container based deployment. You will then deploy your microservice into a Kubernetes environment, completing the conversion from monolith to microservice. Core Concepts:

  • Application Specific Servers
  • Virtual Machines (VMWare, OpenStack, EC2, Azure, Google Cloud)
  • Docker
  • Docker-Compose
  • Containerd
  • Podman
  • Kubernetes

Practical Adoption of Microservices -

The final section of the course will summarize the concepts previously covered, as well as discuss the practical implications of designing for, or migrating to, a microservices based architecture. Core Concepts:

  • Workflow
  • Create, Shorten and Amplify Feedback Loops
  • Continued Experimentation
  • Working Code Works
  • Costs of Microservice Migration
  • State Management in Service Design
  • Encapsulation
  • Segregation
  • Adoption

Prix & Delivery methods

Formation en ligne

Durée 3 jours

Prix
  • CAD 2 370,–
Formation en salle équipée

Durée 3 jours

Prix
  • Canada: CAD 2 370,–

Agenda

Actuellement aucune session planifiée