Take your programming skills to the next level with our Java e-learning programme

Microservice Deployment

featuring Ansible, Jenkins and AWS.
  • This course shows how a microservice architecture can be automatically deployed to a cloud based platform.
  • Continuous deployment using Jenkins.
  • Configuration Management and Provisioning using Ansible
  • Using AWS for Microservices
  • Elastic Load Balancers
  • Auto Scaling Groups
  • Elastic IP allocation
  • Blue/Green Deployment Pipelines

Pre-requisites

you need to be comfortable with using AWS; you can prepare for this course by following our "Cloud Deployment with AWS" course.

Contents - This is a long and detailed course, equivalent to 10 days of live training. Ansible should take 3 days, Jenkins 2 days and the remainder, 5 days.

 

Having problems? check the errata for this course.

1

Course Welcome


4 m 30 s
A quick overview of the course. Docker and Securing the system using VPC will be covered in a separate module.

2

The Cloud Environment


19 m 0 s
A very important chapter which you must follow!

3

Introducing Ansible


27 m 0 s
and how to install it

4

Ansible Ad-hoc commands


22 m 30 s
An introduction to the basic Ansible commands

5

Ansible Playbooks


21 m 0 s
We now build a more realistic "playbook" and discover that Ansible is idempotent!

6

More Playbooks


23 m 0 s
Going further with Playbooks.

7

Automatic EC2 Provisioning


14 m 0 s
We can also automatically create and destroy EC2 instances using Ansible. We automate the creation of a Jenkins server, which sets us up for part 2 of the course!

8

IAM and Security


47 m 30 s
You need to create AWS credentials to automate provisioning. YOU MUST be very careful not to leak these privileges, as described in this video.

9

Dynamic Inventory


28 m 30 s
This very powerful feature means we can progress our script without needing to constantly terminate EC2 instances.

Errata - problems starting Jenkins? Problems with "boto3" errors?


3 m 30 s
Coming up in Chapter 10, the version of Ansible you are using may be a later one than used on the video - this causes a problem related to "boto3". Also, your versions of Jenkins probably depends on Java 8, whilst the version on your instance is Java 7. This video shows how to correct these errors.

10

Firewalls and Variables


22 m 0 s
Some final improvements to the script before we move on to the next section of the course.

11

Continuous Integration and Deployment


18 m 30 s
An overview of the development practices of CI and CD.

Errata - if you have a "file not found" when re-running your Ansible script.


2 m 25 s
Newer versions of Ansible have made a breaking change to the task you use to copy the initial password file - if you experience this, here's a simple fix!

12

Getting Started with Jenkins


32 m 30 s
The initial configuration (including unlocking) and the first checkout from GitHub.

13

Jenkins - A Full Build


13 m 30 s
Running the full Maven build from Jenkins.

14

Automatic Builds


9 m 0 s
How to trigger the build from GitHub pushes.

Errata - adding Boto3 to the playbook


1 m 23 s
Exactly as when we manually installed boto3 early, we will need to add this as a step to your Jenkins provisioning script.

15

Jenkins Provisioning with Ansible


37 m 0 s
How to call Ansible from Jenkins to deploy and provision. Also how to configure credentials via some Jenkins plugins.

16

Deployment Pipelines


34 m 30 s
A great introduction to the Pipeline feature - we can now fully configure our builds in the code repository.

17

Part 3: Introduction


5 m 30 s
Now for bringing it all together, using Ansible and Jenkins to deploy a production workload.

18

Global Config Server


46 m 30 s
The first steps in deploying Global Config Server: Autoscaling Groups, Virtual Private Clouds (VPCs) and Availability Zones (AZ)

19

Elastic Load Balancing


33 m 30 s
How to use ELBs to achieve high availability and a fixed domain name for the config cluster. NOTE: ELBs incur high on-going costs - ensure you delete them when you finish the course.

20

Production Eureka 1


40 m 0 s
Getting Eureka into production is tricky - we've broken it down into 4 steps - here you get the first instance up and running.

21

Production Eureka 2


20 m 0 s
Eureka needs to bind itself to an EIP - to make this happen, some security changes are required.

22

Production Eureka 3


10 m 0 s
For versions of cloud up to and including Camden, a fix is required to your Eureka server...

23

Production Eureka 4


19 m 30 s
Finally we make Eureka clustered and Highly Available

24

Production ActiveMQ


34 m 0 s
We use an EC2 instance to run ActiveMQ. We show what would happen in the event of a Queue outage.

25

Production WebApp


24 m 30 s
Now we bring the webapp into service.

26

Blue/Green Deployments


29 m 0 s
A simplified deployment technique for minimal downtime and continuous deployment

27

Production Microservice


45 m 0 s
At last the Microservice is brought into the system!

28

RDS


30 m 0 s
An extra item on how to link to a cloud relational database. This will improve the running of the forthcoming stress test...

29

Hystrix Monitoring


29 m 0 s
What happens when the system is under load and a microservice is redeployed?

30

Cleaning up your AWS Account


18 m 0 s
YOU MUST DO THIS OR YOU WILL INCUR ONGOING CHARGES!! Plus, a taster of what's to come next...

Let the Course Come to You

About Us Pricing Frequently Asked Questions Contact Privacy T&Cs Affiliates and Resellers
Facebook Twitter YouTube LinkedIn