Microservices Architecture All MIS603

profilemyeazyassignment
Module6a063X00001ZrEuZQAVPart3.pdf

6/3/2020 Laureate International Universities

https://laureate-au.blackboard.com/webapps/blackboard/content/listContent.jsp?course_id=_89956_1&content_id=_8971659_1&mode=reset 1/7

MODULE 6 TOPIC 2 RESOURCES AND ACTIVITIESMODULE 6 TOPIC 2 RESOURCES AND ACTIVITIES

The Microservices toolkit

Introduction:

At the AWS re:Invent conference 2015, Senior Engineer Dave Han from Net�ix shared

a diagrammatic representation of Net�ix’s hundreds of microservices which are

subject to thousands of daily production changes and support hundreds of

thousands of customer interactions per minute to support billions of hours of

streamed content. When you consider those facts, it is no surprise that a map of

Net�ix Microservices Architecture is as complex as this:

6/3/2020 Laureate International Universities

https://laureate-au.blackboard.com/webapps/blackboard/content/listContent.jsp?course_id=_89956_1&content_id=_8971659_1&mode=reset 2/7

(Amazon Web Services, 2015, 15:33)

One thing is certain – with the widespread and rapidly advancing use of microservices

architecture there will be continued development of tools to support software

engineers, developers and microservices architects to manage these rapid scale and

progressively complex environments - and automation is one of the key elements in

achieving this sustainably. And to support this, an ongoing proliferation of new tools

is not only likely but required.

All in the interests of building systems that are high scale, high availability, resilient

and agile.

In this module we have included a sample of some of the leading tools for building

and managing a microservices architecture to o�er you some fundamental insights

into what is available to software engineers, developers and microservices architects

at a grass roots level. This can in no way be exhaustive, however key products that are

pivotal to supporting the philosophy of microservices architecture have been included

to ensure that you have some insights into the microservices technology landscape

and some of the functionality that they provide within a microservices architecture.

Focus areas include tools supporting containerization, communications integration,

container orchestration, message broking and monitoring.

References

Amazon Web Services. (2015, October 12). AWS re:Invent 2015: A Day in the Life of a Net�ix

Engineer [Video �le]. Retrieved from https://youtu.be/-mL3zT1iIKw

6/3/2020 Laureate International Universities

https://laureate-au.blackboard.com/webapps/blackboard/content/listContent.jsp?course_id=_89956_1&content_id=_8971659_1&mode=reset 3/7

Resources and Activities:

What is Docker?

Please watch the following video from the Docker for Windows series:

Introduction: What is Docker? (4m 16s)

Please watch this short video clip. When reading through the essential

resources for the prior modules you will see many references being made

to Docker. Docker is an open source proprietary solution that support

containerization of microservices. In this video clip, Davis explains what

Docker is and several tools in their suite. While Davis is discussing Docker

for Windows, the fundamental concepts that he discusses are relevant in all

development environments.

Reference:

Davis, D. (2018, November 15). Introduction: What is Docker? [Video �le].

Retrieved from https://www.linkedin.com/learning/docker-for-

windows/what-is-docker?u=56744473

(https://www.linkedin.com/learning/docker-for-windows/what-is-docker?

u=56744473)

What is a container

Please watch the following video from the Docker for Windows series:

1.Understanding containers: What is a container? (3m 28s)

Please watch this short video clip. Note how Davis identi�es the bene�ts of

containers: �exibility, interchangeability, portability and stackability. Davis’

de�nition of containers at the 3m mark in the video shows why they are

well suited as elements within a microservices architecture.

Reference:

Davis, D. (2018, November 15). Understanding containers: What is a

container? [Video �le]. Retrieved from

https://www.linkedin.com/learning/docker-for-windows/what-is-a-

container?u=56744473 (https://www.linkedin.com/learning/docker-for-

windows/what-is-a-container?u=56744473)

6/3/2020 Laureate International Universities

https://laureate-au.blackboard.com/webapps/blackboard/content/listContent.jsp?course_id=_89956_1&content_id=_8971659_1&mode=reset 4/7

What is Kubernetes?

Please watch the following video from Learning Kubernetes

series:

1.Containerization with Kubernetes: What is Kubernetes? (4m 25s)

Please watch this video clip. An increase in adoption of Docker in

microservices architecture has led to increasing complex environments

with thousands of microservices. This has given rise to a need to manage

these microservices, and this is where Kubernetes comes in. Pay close

attention at the 1m 26s mark where Gaekwad explains what Kubernetes is

and what is does to enable better container orchestration.

Reference:

Gaekwad, K. (2018, June 14). Containerization with Kubernetes: What is

Kubernetes. [Video File]. Retrieved from

https://www.linkedin.com/learning/learning-kubernetes/what-is-

kubernetes?u=56744473 (https://www.linkedin.com/learning/learning-

kubernetes/what-is-kubernetes?u=56744473)

Welcome and What is REST API?

Please watch the following videos from Learning REST APIs series:

Welcome (2m 15s)

1.REST APIs: Representation state transfer application programming interface: What is REST API? (4m 36s)

Please watch both video clips Welcome and What is REST API? in the

Learning REST APIs series together to get a good understanding of what

REST APIs are and how the work. Pay close attention to his example, which

helps you understand why a REST API is a vital component of

communications integration in microservices architecture.

Reference:

Rand-Hendriksen, M. (2018, February 13). Learning REST APIs. [Video �le].

Retrieved from https://www.linkedin.com/learning/learning-rest-

apis/welcome?u=56744473 (https://www.linkedin.com/learning/learning-

rest-apis/welcome?u=56744473)

6/3/2020 Laureate International Universities

https://laureate-au.blackboard.com/webapps/blackboard/content/listContent.jsp?course_id=_89956_1&content_id=_8971659_1&mode=reset 5/7

RabbitMQ message-based systems

Please watch the following video from Learning RabbitMQ series:

1.Get to know RabbitMQ: RabbitMQ message-based systems (2m 19s)

In prior modules we have discussed communications integration methods

and will have compared asynchronous communications protocols. Amongst

those, message brokers where a potential o�ered by Stone for

synchronous communications. Please watch this video clip which explains

how RabbitMQ, a popular message broker function.

Reference:

Morlion, P. (2019, December 12). Get to know RabbitMQ: RabbitMQ

message-based systems. [Video �le]. Retrieved from

https://www.linkedin.com/learning/learning-rabbitmq/rabbitmq-message-

based-systems?u=56744473 (https://www.linkedin.com/learning/learning-

rabbitmq/rabbitmq-message-based-systems?u=56744473)

Apache Kafka in �ve minutes

Please watch the following video from Learn Apache Kafka for beginners

series:

Introduction: Apache Kafka in �ve minutes (5m 20s)

Please watch this video clip. Apache Kafka is a very versatile solution for use

within microservices architecture, which has the capacity to solve many

problems: event driven communications brokerage and data storage are a

small sample of its use. Pay attention to the use cases supplied by Maarek

to gain further insights into the power of Apache Kafka.

Reference:

Maarek, S. (2019, January 14). Introduction: Apache Kafka in �ve minutes

[Video �le]. Retrieved from https://www.linkedin.com/learning/learn-

apache-kafka-for-beginners/intro-to-apache-kafka?u=2104756

(https://www.linkedin.com/learning/learn-apache-kafka-for-beginners/intro-

to-apache-kafka?u=2104756)

Cloud native monitoring with Prometheus

6/3/2020 Laureate International Universities

https://laureate-au.blackboard.com/webapps/blackboard/content/listContent.jsp?course_id=_89956_1&content_id=_8971659_1&mode=reset 6/7

Please watch the following video from Kubernetes: Cloud Native

Ecosystem series:

4.Application observability, analysis and security: Cloud native monitoring with Prometheus (2m 7s)

Please watch this short video clip. Note the reasons that Gaekwad identi�es

why Prometheus makes a good monitoring �t with Kubernetes.

Reference:

Gaekwad, K. (2018, May 3). Application observability, analysis and security:

Cloud native monitoring with Prometheus [Video �le]. Retrieved from

https://www.linkedin.com/learning/kubernetes-cloud-native-

ecosystem/cloud-native-monitoring-with-prometheus?

autoplay=true&u=56744473

(https://www.linkedin.com/learning/kubernetes-cloud-native-

ecosystem/cloud-native-monitoring-with-prometheus?

autoplay=true&u=56744473)

Learning Activity 1: Interactive Knowledge check

Learning Activity 2: Microservices Environment Discussion Forum

Post

Collaborative learning activity: Apache Kafka and RabbitMQ

Note: The Learning activities above are not part of summative/graded assessment;

however they are designed to prepare you for incremental graded assessment and

expand your learning.

These activities encourage a community learning experience between peers, and

provide opportunities for facilitators to o�er formative feedback, throughout a

module, to the student cohort.

6/3/2020 Laureate International Universities

https://laureate-au.blackboard.com/webapps/blackboard/content/listContent.jsp?course_id=_89956_1&content_id=_8971659_1&mode=reset 7/7