SlideShare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our User Agreement and Privacy Policy.
SlideShare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our Privacy Policy and User Agreement for details.
Successfully reported this slideshow.
Activate your 14 day free trial to unlock unlimited reading.
The basic concept of Microservies, the architecture of Microservices frameworks, including Mesosphere with Docker and Microsoft Service Fabric, and then some demos, discussion time to share ideas and experiences.
The basic concept of Microservies, the architecture of Microservices frameworks, including Mesosphere with Docker and Microsoft Service Fabric, and then some demos, discussion time to share ideas and experiences.
1.
ELECTRIC
MICROSERVICES
LAND
Simplearchitect
Tsuyoshi Ushio
Are you experienced?
#DevDayDaNang2015 #EML
2.
AGENDA
▪ Introduction of Microservices
▪ Microservices platforms
▪ Workshop : The future of development
3.
DANANG
http://www.remotelands.com/images/countrys/130110005.jpg
DaNang
a beautiful beach!
4.
ABOUT ME
http://www.bharatstudent.com/ng7uvideo/bs/bz/fitness/40_6pack.jpg
Tsuyoshi Ushio (Japan)
Simplearchitect Inc.
Organization change, Agile, Business Analysis,
Book Author and DevOps!
Twitter @sandayuu_en
I need ABS for DaNang!
Now My problem is
6.
MICROSERVICES
Microservices is a software architecture style, in which
complex applications are composed of small,
independent processes communicating with each
other using language-agnostic APIs.
Wikipedia - Microservices
7.
MONOLITHS AND MICROSERVICES
http://martinfowler.com/articles/microservices.html
Microservices – James Lewis / Martin Fowler
8.
MONOLITHS AND MICROSERVICES
http://martinfowler.com/articles/microservices.html
Microservices – James Lewis / Martin Fowler
9.
MONOLITHS - EXAMPLE
▪ Traditional application architecture
Browser
Load
balancer
Database
http://www.slideshare.net/chris.e.richardson/developing-apps-with-a-microservice-architecture-svforum-microservices-meetup
Developing applications with a microservice architecture / Chris Richardson
StoreFront
UI
Product
Service
Recommendation
Service
Review
Service
Order
Service
10.
MICROSERVICES - EXAMPLE
▪ An example of Microservices architecture
Browser
API
Gateway
http://www.slideshare.net/chris.e.richardson/developing-apps-with-a-microservice-architecture-svforum-microservices-meetup
Developing applications with a microservice architecture / Chris Richardson
REST
Product
Service
Recommendation
Service
Review
Service
Order
Service
REST
REST
REST
Web
application
DB
DB
DB
DB
11.
LANGUAGE-AGNOSTIC API
▪ You can choose a language for your purpose.
Posts
<<ruby>>
Friends
<<golang>>
Pictures
<<java>>
Building Microservices – Sam Newman
Document
Store
Graph
DB
Blob
store
12.
SCALING AND DEPLOYMENT
▪ You can deploy and scale micorservices separately
Instance
1
Instance
2
Instance
3
Instance
1
Instance
2
Instance
3
Instance
4
Instance
5
Instance
6
Instance
1
Instance
2
Posts
friends
pictures
Building Microservices – Sam Newman
13.
3 LEVELS OF MICROSERIVCES
Task
Service
Container
Executed only one time like a command
Live longer than task like a daemon
An instance of a machine image
E.g. Actor, Microsoft Service Fabric
E.g. Service / Microsoft Service Fabric
E.g. Docker container
14.
MICROSERVICES
Pros
▪ Small and Simple Application
▪ Scalable
▪ Fault tolerance
▪ Isolation
▪ Multi frameworks
Cons
▪ Complexity of developing a
distributed system
▪ Multiple database
▪ Transaction management
▪ Debug / Test
▪ Deploy and operation
16.
MICROSERVICES PLATFORMS
Mesosphere DCOS & Microsoft Service Fabric
Learn by examples
17.
WHY MICROSERVICE PLATFORMS ARE IMPORTANT?
Conquer the short comings
Developing
a distributed system
Deploy and Operation
Debug and Test Mesosphere DCOS Microsoft Service Fabric
It makes incredibly easy to develop microservices.
18.
MESOSPHERE DCOS
A new kind of operating system that spans all of the
servers in a physical or cloud-based datacenter, and
runs on top of any Linux distribution.
You can operate cluster as if you use
an os of single machine.
19.
DATACENTER OS
Datacenter OS make us possible to operate cluster like
an Operation system.
Cluster
Client
Task execution
Service Deploy /Remove
Up and Running
Scale out / in
Resource Allocation
Task execution
Service
Deploy / Remove
Fault tolerant
Scale out/in
Monitoring
20.
TASK EXECUTION
Command execution image
master
slave 1
:
slave 2
slave 3
master: Hey, Does anyone have a resource?
0.5 cpus and 512 mem, please
slave 2: Hi, I have one. I allocate it.
master: Great, lets do it.
slave 2: Done!
tasktask
22.
PRODUCTS
Mesos-master
ZooKeeper
Marathon
DCOS
master
Mesos-slave
Mesos-docker
slave
Mesos-slave
Mesos-docker
slave
Mesosphere DOCS UI/CLI
Marathon
:
Mesos
Execute Tasks and
Services
Report Status
(CPU/Mem/Disk)
Service
Demo
23.
MESOS + MARATHON + DOCKER ON VAGRANT
▪ You can try Mesos cluster for free
Container
Demo
instruction : https://github.com/TsuyoshiUshio/MesosClusterSpyke
Virtual Box
24.
PRODUCTS
▪ Apache Mesos (http://mesos.apache.org/)
▪ A distributed systems kernel
▪ Marathon (https://mesosphere.github.io/marathon/)
▪ A cluster-wide init and control system for
▪ Apache ZooKeeper (https://zookeeper.apache.org/)
▪ An open-source server which enables highly reliable distributed cordination
▪ Docker (https://www.docker.com/)
▪ An open platform for developers and sysadmins to build , ship, and run distributed
applications.
25.
GET STARTED
▪ Mesosphere DCOS beta/alpha on AWS and Azure
▪ Mesos + Docker cluster on Vagrant
https://docs.mesosphere.com/getting-started/
https://github.com/TsuyoshiUshio/MesosClusterSpyke
26.
MICROSOFT SERVICE FABRIC
http://techcrunch.com/2015/04/20/microsoft-announces-azure-service-fabric-a-new-framework-for-building-scalable-cloud-services/
27.
SERVICE FABRIC AS A MICROSERVICES PLATFORM
▪ Easy to develop
▪ Cluster Orchestration
▪ Fault tolerance
▪ Resource Balancing
▪ Rolling update / rollback
Azure SQL Database
Azure Document DB
Skype for Business
:
Microsoft uses this platform in production for years
28.
DEMO CLUSTER IMAGE
It will be automatically created by Service Fabric.
Node 1
Node 2 Node 3
Node 4 Node 5
P 1
S 1
S 1
P 2
S 2
S 2 P 3
S 3
S 3
P 4S 4
S 4
P n
S n
Primary
Secondary
State share
State share
29.
APPLICATION TEMPLATE
▪Stateless Actor
▪Stateful Actor
▪Stateless Service
▪Stateful Service
Task
Service
Demo
30.
GET STARTED
Set up your Service Fabric development environment
https://azure.microsoft.com/en-us/documentation/articles/service-fabric-get-started
Visual Studio 2015 RC + Service Fabric SDK Service Fabric Explorer
32.
MISSION #1 FORM A TEAM
▪ Form a team which includes 3 – 4 members.
▪ Self introduction
▪ Share your favorite thing
3 min
33.
MISSION #2 MICROSERVICES DISCUSSION
▪ Choose a subject from these listed below
▪ What would it change your working environment?
▪ What would it change your services / world?
▪ What would you want to do after going back you
workplace?
Tweet your ideas on Twitter!
Hashtag #DevDayDaNang2015 #EML
#<team name>
10 min
35.
Thank you very much indeed.
I hope you enjoy it!
Tsuyoshi Ushio
wikipedia
36.
REFERENCE
Mesosphere tutorials
http://open.mesosphere.com/tutorials/
Running Docker Containers on Marathon
https://mesosphere.github.io/marathon/docs/native-docker.html#bridged-networking-
mode
If you want to know about Service Fabric architcture
http://channel9.msdn.com/events/Ignite/2015/BRK3485
Deploy a Mesos Cluster with 7 Commands Using Docker
https://medium.com/@gargar454/deploy-a-mesos-cluster-with-7-commands-
using-docker-57951e020586
Building Microservices – Sam Newman
Microservices
http://martinfowler.com/articles/microservices.html