cloud computing | virtualization | docker | go language

34

Upload: dweep-gogia

Post on 16-Apr-2017

129 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Cloud Computing | Virtualization | Docker | Go Language
Page 2: Cloud Computing | Virtualization | Docker | Go Language

Cloud Computing

Page 3: Cloud Computing | Virtualization | Docker | Go Language

"Cloud Computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers,

storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or

service provider interaction."

Page 4: Cloud Computing | Virtualization | Docker | Go Language

One of Google’s Data Centers

Page 5: Cloud Computing | Virtualization | Docker | Go Language

Models of Cloud Computing

Page 6: Cloud Computing | Virtualization | Docker | Go Language
Page 7: Cloud Computing | Virtualization | Docker | Go Language

Features of Cloud Computing

Page 8: Cloud Computing | Virtualization | Docker | Go Language

What is

Page 9: Cloud Computing | Virtualization | Docker | Go Language

Virtualization

Page 10: Cloud Computing | Virtualization | Docker | Go Language

"In computing, virtualization refers to the act of creating a virtual (rather than actual) version of

something, including virtual computer hardware platforms, operating systems, storage

devices, and computer resources."

Page 11: Cloud Computing | Virtualization | Docker | Go Language

"Virtualization software makes it possible to run multiple operating systems and multiple applications on the same server at the same time”

Page 12: Cloud Computing | Virtualization | Docker | Go Language

3

Page 13: Cloud Computing | Virtualization | Docker | Go Language
Page 14: Cloud Computing | Virtualization | Docker | Go Language

Pros and Cons of Virtualization

Pros:• Isolate applications • Reduced number of physical servers • Reduced costs • Full utilization of the server resources • Fundamental technology that powers Cloud Computing• Increases application uptime by running on diff physical

server

Cons:• It takes 2-3 minutes to provision a VM.

Page 15: Cloud Computing | Virtualization | Docker | Go Language

Containers

Page 16: Cloud Computing | Virtualization | Docker | Go Language
Page 17: Cloud Computing | Virtualization | Docker | Go Language

Operating-system-level virtualization is a server virtualization method in which the kernel of

an operating system allows the existence of multiple isolated user-space instances, instead of just one.

Such instances, which are sometimes called containers, software containers, virtualization

engines (VEs), may look and feel like a real server from the point of view of its owners and users.

Page 18: Cloud Computing | Virtualization | Docker | Go Language
Page 19: Cloud Computing | Virtualization | Docker | Go Language

Some benefits of Using Containers

• They have a very little footprint• They can be deployed very fast (within milliseconds)• They can run on any computer, infrastructure, or cloud

environment • Containers use less memory and CPU than VMs running

similar workloads • Increased productivity with reduced overhead

Page 20: Cloud Computing | Virtualization | Docker | Go Language

Some of the Drawbacks

• Containers are ephemeral• Difficult to manage

Page 21: Cloud Computing | Virtualization | Docker | Go Language

In 2013, Docker was founded

Page 22: Cloud Computing | Virtualization | Docker | Go Language
Page 23: Cloud Computing | Virtualization | Docker | Go Language
Page 24: Cloud Computing | Virtualization | Docker | Go Language

Google’s Adoption of Containers

Page 25: Cloud Computing | Virtualization | Docker | Go Language

In 2014

“Everything at Google runs in Containers”

“There were 2 billion new containers being deployed every week at Google”

Page 26: Cloud Computing | Virtualization | Docker | Go Language
Page 27: Cloud Computing | Virtualization | Docker | Go Language

Resources

For a complete course Go To : edx.org

For more about Containers Go To : https://docs.docker.com/

Page 28: Cloud Computing | Virtualization | Docker | Go Language

The Go Programming Language

Page 29: Cloud Computing | Virtualization | Docker | Go Language

About Golang

• Relatively new programming language • Developed internally at Google in 2009• Rich support for concurrency • Ability of code reusability through packages • Most popular language in Cloud Computing• Docker is built with Golang! • Light weight • Easy to comprehend and develop• By 2020, more than 500,000 Gophers!

Page 30: Cloud Computing | Virtualization | Docker | Go Language

Open Source Golang Projects

• Docker – The best project in Golang • Anything built on top of Docker – Kubernetes (Google’s tool)

• Gogs (Go Git Service) – Your own github!

….and many more at https://github.com/trending/go

Page 31: Cloud Computing | Virtualization | Docker | Go Language

Resources

Start with the book

Youtube Video (basics of Go covered in 5 mins!)

https://youtu.be/XCsL89YtqCs

Page 33: Cloud Computing | Virtualization | Docker | Go Language

Thank You!!

Page 34: Cloud Computing | Virtualization | Docker | Go Language

Images Sources

• Docker.com (Docker, Inc.) • Google Images