eight miles high: build cloud-native and cloud-aware systems
TRANSCRIPT
![Page 1: Eight Miles High: Build Cloud-native and Cloud-aware Systems](https://reader035.vdocuments.site/reader035/viewer/2022062903/58ed83031a28ab481d8b46bd/html5/thumbnails/1.jpg)
Chris HaddadChief Architect
[email protected] @cobiacomm
EIGHT MILES HIGH: BUILD CLOUD-NATIVE AND
CLOUD-AWARE SYSTEMS
![Page 2: Eight Miles High: Build Cloud-native and Cloud-aware Systems](https://reader035.vdocuments.site/reader035/viewer/2022062903/58ed83031a28ab481d8b46bd/html5/thumbnails/2.jpg)
• Why evolve?
• Cloud-Native Design Patterns
• Cloud-Native Frameworks
![Page 3: Eight Miles High: Build Cloud-native and Cloud-aware Systems](https://reader035.vdocuments.site/reader035/viewer/2022062903/58ed83031a28ab481d8b46bd/html5/thumbnails/3.jpg)
Status Quo?
• Development Velocity• Development Iterations• Reliability and Uptime• Scale and Performance
![Page 4: Eight Miles High: Build Cloud-native and Cloud-aware Systems](https://reader035.vdocuments.site/reader035/viewer/2022062903/58ed83031a28ab481d8b46bd/html5/thumbnails/4.jpg)
Don’t Forklift Static Topologies into the Cloud
Source: http://www.ibm.com/developerworks/websphere/techjournal/1001_vanrun/1001_vanrun.html
![Page 5: Eight Miles High: Build Cloud-native and Cloud-aware Systems](https://reader035.vdocuments.site/reader035/viewer/2022062903/58ed83031a28ab481d8b46bd/html5/thumbnails/5.jpg)
Free DevOps from expensive static deployments and glacial refresh cycles
![Page 6: Eight Miles High: Build Cloud-native and Cloud-aware Systems](https://reader035.vdocuments.site/reader035/viewer/2022062903/58ed83031a28ab481d8b46bd/html5/thumbnails/6.jpg)
Deploy with ConfidenceGOAL STATE
• Reduce Technical Debt• Optimize Scalability• Foster Anti-fragility and Resiliency• Deliver Highly Responsive Applications
![Page 7: Eight Miles High: Build Cloud-native and Cloud-aware Systems](https://reader035.vdocuments.site/reader035/viewer/2022062903/58ed83031a28ab481d8b46bd/html5/thumbnails/7.jpg)
ANTI-FRAGILE CONTINUOUS INTEGRATION/DELIVERY PATTERN… to exert a constant stress on your delivery and deployment process to reduce its fragility so that releasing becomes a boring, low-risk activity.
Jez Humble, “On Antifragility in Systems and Organizational Structure”http://continuousdelivery.com/2013/01/on-antifragility-in-systems-and-organizational-architecture/
![Page 8: Eight Miles High: Build Cloud-native and Cloud-aware Systems](https://reader035.vdocuments.site/reader035/viewer/2022062903/58ed83031a28ab481d8b46bd/html5/thumbnails/8.jpg)
Rapid, iterative, seamless, rolling updates.
![Page 9: Eight Miles High: Build Cloud-native and Cloud-aware Systems](https://reader035.vdocuments.site/reader035/viewer/2022062903/58ed83031a28ab481d8b46bd/html5/thumbnails/9.jpg)
![Page 10: Eight Miles High: Build Cloud-native and Cloud-aware Systems](https://reader035.vdocuments.site/reader035/viewer/2022062903/58ed83031a28ab481d8b46bd/html5/thumbnails/10.jpg)
Microservices, containerized, DevOpsCLOUD-NATIVE
Learn more at https://cncf.io/
![Page 11: Eight Miles High: Build Cloud-native and Cloud-aware Systems](https://reader035.vdocuments.site/reader035/viewer/2022062903/58ed83031a28ab481d8b46bd/html5/thumbnails/11.jpg)
Into Cloud-Native MicroservicesDECOMPOSE MONOLITHS
• Bounded Context• Small domain• Run in it’s own process• Service interface• *owns data storage
![Page 12: Eight Miles High: Build Cloud-native and Cloud-aware Systems](https://reader035.vdocuments.site/reader035/viewer/2022062903/58ed83031a28ab481d8b46bd/html5/thumbnails/12.jpg)
IDENTIFY BOUNDED CONTEXTS AND DOMAINS
Source: http://www.slideshare.net/aca_it/modularity-ddd
![Page 13: Eight Miles High: Build Cloud-native and Cloud-aware Systems](https://reader035.vdocuments.site/reader035/viewer/2022062903/58ed83031a28ab481d8b46bd/html5/thumbnails/13.jpg)
API-FIRST , SERVICE ORIENTED
Source: https://www.nginx.com/blog/introduction-to-microservices/
![Page 14: Eight Miles High: Build Cloud-native and Cloud-aware Systems](https://reader035.vdocuments.site/reader035/viewer/2022062903/58ed83031a28ab481d8b46bd/html5/thumbnails/14.jpg)
Spin up discrete infrastructure services on demand.
Server Profile• Lightweight• Self-contained• Deterministic• Dynamic Discovery• Dynamic Composition
![Page 15: Eight Miles High: Build Cloud-native and Cloud-aware Systems](https://reader035.vdocuments.site/reader035/viewer/2022062903/58ed83031a28ab481d8b46bd/html5/thumbnails/15.jpg)
Requires a next generation stackMICROSERVICES
• Service Discovery
• Service Monitoring
• Circuit Breakers
• Full-Stack Templates
![Page 16: Eight Miles High: Build Cloud-native and Cloud-aware Systems](https://reader035.vdocuments.site/reader035/viewer/2022062903/58ed83031a28ab481d8b46bd/html5/thumbnails/16.jpg)
Server-sideSERVICE DISCOVERY
Source: https://www.nginx.com/blog/introduction-to-microservices/
![Page 17: Eight Miles High: Build Cloud-native and Cloud-aware Systems](https://reader035.vdocuments.site/reader035/viewer/2022062903/58ed83031a28ab481d8b46bd/html5/thumbnails/17.jpg)
Client-SideSERVICE DISCOVERY
Source: https://www.nginx.com/blog/introduction-to-microservices/
![Page 18: Eight Miles High: Build Cloud-native and Cloud-aware Systems](https://reader035.vdocuments.site/reader035/viewer/2022062903/58ed83031a28ab481d8b46bd/html5/thumbnails/18.jpg)
SINGLE DEPENDENCY DELAY CAUSING BLOCKING OF USER REQUEST
Source: http://www.slideshare.net/yang75108/antifragile-microservices-and-devops-a-study
![Page 19: Eight Miles High: Build Cloud-native and Cloud-aware Systems](https://reader035.vdocuments.site/reader035/viewer/2022062903/58ed83031a28ab481d8b46bd/html5/thumbnails/19.jpg)
ALL USER REQUESTS WILL BE BLOCKED AT PEAK HOUR(CASCADING FAILURE)
Source: http://www.slideshare.net/yang75108/antifragile-microservices-and-devops-a-study
![Page 20: Eight Miles High: Build Cloud-native and Cloud-aware Systems](https://reader035.vdocuments.site/reader035/viewer/2022062903/58ed83031a28ab481d8b46bd/html5/thumbnails/20.jpg)
Fail-fast and dynamically resetCIRCUIT BREAKER
Source: http://martinfowler.com/bliki/CircuitBreaker.html
![Page 21: Eight Miles High: Build Cloud-native and Cloud-aware Systems](https://reader035.vdocuments.site/reader035/viewer/2022062903/58ed83031a28ab481d8b46bd/html5/thumbnails/21.jpg)
CIRCUIT BREAKER & BULKHEAD ISOLATION PATTERN
https://github.com/Netflix/Hystrix
![Page 22: Eight Miles High: Build Cloud-native and Cloud-aware Systems](https://reader035.vdocuments.site/reader035/viewer/2022062903/58ed83031a28ab481d8b46bd/html5/thumbnails/22.jpg)
• Service-Oriented• Just a single service• Compose multiple services
• Ask for run-time information• Location• Policies
• Respect Data Gravity• Shard data• Cache and Eventual
consistency
Cloud-Aware Applications
![Page 23: Eight Miles High: Build Cloud-native and Cloud-aware Systems](https://reader035.vdocuments.site/reader035/viewer/2022062903/58ed83031a28ab481d8b46bd/html5/thumbnails/23.jpg)
• Actor-model interactions• Map-reduce processing• Event Sourcing• Ephemeral Containers
Cloud-Native Design Patterns
![Page 24: Eight Miles High: Build Cloud-native and Cloud-aware Systems](https://reader035.vdocuments.site/reader035/viewer/2022062903/58ed83031a28ab481d8b46bd/html5/thumbnails/24.jpg)
Actor-model InteractionsCONCURRENT PROCESSING
Source: http://arild.github.io/akka-workshop/#7
![Page 25: Eight Miles High: Build Cloud-native and Cloud-aware Systems](https://reader035.vdocuments.site/reader035/viewer/2022062903/58ed83031a28ab481d8b46bd/html5/thumbnails/25.jpg)
Map-ReduceDIVIDE AND CONQUER
![Page 26: Eight Miles High: Build Cloud-native and Cloud-aware Systems](https://reader035.vdocuments.site/reader035/viewer/2022062903/58ed83031a28ab481d8b46bd/html5/thumbnails/26.jpg)
Event SourcingSHARD AND SEPARATE
Source: http://martinfowler.com/eaaDev/EventSourcing.html
![Page 27: Eight Miles High: Build Cloud-native and Cloud-aware Systems](https://reader035.vdocuments.site/reader035/viewer/2022062903/58ed83031a28ab481d8b46bd/html5/thumbnails/27.jpg)
Ephemeral ContainersAGILE CONTINUOUS DELIVERY
![Page 28: Eight Miles High: Build Cloud-native and Cloud-aware Systems](https://reader035.vdocuments.site/reader035/viewer/2022062903/58ed83031a28ab481d8b46bd/html5/thumbnails/28.jpg)
NEW STACK REQUIREMENTS• Self-contained, Lightweight, Minimalistic• Service-Oriented, API-Friendly• Powerful transport module • Configuration Management • Bootstrapping , dependency and Lifecycle
Management • Runtime Insights and Diagnostics • Service discovery
Spring Boothttp://projects.spring.io/spring-boot/
DropWizardhttps://dropwizard.github.io/dropwizard/index.html
NetFlix Karyonhttps://github.com/Netflix/karyon
![Page 29: Eight Miles High: Build Cloud-native and Cloud-aware Systems](https://reader035.vdocuments.site/reader035/viewer/2022062903/58ed83031a28ab481d8b46bd/html5/thumbnails/29.jpg)
• Software Defined Networking• Weave• Calico• Flannel
•Container Scheduling and Orchestration• Mesos• Kubernetes
•Full Stack Templates• Docker compose, Kubernetes
•Monitoring and Management• Netflix Cloud OSS
•Service Discovery• Eureka, Consul, etcd
CLOUD-NATIVE FRAMEWORKS
![Page 30: Eight Miles High: Build Cloud-native and Cloud-aware Systems](https://reader035.vdocuments.site/reader035/viewer/2022062903/58ed83031a28ab481d8b46bd/html5/thumbnails/30.jpg)
•Actor-Model• Akka
•Map-Reduce• Hadoop• Kubernetes
•Eventual Consistency• Cassandra• Redis
•Circuit Breakers• Hysterix
CLOUD-NATIVE FRAMEWORKS
![Page 31: Eight Miles High: Build Cloud-native and Cloud-aware Systems](https://reader035.vdocuments.site/reader035/viewer/2022062903/58ed83031a28ab481d8b46bd/html5/thumbnails/31.jpg)
Contact us at http://[email protected]@cobiacomm
JOURNEY TO THE CLOUDS
• Re-shape Architecture
• Re-fresh Platform
• Re-build Team Collaboration
• Re-invent Delivery