SQL Server inside a docker container. Christophe LAPORTE SQL Server MVP/MCM SQL Saturday 735 Helsinki 2018

Similar documents
Industry-leading Application PaaS Platform

Who is Docker and how he can help us? Heino Talvik

Docker und IBM Digital Experience in Docker Container

Deployment Patterns using Docker and Chef

Think Small to Scale Big

From development to production

[Docker] Containerization

Important DevOps Technologies (3+2+3days) for Deployment

Red Hat Atomic Details Dockah, Dockah, Dockah! Containerization as a shift of paradigm for the GNU/Linux OS

Amir Zipory Senior Solutions Architect, Redhat Israel, Greece & Cyprus

Introduction to Docker. Antonis Kalipetis Docker Athens Meetup

CONTAINERS AND MICROSERVICES WITH CONTRAIL

Fixing the "It works on my machine!" Problem with Docker

Docker and Oracle Everything You Wanted To Know

Docker and Security. September 28, 2017 VASCAN Michael Irwin

USING DOCKER FOR MXCUBE DEVELOPMENT AT MAX IV

Arup Nanda VP, Data Services Priceline.com

Running MarkLogic in Containers (Both Docker and Kubernetes)

How to Put Your AF Server into a Container

Containers, Serverless and Functions in a nutshell. Eugene Fedorenko

What s Up Docker. Presented by Robert Sordillo Avada Software

Docker II - Judgement Day

DevOps Workflow. From 0 to kube in 60 min. Christian Kniep, v Technical Account Manager, Docker Inc.

IBM Bluemix compute capabilities IBM Corporation

CONTINUOUS DELIVERY WITH DC/OS AND JENKINS

Building Your First SQL Server Container Lab in Docker

An introduction to Docker

Logging, Monitoring, and Alerting

FIVE REASONS YOU SHOULD RUN CONTAINERS ON BARE METAL, NOT VMS

The Post-Cloud. Where Google, DevOps, and Docker Converge

Investigating Containers for Future Services and User Application Support

SQL Server Containers for Developers. Julie Lerman

Docker 101 Workshop. Eric Smalling - Solution Architect, Docker

A DEVOPS STATE OF MIND WITH DOCKER AND KUBERNETES. Chris Van Tuin Chief Technologist, West

ovirt and Docker Integration

DevOps Course Content

The age of orchestration

Best Practices for Developing & Deploying Java Applications with Docker

Midterm Presentation Schedule

Kuber-what?! Learn about Kubernetes

CS-580K/480K Advanced Topics in Cloud Computing. Container III

Cloud & container monitoring , Lars Michelsen Check_MK Conference #4

MySQL and Docker Strategies Patrick Galbraith Giuseppe Maxia

A DEVOPS STATE OF MIND. Chris Van Tuin Chief Technologist, West

Welcome to Docker Birthday # Docker Birthday events (list available at Docker.Party) RSVPs 600 mentors Big thanks to our global partners:

Advanced Continuous Delivery Strategies for Containerized Applications Using DC/OS

/ Cloud Computing. Recitation 5 February 14th, 2017

CNA1699BU Running Docker on your Existing Infrastructure with vsphere Integrated Containers Martijn Baecke Patrick Daigle VMworld 2017 Content: Not fo

GETTING STARTED WITH WINDOWS CONTAINERS, DOCKER AND AZURE

Container in Production : Openshift 구축사례로 이해하는 PaaS. Jongjin Lim Specialist Solution Architect, AppDev

CONTAINERIZED APP DEVELOPMENT

VMworld 2017 Content: Not for publication #CNA1699BE CONFIDENTIAL 2

Running Splunk Enterprise within Docker

Introduction to Containers

I keep hearing about DevOps What is it?

Go Faster: Containers, Platforms and the Path to Better Software Development (Including Live Demo)

Developing and Testing Java Microservices on Docker. Todd Fasullo Dir. Engineering

Container-based virtualization: Docker

Docker at Lyft Speeding up development Matthew #dockercon

Docker for Development: Getting Started

~Deep dive into Windows Containers and Docker~

Dynamic App Services in Containerized Environments

Infrastructure at your Service. Oracle over Docker. Oracle over Docker

Docker for People. A brief and fairly painless introduction to Docker. Friday, November 17 th 11:00-11:45

Con$nuous Deployment with Docker Andrew Aslinger. Oct

CloudCenter for Developers

Getting Started With Amazon EC2 Container Service

개발자와운영자를위한 DevOps 플랫폼 OpenShift Container Platform. Hyunsoo Senior Solution Architect 07.Feb.2017

The Art of Container Monitoring. Derek Chen

CONTINUOUS DELIVERY WITH MESOS, DC/OS AND JENKINS

DevOps in the Cloud A pipeline to heaven?! Robert Cowham BCS CMSG Vice Chair

DEPLOYMENT MADE EASY!

What you Need to Know about SQL Server and Docker Containers

[TITLE] Virtualization 360: Microsoft Virtualization Strategy, Products, and Solutions for the New Economy

Nevin Dong 董乃文 Principle Technical Evangelist Microsoft Cooperation

Taming your heterogeneous cloud with Red Hat OpenShift Container Platform.

Table of Contents 1.1. Introduction. Overview of vsphere Integrated Containers 1.2

Disclaimer This presentation may contain product features that are currently under development. This overview of new technology represents no commitme

Using Network Virtualization in DevOps environments Yves Fauser, 22. March 2016 (Technical Product Manager VMware NSBU)

Introduction to containers

Windows Azure Services - At Different Levels

Application Centric Microservices Ken Owens, CTO Cisco Intercloud Services. Redhat Summit 2015

Cloud providers, tools and best practices in running Magento on Kubernetes. Adrian Balcan MindMagnet Software

Comparison of Service Description and Composition for Complex 3-tier Cloud-based Services

Containers OpenStack. Murano brings Docker & Kubernetes to OpenStack. Serg Melikyan. software.mirantis.com. January 27, 2015

EVERYTHING AS CODE A Journey into IT Automation and Standardization. Raphaël Pinson

Brainstorm K Containerization with Docker. Crown Palm 2:30-3:30. Adam W Zheng Nebraska Educational Service Unit 10

Kubernetes made easy with Docker EE. Patrick van der Bleek Sr. Solutions Engineer NEMEA

Docker A FRAMEWORK FOR DATA INTENSIVE COMPUTING

Baremetal with Apache CloudStack

Getting Started With Containers

A DEVOPS STATE OF MIND. Chris Van Tuin Chief Technologist, West

Table of Contents 1.1. Overview. Containers, Docker, Registries vsphere Integrated Containers Engine

DGX-1 DOCKER USER GUIDE Josh Park Senior Solutions Architect Contents created by Jack Han Solutions Architect

DevOps Technologies. for Deployment

RED HAT OPENSHIFT A FOUNDATION FOR SUCCESSFUL DIGITAL TRANSFORMATION

WHITE PAPER. RedHat OpenShift Container Platform. Benefits: Abstract. 1.1 Introduction

How to Keep UP Through Digital Transformation with Next-Generation App Development

Changing The Conversation: Infrastructure as a Service

S INSIDE NVIDIA GPU CLOUD DEEP LEARNING FRAMEWORK CONTAINERS

Transcription:

SQL Server inside a docker container Christophe LAPORTE SQL Server MVP/MCM SQL Saturday 735 Helsinki 2018

Christophe LAPORTE ~ since 1997 : SQL 6.5 / WinNT4 christophe_laporte@hotmail.fr http://conseilit.wordpress.com/ @conseilit

Apologies French speaker

Toulouse South West of France

Agenda Micro services et containers Installing Docker Creating my first container Running a SQL Server container Creating multi-container Applications Q/A

Micro services The end of monolithic application New way to develop applications Lightweight pieces of SW evolving independently 1, 10s or 100s of containers composed as a single application DevOps Continuous integration and deployment made easier Accelerate development and deployment Seems to become a standard

Docker Initially a French company Since 2008 but has moved to the US Platform For developers and sysadmins Mission : Build, Ship, Run Terminology Image : Read-only template with instructions for creating a container Container : Runnable instance of an image, isolated from surroundings*

Docker containers Small system footprint Lightweight -> better efficiency on host servers Single image Multiple deployments (dev / test / prod) Avoid : it works on my computer! Will always run the same Regardless of where it is deployed WORA : Write Once Run Anywhere PODA : Package Once Deploy Anywhere

Demo Installing Docker

Docker Docker client Command line utility Docker engine Containers execution

Demo My first Docker commands

Docker commands vs traditional software traditional software Docker command Find the binaries for setup Docker search Download and mount ISO file Docker pull Create ISO / Zip file Docker build Install the software Docker create Run the software Docker start Download, install and run software (all-in-one) Docker run Stop the software Docker stop Uninstall the software Docker rm

Demo my first container

App A App A App B Bins/Libs Bins/Libs Bins/Libs App B Bins/Libs Virtual machine vs container Better consolidation ratio Guest OS Guest OS Guest OS Guest OS App A App A App B App B App B App B App B App B Hypervisor Host OS Server Bins/Libs Bins/Libs Docker Engine Host OS Server

Virtual machine vs container Can be run baremetal Can be run inside VMs

Microsoft pushing Docker hard https://azure.microsoft.com/fr-fr/blog/microsoft-docker-investing-in-the-future-of-your-applications/ https://blog.docker.com/2016/09/docker-microsoft-partnership/

dockerfile file Build customized image Script based # Comments FROM (1..N) LABEL MAINTAINER ENV (1..N) COPY / ADD (1..N) RUN (1..N) CMD (1)

Docker Hub the easiest way to get an image Images repository Search images Pull images Push images Microsoft official images IIS, SQL Server, MongoDB,

Demo pulling a SQL Server image

Docker & SQL Server Why using containers? You can install multiple instances of SQL Server No named instance on Linux Create and run a container in a few seconds Suitable for dev and test purpose Collocate different versions of one app Portable Same user experience on Docker Windows / Mac / Linux and public cloud Runs the same everywhere Licensing fees Same licensing rules than VMs

Scenarios - Docker & SQL Server Development instances Same user experience Windows, Mac, Linux On demand test instances Fast deployment Stateless On demand support instances Build environment similar to customer in a few seconds App v1.61.80339887 + SQL Server 13.0.4001 App v1.61.80339887 + SQL Server 13.0.5026 App v3.14.15926536 + SQL Server 14.0.1000 Production instances? Question of time : virtualizing SQL Server tier-1 DB is quite recent

Docker run command line docker run --detach --name sqldocker --hostname sqldocker --cpuset-cpus="0,1" --memory="2gb" --memory-swap="2gb" --env 'MSSQL_PID=developer' --env 'ACCEPT_EULA=Y' --env 'SA_PASSWORD=Password1!' --publish 14331:1433 --volume /var/opt/mssql:/var/opt/mssql microsoft/mssql-server-linux

Demo Running a container

Monitoring Docker stat Container heath check Dockerfile instruction HEALTHCHECK CMD [ "sqlcmd", "-Q", "select 1" ] Docker compose healthcheck: test: ["CMD", "/opt/mssql-tools/bin/sqlcmd", "-Usa", "-PPassword1!", "-Q", "select 1"] Runtime DOCKER RUN --health-cmd 'sqlcmd -Q "select 1 " Inspect the status DOCKER PS Docker inspect -f '{{json.state.health.status}} containername

Monitoring DIY collectd / influxdb / grafana https://github.com/microsoft/mssql-monitoring 3rd party Datadog New Relic Dynatrace

Demo monitoring Dockerfile Runtime

Compose application Docker compose Tool to define and run multi container Docker applications Yaml configuration file List of services (i.e. containers) Based on image or dockerfile (Build) With configuration Environment variables, ports and volume redirection Run Docker-compose up Docker-compose down Sample at https://github.com/dotnet-architecture/eshoponcontainers

Public network. Docker network. Demo load balance workload SQL1 14331 -> 1433 SQLExpress (1433) SQL2 14332 -> 1433 SQLExpress (1433) @VIP,1433 Load balancer SQL3 14333 -> 1433 SQL4 14334 -> 1433 SQLExpress (1433) SQLExpress (1433) SQL5 14335 -> 1433 SQLExpress (1433)

Next step Orchestration Docker swarm Kubernetes OpenShift Heat Infastructure as code Terraform Cloud formation Configuration management Chief Ansible

Containers 101 Key points Virtualization 2.0 : Stack Step #1 : hardware virtualization (Hyper-V, VMware) Step #2 : OS virtualization (Linux containers, Windows containers, Docker) Each layer can use the libraries provided by the underlaying level Each layer can evolve independently from each other Deployment DevOps style Accelerate development and application shipment Strong market trend

Thank you for attending Q&A Readings