docker practice in alibaba cloud by li yi (mark) & zuhe li (sogo)
TRANSCRIPT
Docker Practice in Alibaba Cloud
Yi LiAlibaba Cloud Architect
Agenda
• Cloud and Docker Status Update in China• Successful Stories
• Aliyun Container Service• Dedicated Cloud Powered By Container• Scalable Docker Image Distribution
Alibaba Cloud: A Global Player for Cloud Computing
US West
Europe
Russia
CN NorthCN East
Japan
Hong KongCN South
Singapore
Middle East
Existed
Planned
US East
Alibaba Cloud: 93 Cloud Services Public Available
Cloud and Docker Status Update in China
China cloud relative to the West – DB
China’s cloud spending to reach 24.5% of the West by 2018 from 5.7% in 2015
More than 80% respondents are already using or plan to use containers, but only 10% used in production environment.
Survey result from 350+ feedbacks by Alibaba Cloud, June 2016
Docker Adoption in China
version: '2'services: wordpress: image: wordpress:4.5 restart: always links: - 'db:mysql' volumes: - 'wp_upload:/var/www/html/wp-content/uploads' environment: - WORDPRESS_DB_USER=blog - WORDPRESS_DB_PASSWORD=xxxxxx - WORDPRESS_DB_NAME=wordpress - availability:az==2 labels: aliyun.probe.url: http://container aliyun.routing.port_80: http://wordpress aliyun.scale: '3' aliyun.log_store_wordpress: stdout db: external: host: rdsxxxxxx.mysql.rds.aliyuncs.com ports: - 3306volumes: wp_upload: driver: ossfs driver_opts: bucket: acs-sample-wordpress
Load Balancing Service
MySQL Instance from
RDS
Aliyun Container ServiceFrom container to cloud native application
OSSFS OSSFS OSSFS
• Fully compatible to Docker Compose/Swarm
Bucket fromObject Store
ServiceOne click to deploy in cloud
AZ-a AZ-b
Cluster of VM nodes
http://wordpress.alicontainer.com
version: '2'services: wordpress: image: wordpress:4.5 restart: always links: - 'db:mysql' volumes: - 'wp_upload:/var/www/html/wp-content/uploads' environment: - WORDPRESS_DB_USER=blog - WORDPRESS_DB_PASSWORD=xxxxxx - WORDPRESS_DB_NAME=wordpress - availability:az==2 labels: aliyun.probe.url: http://container aliyun.routing.port_80: http://wordpress aliyun.scale: '3' aliyun.log_store_wordpress: stdout db: external: host: rdsxxxxxx.mysql.rds.aliyuncs.com ports: - 3306volumes: wp_upload: driver: ossfs driver_opts: bucket: acs-sample-wordpress
Load Balancing Service
Aliyun Container ServiceFrom container to cloud native application
OSSFS OSSFS OSSFS
• Fully compatible to Docker Compose/Swarm• Assemble the container and cloud services in declarative way
MySQL Instance from
RDS
Bucket fromObject Store
ServiceOne click to deploy in cloud
AZ-a AZ-b
Cluster of VM nodes
http://wordpress.alicontainer.com
version: '2'services: wordpress: image: wordpress:4.5 restart: always links: - 'db:mysql' volumes: - 'wp_upload:/var/www/html/wp-content/uploads' environment: - WORDPRESS_DB_USER=blog - WORDPRESS_DB_PASSWORD=xxxxxx - WORDPRESS_DB_NAME=wordpress - availability:az==2 labels: aliyun.probe.url: http://container aliyun.routing.port_80: http://wordpress aliyun.scale: '3' aliyun.log_store_wordpress: stdout db: external: host: rdsxxxxxx.mysql.rds.aliyuncs.com ports: - 3306volumes: wp_upload: driver: ossfs driver_opts: bucket: acs-sample-wordpress
Load Balancing Service
MySQL Instance from
RDS
Aliyun Container ServiceFrom container to cloud native application
OSSFS OSSFS OSSFS
• Fully compatible to Docker Compose/Swarm• Assemble the container and cloud services in declarative way• Enable micro-service architecture
Bucket fromObject Store
ServiceOne click to deploy in cloud
AZ-a AZ-b
Cluster of VM nodes
http://wordpress.alicontainer.com
Aliyun Container ServiceApplication
Monitoring
LoggingApplication App
Governance
Access Control
Application
Load balancing, Routing
路由
Service Registration, Discovery Auto Scaling Rolling update, A/B test,
Canary … Service
Container Orchestration Orchestration
Scheduling Cluster Management
Docker Engine
Container
Docker ImageCompose template
Repository
StorageBlock Storage, Network FS, Object Storage
NetworkingClassic/VPC, Hybrid Cloud,
Public Cloud Dedicate Cloud
Access
Configuration
Management
Caching Service
DBaaSMySQL,, Mongo …
Messaging Service
CI/CD
SCM
Middleware Services
DevOps
3rdExtensions
ExtensionsExtensions
3rd
Extensions
Aliyun Container ServiceApplication
Monitoring
LoggingApplication App
Governance
Access Control
Application
Load balancing, Routing
路由
Service Registration, Discovery Auto Scaling Rolling update, A/B test,
Canary … Service
Container Orchestration Orchestration
Scheduling Cluster Management
Docker Engine
Container
Docker ImageCompose template
Repository
StorageBlock Storage, Network FS, Object Storage
NetworkingClassic/VPC, Hybrid Cloud,
Public Cloud Dedicate Cloud
Access
Configuration
Management
Caching Service
DBaaSMySQL,, Mongo …
Messaging Service
CI/CD
SCM
Middleware Services
DevOps
3rdExtensions
ExtensionsExtensions
3rd
Extensions
Fully compatible to Docker ecosystemOptimized volume/networking for Alibaba
Cloud
Enables micro-service architecture
Supports different workloadWeb/Mobile, HPC, Event-driven, etc.
Inte
grat
es w
ith c
loud
serv
ices
DevO
ps b
y de
sign
Secu
re, C
ontro
llabl
e, a
nd E
xten
sible
Reference Customers and Partners
Apsara Stack- Full Stack Dedicated Cloud
Open API (REST, SDK, Orchestration Template)
Customer-owned Infrastructure
Man
agem
ent a
nd O
pera
tion
Distributed Coordination ServiceDistributed storage Service
Distributed resource management and
scheduling
Distributed Data Center Management
Elastic Compute Storage Services VPC Database Services
Big Data Security Services Application ServicesInternet Scale
Middleware Services
Ente
rpris
e Se
curit
y Fr
amew
ork
Challenges
Deliver the full stack cloud efficiently
Minimize the resource over-head
HA and self-managed system
Continuing evolution
Apsara Kernel : Unified, large scale, distributed computing framework
100+ controller services developed by different teamsEach service has different dependencies of runtimes and libs
Deploy Dedicated Cloud in Few Person DaysDocker Image
Registry
Configuration Management
Data Center
Management
Unified service description for all controller services(In Docker Compose style format with extensions)
PropertiesRequirements (depends)
Capabilities (provides)
ProbesHealthy & monitoring
ConstrainsHA, placement, …
Image
S1
S3 S4
S5 S7S6
Determine execution plan by resolving the dependencies among services automatically
S2
1
Lookup configura-tion2
3
X86 ServerX86 Server
X86 Server
Linux (AliOS)
Docker Engine (Docker with Ali Extensions)
VXLAN/VLAN
Network Plugin
ManagementAgent
n + 1 hot backupRecover node failure in minutes
Clone the controller nodes from base OS image with Docker En-gine
Deploy and configure service con-trollers as Docker containers 4
Service ControllerContainer
Service ControllerContainer
Service ControllerContainer
X86 ServerX86 Server
Clone the worker nodes from base OS image, deploy and configure the service workers on baremetal
X86 Server
Linux (AliOS)
Service Worker (Elastic Computing, Storage, Big Data, etc.)ManagementAgent
5
Scalable Docker Image Distribution in Alibaba GroupDocker Registry
with Index Server Massive, secure and highly reli-
able object storage service
MirrorOSS
OSS
tracker
CI/CD
DC 1 DC 2 Other data centers in China and around the world …
Headquarter
10K+ servers concurrent pulling image within one Data Center
30% faster layer download through p2p distribution
Docker Engine enhanced with private registry mirror
Docker
Proxy with P2Pminion client
Docker
Proxy with P2Pminion client
Docker
Proxy with P2Pminion client
Docker
Proxy with P2Pminion client
MirrorOSS
Docker
Proxy with P2Pminion client
Docker
Proxy with P2Pminion client
Docker
Proxy with P2Pminion client
Docker
Proxy with P2Pminion client
tracker
Thank you!