![Page 1: Chicago Microservices Meetup Presentation 2017-03-22](https://reader036.vdocuments.us/reader036/viewer/2022062503/58e4a1811a28abf5428b633b/html5/thumbnails/1.jpg)
1 NVISIA® 2017
CONTAINERS AND MICROSERVICES
FROM THE LABS TO ENTERPRISE
USING DOCKER ENTERPRISE EDITION 17.03
![Page 2: Chicago Microservices Meetup Presentation 2017-03-22](https://reader036.vdocuments.us/reader036/viewer/2022062503/58e4a1811a28abf5428b633b/html5/thumbnails/2.jpg)
2
WELCOME
NVISIA® 2016
Courtney FaulknerTechnical Director - NVISIA
Software architect with strong DevOps
experience. Commercial experience in deploying microservices with Docker, Kubernetes, Mesos and
most recently Docker EE Standard.
Mark PanthoferVP - NVISIA Technology Centers
Applying leading-edge software technologies to the
development of core business systems. Mark is responsible for
NTC partnerships, including Docker.
Docker® Accredited ConsultantDocker® Accredited Trainer
![Page 3: Chicago Microservices Meetup Presentation 2017-03-22](https://reader036.vdocuments.us/reader036/viewer/2022062503/58e4a1811a28abf5428b633b/html5/thumbnails/3.jpg)
3
TOPICS BUILDING AND DEPLOYING MICROSERVICES
NVISIA® 2016
Microservices and Containers
Moving containers and microservices from the labs to production
Build, test and deploy a simple layered microservice with a Docker Stack
![Page 4: Chicago Microservices Meetup Presentation 2017-03-22](https://reader036.vdocuments.us/reader036/viewer/2022062503/58e4a1811a28abf5428b633b/html5/thumbnails/4.jpg)
4
POWERFUL COMBINATION MICROSERVICES AND CONTAINERS
NVISIA® 2016
Containers Microservices
Independently deployable, portable, lightweight microservices Ephemeral containers are perfect for stateless microservices
Lift, shift and carve up monolithic applications
![Page 5: Chicago Microservices Meetup Presentation 2017-03-22](https://reader036.vdocuments.us/reader036/viewer/2022062503/58e4a1811a28abf5428b633b/html5/thumbnails/5.jpg)
5
ADOPTION MICROSERVICES AND CONTAINERS
NVISIA® 2017
Indeed.comjob trends NVISIA® 2017
![Page 6: Chicago Microservices Meetup Presentation 2017-03-22](https://reader036.vdocuments.us/reader036/viewer/2022062503/58e4a1811a28abf5428b633b/html5/thumbnails/6.jpg)
6
GROWTH DRIVERS CONTAINERS
NVISIA® 2017
![Page 7: Chicago Microservices Meetup Presentation 2017-03-22](https://reader036.vdocuments.us/reader036/viewer/2022062503/58e4a1811a28abf5428b633b/html5/thumbnails/7.jpg)
7
THE NUMBERS CONTAINERS
NVISIA® 2017
Containers in the
Enterprise
Source: Gartner, Emerging Technology Analysis: Containers in the Enterprise ,Michael Warrilow, Matthew Cheung (September 2016)
![Page 8: Chicago Microservices Meetup Presentation 2017-03-22](https://reader036.vdocuments.us/reader036/viewer/2022062503/58e4a1811a28abf5428b633b/html5/thumbnails/8.jpg)
8
A FAST-MOVING ECOSPHERE CONTAINERS AND MICROSERVICES
NVISIA® 2017
![Page 9: Chicago Microservices Meetup Presentation 2017-03-22](https://reader036.vdocuments.us/reader036/viewer/2022062503/58e4a1811a28abf5428b633b/html5/thumbnails/9.jpg)
9
DOCKER GAINING TRACTION WITH HIRING MANAGERS
NVISIA® 2017
Indeed.comjob trends
![Page 10: Chicago Microservices Meetup Presentation 2017-03-22](https://reader036.vdocuments.us/reader036/viewer/2022062503/58e4a1811a28abf5428b633b/html5/thumbnails/10.jpg)
10
DOCKER ENTERPRISE SUPPORT RELEASE CADENCE
NVISIA® 2017
![Page 11: Chicago Microservices Meetup Presentation 2017-03-22](https://reader036.vdocuments.us/reader036/viewer/2022062503/58e4a1811a28abf5428b633b/html5/thumbnails/11.jpg)
11
DOCKER EE 17.03
NVISIA® 2017
![Page 12: Chicago Microservices Meetup Presentation 2017-03-22](https://reader036.vdocuments.us/reader036/viewer/2022062503/58e4a1811a28abf5428b633b/html5/thumbnails/12.jpg)
DEVELOPERS IT OPERATIONS
BUILDDevelopment Environments
SHIPSecure Content & Collaboration
RUNDeploy, Manage, Scale
Docker Trusted RegistryDocker Content Trust
Universal Control PlaneDocker for MacDocker for Windows
NVISIA® 2017
DOCKER DATACENTER BUILD, SHIP AND RUN
![Page 13: Chicago Microservices Meetup Presentation 2017-03-22](https://reader036.vdocuments.us/reader036/viewer/2022062503/58e4a1811a28abf5428b633b/html5/thumbnails/13.jpg)
UCP Manager UCP ManagerUCP Manager
Internal distributed store
DTR Replica Worker
Raft consensus group
Image Registry
BYO TCP Load Balancer
UCP Worker UCP WorkerUCP WorkerUCP Worker
push / pull
Admin / UserDeploy / manage
LDAP/AD
Monitoring
Logging
External CA
Image Storage
DTR Replica Worker
DTR Replica Worker
DOCKER DATACENTER REFERENCE ARCHITECTURE
NVISIA® 2017
![Page 14: Chicago Microservices Meetup Presentation 2017-03-22](https://reader036.vdocuments.us/reader036/viewer/2022062503/58e4a1811a28abf5428b633b/html5/thumbnails/14.jpg)
UCP Manager
UCP WorkerUCP Worker
push / pull/ sign
Developers
manage
DOCKER DATACENTER SIMPLE ARCHITECTURE (NOT FOR PROD)
DevOps
DTR
pull dev images
Image Registry
push / pull/ sign
deploy/update
Container Cluster Manager
Clone, branch push
NVISIA® 2017
![Page 15: Chicago Microservices Meetup Presentation 2017-03-22](https://reader036.vdocuments.us/reader036/viewer/2022062503/58e4a1811a28abf5428b633b/html5/thumbnails/15.jpg)
15
TECH USED TO BUILD & DEPLOY CONTAINERIZED MICROSERVICES
NVISIA® 2017
• Docker – is an integrated, easy-to-deploy environment for building, assembling, and shipping applications inside containers. Container is a piece of software that contains everything needed to run application: code, runtime, system tools, system libraries.
• Docker Datacenter (UCP & DTR) – Docker Datacenter (DDC) is a container management and deployment services platform; a tool designed to work as an integrated, end-to-end platform for agile application development and management at any scale. Includes Docker Swarm and HRM.
• Jenkins – Jenkins is an open source CI tool written in Java. It is a server-based system running in a servlet container such as Docker.
• GitLab – Git is a version control system to track changes among multiple developers. GitLab is web based Git repository manager with open source licensing.
• Nginx – nginx [engine x] is an HTTP and reverse proxy server, a mail proxy server, and a generic TCP/UDP proxy server
• Spring Boot – Spring is an application framework for Java Platform. Spring Boot is tool set that allows you to auto configure the applications that run on spring framework.
• Angular2 w/Node js – is a JavaScript based front end web application framework. • Gradle – is open source automated build tool built using Groovy based domain specific language instead of XML.
![Page 16: Chicago Microservices Meetup Presentation 2017-03-22](https://reader036.vdocuments.us/reader036/viewer/2022062503/58e4a1811a28abf5428b633b/html5/thumbnails/16.jpg)
16
LET’S BUILD, TEST AND DEPLOYMICROSERVICES WITH DOCKER EE
NVISIA® 2017
![Page 17: Chicago Microservices Meetup Presentation 2017-03-22](https://reader036.vdocuments.us/reader036/viewer/2022062503/58e4a1811a28abf5428b633b/html5/thumbnails/17.jpg)
17
CI PIPELINE SIMPLE SAMPLE – HELLO SERVICE
NVISIA® Confidential 2017
NTCDEV
Local filesystem
VS Code
• Dev Certs• Build tools• Git
Dev MachineTest VPC
NGINX• Prod Base for Nginx Web Page
http://localhost:8080/ntc-workspace/hello/html/index.html
EC2
EC2
EC2
swarm
Hello/html/index.htmlHTTP RM
DTR
UCP
http://hello-developer13.ucp.ntc.nvisia.io/
![Page 18: Chicago Microservices Meetup Presentation 2017-03-22](https://reader036.vdocuments.us/reader036/viewer/2022062503/58e4a1811a28abf5428b633b/html5/thumbnails/18.jpg)
18
CI PIPELINE SIMPLE SAMPLE
NVISIA® Confidential 2017
NTCDEV
Local filesystem
VS Code• Build tools• Git
Dev Machine Test VPCGitLab
UCP - DTR – Swarm - HRM
Jenkins
DTR
UCP
HTTP RM
Nginx• Local webtest
1 – Pull and Launch dev and local test images 2,3 – Pull source code from SCM to shared volume4 – Modify code5 – Test changes in local container6 – Check in update source7 – Web hook kicks off build - verify build job8 – Image pushed to DTR - verify Image9, 10 – Test container fires up as Swarm Service - UCP 11 – Verify test service
![Page 19: Chicago Microservices Meetup Presentation 2017-03-22](https://reader036.vdocuments.us/reader036/viewer/2022062503/58e4a1811a28abf5428b633b/html5/thumbnails/19.jpg)
19
KEY CONCEPT MICROSERVICE MULTI-BRANCH SUPPORT
Master Branch (Restricted)
Feature 1 Branch
Feature 2 Branch
Check in, build and test releaseCheck in, build and test release
Check in, build and test release
SUPPORT FOR MICROSERVICE DEPLOYMENTS
Merge (request)Branch
NVISIA® 2017
![Page 20: Chicago Microservices Meetup Presentation 2017-03-22](https://reader036.vdocuments.us/reader036/viewer/2022062503/58e4a1811a28abf5428b633b/html5/thumbnails/20.jpg)
20
KEY CONCEPT MICROSERVICE MULTI-BRANCH SUPPORT
NVISIA® 2017
Demo- Local Dev- Local Test- Push- Build- Deploy Service- Test Service
![Page 21: Chicago Microservices Meetup Presentation 2017-03-22](https://reader036.vdocuments.us/reader036/viewer/2022062503/58e4a1811a28abf5428b633b/html5/thumbnails/21.jpg)
21
MORE INTERESTING ”MICROSERVICES” AND CONTAINERS
NVISIA® 2016
Angular App Service
REST APIService
DATAServiceWeb
User
![Page 22: Chicago Microservices Meetup Presentation 2017-03-22](https://reader036.vdocuments.us/reader036/viewer/2022062503/58e4a1811a28abf5428b633b/html5/thumbnails/22.jpg)
22
CI PIPELINE MICROSERVICE DEVELOPMENT
NVISIA® 2017
NTCDEV
Local filesystem
VS Code• Build tools• Git
Dev Machine Test VPCGitLab
UCP - DTR – Swarm - HRM
Jenkins
DTR
UCP
HTTP RM
GRADLE• Fast local
boot runner
NODE.JS• Angular CLI
Java• Java jar file deploy
:4200
Data:8091Rest:8081
Data:8092Rest:8082
https://app-
branch.ucp.ntc.nvisia.io
https://localhost:xxxx
![Page 23: Chicago Microservices Meetup Presentation 2017-03-22](https://reader036.vdocuments.us/reader036/viewer/2022062503/58e4a1811a28abf5428b633b/html5/thumbnails/23.jpg)
UCP Manager
UCP Worker 2UCP Worker 1
DOCKER DATACENTER USING AN OVERLAY NETWORK FOR SERVICE ISOLATION
DTR
Image Registry
Container Cluster Manager
Data Service
REST API Service
Overlay Network
Ingress/HRM Network
AngularApp
HRML7 Mesh
DNS
*.ucp
.ntc
.nvis
ia.io
NVISIA® 2017
dtr.ucp.ntc.nvisia.io
Isolated
![Page 24: Chicago Microservices Meetup Presentation 2017-03-22](https://reader036.vdocuments.us/reader036/viewer/2022062503/58e4a1811a28abf5428b633b/html5/thumbnails/24.jpg)
STACK DEPLOYMENT YAML V3 IN UCP
PROD CLUSTER
DTR
UCP
HTTP RM
UCP - DTR – Swarm - HRM
NVISIA® 2017
![Page 25: Chicago Microservices Meetup Presentation 2017-03-22](https://reader036.vdocuments.us/reader036/viewer/2022062503/58e4a1811a28abf5428b633b/html5/thumbnails/25.jpg)
STACK DEPLOYMENT DEPLOY, OPERATE AND SCALE
PROD CLUSTER
DTR
UCP
HTTP RM
UCP - DTR – Swarm - HRM
NVISIA® 2017
![Page 26: Chicago Microservices Meetup Presentation 2017-03-22](https://reader036.vdocuments.us/reader036/viewer/2022062503/58e4a1811a28abf5428b633b/html5/thumbnails/26.jpg)
WRAP UP RESOURCES
success.docker.comDocker EE Customer PortalSharing best practices using Docker KnowledgebaseReference Architectures
BOOKRecipes for
complete, scalable microservice
related solutions. Available on Amazon
NVISIA® 2017
NVISIALunch and LearnExecutive BriefingsPre-launch ReviewsProof of Concept (10– Day)Docker Certified Training Team Bootcamps – Microservices and Docker