44

Microsoft Build 2017 - Developing on Windows Server

Embed Size (px)

Citation preview

TRANSFORM MONOLITHS TO MICROSERVICES

New code and transforming existing code

CONTAINERIZE EXISTING APPLICATIONS

Containerize for portability, efficiency and reliability

ACCELERATE NEW APPLICATIONS

Agile cloud native app development

“By upgrading to Windows Server 2016, we were able to ‘lift and shift’ a

key security application into Windows Server Containers, gain the

flexibility to run it anywhere, and begin to use microservices to refactor

aspects of the application to gain needed scalability.”

-Stephen Tarmey, Chief Architect

Reduce infrastructure and operational cost while moving to Azure and

modernizing application architecture

“We love the pristine and predictable environments provided by Windows Server Containers.

Service Fabric brings us a safe and consistent deployment strategy that maximizes uptime. The

marriage of the two in Microsoft Azure gives us unlimited potential.”

– Ralph Feltis, Senior Software Engineer

“With Azure Service Fabric and Windows Containers, we were able to push out [a] new feature

immediately …. That’s a big win for our team and for the airline.”

– Debra Moore, Senior Product Owner

-Stephen Tarmey, Chief Architect

TRANSFORM MONOLITHS TO MICROSERVICES

New code and transforming existing code

CONTAINERIZE EXISTING APPLICATIONS

Containerize for portability, efficiency and reliability

ACCELERATE NEW APPLICATIONS

Agile cloud native app development

Visual Studio 2017 Container tools

ConvertTo-Dockerfile `-RemotePath \\192.168.1.5\c$ `-OutputPath c:\newDockerFile `-Artifact IIS

# escape=`FROM microsoft/aspnet:windowsservercore-10.0.14393.693SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'SilentlyContinue';"]

RUN Remove-Website 'Default Web Site';

# Set up website: iis-envRUN New-Item -Path 'C:\iis\iis-env' -Type Directory -Force;

RUN New-Website -Name 'iis-env' -PhysicalPath 'C:\iis\iis-env' -Port 8090 -Force;

EXPOSE 8090

COPY ["iis-env", "/iis/iis-env"]

https://www.powershellgallery.com/packages/Image2Docker/

https://github.com/docker/communitytools-image2docker-win

TRANSFORM MONOLITHS TO MICROSERVICES

New code and transforming existing code

CONTAINERIZE EXISTING APPLICATIONS

Containerize for portability, efficiency and reliability

ACCELERATE NEW APPLICATIONS

Agile cloud native app development

Integrated web management portal

Role Based and LDAP/AD Access Control

Self-healing and rolling app deploy/upgrade

Image scanning, signing & E2E security

Support for Windows Server Containers and Hyper-V isolation

Image deployment and activation

Volume driver support

Networking and DNS discovery

Resource governance

Alpha Support for Windows Server Containers

Control plane runs on Linux nodes,Kubelet/kube-proxy run on Windows

Network is achieved using L3 routing

Only One Container Per Pod

https://kubernetes.io/docs/getting-started-guides/windows/

TRANSFORM MONOLITHS TO MICROSERVICES

New code and transforming existing code

CONTAINERIZE EXISTING APPLICATIONS

Containerize for portability, efficiency and reliability

ACCELERATE NEW APPLICATIONS

Agile cloud native app development

Functions on-premises

Preview of Azure Functions Runtime

https://aka.ms/azafr

Host User Mode

Container Runtime

Hyper-V Isolation

Virtual MachineSpecifically Optimized To

Run a Container

Hyper-V Isolation

Virtual MachineSpecifically Optimized To

Run a Container

taylorb@taylorb-pc:/mnt/c/Users/taylorb$_cat /mnt/c/build-announce.txtThe Windows Subsystem for Linux (aka Bash) is coming to Windows Server!taylorb@taylorb-pc:/mnt/c/Users/taylorb$

_

_

License.txt PerfLogs Program Files

Program Files (x86)

Users Windows

C: D:

<Path>

Container Host

License.txt PerfLogs Program Files

Program Files (x86)

Users Windows

<container path>

License.txt PerfLogs Program Files

Program Files (x86)

Users Windows

<Path>

Container Host

License.txt PerfLogs Program Files

Program Files (x86)

Users Windows

<container path>

FileServer C: