SlideShare une entreprise Scribd logo
1  sur  89
Télécharger pour lire hors ligne
#devopsdays
Chicago 2015
Enabling
Microservices
@Orbitz
Steve Hoffman
Senior Principal Engineer
@bacoboy
#devopsdays
Chicago 2015
#devopsdays
Chicago 2015
Outline
• Brief Architecture Overview/History
• From Monolithic to Services to Microservices/Docker
• Automated Pipelines
• Questions
#devopsdays
Chicago 2015
#devopsdays
Chicago 2015
2000
#devopsdays
Chicago 2015
2000
Yes, we are STILL hiring!
#devopsdays
Chicago 2015
2000
Yes, we are STILL hiring!
@OrbitzTalent
#devopsdays
Chicago 2015
2000
Web Layer
Business Layer
#devopsdays
Chicago 2015
2000
#devopsdays
Chicago 2015
2000
#devopsdays
Chicago 2015
2000
Business Layer
#devopsdays
Chicago 2015
2000
Business Layer
#devopsdays
Chicago 2015
Business Layer
2000
#devopsdays
Chicago 2015
Business Layer
2003
#devopsdays
Chicago 2015
Business Layer
2003
#devopsdays
Chicago 2015
Business Layer
2003
#devopsdays
Chicago 2015
2003
#devopsdays
Chicago 2015
2004
#devopsdays
Chicago 2015
2004
#devopsdays
Chicago 2015
2004
#devopsdays
Chicago 2015
2012
#devopsdays
Chicago 2015
2012
#devopsdays
Chicago 2015
2012
• Multiple Brands
• Websites
• Webservices
• Multiple Backends
• 500+ apps / thousands of instances
• Deployments Daily (sometimes more)
#devopsdays
Chicago 2015
2015
• Multiple Brands
• Websites
• Webservices
• Multiple Backends
• 500+ apps / thousands of instances
• Deployments Daily (sometimes more)
#devopsdays
Chicago 2015
Process Overkill
#devopsdays
Chicago 2015
Different Provisioning Tools
DEV OPS
#devopsdays
Chicago 2015
Different Provisioning Tools
DEV OPS
Application Platform!=
#devopsdays
Chicago 2015
A New Experiment
• Microservices?
• Decompose single “service” into the actual 40+ sub-services
• Any change to sub-service was a deployment of many
• Could it be a simple Spring Boot App in Docker (12 factor?)
• Backward compatible with existing service infrastructure.
• Code to Production w/o help from other Humans - Minutes not Days
#devopsdays
Chicago 2015
#devopsdays
Chicago 2015
Module
Module
Module Module
#devopsdays
Chicago 2015
Orbitz
Content
Orchestration
Service
Content
(Solr)
Editorial
Module
Search
Module
Hotel
Module
#devopsdays
Chicago 2015
Orbitz
Content
Orchestration
Service
Content
(Solr)
Editorial
Module
Search
Module
Hotel
Module
Hotel Team Search Team Content Team
#devopsdays
Chicago 2015
Orbitz
Content
Orchestration
Service
Content
(Solr)
Editorial
Module
Search
Module
Hotel
Module
#devopsdays
Chicago 2015
Orbitz
Content
Orchestration
Service
Content
(Solr)
Editorial
Module
Search
Module
Hotel
Module
Hotel Team
Search Team
Content Team
#devopsdays
Chicago 2015
Pre-Continuous Delivery
1.2-­‐BETA-­‐20150401-­‐113002
Test Discard
Test Discard
1.2-­‐BETA-­‐20150402-­‐093002
Build
Build
And so on…
#devopsdays
Chicago 2015
Pre-Continuous Delivery
1.2-­‐BETA-­‐20150401-­‐113002
Test Discard
Test Discard
1.2-­‐BETA-­‐20150402-­‐093002
Build
Build
Test Deploy
1.2
Build
#devopsdays
Chicago 2015
App
App
App
#devopsdays
Chicago 2015
App
App
App
#devopsdays
Chicago 2015
App
App
App
xN
#devopsdays
Chicago 2015
App
App
App
xN
#devopsdays
Chicago 2015
Continuous Delivery with
Jenkins, Docker, Ansible
and Marathon
#devopsdays
Chicago 2015
Committer
Pull Request
#devopsdays
Chicago 2015
Committer
Reviewer
Pull Request
#devopsdays
Chicago 2015
Committer
Reviewer
Pull Request
#devopsdays
Chicago 2015
Committer
Reviewer
Pull Request
#devopsdays
Chicago 2015
Jenkins Pipeline
#devopsdays
Chicago 2015
if(…) {
x ++;
}
Merge
#devopsdays
Chicago 2015
build
unit test
publish
deploy
dev
acceptance
tests
deploy
qa
deploy
staging
open RFC
deploy
prod
close RFC
Pipeline (Simplified)
#devopsdays
Chicago 2015
if(…) {
x ++;
}
1.2
Merge
Build
#devopsdays
Chicago 2015
if(…) {
x ++;
}
1.2
Merge
1.2.
editorial-module.jar
./gradlew build
{BUILD_NUMBER}
Build
#devopsdays
Chicago 2015
1.2
Merge
editorial-module.jar
if(…) {
x ++;
}
171.2.
Build
#devopsdays
Chicago 2015
1.2
Merge
editorial-module.jar
FROM orbitz/java-8
ADD build/editorial-module.jar /opt/orbitz
CWD /opt/orbitz
CMD java -jar editorial-module.jar
if(…) {
x ++;
}
171.2.
Build
#devopsdays
Chicago 2015
1.2
Merge
editorial-module.jar orbitz/editorial-module:1.2.17
if(…) {
x ++;
}
171.2.
Build
#devopsdays
Chicago 2015
orbitz/editorial-module:1.2.17
Build
#devopsdays
Chicago 2015
Master
Master
Slave
Commit/Push or
Pull Request/Merge
#devopsdays
Chicago 2015
Master
Master
Slave
Poll or Push
Trigger
Commit/Push or
Pull Request/Merge
#devopsdays
Chicago 2015
Master
Master
Slave
Slave
Poll or Push
Trigger
Commit/Push or
Pull Request/Merge
#devopsdays
Chicago 2015
Master
Master
Slave
Slave
Poll or Push
Trigger
Commit/Push or
Pull Request/Merge
#devopsdays
Chicago 2015
Master
Master
Slave
Slave
Poll or Push
Trigger
Commit/Push or
Pull Request/Merge
Clone & Build Push Artifacts
#devopsdays
Chicago 2015
Master
Master
Slave
#devopsdays
Chicago 2015
Jenkins on Docker on Mesos
Slides: http://bit.ly/oww-mesoscon2015-slides
Video: Coming to YouTube
#devopsdays
Chicago 2015
git pull
playbook.yml (abridged)
- hosts: localhost
- tasks:
- name: marathon deploy
marathon: image=orbitz/{{application}}:{{version}}
instances=3
Deploy
#devopsdays
Chicago 2015
- tasks:
marathon: …
playbook.yml
1.2.16
1.2.16
1.2.16
Deploy
#devopsdays
Chicago 2015
- tasks:
marathon: …
1.2.16
1.2.16
1.2.16
Deploy
#devopsdays
Chicago 2015
- tasks:
marathon: …
1.2.16
1.2.16
1.2.16
Deploy
#devopsdays
Chicago 2015
- tasks:
marathon: …
PUT /apps/editorial-module
{
“image”: “orbitz/editorial-module:1.2.17” …
}
1.2.16
1.2.16
1.2.16
Deploy
#devopsdays
Chicago 2015
Deploy
PUT /apps/editorial-module
{
“image”: “orbitz/editorial-module:1.2.17” …
}
- tasks:
marathon: …
1.2.16
1.2.16
1.2.16
app = GET /v2/apps/editorial-module
if not app then
deploy_id =
POST /v2/apps
{
“image”: “orbitz/editorial-module:1.2.17”,
“id”: “editorial-module”
}
else
deploy_id =
PUT /v2/apps/editorial-module
{ “image”: “orbitz/editorial-module:1.2.17” }
end if
while GET /v2/deployments contains deploy_id
// still deploying
end
// deploy complete
#devopsdays
Chicago 2015
- tasks:
marathon: …
PUT /apps/editorial-module
{
“image”: “orbitz/editorial-module:1.2.17” …
}
1.2.16
1.2.16
1.2.16
Deploy
#devopsdays
Chicago 2015
- tasks:
marathon: …
1.2.16
1.2.16
1.2.16
Deploy
#devopsdays
Chicago 2015
- tasks:
marathon: …
1.2.16
1.2.16
1.2.16
1.2.17
1.2.17
1.2.17
Deploy
#devopsdays
Chicago 2015
- tasks:
marathon: …
/health
1.2.16
1.2.16
1.2.16
1.2.17
1.2.17
1.2.17
Deploy
#devopsdays
Chicago 2015
- tasks:
marathon: …
/health
200 OK
200 OK
200 OK
1.2.16
1.2.16
1.2.16
1.2.17
1.2.17
1.2.17
Deploy
#devopsdays
Chicago 2015
- tasks:
marathon: …
1.2.17
1.2.17
1.2.17
Deploy
#devopsdays
Chicago 2015
And off to the next environment…
1.2.17
1.2.17
1.2.17
Deploy
#devopsdays
Chicago 2015
1.2.17
1.2.17
1.2.17
What if?
#devopsdays
Chicago 2015
1.2.17
1.2.17
#devopsdays
Chicago 2015
1.2.17
1.2.17
#devopsdays
Chicago 2015
1.2.17 1.2.17
1.2.17
#devopsdays
Chicago 2015
/health
200
OK
1.2.17 1.2.17
1.2.17
#devopsdays
Chicago 2015
1.2.17 1.2.17
1.2.17
#devopsdays
Chicago 2015
Smoke/Acceptance Testing
1.2.17
1.2.17
1.2.17
#devopsdays
Chicago 2015
Paper Trail
create
tickets
commit(s)
#devopsdays
Chicago 2015
Paper Trail
fail!
close/fail
#devopsdays
Chicago 2015
Paper Trail
ok
close
#devopsdays
Chicago 2015
Build
Unit Test
Deploy
Dev
Deploy
Prod
Deploy
Staging
Acceptance
Test
Code
Review &
Push
Production
Pre-Production
Open
RFC
Close
RFC
#devopsdays
Chicago 2015
“Why didn’t you use {{.x}} ?”
#devopsdays
Chicago 2015
Keeping an eye on…
Hashicorp Vault Rancher Convoy
Kubernetes Amazon
Elastic Container
Service
Docker
Swarm + Machine
#devopsdays
Chicago 2015
Summary
• Create a platform for docker deployments using shared and app-specific “localhost” helpers
— this was ours, yours SHOULD look different — adapt to change, don’t fight it.
• People don’t scale, use automation
• Docker - repeatable applications (environment portable apps)
• Chef - repeatable infrastructure (environment aware services)
• Jenkins - repeatable releases (pipelines)
• Delineate configuration concerns:
• Known at Compile time — Bake into Docker image
• Known at Boot time — Bake into Playbook/Launcher - parameter to Docker run
• Changes Anytime — Externalize (consul K/V, etcd, zookeeper)
#devopsdays
Chicago 2015
Questions?
@bacoboy

Contenu connexe

Tendances

Tendances (18)

plone.api
plone.apiplone.api
plone.api
 
Comparing Agile QA Approaches to End-to-End Testing
Comparing Agile QA Approaches to End-to-End TestingComparing Agile QA Approaches to End-to-End Testing
Comparing Agile QA Approaches to End-to-End Testing
 
Pluginize ALL the things
Pluginize ALL the thingsPluginize ALL the things
Pluginize ALL the things
 
DevOps is dead
DevOps is deadDevOps is dead
DevOps is dead
 
Agile Seminar at Politecnico di Milano
Agile Seminar at Politecnico di MilanoAgile Seminar at Politecnico di Milano
Agile Seminar at Politecnico di Milano
 
Git Branching for Agile Teams
Git Branching for Agile TeamsGit Branching for Agile Teams
Git Branching for Agile Teams
 
Collaborating on GitHub for Open Source Documentation
Collaborating on GitHub for Open Source DocumentationCollaborating on GitHub for Open Source Documentation
Collaborating on GitHub for Open Source Documentation
 
Beyond QA
Beyond QABeyond QA
Beyond QA
 
GitOps is IaC done right
GitOps is IaC done rightGitOps is IaC done right
GitOps is IaC done right
 
Product Canvas Step-by-Step
Product Canvas Step-by-StepProduct Canvas Step-by-Step
Product Canvas Step-by-Step
 
Git Branching for Agile Teams
Git Branching for Agile Teams Git Branching for Agile Teams
Git Branching for Agile Teams
 
Another Copernican Revolution: maintenance first, projects second (European D...
Another Copernican Revolution: maintenance first, projects second (European D...Another Copernican Revolution: maintenance first, projects second (European D...
Another Copernican Revolution: maintenance first, projects second (European D...
 
Re-architecting on the Fly #OReillySACon
Re-architecting on the Fly #OReillySACon Re-architecting on the Fly #OReillySACon
Re-architecting on the Fly #OReillySACon
 
和艦長一起玩轉 GitLab & GitLab Workflow
和艦長一起玩轉 GitLab & GitLab Workflow和艦長一起玩轉 GitLab & GitLab Workflow
和艦長一起玩轉 GitLab & GitLab Workflow
 
Managing releases effectively through git
Managing releases effectively through gitManaging releases effectively through git
Managing releases effectively through git
 
Flux: A modern way of doing MVC?
Flux: A modern way of doing MVC?Flux: A modern way of doing MVC?
Flux: A modern way of doing MVC?
 
OpenStack Documentation in the Open
OpenStack Documentation in the OpenOpenStack Documentation in the Open
OpenStack Documentation in the Open
 
devopsdays Riga 2018 - Chaos while deploying AI and making sure it doesn’t hu...
devopsdays Riga 2018 - Chaos while deploying AI and making sure it doesn’t hu...devopsdays Riga 2018 - Chaos while deploying AI and making sure it doesn’t hu...
devopsdays Riga 2018 - Chaos while deploying AI and making sure it doesn’t hu...
 

En vedette

En vedette (6)

Enabling Microservice @ Orbitz - GOTO Chicago 2016
Enabling Microservice @ Orbitz - GOTO Chicago 2016Enabling Microservice @ Orbitz - GOTO Chicago 2016
Enabling Microservice @ Orbitz - GOTO Chicago 2016
 
TS-2614 - Jini™ Network Technology-Enabled Service-Oriented Architecture, A L...
TS-2614 - Jini™ Network Technology-Enabled Service-Oriented Architecture, A L...TS-2614 - Jini™ Network Technology-Enabled Service-Oriented Architecture, A L...
TS-2614 - Jini™ Network Technology-Enabled Service-Oriented Architecture, A L...
 
Enabling Microservices @Orbitz - DockerCon 2015
Enabling Microservices @Orbitz - DockerCon 2015Enabling Microservices @Orbitz - DockerCon 2015
Enabling Microservices @Orbitz - DockerCon 2015
 
Enabling Microservices @Orbitz - Velocity Conf 2015
Enabling Microservices @Orbitz - Velocity Conf 2015Enabling Microservices @Orbitz - Velocity Conf 2015
Enabling Microservices @Orbitz - Velocity Conf 2015
 
Chicago Hadoop User Group (CHUG) Presentation on Apache Flume - April 9, 2014
Chicago Hadoop User Group (CHUG) Presentation on Apache Flume - April 9, 2014Chicago Hadoop User Group (CHUG) Presentation on Apache Flume - April 9, 2014
Chicago Hadoop User Group (CHUG) Presentation on Apache Flume - April 9, 2014
 
Enabling Hybrid Workflows with Docker/Mesos @Orbitz
Enabling Hybrid Workflows with Docker/Mesos @OrbitzEnabling Hybrid Workflows with Docker/Mesos @Orbitz
Enabling Hybrid Workflows with Docker/Mesos @Orbitz
 

Similaire à Enabling Microservices @Orbitz - DevOpsDays Chicago 2015

QCon'17 talk: CI/CD at scale - lessons from LinkedIn and Mockito
QCon'17 talk: CI/CD at scale - lessons from LinkedIn and MockitoQCon'17 talk: CI/CD at scale - lessons from LinkedIn and Mockito
QCon'17 talk: CI/CD at scale - lessons from LinkedIn and Mockito
Szczepan Faber
 

Similaire à Enabling Microservices @Orbitz - DevOpsDays Chicago 2015 (20)

Web.dev extended : What's new in Web [GDG Taichung]
Web.dev extended : What's new in Web [GDG Taichung]Web.dev extended : What's new in Web [GDG Taichung]
Web.dev extended : What's new in Web [GDG Taichung]
 
J1 2015 "Building a Microservice Ecosystem: Some Assembly Still Required"
J1 2015 "Building a Microservice Ecosystem: Some Assembly Still Required"J1 2015 "Building a Microservice Ecosystem: Some Assembly Still Required"
J1 2015 "Building a Microservice Ecosystem: Some Assembly Still Required"
 
Write common, run anywhere
Write common, run anywhereWrite common, run anywhere
Write common, run anywhere
 
Continuous Testing using Shippable and Docker
Continuous Testing using Shippable and DockerContinuous Testing using Shippable and Docker
Continuous Testing using Shippable and Docker
 
Lead Developer: A Day in the Life
Lead Developer: A Day in the LifeLead Developer: A Day in the Life
Lead Developer: A Day in the Life
 
Monitoring 改造計畫:流程觀點
Monitoring 改造計畫:流程觀點Monitoring 改造計畫:流程觀點
Monitoring 改造計畫:流程觀點
 
What’s new in VS 2015 and ALM 2015
What’s new in VS 2015 and ALM 2015What’s new in VS 2015 and ALM 2015
What’s new in VS 2015 and ALM 2015
 
To Microservices and Beyond
To Microservices and BeyondTo Microservices and Beyond
To Microservices and Beyond
 
DockerCon SF 2015: Ben Golub's Keynote Day 1
DockerCon SF 2015: Ben Golub's Keynote Day 1DockerCon SF 2015: Ben Golub's Keynote Day 1
DockerCon SF 2015: Ben Golub's Keynote Day 1
 
Developer: A Day in the Life
Developer: A Day in the LifeDeveloper: A Day in the Life
Developer: A Day in the Life
 
Cross Platform Angular 2 and TypeScript Development
Cross Platform Angular 2 and TypeScript DevelopmentCross Platform Angular 2 and TypeScript Development
Cross Platform Angular 2 and TypeScript Development
 
DevOps for a 10-Year-Old (Codebase)
DevOps for a 10-Year-Old (Codebase)DevOps for a 10-Year-Old (Codebase)
DevOps for a 10-Year-Old (Codebase)
 
How to Become DevOps
How to Become DevOpsHow to Become DevOps
How to Become DevOps
 
Microxchg Microservices
Microxchg MicroservicesMicroxchg Microservices
Microxchg Microservices
 
QCon'17 talk: CI/CD at scale - lessons from LinkedIn and Mockito
QCon'17 talk: CI/CD at scale - lessons from LinkedIn and MockitoQCon'17 talk: CI/CD at scale - lessons from LinkedIn and Mockito
QCon'17 talk: CI/CD at scale - lessons from LinkedIn and Mockito
 
DevOps Note 20120224
DevOps Note 20120224DevOps Note 20120224
DevOps Note 20120224
 
JS Fest 2019. Minko Gechev. Building Fast Angular Applications by Default
JS Fest 2019. Minko Gechev. Building Fast Angular Applications by DefaultJS Fest 2019. Minko Gechev. Building Fast Angular Applications by Default
JS Fest 2019. Minko Gechev. Building Fast Angular Applications by Default
 
Front End Development for Back End Developers - Devoxx UK 2017
 Front End Development for Back End Developers - Devoxx UK 2017 Front End Development for Back End Developers - Devoxx UK 2017
Front End Development for Back End Developers - Devoxx UK 2017
 
PyCon US 2009: Challenges and Opportunities for Python
PyCon US 2009: Challenges and Opportunities for PythonPyCon US 2009: Challenges and Opportunities for Python
PyCon US 2009: Challenges and Opportunities for Python
 
Big Data And HTML5 (DevCon TLV 2012)
Big Data And HTML5 (DevCon TLV 2012)Big Data And HTML5 (DevCon TLV 2012)
Big Data And HTML5 (DevCon TLV 2012)
 

Plus de Steve Hoffman

Plus de Steve Hoffman (6)

Byte Sized Rust
Byte Sized RustByte Sized Rust
Byte Sized Rust
 
Nerd Out with Hadoop: A Not-So-Basic Introduction to the Platform
Nerd Out with Hadoop: A Not-So-Basic Introduction to the PlatformNerd Out with Hadoop: A Not-So-Basic Introduction to the Platform
Nerd Out with Hadoop: A Not-So-Basic Introduction to the Platform
 
Combating DNS Exfiltration in AWS - AWS Midwest Community Day 2018
Combating DNS Exfiltration in AWS - AWS Midwest Community Day 2018Combating DNS Exfiltration in AWS - AWS Midwest Community Day 2018
Combating DNS Exfiltration in AWS - AWS Midwest Community Day 2018
 
Combating DNS Exfiltration in AWS - BSidesChicago 2018
Combating DNS Exfiltration in AWS - BSidesChicago 2018Combating DNS Exfiltration in AWS - BSidesChicago 2018
Combating DNS Exfiltration in AWS - BSidesChicago 2018
 
How Open Source is Transforming the Internet. Again.
How Open Source is Transforming the Internet. Again.How Open Source is Transforming the Internet. Again.
How Open Source is Transforming the Internet. Again.
 
flAWS Walkthrough - AWS Chicago Meetup 8/8/2017
flAWS Walkthrough - AWS Chicago Meetup 8/8/2017flAWS Walkthrough - AWS Chicago Meetup 8/8/2017
flAWS Walkthrough - AWS Chicago Meetup 8/8/2017
 

Dernier

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 

Dernier (20)

MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 

Enabling Microservices @Orbitz - DevOpsDays Chicago 2015