12.08.2016 Views

CLOUD NATIVE APPLICATIONS CONTAINERS MICROSERVICES PLATFORMS,CI-CD… OH MY!!

CF%20Summit%20-%20Cloud%20Native%20Applications%2C%20Containers%2C%20Microservices%2C%20Platforms%2C%20CI-CD%E2%80%A6Oh%20My%20rev%202.7

CF%20Summit%20-%20Cloud%20Native%20Applications%2C%20Containers%2C%20Microservices%2C%20Platforms%2C%20CI-CD%E2%80%A6Oh%20My%20rev%202.7

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>CLOUD</strong> <strong>NATIVE</strong> <strong>APPLICATIONS</strong><br />

<strong>CONTAINERS</strong>, <strong>MICROSERVICES</strong>,<br />

<strong>PLATFORMS</strong>,<strong>CI</strong>-<strong>CD…</strong> <strong>OH</strong> <strong>MY</strong>!!<br />

FABIO CHIODINI<br />

Principal System Engineer<br />

@FabioChiodini<br />

1


WHY ARE WE HERE?<br />

2


SOFTWARE IS TRANSFORMING INDUSTRIES<br />

3


ENTEPRISES ARE FOLLOWING<br />

4


<strong>CLOUD</strong> <strong>NATIVE</strong> <strong>APPLICATIONS</strong><br />

“Applications that do not require resilient infrastructure”<br />

*<br />

*Duncan C.E. Winn<br />

5


HOW DO THE TERMS FIT IN YOUR LIFE-CYCLE?<br />

MANAGE<br />

DEPLOY<br />

DESIGN<br />

6


RESULTING IN NEW REQUIREMENTS FOR IT<br />

TO DEPLOY AND DELIVER <strong>APPLICATIONS</strong> RELIABLY, AT SCALE<br />

7


<strong>CLOUD</strong> <strong>NATIVE</strong> PLATFORM REQUIREMENTS<br />

• Programmability<br />

(“Infrastructure As Code”)<br />

SELF SERVICE | POLYGLOT LANGUAGE<br />

• Elasticity (Which Demands<br />

A Scale-Out Architecture)<br />

AUTO SCALING | CONTAINER MANAGEMENT<br />

• Economics (Steers Towards<br />

Standard Servers +<br />

Software)<br />

• Strong Instrumentation<br />

And Telemetry Of<br />

Infrastructure Layer<br />

SELF HEALING | MULTI-<strong>CLOUD</strong> SUPPORT<br />

INTEGRATED LOGGING<br />

APPLICATION PERFORMANCE MANAGEMENT<br />

8


BTW…<br />

<strong>CONTAINERS</strong> vs VMs<br />

101<br />

9


<strong>CLOUD</strong> <strong>NATIVE</strong> PLATFORM, IAAS AND <strong>CONTAINERS</strong><br />

Cloud<br />

Native<br />

Platform<br />

Platform<br />

Orchestration layer<br />

No, you’re<br />

NOT<br />

IaaS<br />

Provisioning layer<br />

Container<br />

Virtual Machine<br />

Hardware<br />

I’m a<br />

PaaS/Cloud<br />

Native Platform<br />

Re-adapted from @swardley (Simon Wardley)<br />

10


DEMO #1<br />

POWER OF CNAs<br />

[AKA CNP DO-IT-YOURSELF]<br />

11


AN APP STORY… IN <strong>MICROSERVICES</strong><br />

Visualization Layer<br />

A Honeypot is a computer security<br />

mechanism set to detect, deflect, or, in some<br />

manner, counteract attempts at unauthorized<br />

use of information systems<br />

Geolocation<br />

Enrichment<br />

Honeypots<br />

Provisioning<br />

Honeypot #1<br />

(honeypot.py)<br />

Receiver<br />

(receiver.py)<br />

Honeypot #2<br />

(honeypot.py)<br />

Persistency<br />

Honeypot #N<br />

(honeypot.py)<br />

12


AN APP STORY… OVER MANY <strong>CLOUD</strong>S + TOOLS<br />

etcd<br />

Service Discovery<br />

Visualization Layer<br />

Honeypots<br />

Provisioning<br />

Infra as Code<br />

Receiver<br />

(receiver.py)<br />

Agility<br />

Honeypot #1<br />

(honeypot.py)<br />

Honeypot #2<br />

(honeypot.py)<br />

Honeypot #N<br />

(honeypot.py)<br />

13


AN APP STORY… WITH MANY TOOLS<br />

etcd<br />

Service Discovery<br />

Opens<br />

Docker<br />

Swarm<br />

Master<br />

Honeypots<br />

Provisioning<br />

Receiver<br />

(receiver.py)<br />

Honeypot #1<br />

(honeypot.py)<br />

Honeypot #I<br />

(honeypot.py)<br />

Honeypot #2<br />

(honeypot.py)<br />

Honeypot #J<br />

(honeypot.py)<br />

14


IN OTHER WORDS…<br />

GOAL: Continuous Delivery<br />

WHAT: Cloud Native Apps<br />

HOW: Cloud Native Platform<br />

THROUGH: DevOps Culture<br />

15


IN OTHER TWEETS<br />

16


HOW CAN<br />

YOU<br />

APPROACH IT?<br />

17


TWO TYPES OF <strong>CLOUD</strong> <strong>NATIVE</strong> <strong>PLATFORMS</strong><br />

ASSEMBLED<br />

PRESCRIPTIVE<br />

UNSTRUCTURED<br />

STRUCTURED<br />

Ultra-Flexible<br />

Multiple Configurations<br />

Platform = Core Competency<br />

Few Applications<br />

DIY-focused<br />

Standardized<br />

Built-in Availability and Security<br />

Automate & Simplify Operations<br />

Many Applications<br />

Buy-focused<br />

18


TWO TYPES OF <strong>CLOUD</strong> <strong>NATIVE</strong> <strong>PLATFORMS</strong><br />

ASSEMBLED<br />

PRESCRIPTIVE<br />

UNSTRUCTURED<br />

STRUCTURED<br />

19


TWO TYPES OF <strong>CLOUD</strong> <strong>NATIVE</strong> <strong>PLATFORMS</strong><br />

ASSEMBLED<br />

PRESCRIPTIVE<br />

UNSTRUCTURED<br />

STRUCTURED<br />

Ultra-Flexible<br />

Standardized<br />

How many apps<br />

FEW<br />

MANY<br />

Multiple Configurations in the enterprise? Built-in Availability and Security<br />

Platform = Core Competency<br />

Automate & Simplify Operations<br />

Few Applications Is the platform Many Applications<br />

YES<br />

NO<br />

DIY-focused<br />

a core competency?<br />

Buy-focused<br />

20


TWO TYPES OF <strong>CLOUD</strong> <strong>NATIVE</strong> <strong>PLATFORMS</strong><br />

ASSEMBLED<br />

PRESCRIPTIVE<br />

UNSTRUCTURED<br />

STRUCTURED<br />

Ultra-Flexible<br />

Standardized<br />

How many apps<br />

FEW<br />

MANY<br />

Multiple Configurations in the enterprise? Built-in Availability and Security<br />

Platform = Core Competency<br />

Automate & Simplify Operations<br />

Few Applications Is the platform Many Applications<br />

YES<br />

NO<br />

DIY-focused<br />

a core competency?<br />

Buy-focused<br />

21


TWO TYPES OF INFRASTRUCTURE TO BUILD ON<br />

YES<br />

Is racking, stacking, and<br />

automating a core competency?<br />

NO<br />

22


LET’S SEE HOW A<br />

STRUCTURED PLATFORM<br />

LOOKS LIKE<br />

23


DEMO #2<br />

THE STRUCTURED EXPERIENCE<br />

[AKA cf push tc]<br />

24


IN ESSENCE..<br />

WHICH ARE THE LAYERS<br />

IN THIS NEW WORLD?<br />

25


LAYERS FOR <strong>CLOUD</strong> <strong>NATIVE</strong> <strong>APPLICATIONS</strong><br />

IaaS/<br />

Stack<br />

Managers<br />

Cloud<br />

Native<br />

Platform<br />

Hypervisor/<br />

Abstraction<br />

layer<br />

K<br />

Structured or Unstructured<br />

Manual Processes or Automation<br />

vSphere/KVM/etc<br />

Hardware<br />

*DIY= Do IT Yourself<br />

26


IaaS/<br />

Stack<br />

Managers<br />

Cloud<br />

Native<br />

Platform<br />

Hypervisor/<br />

Abstraction<br />

layer<br />

K<br />

HOW TO SIMPLIFY CNAS DEPLOYMENT<br />

Structured or Unstructured<br />

Cloud Native<br />

Stack Manager<br />

STRUCTURED<br />

Platform for CNAs<br />

Manual Processes or Automation<br />

<strong>CI</strong>/H<strong>CI</strong><br />

Infrastructure<br />

vSphere/KVM/etc<br />

Hardware<br />

BUILD<br />

MANTAIN<br />

BUY<br />

CONSUME<br />

*DIY= Do IT Yourself<br />

27


◊<br />

◊<br />

◊<br />

◊<br />

RECAP / CLOSING COMMENTS<br />

Clear and Solid Business Needs for<br />

Cloud Native Apps<br />

Many Tech/options to choose from<br />

Structured approach offers many<br />

advantages<br />

Purpose built and<br />

Simplified Infrastructure<br />

can definitely help<br />

28


THANK YOU!!!<br />

29

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!