Microsoft Cloud Native Day: Welcome To Today's Event. Sit Back and Enjoy
Microsoft Cloud Native Day: Welcome To Today's Event. Sit Back and Enjoy
Q&A
Welcome and Introduction
Andres Prieto
Director, Digital & Application Innovation
Microsoft Western Europe
Forrester Total Economic Impact study finds 228% ROI for Azure PaaS
Industry regulation
Businesses
modernize for New business opportunities
different reasons
Reduce technical debt
Optimize Costs
Continuation of slide 4
of software developers are
Cloud-native skillset outside tech industry 1
YoY increase
Fragmented security in data breach
targeted outcomes
of current enterprise applications
Limited global resources will still be in use by 2025 4
decline in IT
Reduced IT budget spend in 2020
1 McKinsey & Company: Driving business outcomes through Developer Velocity 2020
2 DevOps is getting code released faster than ever. But security is lagging behind | TechRepublic
3 Gartner, Application Modernization Should Be Business-Centric, Continuous and Multiplatform, Thomas Klinect, Stefan Van Der Zijden, 15 August 2019
Migrate IaaS
and Modernization
approaches Replace SaaS
Source: Costs and Benefits of .NET Application Migration to the Cloud - Gigaom
Empower non-security developers
to have a security-first mindset
CONTROL
Retire it, right-size, Use or convert to a Extend functionality Convert to Optimize for No change,
eliminate low code solution of existing solutions serverless and move to lift ‘n shift
environments or SaaS using serverless solution containers to IaaS
Note: This slide leverages inputs from app mod journey of Microsoft IT. Percentage stats would vary from one customer to another.
AKS Must Know (AKS 101)
Roy de Milde
Application Innovation Global Black Belt
Microsoft EMEA
What’s on the agenda?
The History
Where did it all start?
The Present
What are we doing right now?
The Future
Where are we going?
Opportunities
Dream big and bolder
Q&A
Feel free to ask ☺.
The History
2006
2013
2015
2018
2020
Cloud Native
CNCF
Computer Foundation
Kubernetes
and AKS
What is the difference
and the
rest
The Present
- DAPR
- KEDA
- Arc
- AKS Fleet
- AKS-Roadmap
DAPR
KEDA
Azure Arc
Enabled application services
AKS Fleet Manager
Public Roadmap
The Opportunity
Dream big and than a little bit bigger!
- Spot Nodes
- Valentine day scenario
- Burstable batch processing
- Risk-analysis solutions
- Mission critical multi-region applications
- Disconnected scenarios
- Many many more…..
Q&A
Feel to ask anything ☺
Microservices Made Easy
with Azure Container Apps and Dapr
Kosta Petan
Application Innovation Global Black Belt
Microsoft EMEA
[email protected]
www.linkedin.com/in/kostapetan/
Microservices development challenges
• How do I observe the calls and events between my services to diagnose issues in
production?
• How do I integrate with external systems that my app has to react and respond to?
• How do I create event driven apps which reliably send events from one service to another?
• How do I create long running, stateful services that can recover from failures?
• How do I prevent committing to a technology early and have the flexibility to swap out an
alternative based on project or environment changes?
Public API Web Event-driven Background
Microservices endpoints Apps processing processing
MICROSERVICE A MICROSERVICE B
HTTP TRAFFIC
80% 20%
MICROSERVICE C
REVISION 1 REVISION 2
Microservices architecture E.g., API app with HTTP E.g., Web app with custom E.g., Queue reader app E.g., Continuously
with the option to requests split between domain, TLS certificates, and that processes messages running background process
integrate with Dapr two revisions of the app integrated authentication as they arrive in a queue transforms data in a database
AUTO-SCALE CRITERIA
Individual microservices can Scaling is determined Scaling is determined Scaling is determined Scaling is determined
scale independently using by the number of by the number of by the number of by the level of CPU
any KEDA scale triggers concurrent HTTP requests concurrent HTTP requests messages in the queue or memory load
Scaling
{ artemis-queue, kafka, { {
"name": "http-rule", aws-cloudwatch, aws- "name": "cpu-rule", "name": "mem-rule",
"http": { kinesis-stream, aws-sqs- "custom": { "custom": {
"metadata": { queue, azure-blob, azure- "type": "cpu", "type": "memory",
"concurrentRequests": 50 eventhub, azure- "metadata": { "metadata": {
} servicebus, azure-queue, "type": "Utilization", "type": "AverageValue",
} cron, external, gcp- "value": "50" "value": "512"
} pubsub, huawei-cloudeye, } }
ibmmq, influxdb, mongodb, } }
mssql, mysql, postgresql, } }
rabbitmq, redis, redis-
streams, selenium-grid,
solace-event-queue, ..
Support for scale to zero and specifying minimum/maximum replicas Support for specifying minimum/maximum replicas
Microservices using any language or framework
Any cloud or edge infrastructure
Runtime
Portable, event-driven, runtime for
building distributed applications Service-to- State Publish Resource Actors Observability Secrets Extensible
across cloud and edge service
invocation
management and
subscribe
bindings
and triggers
Hosting infrastructure
Dapr API
HTTP of gRPC
Service-to-service invocation
POST http://localhost:3500/v1.0/invoke/cart/method/neworder
State management
GET http://localhost:3500/v1.0/state/inventory/item67
State
Stores AWS Azure
Firebase Redis Cassandra
Containerized application sidecar DynamoDB CosmosDB
PubSub
Brokers AWS
SQS
Azure
Service Bus
GCP
Pub/Sub
Redis RabbitMQ
POST http://localhost:3500/v1.0/invoke/service-b/method/neworder
Container App A
State management
Redis
Any Dapr
cache
Firebase
Azure
Dapr provide apps with state store
Cosmos DB
state management
Containerized application sidecar
capabilities for CRUD
operations, transactions
and more
POST http://localhost:3500/v1.0/state/orders
Container App A (Publisher)
loosely coupled
Container App B (Subscriber)
architectures where
producers send events
to consumers via topics.
Containerized application sidecar
Environment
Observability
Intercept traffic and Containerized
Containerized sidecar sidecar
extract tracing, metrics, application application
and logging
information and
visualize with App
Insights
Collector
Agility
Security Reliability
NoSQL Databases
• NoSQL databases are defined by a Key–value Column family
collection of characteristics that they share databases databases
rather than having a formal definition:
Non-relational
Scale-out
Schema-less
Document Graph
• They were all born out of this desire to
databases databases
address new needs of the internet world.
Cloud native applications with
Cosmos
Change Feed feature for event driven applications
Strongest developer experience
Agility
Most complete tool chain from source to production
Out of the box integration with Azure Policy, Active Directory, and
Security Security Center
Azure Cosmos DB
5 well-defined consistency models
Azure
Apps Data
Functions
AI Models
Power BI Personalization
Analyst Dashboard
Top Challenges: Real-Time Transactions
Scale high volumes of payment data at any time Storage (Azure) Data Factory
go
Ingest
• Super-fast, scalable, on demand, globally Stream
distributed
Event Hubs Stream Analytics Storage (Azure)
Application
Platform
Power BI Power Apps Power Automate Power Virtual Agents
GPT-3 GA
Scenario-Based Generate and
Services Understand Text
Bot Service Cognitive Search Form Recognizer Video Indexer Metrics Advisor Immersive Reader
Codex GA
Generate and
Customizable AI Understand Code
Models
Vision Speech Language Decision OpenAI Service
DALL·E Preview
Generate images from
ML Platform Azure Machine Learning text prompts
Document Process Automation – general pattern
Extract rich insights from documents and summarizing them
Steps
Web/Mobile
Cosmos DB Application
Logic orchestration
Documents
Power BI
Data Store
Caller Intelligent
Transcription Azure Cosmos DB
Call-Center Agent