Docker Practice in Alibaba Cloud Yi Li Alibaba Cloud Architect (NOTE: PASTE IN PORTRAIT AND SEND BEHIND FOREGROUND GRAPHIC FOR CROP)
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 North CN East Japan Hong Kong CN 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: aliyun.routing.port_80: aliyun.scale: '3' aliyun.log_store_wordpress: stdout db: external: host: rdsxxxxxx.mysql.rds.aliyuncs.com ports: volumes: wp_upload: driver: ossfs driver_opts: bucket: acs-sample-wordpress Load Balancing Service MySQL Instance from RDS Aliyun Container Service From container to cloud native application OSSFS Fully compatible to Docker Compose/Swarm Bucket from Object Store Service One click to deploy in cloud AZ-a AZ-b Cluster of VM nodes
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: aliyun.routing.port_80: aliyun.scale: '3' aliyun.log_store_wordpress: stdout db: external: host: rdsxxxxxx.mysql.rds.aliyuncs.com ports: volumes: wp_upload: driver: ossfs driver_opts: bucket: acs-sample-wordpress Load Balancing Service Aliyun Container Service From container to cloud native application OSSFS Fully compatible to Docker Compose/Swarm Assemble the container and cloud services in declarative way MySQL Instance from RDS Bucket from Object Store Service One click to deploy in cloud AZ-a AZ-b Cluster of VM nodes
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: aliyun.routing.port_80: aliyun.scale: '3' aliyun.log_store_wordpress: stdout db: external: host: rdsxxxxxx.mysql.rds.aliyuncs.com ports: volumes: wp_upload: driver: ossfs driver_opts: bucket: acs-sample-wordpress Load Balancing Service MySQL Instance from RDS Aliyun Container Service From container to cloud native application OSSFS Fully compatible to Docker Compose/Swarm Assemble the container and cloud services in declarative way Enable micro-service architecture Bucket from Object Store Service One click to deploy in cloud AZ-a AZ-b Cluster of VM nodes
Aliyun Container Service Application Monitoring Logging Application App Governance Access Control Application Load balancing, Routing 路由 Service Registration, DiscoveryAuto Scaling Rolling update, A/B test, Canary … Service Container Orchestration Orchestration SchedulingCluster Management Docker Engine Container Docker Image Compose template Repository Storage Block Storage, Network FS, Object Storage Networking Classic/VPC, Hybrid Cloud, Public Cloud Dedicate Cloud Access Configuration Management Caching Service DBaaS MySQL,, Mongo … Messaging Service CI/CD SCM Middleware Services DevOps 3rd Extensions 3 rd Extensions
Aliyun Container Service Application Monitoring Logging Application App Governance Access Control Application Load balancing, Routing 路由 Service Registration, DiscoveryAuto Scaling Rolling update, A/B test, Canary … Service Container Orchestration Orchestration SchedulingCluster Management Docker Engine Container Docker Image Compose template Repository Storage Block Storage, Network FS, Object Storage Networking Classic/VPC, Hybrid Cloud, Public Cloud Dedicate Cloud Access Configuration Management Caching Service DBaaS MySQL,, Mongo … Messaging Service CI/CD SCM Middleware Services DevOps 3rd Extensions 3 rd Extensions Fully compatible to Docker ecosystem Optimized volume/networking for Alibaba Cloud Enables micro-service architecture Supports different workload Web/Mobile, HPC, Event-driven, etc. Integrates with cloud services DevOps by design Secure, Controllable, and Extensible
Reference Customers and Partners
Apsara Stack- Full Stack Dedicated Cloud Open API (REST, SDK, Orchestration Template) Customer-owned Infrastructure Management and Operation Distributed Coordination Service Distributed storage Service Distributed resource management and scheduling Distributed Data Center Management Elastic ComputeStorage ServicesVPCDatabase Services Big DataSecurity ServicesApplication Services Internet Scale Middleware Services Enterprise Security Framework Challenges Deliver the full stack cloud efficiently Minimize the resource overhead HA and self-managed system Continuing evolution Apsara Kernel : Unified, large scale, distributed computing framework 100+ controller services developed by different teams Each service has different dependencies of runtimes and libs
Deploy Dedicated Cloud in Few Person Days Docker Image Registry Configuration Management Data Center Management Unified service description for all controller services (In Docker Compose style format with extensions) Properties Requirements (depends) Capabilities (provides) Probes Healthy & monitoring Constrains HA, placement, … Image S1S1 S1S1 S3S3 S3S3 S4S4 S4S4 S5S5 S5S5 S7S7 S7S7 S6S6 S6S6 Determine execution plan by resolving the dependencies among services automatically S2S2 S2S2 1 Lookup configuration 2 3 X86 Server Linux (AliOS) Docker Engine (Docker with Ali Extensions) VXLAN/ VLAN Network Plugin Management Agent n + 1 hot backup Recover node failure in minutes Clone the controller nodes from base OS image with Docker Engine Deploy and configure service controllers as Docker containers 4 Service Controller Container Service Controller Container Service Controller Container X86 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.) Management Agent 5
Scalable Docker Image Distribution in Alibaba Group Docker Registry with Index Server Massive, secure and highly reliable object storage service Mirror 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 P2P minion client Docker Proxy with P2P minion client Docker Proxy with P2P minion client Docker Proxy with P2P minion client Mirror OSS Docker Proxy with P2P minion client Docker Proxy with P2P minion client Docker Proxy with P2P minion client Docker Proxy with P2P minion client tracker
Thank you!