Converting Legacy Applications to Cloud Native in Kubernetes

Application modernization, Kubernetes, Docker, Spring, Containerization, Microservices, REST
John Guthrie
4 weeks · 6-8 hours per week
In this liveProject, you’ve joined up with a company whose intranet is at least 15 years out of date. Your boss wants to update to a modern, microservices-based architecture that runs in the Cloud using Kubernetes. The IT team has kicked off this project with a new UX design for your web applications—but there’s a catch. Those old web apps have business processes built into them that can’t be rewritten from scratch. Instead, you’ve decided to transform these legacy applications into RESTful web services. You’ve chosen the old employee profile Java web app as your first conversion project, supplying a RESTful API that can provide read-and-update capabilities to other services and applications. Your challenges in this liveProject will include reviewing and modernizing the legacy app with Spring Boot and RESTful APIs, Dockerizing the app to run in a container environment, deploying it onto Kubernetes, and then testing that it’s working properly.

project author

John Guthrie
John Guthrie is an engineer at VMware, where he works in the Modern Applications Platform group, helping customers migrate their applications and infrastructure to cloud-native. He has a decades-long career working with enterprise systems and data as an administrator, developer, architect, and technical manager. His current career focuses on enabling customers, through pair-programming and other XP practices, to modernize their software and culture.

Prerequisites

This liveProject is for intermediate Java developers, who are familiar with the basics of Enterprise web development. You will need the Java JDK, Maven, and MySQL installed on your workstation. To begin this liveProject, you will need to be familiar with:

TOOLS
  • Basic Java
  • Basic Spring
  • Basic Docker
TECHNIQUES:
  • Basics of containerization
  • Basics of DevOps
  • Basics of web development

you will learn

In this liveProject, you’ll learn important technologies for Cloud development and containerization that are in high demand from modern businesses. The skills you’ll develop are easy to transfer to any Cloud Native project that makes use of Docker and Kubernetes.

  • Microservices development
  • Refactoring legacy apps for the Cloud
  • Creating REST APIs with Spring Boot
  • Docker CLI and Kubernetes CLI
  • Containerizing Spring Boot applications
  • Docker networking
  • Pushing Docker images to a repository
  • Deploying on Kubernetes
  • Exposing services and connecting them
  • Managing your deployment with autoscaling

features

Self-paced
You choose the schedule and decide how much time to invest as you build your project.
Project roadmap
Each project is divided into several achievable steps.
Peer support
Chat with other participants within the liveProject platform.
Compare with others
For each step, compare your deliverable to the solutions by the author and other participants.
Book and video resources
Excerpts from Manning books and videos are included, as well as references to other resources.

project outline

Introduction

Prerequisites Test

Get Started

1. Legacy, Bootifying & Converting

1.1. Running the Legacy Application

1.2. Bootifying the Application

1.3. Converting the Application to a RESTful API

1.4. Install the Java Development Kit (JDK)

1.5. Installing Maven

1.6. Installing MySQL server

1.7. Booting your Spring Boot application: Writing the Bootstrap class

1.8. Writing RESTful controllers

1.9. Building the doorway into the microservice: the Spring Boot controller

1.10. Submit your work

Solution

2. Containerize Profile App and Services Using Docker Compose

2.1. Containerize Profile App and Services Using Docker Compose

2.2. Installing and using Docker

2.3. Docker and development

2.4. Using Docker Volumes for Persistent Storage

2.5. Sharing Images with Docker Hub and Other Registries

2.6. Declarative service environments with Compose V3

2.7. Submit your work

Solution

3. Deploy Application and Services to Kubernetes

3.1. Deploy Application and Services to Kubernetes

3.2. Deploying a Kubernetes cluster

3.3. Submit your work

Solution

Summary

Project Conclusions

placing your order...

Don't refresh or navigate away from the page.
Manning Early Access Program (MEAP) In MEAP, you get immediate access to a liveProject under development, so you can participate while it is created, tested, and improved. Get started today, and pick up right where you've left off whenever we update the project!
liveProject $35.00 $50.00 self-paced learning
Converting Legacy Applications to Cloud Native in Kubernetes (liveProject) added to cart
continue shopping
go to cart

Prices displayed in rupees will be charged in USD when you check out.