Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Agenda Azure and Open source Introduction to Containers and Docker. Docker on Azure CoreOS and Why Get Started on Docker. Azure is open across the stack MS Integrated Languages, Dev Tools & App Containers CMS & Apps Devices Databases Management Operating systems Ecosystem Provided Oracle Linux openSUSE Canonical OpenLogic CentOS-based Ubuntu SUSE Linux Enterprise Server Static website User DB Web frontend Queue Analytics DB Developer: Build Once, Run Anywhere (Finally) Multiplicity of hardware environments Development VM QA server Customer Data Center Public Cloud Production Cluster Contributor’s laptop Can I migrate smoothly and quickly Operator: Configure Once, Run Anything Do services and apps interact appropriately? Multiplicity of Stacks put more simply Datacenter - Deploy in Months - Go-Live in Weeks Virtualized and Cloud - Deploy in Weeks - Go-Live in Days Docker Containers - Deploy in Minutes/Hours - Go-Live in Minutes/Seconds What is Docker Engine • Open Source Project written in Go • Released March, 2013 • Provides the Docker Container - Repeatable Runtimes, Sandboxing, Network, and Storage • Linux and (soon) Windows CLI tools for Developers • Local and Remote REST API for further integration • Low level API for Runtime, Storage, and Network extension Docker -100 million download in 12 months Why containers matter Physical Containers Docker Content Agnostic The same container can hold almost any type of cargo Can encapsulate any payload and its dependencies Hardware Agnostic Standard shape and interface allow same container to move from ship to train to semi-truck to warehouse to crane without being modified or opened Using operating system primitives (e.g. LXC) can run consistently on virtually any hardware—VMs, bare metal, openstack, Azure , public IAAS, etc.—without modification Content Isolation and Interaction No worry about anvils crushing bananas. Containers can be stacked and shipped together Resource, network, and content isolation. Avoids dependency hell Automation Standard interfaces make it easy to automate loading, unloading, moving, etc. Standard operations to run, start, stop, commit, search, etc. Perfect for devops: CI, CD, autoscaling, hybrid clouds Highly efficient No opening or modification, quick to move between waypoints Lightweight, virtually no perf or start-up penalty, quick to move and manipulate Separation of duties Shipper worries about inside of box, carrier worries about outside of box Developer worries about code. Ops worries about infrastructure. Docker and Microsoft “By supporting Docker containers on the next wave of Windows Server. Applications can themselves be mixed; bringing together the best technologies from the Linux ecosystem and the Windows Server ecosystem. Windows Server containers will run in your datacenter, your hosted datacenter, or any public cloud provider – and of course, Microsoft Azure” Microsoft will participate as an active community member. Windows Server container images will also be available in the Docker Hub alongside the 45,000 and growing Docker images for Linux already available. Comparison: Containers vs. VMs App A App A’ App B Bins/ Libs Bins/ Libs Bins/ Libs Guest OS Guest OS Guest OS Guest OS Guest OS VM Containers are isolated, but share OS kernel and, where appropriate, bins/libraries …result is significantly faster deployment, much less overhead, easier migration, faster restart Bins/Libs Host OS Host OS Server Server App B’ App B’ App B’ Bins/Libs App B App A’ Hypervisor (Type 2) App A Container • One of the key benefits of containerization is that you can often pack many more containers on a host machine than you can virtual machines. • That stands to reason, because each VM is a selfcontained system in its own right, with its own operating system and virtualized hardware and its own unique resources. Dev/Ops Process with Containers Developers update, iterate, and deploy updated containers Operations collaborates with developers to provide app metrics and insights Developers Operations automates deployment and monitors deployed apps from central repository Central Repository Containers pushed to central repository Client – Host Model. Nano Server Server Core Highly Optimized Highly Compatible Born in the cloud applications Traditional Applications Windows Server Container EASY TO IMPLEMENT MORE MOBILITY HIGHLY AUTOMATED SECURE SCALABLE AND ELASTIC EFFICIENT SCALABLE AND ELASTIC EFFICIENT Hyper-V Container SHARED HOSTING EASY TO IMPLEMENT MORE MOBILITY HIGHLY AUTOMATED SECURE MULTITENANCY Docker Hyper-V Container PowerShell Others Windows Container Images Windows Server Container Container Management Requires Hyper-V Hypervisor Requires Hyper-V Hypervisor Container Management PowerShell Development Environments Docker Others Container Technologies Microsoft Cloud Azure Others… On Premises Service Provider Virtual Machines Development Frameworks and Languages PHP Go .Net JavaScript Ruby Node Phython Win32 Perl C++ Java Container Technologies Microsoft Cloud Azure On Premises Service Fabric Service Provider