SlideShare ist ein Scribd-Unternehmen logo
1 von 40
Downloaden Sie, um offline zu lesen
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Container Based Hybrid Cloud
Architecture
Kim Kao 高翊凱
Solutions Architect
Amazon Web Services
Domain Driven Design(DDD Taiwan)
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Agenda
Hybrid cloud embrace opportunities
Prioritize workloads migrate to Cloud
Decoupling legacy with domain experts
Modern application development
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
The new normal: companies are increasingly global
and products are increasingly digital
47%
of CEOs said they are
being challenged by
the board of directors
to make progress in
digital business
Source: Gartner
79%
of CIOs believe that
digital business is
making their IT
organizations better
prepared to change
67%
of all business leaders
believe that they must
pick up the pace of
digitalization to
remain competitive
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
Why are enterprises
adopting containers?
• Accelerate software development
• Build modern applications
• Automate operations at web scale
© 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
Factors to Success
Culture Skill Organization Finance
Leadership
Systems and
Feedback
Methodology
and Technology
Move from
Projects
to Product
Teams
Capex
Versus
Opex
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
To maintain competitive advantage, digital businesses
must innovate as rapidly as possible
FeedbackIdeas
Experiment
Innovation
Flywheel
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Hybrid cloud strategy
of large
enterprises run
VMs in the
public cloud
(IDC)
60%
of organizations
have a hybrid
cloud strategy
today (IDC*)
65%
of workloads
are virtualized
today
(IDC )
83%
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Many worry there are only two choices
Build a
“private”
cloud
Rip everything out
and move to
AWS
#1 #2
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
The good news is – it isn’t an “all or nothing” choice
On-premises
resources
Cloud
resources
Integration
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
What do customers want in hybrid?
Run workloads
on-premises
Run workloads
on the cloud
Tight
integration
Without buying
new hardware
$
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Manager -
“We are going to run workload(s) on AWS.
We have new sub-systems/module to develop with legacy services.
Container is good. It’s great to have whole cloud native advantage
if you guys migrate all service into microservice, serverless...”
Developer(s) - “Not a problem. I’ll make it …”
A typical day for customer ...
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Jump into real world...
https://vaughnvernon.co/tag/event-storming/
(Earn money as usual) (will it run as usual?)
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
(priority, market expectation)
Domain
Expert
Matters
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Strategies for Dealing with Legacy Systems
• Bubble Context
• Place your new functionality in a bubble and have repositories as an anti-corruption
layer(ACL) toward the legacy code and data.
• Autonomous Bubble
• Start a new chapter OUTSIDE the legacy code with its own storage. Thus we need to
synchronize ACL and similar information that you shares with the legacy system
• Open Host Services in Published Language
• Expose legacy assets through an open host service. Using an anti-corruption layer to convert
the necessary information to the new system
• Event Streams
• The systems communicate trough events. The anti-corruption layer now publishes the event
and monitor the state of the other system. The solution is similar to event sourcing.
(priority, customer expectation)
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
ISV/Package
Support sub Domain
Out Sourcing
General Sub Domain
Pay the most efforts on critical business component
Talents developing code
Core Sub Domain
(self employee, out sourcing, ISV)
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
• Incrementally breakout dependencies
• Cut-off Database Link
• Do not allow cross schema access permissions
• Define API contract only for data exchange
• Considering to move out store procedure into application code
• Leave the legacy system as a data container
(CRM, ERP, Payment Gateway ...)
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
(dealing with transaction, service lookup)
Monolith
Does everything
Per Service
Do only one thing
Business matters
Immutable facts
- Order Created
- Coupon applied
- Account Registered
Intention
Business behavior
- Create an Order
- Apply Coupon
- Register an Account
Responsible for
Capabilities
- Order
- Discount
- Identity Management
Accept
&
process
Presentation Model
Help to make decision
Composite data type
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T
(dealing with transaction, service lookup)
Monolith
Does everything
Per Service
Do only one thing
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
• Microservices candidate – Bounded Context
• Per Bounded Context form up system Boundary
• One Bounded Context may
• Contains multiple co-related Aggregates
• Or only one Aggregate with Specific business capability
(dealing with transaction, service lookup)
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
(by noun, organization, experience?)
(CRM, ERP, Payment Gateway ...)
(self employee, out sourcing, ISV)
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
• By business Capability
• Form up boundary by Bounded Context
(by noun, organization, experience?)
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
(by noun, organization, experience?)
A Team
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
• Resources allocation by value chain
• Talents devote to build up core sub domain
• Responsible for general sub domain
• Out sourcing or ISV for support domain
(self employee, out sourcing, ISV)
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
• Incrementally breakout dependencies
• Cut-off Database Link
• Do not allow cross schema access permissions
• Define API contract only for data exchange
• Considering to move out store procedure into application code
• Leave the legacy system as a data container
(CRM, ERP, Payment Gateway ...)
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Capabilities of a modern application
Secure Resilient Elastic
Modular Automated Interoperable
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Public cloudOn-premises
environment
Containers and Kubernetes bring them closer…
Scalability
Speed
Portability
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
How are customers using Amazon EKS?
Microservices
PaaS
Enterprise app migrations
Machine learning
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Amazon EKS Architecture
mycluster.eks.amazonaws.com
EKS workers
Kubectl
AZ 1 AZ 2 AZ 3
Your AWS account
VPC
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Kubernetes control plane
Highly available and single
tenant infrastructure
All “native AWS” components
Fronted by an NLB
VPC
API Server ASG
Etcd ASG
NLB
AZ-1 AZ-2 AZ-3
ELB
Instances
Instances
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Hybrid Cloud on AWS
AWS Cloud Corporate data center
AWS VPN
AWS Direct Connect
Customer
gatewayAWS Transit Gateway
VPC
Subnet Subnet
Company.aws
Company.local
DC1 DC2 DC3
Trust
Identity integrations
AWS Management
Console
Amazon EC2
AWS Directory Service AWS Directory Service
AWS Single Sign-On Amazon RDS
EKS
Kubernetes
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Cross-account ENI
EKS VPCCustomer VPC
Worker Nodes
EKS ENI
Kubernetes
API calls
Exec, Logs,
Proxy
Internet
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Amazon VPC CNI plugin
ENI
Secondary IPs:
10.0.0.1
10.0.0.2
10.0.0.1
10.0.0.2
ENI
10.0.0.20
10.0.0.22
Secondary IPs:
10.0.0.20
10.0.0.22
ec2.associateaddress()
VPC Subnet – 10.0.0.0/24
Instance 1 Instance 2
VPC
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
EKS Supports Advanced Networking Architectures
VPC - Multiple IP ranges
Subnet 1 – 10.0.0.0/16 Subnet 2 – 100.64.0.0/10
Customer
gateway
Corporate
data center
On-Premise – 10.1.0.0/16
VPN or DX Pod
Outbound
Traffic SNAT
EKS Worker Node
Primary ENI Pod
Secondary
ENI
Pod –
100.64.0.200
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Migrating data: Five key questions
1) What kind of data is it, and where is it going?
4) How much data and time do you have?
2) One time or continuous movement?
3) One way or bi-directional?
5) WAN links & bandwidth constraints?
Amazon
S3
Amazon
EC2
Amazon
EFS
Amazon
EBS
Amazon
Aurora
Amazon
EMR
Amazon
Glacier
Amazon
RDS
AWS
IoT
Amazon
Redshift
Files Block
volumes
Databases IoT Streams
Amazon
FSx
Amazon
DynamoDB
AWS
Machine Learning
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Take Away
Know Why/What/How
• Take benefits from on-premise by hybrid cloud
• EKS supports hybrid computing environment
• Keep small step to migrate workload
• To collaborate Business and Technology guys by
speaking Ubiquitous Language
• Crunch Problem, then design solution
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Implementing DDD on AWS
Community : DDD Taiwan@FB
Telegram : YikaiKao
WeChat : YikaiKao
Twitter : @YikaiKao
GitHub Repos
Thank you!
© 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.

Weitere ähnliche Inhalte

Was ist angesagt?

AWS Initiate Day Dublin 2019 – Migrating Data to the Cloud
AWS Initiate Day Dublin 2019 – Migrating Data to the CloudAWS Initiate Day Dublin 2019 – Migrating Data to the Cloud
AWS Initiate Day Dublin 2019 – Migrating Data to the CloudAmazon Web Services
 
Migrate and Modernize Your Database
Migrate and Modernize Your DatabaseMigrate and Modernize Your Database
Migrate and Modernize Your DatabaseAmazon Web Services
 
設計可擴展-安全的創新金融科技-FinTech-應用-深入探討現代化的數位支付服務
設計可擴展-安全的創新金融科技-FinTech-應用-深入探討現代化的數位支付服務設計可擴展-安全的創新金融科技-FinTech-應用-深入探討現代化的數位支付服務
設計可擴展-安全的創新金融科技-FinTech-應用-深入探討現代化的數位支付服務Amazon Web Services
 
AWS最新區塊鏈服務與應用
AWS最新區塊鏈服務與應用AWS最新區塊鏈服務與應用
AWS最新區塊鏈服務與應用Amazon Web Services
 
How_to_build_your_cloud_enablement_engine_with_the_people_you_already_have
How_to_build_your_cloud_enablement_engine_with_the_people_you_already_haveHow_to_build_your_cloud_enablement_engine_with_the_people_you_already_have
How_to_build_your_cloud_enablement_engine_with_the_people_you_already_haveAmazon Web Services
 
AWS 預測性維護與智慧物聯應用
AWS 預測性維護與智慧物聯應用AWS 預測性維護與智慧物聯應用
AWS 預測性維護與智慧物聯應用Amazon Web Services
 
Architect Your Legacy Microsoft Apps into Modern Cloud Workloads
 Architect Your Legacy Microsoft Apps into Modern Cloud Workloads Architect Your Legacy Microsoft Apps into Modern Cloud Workloads
Architect Your Legacy Microsoft Apps into Modern Cloud WorkloadsAmazon Web Services
 
Architecting security and governance across your AWS environment
Architecting security and governance across your AWS environmentArchitecting security and governance across your AWS environment
Architecting security and governance across your AWS environmentAmazon Web Services
 
AWS Initiate Day Dublin 2019 – Top Cloud Security Myths
AWS Initiate Day Dublin 2019 – Top Cloud Security MythsAWS Initiate Day Dublin 2019 – Top Cloud Security Myths
AWS Initiate Day Dublin 2019 – Top Cloud Security MythsAmazon Web Services
 
進化中的遊戲產業-以微服務架構-全球布局與現代化資料庫策略來打造高成長遊戲
進化中的遊戲產業-以微服務架構-全球布局與現代化資料庫策略來打造高成長遊戲進化中的遊戲產業-以微服務架構-全球布局與現代化資料庫策略來打造高成長遊戲
進化中的遊戲產業-以微服務架構-全球布局與現代化資料庫策略來打造高成長遊戲Amazon Web Services
 
Preparing Your Data for Cloud Analytics & AI/ML
Preparing Your Data for Cloud Analytics & AI/MLPreparing Your Data for Cloud Analytics & AI/ML
Preparing Your Data for Cloud Analytics & AI/MLAmazon Web Services
 
Migrating_Large_Scale_Data_Sets_to_the_Cloud
Migrating_Large_Scale_Data_Sets_to_the_CloudMigrating_Large_Scale_Data_Sets_to_the_Cloud
Migrating_Large_Scale_Data_Sets_to_the_CloudAmazon Web Services
 
AWS Initiate Day Dublin 2019 - Plenary
AWS Initiate Day Dublin 2019 - PlenaryAWS Initiate Day Dublin 2019 - Plenary
AWS Initiate Day Dublin 2019 - PlenaryAmazon Web Services
 
Well-architected Amazon WorkSpaces: Enterprise deployment at scale - SVC304 -...
Well-architected Amazon WorkSpaces: Enterprise deployment at scale - SVC304 -...Well-architected Amazon WorkSpaces: Enterprise deployment at scale - SVC304 -...
Well-architected Amazon WorkSpaces: Enterprise deployment at scale - SVC304 -...Amazon Web Services
 
Education : Digital transformation & AWS Foundations
Education : Digital transformation & AWS FoundationsEducation : Digital transformation & AWS Foundations
Education : Digital transformation & AWS FoundationsAmazon Web Services
 
AWS Initiate Day Dublin 2019 – Security and Compliance in your VPC
AWS Initiate Day Dublin 2019 – Security and Compliance in your VPCAWS Initiate Day Dublin 2019 – Security and Compliance in your VPC
AWS Initiate Day Dublin 2019 – Security and Compliance in your VPCAmazon Web Services
 
利用AWS打造一站式旅遊服務平台
利用AWS打造一站式旅遊服務平台利用AWS打造一站式旅遊服務平台
利用AWS打造一站式旅遊服務平台Amazon Web Services
 

Was ist angesagt? (20)

AWS Initiate Day Dublin 2019 – Migrating Data to the Cloud
AWS Initiate Day Dublin 2019 – Migrating Data to the CloudAWS Initiate Day Dublin 2019 – Migrating Data to the Cloud
AWS Initiate Day Dublin 2019 – Migrating Data to the Cloud
 
Migrate and Modernize Your Database
Migrate and Modernize Your DatabaseMigrate and Modernize Your Database
Migrate and Modernize Your Database
 
遷移到雲端的成功秘訣
遷移到雲端的成功秘訣遷移到雲端的成功秘訣
遷移到雲端的成功秘訣
 
設計可擴展-安全的創新金融科技-FinTech-應用-深入探討現代化的數位支付服務
設計可擴展-安全的創新金融科技-FinTech-應用-深入探討現代化的數位支付服務設計可擴展-安全的創新金融科技-FinTech-應用-深入探討現代化的數位支付服務
設計可擴展-安全的創新金融科技-FinTech-應用-深入探討現代化的數位支付服務
 
AWS最新區塊鏈服務與應用
AWS最新區塊鏈服務與應用AWS最新區塊鏈服務與應用
AWS最新區塊鏈服務與應用
 
How_to_build_your_cloud_enablement_engine_with_the_people_you_already_have
How_to_build_your_cloud_enablement_engine_with_the_people_you_already_haveHow_to_build_your_cloud_enablement_engine_with_the_people_you_already_have
How_to_build_your_cloud_enablement_engine_with_the_people_you_already_have
 
AWS 預測性維護與智慧物聯應用
AWS 預測性維護與智慧物聯應用AWS 預測性維護與智慧物聯應用
AWS 預測性維護與智慧物聯應用
 
Architect Your Legacy Microsoft Apps into Modern Cloud Workloads
 Architect Your Legacy Microsoft Apps into Modern Cloud Workloads Architect Your Legacy Microsoft Apps into Modern Cloud Workloads
Architect Your Legacy Microsoft Apps into Modern Cloud Workloads
 
Architecting security and governance across your AWS environment
Architecting security and governance across your AWS environmentArchitecting security and governance across your AWS environment
Architecting security and governance across your AWS environment
 
Analysing Data in Real-time
Analysing Data in Real-timeAnalysing Data in Real-time
Analysing Data in Real-time
 
AWS Initiate Day Dublin 2019 – Top Cloud Security Myths
AWS Initiate Day Dublin 2019 – Top Cloud Security MythsAWS Initiate Day Dublin 2019 – Top Cloud Security Myths
AWS Initiate Day Dublin 2019 – Top Cloud Security Myths
 
進化中的遊戲產業-以微服務架構-全球布局與現代化資料庫策略來打造高成長遊戲
進化中的遊戲產業-以微服務架構-全球布局與現代化資料庫策略來打造高成長遊戲進化中的遊戲產業-以微服務架構-全球布局與現代化資料庫策略來打造高成長遊戲
進化中的遊戲產業-以微服務架構-全球布局與現代化資料庫策略來打造高成長遊戲
 
Preparing Your Data for Cloud Analytics & AI/ML
Preparing Your Data for Cloud Analytics & AI/MLPreparing Your Data for Cloud Analytics & AI/ML
Preparing Your Data for Cloud Analytics & AI/ML
 
Computer Vision con AWS
Computer Vision con AWSComputer Vision con AWS
Computer Vision con AWS
 
Migrating_Large_Scale_Data_Sets_to_the_Cloud
Migrating_Large_Scale_Data_Sets_to_the_CloudMigrating_Large_Scale_Data_Sets_to_the_Cloud
Migrating_Large_Scale_Data_Sets_to_the_Cloud
 
AWS Initiate Day Dublin 2019 - Plenary
AWS Initiate Day Dublin 2019 - PlenaryAWS Initiate Day Dublin 2019 - Plenary
AWS Initiate Day Dublin 2019 - Plenary
 
Well-architected Amazon WorkSpaces: Enterprise deployment at scale - SVC304 -...
Well-architected Amazon WorkSpaces: Enterprise deployment at scale - SVC304 -...Well-architected Amazon WorkSpaces: Enterprise deployment at scale - SVC304 -...
Well-architected Amazon WorkSpaces: Enterprise deployment at scale - SVC304 -...
 
Education : Digital transformation & AWS Foundations
Education : Digital transformation & AWS FoundationsEducation : Digital transformation & AWS Foundations
Education : Digital transformation & AWS Foundations
 
AWS Initiate Day Dublin 2019 – Security and Compliance in your VPC
AWS Initiate Day Dublin 2019 – Security and Compliance in your VPCAWS Initiate Day Dublin 2019 – Security and Compliance in your VPC
AWS Initiate Day Dublin 2019 – Security and Compliance in your VPC
 
利用AWS打造一站式旅遊服務平台
利用AWS打造一站式旅遊服務平台利用AWS打造一站式旅遊服務平台
利用AWS打造一站式旅遊服務平台
 

Ähnlich wie 以容器技術為基礎的混合雲設計架構

以容器技術為基礎的混合雲設計架構
以容器技術為基礎的混合雲設計架構以容器技術為基礎的混合雲設計架構
以容器技術為基礎的混合雲設計架構Amazon Web Services
 
2019 06-12-aws taipei summit-dev day-essential capabilities behind microservices
2019 06-12-aws taipei summit-dev day-essential capabilities behind microservices2019 06-12-aws taipei summit-dev day-essential capabilities behind microservices
2019 06-12-aws taipei summit-dev day-essential capabilities behind microservicesKim Kao
 
Serverless: costruire applicazioni native per il cloud
Serverless: costruire applicazioni native per il cloudServerless: costruire applicazioni native per il cloud
Serverless: costruire applicazioni native per il cloudAmazon Web Services
 
Costruire Architetture Ibride con AWS
Costruire Architetture Ibride con AWSCostruire Architetture Ibride con AWS
Costruire Architetture Ibride con AWSAmazon Web Services
 
Essential capabilities behind Microservices
Essential capabilities behind MicroservicesEssential capabilities behind Microservices
Essential capabilities behind MicroservicesAmazon Web Services
 
2020-04-02 DevConf - How to migrate an existing application to serverless
2020-04-02 DevConf - How to migrate an existing application to serverless2020-04-02 DevConf - How to migrate an existing application to serverless
2020-04-02 DevConf - How to migrate an existing application to serverlessMarcia Villalba
 
Modern Applications Development on AWS
Modern Applications Development on AWSModern Applications Development on AWS
Modern Applications Development on AWSBoaz Ziniman
 
Unify security, compliance, and finance teams with governance at scale - GRC2...
Unify security, compliance, and finance teams with governance at scale - GRC2...Unify security, compliance, and finance teams with governance at scale - GRC2...
Unify security, compliance, and finance teams with governance at scale - GRC2...Amazon Web Services
 
Introduction to Serverless Computing - OOP Munich
 Introduction to Serverless Computing - OOP Munich Introduction to Serverless Computing - OOP Munich
Introduction to Serverless Computing - OOP MunichBoaz Ziniman
 
AWS ECS Workshop A Journey to Modern Applications
AWS ECS Workshop A Journey to Modern ApplicationsAWS ECS Workshop A Journey to Modern Applications
AWS ECS Workshop A Journey to Modern ApplicationsAmazon Web Services
 
Securing Container-Based Applications at the Speed of DevOps
Securing Container-Based Applications at the Speed of DevOpsSecuring Container-Based Applications at the Speed of DevOps
Securing Container-Based Applications at the Speed of DevOpsWhiteSource
 
DevConZM - Modern Applications Development in the Cloud
DevConZM - Modern Applications Development in the CloudDevConZM - Modern Applications Development in the Cloud
DevConZM - Modern Applications Development in the CloudCobus Bernard
 
Securing Container-Based Applications at the Speed of DevOps
Securing Container-Based Applications at the Speed of DevOpsSecuring Container-Based Applications at the Speed of DevOps
Securing Container-Based Applications at the Speed of DevOpsDevOps.com
 
2019 03-13-implementing microservices by ddd
2019 03-13-implementing microservices by ddd2019 03-13-implementing microservices by ddd
2019 03-13-implementing microservices by dddKim Kao
 
Implementing Microservices by DDD
Implementing Microservices by DDDImplementing Microservices by DDD
Implementing Microservices by DDDAmazon Web Services
 
利用 Fargate - 無伺服器的容器環境建置高可用的系統
利用 Fargate - 無伺服器的容器環境建置高可用的系統利用 Fargate - 無伺服器的容器環境建置高可用的系統
利用 Fargate - 無伺服器的容器環境建置高可用的系統Amazon Web Services
 
AWS DevDay Berlin 2019 - Simplify your Web & Mobile apps with cloud-based ser...
AWS DevDay Berlin 2019 - Simplify your Web & Mobile appswith cloud-based ser...AWS DevDay Berlin 2019 - Simplify your Web & Mobile appswith cloud-based ser...
AWS DevDay Berlin 2019 - Simplify your Web & Mobile apps with cloud-based ser...Darko Mesaroš
 

Ähnlich wie 以容器技術為基礎的混合雲設計架構 (20)

以容器技術為基礎的混合雲設計架構
以容器技術為基礎的混合雲設計架構以容器技術為基礎的混合雲設計架構
以容器技術為基礎的混合雲設計架構
 
Containers on AWS
Containers on AWSContainers on AWS
Containers on AWS
 
2019 06-12-aws taipei summit-dev day-essential capabilities behind microservices
2019 06-12-aws taipei summit-dev day-essential capabilities behind microservices2019 06-12-aws taipei summit-dev day-essential capabilities behind microservices
2019 06-12-aws taipei summit-dev day-essential capabilities behind microservices
 
Serverless: costruire applicazioni native per il cloud
Serverless: costruire applicazioni native per il cloudServerless: costruire applicazioni native per il cloud
Serverless: costruire applicazioni native per il cloud
 
Costruire Architetture Ibride con AWS
Costruire Architetture Ibride con AWSCostruire Architetture Ibride con AWS
Costruire Architetture Ibride con AWS
 
Essential capabilities behind Microservices
Essential capabilities behind MicroservicesEssential capabilities behind Microservices
Essential capabilities behind Microservices
 
2020-04-02 DevConf - How to migrate an existing application to serverless
2020-04-02 DevConf - How to migrate an existing application to serverless2020-04-02 DevConf - How to migrate an existing application to serverless
2020-04-02 DevConf - How to migrate an existing application to serverless
 
Modern Applications Development on AWS
Modern Applications Development on AWSModern Applications Development on AWS
Modern Applications Development on AWS
 
Unify security, compliance, and finance teams with governance at scale - GRC2...
Unify security, compliance, and finance teams with governance at scale - GRC2...Unify security, compliance, and finance teams with governance at scale - GRC2...
Unify security, compliance, and finance teams with governance at scale - GRC2...
 
AWS Outposts Update
AWS Outposts UpdateAWS Outposts Update
AWS Outposts Update
 
Introduction to Serverless Computing - OOP Munich
 Introduction to Serverless Computing - OOP Munich Introduction to Serverless Computing - OOP Munich
Introduction to Serverless Computing - OOP Munich
 
AWS ECS Workshop A Journey to Modern Applications
AWS ECS Workshop A Journey to Modern ApplicationsAWS ECS Workshop A Journey to Modern Applications
AWS ECS Workshop A Journey to Modern Applications
 
Securing Container-Based Applications at the Speed of DevOps
Securing Container-Based Applications at the Speed of DevOpsSecuring Container-Based Applications at the Speed of DevOps
Securing Container-Based Applications at the Speed of DevOps
 
DevConZM - Modern Applications Development in the Cloud
DevConZM - Modern Applications Development in the CloudDevConZM - Modern Applications Development in the Cloud
DevConZM - Modern Applications Development in the Cloud
 
Securing Container-Based Applications at the Speed of DevOps
Securing Container-Based Applications at the Speed of DevOpsSecuring Container-Based Applications at the Speed of DevOps
Securing Container-Based Applications at the Speed of DevOps
 
2019 03-13-implementing microservices by ddd
2019 03-13-implementing microservices by ddd2019 03-13-implementing microservices by ddd
2019 03-13-implementing microservices by ddd
 
Implementing Microservices by DDD
Implementing Microservices by DDDImplementing Microservices by DDD
Implementing Microservices by DDD
 
利用 Fargate - 無伺服器的容器環境建置高可用的系統
利用 Fargate - 無伺服器的容器環境建置高可用的系統利用 Fargate - 無伺服器的容器環境建置高可用的系統
利用 Fargate - 無伺服器的容器環境建置高可用的系統
 
Breaking Down the Monowhat
Breaking Down the MonowhatBreaking Down the Monowhat
Breaking Down the Monowhat
 
AWS DevDay Berlin 2019 - Simplify your Web & Mobile apps with cloud-based ser...
AWS DevDay Berlin 2019 - Simplify your Web & Mobile appswith cloud-based ser...AWS DevDay Berlin 2019 - Simplify your Web & Mobile appswith cloud-based ser...
AWS DevDay Berlin 2019 - Simplify your Web & Mobile apps with cloud-based ser...
 

Mehr von Amazon Web Services

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Amazon Web Services
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Amazon Web Services
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateAmazon Web Services
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSAmazon Web Services
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Amazon Web Services
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Amazon Web Services
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...Amazon Web Services
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsAmazon Web Services
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareAmazon Web Services
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSAmazon Web Services
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAmazon Web Services
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareAmazon Web Services
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWSAmazon Web Services
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckAmazon Web Services
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without serversAmazon Web Services
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...Amazon Web Services
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceAmazon Web Services
 
Come costruire un'architettura Serverless nel Cloud AWS
Come costruire un'architettura Serverless nel Cloud AWSCome costruire un'architettura Serverless nel Cloud AWS
Come costruire un'architettura Serverless nel Cloud AWSAmazon Web Services
 

Mehr von Amazon Web Services (20)

Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
Come costruire servizi di Forecasting sfruttando algoritmi di ML e deep learn...
 
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
Big Data per le Startup: come creare applicazioni Big Data in modalità Server...
 
Esegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS FargateEsegui pod serverless con Amazon EKS e AWS Fargate
Esegui pod serverless con Amazon EKS e AWS Fargate
 
Costruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWSCostruire Applicazioni Moderne con AWS
Costruire Applicazioni Moderne con AWS
 
Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot Come spendere fino al 90% in meno con i container e le istanze spot
Come spendere fino al 90% in meno con i container e le istanze spot
 
Open banking as a service
Open banking as a serviceOpen banking as a service
Open banking as a service
 
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
Rendi unica l’offerta della tua startup sul mercato con i servizi Machine Lea...
 
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...OpsWorks Configuration Management: automatizza la gestione e i deployment del...
OpsWorks Configuration Management: automatizza la gestione e i deployment del...
 
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows WorkloadsMicrosoft Active Directory su AWS per supportare i tuoi Windows Workloads
Microsoft Active Directory su AWS per supportare i tuoi Windows Workloads
 
Database Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatareDatabase Oracle e VMware Cloud on AWS i miti da sfatare
Database Oracle e VMware Cloud on AWS i miti da sfatare
 
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJSCrea la tua prima serverless ledger-based app con QLDB e NodeJS
Crea la tua prima serverless ledger-based app con QLDB e NodeJS
 
API moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e webAPI moderne real-time per applicazioni mobili e web
API moderne real-time per applicazioni mobili e web
 
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatareDatabase Oracle e VMware Cloud™ on AWS: i miti da sfatare
Database Oracle e VMware Cloud™ on AWS: i miti da sfatare
 
Tools for building your MVP on AWS
Tools for building your MVP on AWSTools for building your MVP on AWS
Tools for building your MVP on AWS
 
How to Build a Winning Pitch Deck
How to Build a Winning Pitch DeckHow to Build a Winning Pitch Deck
How to Build a Winning Pitch Deck
 
Building a web application without servers
Building a web application without serversBuilding a web application without servers
Building a web application without servers
 
Fundraising Essentials
Fundraising EssentialsFundraising Essentials
Fundraising Essentials
 
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
AWS_HK_StartupDay_Building Interactive websites while automating for efficien...
 
Introduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container ServiceIntroduzione a Amazon Elastic Container Service
Introduzione a Amazon Elastic Container Service
 
Come costruire un'architettura Serverless nel Cloud AWS
Come costruire un'architettura Serverless nel Cloud AWSCome costruire un'architettura Serverless nel Cloud AWS
Come costruire un'architettura Serverless nel Cloud AWS
 

以容器技術為基礎的混合雲設計架構

  • 1. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Container Based Hybrid Cloud Architecture Kim Kao 高翊凱 Solutions Architect Amazon Web Services Domain Driven Design(DDD Taiwan)
  • 2. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Agenda Hybrid cloud embrace opportunities Prioritize workloads migrate to Cloud Decoupling legacy with domain experts Modern application development
  • 3. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. The new normal: companies are increasingly global and products are increasingly digital 47% of CEOs said they are being challenged by the board of directors to make progress in digital business Source: Gartner 79% of CIOs believe that digital business is making their IT organizations better prepared to change 67% of all business leaders believe that they must pick up the pace of digitalization to remain competitive
  • 4. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Why are enterprises adopting containers? • Accelerate software development • Build modern applications • Automate operations at web scale © 2019, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon Confidential
  • 5. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T Factors to Success Culture Skill Organization Finance Leadership Systems and Feedback Methodology and Technology Move from Projects to Product Teams Capex Versus Opex
  • 6. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. To maintain competitive advantage, digital businesses must innovate as rapidly as possible FeedbackIdeas Experiment Innovation Flywheel
  • 7. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Hybrid cloud strategy of large enterprises run VMs in the public cloud (IDC) 60% of organizations have a hybrid cloud strategy today (IDC*) 65% of workloads are virtualized today (IDC ) 83%
  • 8. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Many worry there are only two choices Build a “private” cloud Rip everything out and move to AWS #1 #2
  • 9. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. The good news is – it isn’t an “all or nothing” choice On-premises resources Cloud resources Integration
  • 10. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. What do customers want in hybrid? Run workloads on-premises Run workloads on the cloud Tight integration Without buying new hardware $
  • 11. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 12. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Manager - “We are going to run workload(s) on AWS. We have new sub-systems/module to develop with legacy services. Container is good. It’s great to have whole cloud native advantage if you guys migrate all service into microservice, serverless...” Developer(s) - “Not a problem. I’ll make it …” A typical day for customer ...
  • 13. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Jump into real world... https://vaughnvernon.co/tag/event-storming/ (Earn money as usual) (will it run as usual?)
  • 14. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. (priority, market expectation) Domain Expert Matters
  • 15. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Strategies for Dealing with Legacy Systems • Bubble Context • Place your new functionality in a bubble and have repositories as an anti-corruption layer(ACL) toward the legacy code and data. • Autonomous Bubble • Start a new chapter OUTSIDE the legacy code with its own storage. Thus we need to synchronize ACL and similar information that you shares with the legacy system • Open Host Services in Published Language • Expose legacy assets through an open host service. Using an anti-corruption layer to convert the necessary information to the new system • Event Streams • The systems communicate trough events. The anti-corruption layer now publishes the event and monitor the state of the other system. The solution is similar to event sourcing. (priority, customer expectation)
  • 16. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. ISV/Package Support sub Domain Out Sourcing General Sub Domain Pay the most efforts on critical business component Talents developing code Core Sub Domain (self employee, out sourcing, ISV)
  • 17. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. • Incrementally breakout dependencies • Cut-off Database Link • Do not allow cross schema access permissions • Define API contract only for data exchange • Considering to move out store procedure into application code • Leave the legacy system as a data container (CRM, ERP, Payment Gateway ...)
  • 18. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 19. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. (dealing with transaction, service lookup) Monolith Does everything Per Service Do only one thing Business matters Immutable facts - Order Created - Coupon applied - Account Registered Intention Business behavior - Create an Order - Apply Coupon - Register an Account Responsible for Capabilities - Order - Discount - Identity Management Accept & process Presentation Model Help to make decision Composite data type
  • 20. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.S U M M I T (dealing with transaction, service lookup) Monolith Does everything Per Service Do only one thing
  • 21. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. • Microservices candidate – Bounded Context • Per Bounded Context form up system Boundary • One Bounded Context may • Contains multiple co-related Aggregates • Or only one Aggregate with Specific business capability (dealing with transaction, service lookup)
  • 22. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. (by noun, organization, experience?) (CRM, ERP, Payment Gateway ...) (self employee, out sourcing, ISV)
  • 23. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. • By business Capability • Form up boundary by Bounded Context (by noun, organization, experience?)
  • 24. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. (by noun, organization, experience?) A Team
  • 25. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. • Resources allocation by value chain • Talents devote to build up core sub domain • Responsible for general sub domain • Out sourcing or ISV for support domain (self employee, out sourcing, ISV)
  • 26. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. • Incrementally breakout dependencies • Cut-off Database Link • Do not allow cross schema access permissions • Define API contract only for data exchange • Considering to move out store procedure into application code • Leave the legacy system as a data container (CRM, ERP, Payment Gateway ...)
  • 27. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.
  • 28. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Capabilities of a modern application Secure Resilient Elastic Modular Automated Interoperable
  • 29. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Public cloudOn-premises environment Containers and Kubernetes bring them closer… Scalability Speed Portability
  • 30. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. How are customers using Amazon EKS? Microservices PaaS Enterprise app migrations Machine learning
  • 31. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Amazon EKS Architecture mycluster.eks.amazonaws.com EKS workers Kubectl AZ 1 AZ 2 AZ 3 Your AWS account VPC
  • 32. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Kubernetes control plane Highly available and single tenant infrastructure All “native AWS” components Fronted by an NLB VPC API Server ASG Etcd ASG NLB AZ-1 AZ-2 AZ-3 ELB Instances Instances
  • 33. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Hybrid Cloud on AWS AWS Cloud Corporate data center AWS VPN AWS Direct Connect Customer gatewayAWS Transit Gateway VPC Subnet Subnet Company.aws Company.local DC1 DC2 DC3 Trust Identity integrations AWS Management Console Amazon EC2 AWS Directory Service AWS Directory Service AWS Single Sign-On Amazon RDS EKS Kubernetes
  • 34. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Cross-account ENI EKS VPCCustomer VPC Worker Nodes EKS ENI Kubernetes API calls Exec, Logs, Proxy Internet
  • 35. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Amazon VPC CNI plugin ENI Secondary IPs: 10.0.0.1 10.0.0.2 10.0.0.1 10.0.0.2 ENI 10.0.0.20 10.0.0.22 Secondary IPs: 10.0.0.20 10.0.0.22 ec2.associateaddress() VPC Subnet – 10.0.0.0/24 Instance 1 Instance 2 VPC
  • 36. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. EKS Supports Advanced Networking Architectures VPC - Multiple IP ranges Subnet 1 – 10.0.0.0/16 Subnet 2 – 100.64.0.0/10 Customer gateway Corporate data center On-Premise – 10.1.0.0/16 VPN or DX Pod Outbound Traffic SNAT EKS Worker Node Primary ENI Pod Secondary ENI Pod – 100.64.0.200
  • 37. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Migrating data: Five key questions 1) What kind of data is it, and where is it going? 4) How much data and time do you have? 2) One time or continuous movement? 3) One way or bi-directional? 5) WAN links & bandwidth constraints? Amazon S3 Amazon EC2 Amazon EFS Amazon EBS Amazon Aurora Amazon EMR Amazon Glacier Amazon RDS AWS IoT Amazon Redshift Files Block volumes Databases IoT Streams Amazon FSx Amazon DynamoDB AWS Machine Learning
  • 38. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Take Away Know Why/What/How • Take benefits from on-premise by hybrid cloud • EKS supports hybrid computing environment • Keep small step to migrate workload • To collaborate Business and Technology guys by speaking Ubiquitous Language • Crunch Problem, then design solution
  • 39. © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved. Implementing DDD on AWS Community : DDD Taiwan@FB Telegram : YikaiKao WeChat : YikaiKao Twitter : @YikaiKao GitHub Repos
  • 40. Thank you! © 2019, Amazon Web Services, Inc. or its affiliates. All rights reserved.