S111017- Implementing DevOps and Hybrid Cloud · 2 Outline •DevOps and Containers...

33
S111017- Implementing DevOps and Hybrid Cloud Srihari Angaluri Lenovo Data Center Group Red Hat Summit 2017 5/3/2017

Transcript of S111017- Implementing DevOps and Hybrid Cloud · 2 Outline •DevOps and Containers...

Page 1: S111017- Implementing DevOps and Hybrid Cloud · 2 Outline •DevOps and Containers •Architectural Considerations •Lenovo Cloud Technology Center •Implementing Red Hat OpenShift

S111017- Implementing DevOps and Hybrid Cloud

Srihari Angaluri Lenovo Data Center Group

Red Hat Summit 2017

5/3/2017

Page 2: S111017- Implementing DevOps and Hybrid Cloud · 2 Outline •DevOps and Containers •Architectural Considerations •Lenovo Cloud Technology Center •Implementing Red Hat OpenShift

2

Outline

• DevOps and Containers

• Architectural Considerations

• Lenovo Cloud Technology Center

• Implementing Red Hat OpenShift

• Hybrid Cloud Management with CloudForms

• Lenovo Converged Platform

• Demo

Page 3: S111017- Implementing DevOps and Hybrid Cloud · 2 Outline •DevOps and Containers •Architectural Considerations •Lenovo Cloud Technology Center •Implementing Red Hat OpenShift

3

Build Great Software – Fast…

Most Companies Have: • A Lack of effective and modern processes & principals

• Average to poor inter-department collaboration

• Tools that are not interconnected in the workflow

• Lots of software re-coding “rollbacks”

• Infrastructure challenges; usually can’t get what they need – when they need it

• Control & governance concerns

• Issues they don’t know how to fix (in some cases know they have issues)

Page 4: S111017- Implementing DevOps and Hybrid Cloud · 2 Outline •DevOps and Containers •Architectural Considerations •Lenovo Cloud Technology Center •Implementing Red Hat OpenShift

4

Industry Evolution

Wave1:

Converged

Software Defined Infrastructure Virtualize Server Virtualize Server and

Storage

Acquired as single entity

Faster deployment Moves storage into server IT Agility - virtualizes server, storage, network, and public cloud

resources

Management

Servers

Storage

Networking

Wave 2:

Hyper Converged Wave 3:

Software Defined Infrastructure (SDI)

Acquired as discrete parts

Hard to deploy

Traditional

Management

Servers

Storage

Networking

Management

Servers

Storage

Networking

+ +

So

ftw

are

De

fin

ed

Se

rvic

es

Management

Servers

SDS

SDN

+

+ +

Rapid time-to-deployment Ease of management

IT Agility

Value

Continuous and dynamic

Applications / Workloads

Page 6: S111017- Implementing DevOps and Hybrid Cloud · 2 Outline •DevOps and Containers •Architectural Considerations •Lenovo Cloud Technology Center •Implementing Red Hat OpenShift

6

Run Your Workloads, Where Its Best For You

Predictable Workloads

Elastic Workloads

25%

75%

Balance Owning and Renting For

Today’s Enterprise Workloads

Spin up and down resources on

the public cloud

Lower costs with private cloud

infrastructure

• Some are best in public cloud, some on Premise

• Depends on need – amounts, time, costs

Your % Will Vary – You Choose

Page 7: S111017- Implementing DevOps and Hybrid Cloud · 2 Outline •DevOps and Containers •Architectural Considerations •Lenovo Cloud Technology Center •Implementing Red Hat OpenShift

7

Hybrid-Cloud – Integrating 3-Tier, Web-Scale, Public Cloud

Modern Infrastructure Traditional Infrastructure

CONTAINERS CONTAINERS

Public Cloud

Virtualized Server and Storage

• Maximize legacy infrastructure where cost-effective

• Enable Hybrid-Cloud infrastructure & cloud-native tools

• Leverage “Prem” and “Public” resources when needed

for specific applications and workloads

Hyperconverged & Web-Scale Infrastructure

Premise -- & -- Public Cloud

Page 8: S111017- Implementing DevOps and Hybrid Cloud · 2 Outline •DevOps and Containers •Architectural Considerations •Lenovo Cloud Technology Center •Implementing Red Hat OpenShift

8

Container Platform Architecture

Page 9: S111017- Implementing DevOps and Hybrid Cloud · 2 Outline •DevOps and Containers •Architectural Considerations •Lenovo Cloud Technology Center •Implementing Red Hat OpenShift

Traditional, Stateful, and Microservices-based Apps

Container

Business

Automation

Container

Integration

Container

Data &

Storage

Container

Web &

Mobile

OpenShift Application Lifecycle Management (CI/CD)

Build Automation Deployment Automation

Service Catalog (Language Runtimes, Middleware, Databases)

Self-Service

Infrastructure Automation & Cockpit

Networking Storage Registry Logs &

Metrics Security

Container Orchestration & Cluster Management

(kubernetes)

Container Runtime & Packaging

(Docker)

Enterprise Container Host

Red Hat Enterprise Linux Atomic Host

Page 10: S111017- Implementing DevOps and Hybrid Cloud · 2 Outline •DevOps and Containers •Architectural Considerations •Lenovo Cloud Technology Center •Implementing Red Hat OpenShift

10

Google Kubernetes Container Orchestrator

https://kubernetes.io/

Page 12: S111017- Implementing DevOps and Hybrid Cloud · 2 Outline •DevOps and Containers •Architectural Considerations •Lenovo Cloud Technology Center •Implementing Red Hat OpenShift

12 2017 Lenovo Internal. All rights

reserved.

Implementing OpenShift Container Platform

Page 13: S111017- Implementing DevOps and Hybrid Cloud · 2 Outline •DevOps and Containers •Architectural Considerations •Lenovo Cloud Technology Center •Implementing Red Hat OpenShift

13

41

42

39

40

37

38

35

36

33

34

31

32

29

30

27

28

25

26

23

24

21

22

19

20

17

18

15

16

13

14

11

12

09

10

07

08

05

06

03

04

01

02

41

42

39

40

37

38

35

36

33

34

31

32

29

30

27

28

25

26

23

24

21

22

19

20

17

18

15

16

13

14

11

12

09

10

07

08

05

06

03

04

01

02

0 1 2 3 4 5 6 7 8 9

3550 M5

0 1 2 3 4 5 6 7 8 9

3550 M5

0 1 2 3 4 5 6 7 8 9

3550 M5

0 1 2 3 4 5 6 7 8 9

3550 M5

0 1 2 3 4 5 6 7 8 9

3550 M5

0 1 2 3 4 5 6 7 8 9

3550 M5

0 1 2 3 4 5 6 7 8 9

3550 M5

0 1 2 3 4 5 6 7 8 9

3550 M5

0 1 2 3 4 5 6 7 8 9

3550 M5

0 1 2 3 4 5 6 7 8 9

3550 M5

0 1 2 3 4 5 6 7 8 9

3550 M5

0 1 2 3 4 5 6 7 8 9

3550 M5

0 1 2 3 4 5 6 7 8 9

3550 M5

0 1 2 3 4 5 6 7 8 9

3550 M5

0 1 2 3 4 5 6 7 8 9

3550 M5

0 1 2 3 4 5 6 7 8 9

3550 M5

RackSwitch G7052

S

Mgmt

48 50 51 5225 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 481 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24

Mgmt

18 20 22 24 26 28 30 32

17 19 21 23 25 27 29 31

2 4 6 8 10 12 14 16

1 3 5 7 9 11 13 15

34 36 38 40 42 44 46 48

33 35 37 39 41 43 45 47

50 52 54

49 51 53

Mgmt

18 20 22 24 26 28 30 32

17 19 21 23 25 27 29 31

2 4 6 8 10 12 14 16

1 3 5 7 9 11 13 15

34 36 38 40 42 44 46 48

33 35 37 39 41 43 45 47

50 52 54

49 51 53

0 1 4 5 16 236 7 8 9 10 11 12 13 - 15 22212019181732

3650 M5

0 1 4 5 16 236 7 8 9 10 11 12 13 - 15 22212019181732

3650 M5

0 1 4 5 16 236 7 8 9 10 11 12 13 - 15 22212019181732

3650 M5

0 1 4 5 16 236 7 8 9 10 11 12 13 - 15 22212019181732

3650 M5

0 1 4 5 16 236 7 8 9 10 11 12 13 - 15 22212019181732

3650 M5

RackSwitch G7052

S

Mgmt

48 50 51 5225 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 481 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24

Seamless scaling of

compute or storage

capacity as you grow

Leaf/spine switch

architecture to scale

racks horizontally

Lenovo x3550 M5

Server for compute

building block

Lenovo x3650 M5

Server for SDS

storage building block

An integrated HW and SW reference architecture, purpose

built for container applications. Easy to deploy, easy to

scale, easy to manage.

• Integrated high speed “IP fabric”, capable of delivering

fast and predictable performance.

• Integrated container application platform (PaaS) reference

architecture with enterprise grade OpenShift/Kubernetes

and xClarity infrastructure management

• Simplified deployment (minutes), easily scale across racks

• Highly optimized for scalability, performance and value (Intel

SSD technology, Intel Xeon, Intel NIC’s)

Lenovo Container Orchestration Platform

CPUs

SSDs

Network

Page 14: S111017- Implementing DevOps and Hybrid Cloud · 2 Outline •DevOps and Containers •Architectural Considerations •Lenovo Cloud Technology Center •Implementing Red Hat OpenShift

14

0 1 4 5 6 7 8 9 10 11 12 13 - 1532

HX Series

0 1 4 5 6 7 8 9 10 11 12 13 - 1532

HX Series

0 1 4 5 6 7 8 9 10 11 12 13 - 1532

HX Series

0 1 2 3 4 5 6 7

3550 M5

0 1 2 3 4 5 6 7

3550 M5

0 1 2 3 4 5 6 7

3550 M5

Mgmt

18 20 22 24 26 28 30 32

17 19 21 23 25 27 29 31

2 4 6 8 10 12 14 16

1 3 5 7 9 11 13 15

34 36 38 40 42 44 46 48

33 35 37 39 41 43 45 47

50 52 54

49 51 53

Mgmt

18 20 22 24 26 28 30 32

17 19 21 23 25 27 29 31

2 4 6 8 10 12 14 16

1 3 5 7 9 11 13 15

34 36 38 40 42 44 46 48

33 35 37 39 41 43 45 47

50 52 54

49 51 53

HA Management

Cluster

Scalable

Compute Cluster

Scalable

Storage Cluster

Network

Leaf/Spine

Architecture

A node provides the runtime environments for

containers. Each node in a Kubernetes cluster has the

required services to be managed by the master. Nodes

also have the required services to run pods, including

the Docker service, a kubelet, and a service proxy.

OpenShift Container Platform leverages the Kubernetes

persistent volume (PV) framework to allow

administrators to provision persistent storage for a

cluster. Using persistent volume claims (PVCs),

developers can request PV resources without having

specific knowledge of the underlying storage

infrastructure.

Hardware Architecture and Considerations for OpenShift

Page 15: S111017- Implementing DevOps and Hybrid Cloud · 2 Outline •DevOps and Containers •Architectural Considerations •Lenovo Cloud Technology Center •Implementing Red Hat OpenShift

15

Mgmt

18 20 22 24 26 28 30 32

17 19 21 23 25 27 29 31

2 4 6 8 10 12 14 16

1 3 5 7 9 11 13 15

34 36 38 40 42 44 46 48

33 35 37 39 41 43 45 47

50 52 54

49 51 53

0 1 4 5 6 7 8 9 10 11 12 13 - 1532

HX Series

0 1 4 5 6 7 8 9 10 11 12 13 - 1532

HX Series

0 1 4 5 6 7 8 9 10 11 12 13 - 1532

HX Series

0 1 2 3 4 5 6 7

3550 M5

0 1 2 3 4 5 6 7

3550 M5

0 1 2 3 4 5 6 7

3550 M5

• Baremetal initial discovery • IMM/IPMI configuration • Firmware updates • Network configuration • OS deployment • Embedded DNS, DHCP,TFTP

0 1 2 3 4 5 6 7

3550 M5

• Generates cluster HW manifest and topology (hosts, IP addresses, inventory, etc.)

• Tool to translate topology to Ansible OpenShift configuration file

• Kick-off ansible installation playbook • Cluster is deployed and ready for operation

Management node

xCAT docker image

OpenShift Deployment

Automation

Page 16: S111017- Implementing DevOps and Hybrid Cloud · 2 Outline •DevOps and Containers •Architectural Considerations •Lenovo Cloud Technology Center •Implementing Red Hat OpenShift

16

/etc/ansible/hosts # Create an OSEv3 group that contains the master, nodes, etcd, and lb groups.

# The lb group lets Ansible configure HAProxy as the load balancing solution.

# Comment lb out if your load balancer is pre-configured.

[OSEv3:children]

masters

nodes

etcd

lb

# Set variables common for all OSEv3 hosts

[OSEv3:vars]

ansible_ssh_user=root

deployment_type=openshift-enterprise

openshift_master_default_subdomain=apps.oshift.local

openshift_master_identity_providers=[{'name': 'htpasswd_auth', 'login': 'true', 'challenge': 'true', 'kind': 'HTPasswdPasswordIdentityProvider',

'filename': '/etc/origin/master/htpasswd'}]

openshift_master_cluster_method=native

openshift_master_cluster_hostname=haproxy-0

openshift_master_cluster_public_hostname=haproxy-0.oshift.local

openshift_hosted_metrics_public_url=master-0.oshift.local

# enable ntp on masters to ensure proper failover

openshift_clock_enabled=true

# host group for masters

[masters]

master-0

master-1

master-2

# host group for etcd

[etcd]

master-0

master-1

master-2

# Specify load balancer host

[lb]

haproxy-0

# host group for nodes, includes region info

[nodes]

master-[0:2] openshift_node_labels="{'region': 'infra', 'zone': 'default'}"

app-0 openshift_node_labels="{'region': 'primary', 'zone': 'east'}"

app-1 openshift_node_labels="{'region': 'primary', 'zone': 'west'}"

app-2 openshift_node_labels="{'region': 'primary', 'zone': 'west'}"

Page 17: S111017- Implementing DevOps and Hybrid Cloud · 2 Outline •DevOps and Containers •Architectural Considerations •Lenovo Cloud Technology Center •Implementing Red Hat OpenShift

17

Virtualized OpenShift Enterprise 3.5 Implementation

OpenShift 3.5 “virtual” Cluster

RHEL 7.3 Hosts

CloudForms

Management Engine

Appliance

Page 18: S111017- Implementing DevOps and Hybrid Cloud · 2 Outline •DevOps and Containers •Architectural Considerations •Lenovo Cloud Technology Center •Implementing Red Hat OpenShift

18

OpenShift Deployment Architecture

External

Cluster

Services:

DNS, NTP

OpenShift

Installer

(ansible host)

master-0 master-1 master-2

app-0 app-1 app-2

haproxy-0

CloudForms

(multi cloud

manager)

xClarity

Administrator

(hardware

manager)

OpenShift

Console

(user self-

service)

User

Applications

(deployed in

OpenShift)

OpenShift Cluster

Page 19: S111017- Implementing DevOps and Hybrid Cloud · 2 Outline •DevOps and Containers •Architectural Considerations •Lenovo Cloud Technology Center •Implementing Red Hat OpenShift

19

[root@master-0 ~]# oc get nodes --show-labels

NAME STATUS AGE LABELS

app-0.oshift.local Ready 1d beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/hostname=app-0.oshift.local,region=primary,zone=east

app-1.oshift.local Ready 1d beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/hostname=app-1.oshift.local,region=primary,zone=west

app-2.oshift.local Ready 1d beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/hostname=app-2.oshift.local,region=primary,zone=west

master-0.oshift.local Ready 1d beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/hostname=master-0.oshift.local,region=infra,zone=default

master-1.oshift.local Ready 1d beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/hostname=master-1.oshift.local,region=infra,zone=default

master-2.oshift.local Ready 1d beta.kubernetes.io/arch=amd64,beta.kubernetes.io/os=linux,kubernetes.io/hostname=master-2.oshift.local,region=infra,zone=default

[root@master-0 ~]# oc get projects

NAME DISPLAY NAME STATUS

cake-project cake-phy-mysql Active

default Active

kube-system Active

logging Active

management-infra Active

nexus3-demo nexus3-example Active

openshift Active

openshift-infra Active

[root@master-0 ~]# oc get pods --all-namespaces

NAMESPACE NAME READY STATUS RESTARTS AGE

cake-project cakephp-mysql-example-1-build 0/1 Completed 0 1d

cake-project cakephp-mysql-example-1-d6zcr 1/1 Running 0 1d

cake-project mysql-1-8tmpf 1/1 Running 0 1d

default docker-registry-1-350h2 1/1 Running 0 1d

default registry-console-1-2lwbt 1/1 Running 0 1d

default router-1-8xxkv 1/1 Running 0 1d

default router-1-g45qs 1/1 Running 0 1d

default router-1-vmh3s 1/1 Running 0 1d

nexus3-demo nexus3-1-vcs0p 1/1 Running 0 1d

nexus3-demo nexus3-2-deploy 0/1 Error 0 1d

openshift cakephp-example-1-build 0/1 Completed 0 1d

openshift cakephp-example-1-wttb5 1/1 Running 0 1d

openshift-infra hawkular-cassandra-1-11gt4 1/1 Running 0 1d

openshift-infra hawkular-metrics-p5z89 1/1 Running 3 1d

openshift-infra heapster-blmsw 1/1 Running 0 1d

[root@master-0 ~]# oc get routes --all-namespaces

NAMESPACE NAME HOST/PORT PATH SERVICES PORT TERMINATION WILDCARD

cake-project cakephp-mysql-example cakephp-mysql-example-cake-project.apps.oshift.local cakephp-mysql-example <all> None

default docker-registry docker-registry-default.apps.oshift.local docker-registry <all> passthrough None

default registry-console registry-console-default.apps.oshift.local registry-console <all> passthrough None

nexus3-demo nexus3-route nx3.apps.oshift.local nexus3 8081-tcp None

openshift cakephp-example cakephp-example-openshift.apps.oshift.local cakephp-example <all> None

openshift-infra hawkular-metrics master-0.oshift.local hawkular-metrics https-end point reencrypt None

Page 20: S111017- Implementing DevOps and Hybrid Cloud · 2 Outline •DevOps and Containers •Architectural Considerations •Lenovo Cloud Technology Center •Implementing Red Hat OpenShift

20 2017 Lenovo Internal. All rights

reserved.

Creating and deploying your containerized apps

Page 21: S111017- Implementing DevOps and Hybrid Cloud · 2 Outline •DevOps and Containers •Architectural Considerations •Lenovo Cloud Technology Center •Implementing Red Hat OpenShift

21

Built-in templates for common runtimes and usecases

Page 22: S111017- Implementing DevOps and Hybrid Cloud · 2 Outline •DevOps and Containers •Architectural Considerations •Lenovo Cloud Technology Center •Implementing Red Hat OpenShift

22

Page 23: S111017- Implementing DevOps and Hybrid Cloud · 2 Outline •DevOps and Containers •Architectural Considerations •Lenovo Cloud Technology Center •Implementing Red Hat OpenShift

23

Managing your Hybrid Cloud with CloudForms

Page 24: S111017- Implementing DevOps and Hybrid Cloud · 2 Outline •DevOps and Containers •Architectural Considerations •Lenovo Cloud Technology Center •Implementing Red Hat OpenShift

24

Managing OpenShift with CloudForms

Page 25: S111017- Implementing DevOps and Hybrid Cloud · 2 Outline •DevOps and Containers •Architectural Considerations •Lenovo Cloud Technology Center •Implementing Red Hat OpenShift

25

Page 26: S111017- Implementing DevOps and Hybrid Cloud · 2 Outline •DevOps and Containers •Architectural Considerations •Lenovo Cloud Technology Center •Implementing Red Hat OpenShift

26

OpenShift metrics integration for chargeback

Page 27: S111017- Implementing DevOps and Hybrid Cloud · 2 Outline •DevOps and Containers •Architectural Considerations •Lenovo Cloud Technology Center •Implementing Red Hat OpenShift

27

Lenovo Converged Infrastructure

Page 28: S111017- Implementing DevOps and Hybrid Cloud · 2 Outline •DevOps and Containers •Architectural Considerations •Lenovo Cloud Technology Center •Implementing Red Hat OpenShift

28

Managing your infrastructure with

Lenovo xClarity Administrator

Page 29: S111017- Implementing DevOps and Hybrid Cloud · 2 Outline •DevOps and Containers •Architectural Considerations •Lenovo Cloud Technology Center •Implementing Red Hat OpenShift

29

Page 30: S111017- Implementing DevOps and Hybrid Cloud · 2 Outline •DevOps and Containers •Architectural Considerations •Lenovo Cloud Technology Center •Implementing Red Hat OpenShift

30

Page 31: S111017- Implementing DevOps and Hybrid Cloud · 2 Outline •DevOps and Containers •Architectural Considerations •Lenovo Cloud Technology Center •Implementing Red Hat OpenShift

31

Page 32: S111017- Implementing DevOps and Hybrid Cloud · 2 Outline •DevOps and Containers •Architectural Considerations •Lenovo Cloud Technology Center •Implementing Red Hat OpenShift

32