VMware@Night: Container & Virtualisierung

33
VMware@Night: Container und Virtualisierung Urs Stephan Alder, CEO, Kybernetika Dennis Zimmer, CEO, Opvizor, [email protected] Michael Abmayer, Senior Consultant, opvizor

Transcript of VMware@Night: Container & Virtualisierung

Page 1: VMware@Night: Container & Virtualisierung

VMware@Night: Container und VirtualisierungUrs Stephan Alder, CEO, Kybernetika

Dennis Zimmer, CEO, Opvizor, [email protected]

Michael Abmayer, Senior Consultant, opvizor

Page 2: VMware@Night: Container & Virtualisierung

2

Contents

Container Adoption1

About Container2

Container vs. Virtualization3

Container Pros & Cons4

Deploy and Run Container5

Monitor Container6

Demo Time

Page 3: VMware@Night: Container & Virtualisierung

3

About UnitrendsAbout Container – Docker example

Page 4: VMware@Night: Container & Virtualisierung

4

About UnitrendsWhat application run in Container

Page 5: VMware@Night: Container & Virtualisierung

5

About UnitrendsAverage Lifetime of a Container

Page 6: VMware@Night: Container & Virtualisierung

6

About Unitrends

What is a Container??

Page 7: VMware@Night: Container & Virtualisierung

7

About UnitrendsArchitecture

Different Container Technologies – Docker, Kubernets, LXC, OpenVZ, Solaris Zones, ….

Docker Example - Source: https://goo.gl/tYMSPw

Page 8: VMware@Night: Container & Virtualisierung

8

About UnitrendsArchitecture

Docker Example - Source: https://goo.gl/l0cbpj

Page 9: VMware@Night: Container & Virtualisierung

9

About Unitrends

Container

Virtualization

Page 10: VMware@Night: Container & Virtualisierung

10

About UnitrendsArchitecture Difference

Source - Docker

Page 11: VMware@Night: Container & Virtualisierung

11

About UnitrendsDocker Architecture

Docker replaced LXC with its own libcontainer library written in Go, allowing for broader native support for different vendors. Additionally, Docker now offers native support for Window, streamlining the management of Docker hosts and containers on Windows development machines.Source - Docker

Page 12: VMware@Night: Container & Virtualisierung

12

About UnitrendsDeployment Scenarios

•Native: Linux OS running directly on hardware (Ubuntu, CentOS)•vSphere VM: Upcoming release of vSphere with the same guest OS as native•Native-Docker: Docker version 1.2 running on a native OS•VM-Docker: Docker version 1.2 running in guest VM on a vSphere host

Source - http://blogs.vmware.com/performance/2014/10/docker-containers-performance-vmware-vsphere.html

Page 13: VMware@Night: Container & Virtualisierung

13

About UnitrendsPerformance – LINPACK Test

LINPACK solves a dense system of linear equations (Ax=b), measures the amount of time it takes to factor and solve the system of N equations, converts that time into a performance rate, and tests the results for accuracy. We used an optimized version of the LINPACK benchmark binary based on the Intel Math Kernel Library (MKL).Source - http://blogs.vmware.com/performance/2014/10/docker-containers-performance-vmware-vsphere.html

Page 14: VMware@Night: Container & Virtualisierung

14

About UnitrendsPerformance – NetPerf / Redis

Source - http://blogs.vmware.com/performance/2014/10/docker-containers-performance-vmware-vsphere.html

Page 15: VMware@Night: Container & Virtualisierung

15

About UnitrendsVirtualization AND/OR Containers?

Source - https://www.citrix.com/blogs/2016/05/12/containers-or-virtual-machines-its-not-necessarily-one-or-the-other-get-the-best-of-both-worlds/

Page 16: VMware@Night: Container & Virtualisierung

16

About UnitrendsVMware Photon

Source – Dan Wendlandt http://de.slideshare.net/danwent/a-first-look-at-vsphere-integrated-containers-and-photon-platform/5

Page 17: VMware@Night: Container & Virtualisierung

17

About Unitrends

ContainerPros and Cons

Page 18: VMware@Night: Container & Virtualisierung

18

About UnitrendsContainer Pro

For both developers and operators, Docker offers the following high-level benefits:

Deployment Speed/AgilityDocker containers house the minimal requirements for running the application, enabling quick and lightweight deployment.

PortabilityBecause containers are essentially independent self-sufficient application bundles, they can be run across machines without compatibility issues.

Reuse Containers can be versioned, archived, shared, and used for rolling back previous versions of an application. Platform configurations can essentially be managed as code.

Page 19: VMware@Night: Container & Virtualisierung

19

About UnitrendsContainer Cons

SecurityDocker containers can be easily deployed, but there content is not necessary know. Docker.com offers a public registry where people can publish without restrictions to the community. Its up to the individual how to handle it. Official images from different vendors available to lower that risk.

ComplexContainer can be very complex if not documented well. Sometimes they need other containers as dependencies (DB, Queuing), or specific commands to run applications. Furthermore, it becomes a headache to maintain all kinds of updates throughout all hosts and container.

NetworkContainers are used in combination with ip forwarding. If container are used without discipline, its hard or even impossible to keep up with the network changes. Newertechnologies as network plugins and Vxlan are used to solve certain issues.

The network and the security concept are most critical for a well-made design.

Page 20: VMware@Night: Container & Virtualisierung

20

About Unitrends

DemoTime

Page 21: VMware@Night: Container & Virtualisierung

21

About UnitrendsInstall Docker

Virtual machine with Ubuntu Server 16.04 amd64:

$ sudo apt-get install docker.io

Ubuntu fetches packages, installs and starts docker daemon (aka docker engine)

optional:

$ sudo adduser ubuntu docker (this has security implications; re-login to make group-membership effective)

If you don’t add your working user to docker-group, you will have to run docker-cli-commands with sudo.

Page 22: VMware@Night: Container & Virtualisierung

22

About UnitrendsRun containers

$ docker run hello-world

Create your own wordpress install within minutes:

$ docker run -d --name mysql-container -v \/hostpath to mysqldata/:/var/lib/mysql/ -e \MYSQL_ROOT_PASSWORD=mysqlpwd mysql

$ docker run -d --name wordpress-container \--link mysql-container:mysql -p 8080:80 wordpress

Point your browser to http://yourhost:8080/ and enjoy.

$ docker run –it ubuntu:latestTry to portscan the surrounding network. What will you see?

Page 23: VMware@Night: Container & Virtualisierung

23

About UnitrendsDocker console

$ docker attach <container>

Kill the docker container: ctrl + c

$ docker exec -i -t 665b4a1e17b6 /bin/bash Open a bash terminal on the docker container

Page 24: VMware@Night: Container & Virtualisierung

24

About UnitrendsDocker filesystem mount

$ /var/lib/docker/volumes$ /var/lib/docker/container

Separated by UUID

$ docker run --name my-special-container -v /container/dirbusybox

-v switch points to external directory, i. e. /host/dir:/container/dir

Page 25: VMware@Night: Container & Virtualisierung

25

About UnitrendsDocker filesystem mount

$ docker run --volume-driver flocker -v flocker-volume:/container/dir--name=container-xyz

Source: https://clusterhq.com/2015/12/09/difference-docker-volumes-flocker-volumes/

Page 26: VMware@Night: Container & Virtualisierung

26

About UnitrendsUseful commands

$ docker start

$ docker stop

$ docker ps or docker top

$ docker rm

$ docker images (registered) or docker search (available)

$ docker rmi

$ docker logs

$ docker exec

$ docker inspect

Page 27: VMware@Night: Container & Virtualisierung

27

About UnitrendsBuild containers

$ mkdir wise-whale; cd wise-whale

$ cat > DockerfileFROM docker/whalesay:latestRUN apt-get -y update && apt-get install -y fortunes CMD /usr/games/fortune -a | cowsay^D

$ docker build -t wise-whale .

$ docker run wise-whale

Page 28: VMware@Night: Container & Virtualisierung

28

About UnitrendsCreate own registry

Docker runs https://hub.docker.com . Billing-plans for private repositories are available. There are also the option to run an own registry.

$ docker run –d –p 5000:5000 –v registry:/var/lib/registry registry:2.4

$ docker tag <image> localhost:5000/wise-whale:latest

$ docker push localhost:5000/wise-whale:latest

Optional TLS and htpasswd. Or use the “Docker Trusted Registry”

Page 29: VMware@Night: Container & Virtualisierung

29

About UnitrendsOrchestration (1)

Docker-compose is a tool for defining and running multi-container Docker applications.

$ sudo apt-get install docker-compose$ mkdir drupal-mariadb; cd drupal-mariadb;$ cat > docker-compose.ymlweb:image: samos123/drupal:7.xlinks:- db:mysql

ports:- '8081:80'

db:image: mariadbenvironment:- MYSQL_ROOT_PASSWORD=password

^D$ docker compose up -d

Page 30: VMware@Night: Container & Virtualisierung

30

About UnitrendsManagement

Simple Docker management using Shipyard

https://shipyard-project.com

Page 31: VMware@Night: Container & Virtualisierung

31

Performance Analyzer

Check real-time performance data thru the complete stack at the same point in time

Fully customizable with endless integration potential. We already support:• VMware vSphere

• VMware vCenter Appliance (VCSA)

• Microsoft Hyper-V

• NetApp

• Docker

• Linux and Windows Guests

• Datacore

• Microsoft SQL

• many more

30 Day Evaluation - http://try.opvizor.com/perfanalyzer

Page 32: VMware@Night: Container & Virtualisierung

32

Performance Analyzer

30 Day Evaluation - http://try.opvizor.com/perfanalyzer

Cross-Stack Docker, Docker Host, VMware VM Dashboard

Page 33: VMware@Night: Container & Virtualisierung