Evolve or Die: Enterprise Ready OpenStack upgrades with Kubernetes

Post on 16-Apr-2017

267 Views

Category:

Technology

0 Downloads

Preview:

Click to see full reader

Transcript

Copyright © 2016 Mirantis, Inc. All rights reserved

www.mirantis.com

Evolve or Die: Enterprise Ready OpenStack Upgrades with Kubernetes

Jakub Pavlik

Copyright © 2016 Mirantis, Inc. All rights reserved

Presentation Agenda

1. OpenStack Evolution2. New Fuel Architecture3. DEMO Scenarios4. Q&A

Live Demos!

Copyright © 2016 Mirantis, Inc. All rights reserved

OpenStack Evolution

Copyright © 2016 Mirantis, Inc. All rights reserved

OpenStack Evolution steps

Day 1Deploy

Day 2Operate

Day 3Upgrade

Deploying OpenStack is the easy part

Operation, Scaling and Upgrade is the difficult part

Copyright © 2016 Mirantis, Inc. All rights reserved

OpenStack Complexity

Copyright © 2016 Mirantis, Inc. All rights reserved

Requirements for DevOps

● Treat OpenStack as a set of Applications● Composable, Modular, Immutable● Split applications from infrastructure● Monolithic VMs (Fragile and Vertical)● Containers and Microservices

OpenStack is just another application workload

Copyright © 2016 Mirantis, Inc. All rights reserved

Clearing Naming Confusion

● MCP = Mirantis Cloud Platform: next release of Mirantis distribution, designed to make operations simple. Not just OpenStack, but also includes Kubernetes, Calico and other components...hence MCP

● Fuel: Lifecycle management tool for MCP. We’ll be talking about new Fuel here today.

● Fuel in MCP != Fuel in MOS 9.0: significant architecture refactoring to support Day 2 and Day 3 operations.

MOS? TCP Cloud?

MCP? FUEL?

Etc.

Copyright © 2016 Mirantis, Inc. All rights reserved

Mirantis Cloud Platform Operations-Centric Fabric for BM, VM and Containers

Host Host Host Host Host Host Host Host

Kubernetes

Host Host Host

K8s master K8s minionsBMaaS pool

Ironic

OpenStack Control Plane

OpenStack Computes

K8s workloads

Mon

itorin

g an

d Lo

ggin

g

Bare Metal VMs Containers

Life

cycl

e M

anag

emen

t

Today we’ll go over and demo the new architecture of Fuel lifecycle management tool that we are building for Mirantis Cloud Platform.

Copyright © 2016 Mirantis, Inc. All rights reserved

Fuel Architecture in MCP

Copyright © 2016 Mirantis, Inc. All rights reserved

Fuel (Designed as a DevOps Center)

● Artifactory Provides artifact repository for CICD Pipeline

● Web Portal Simple UI for Artifactory, Jenkins, Gerrit

● Gerrit Git repositories with code review

● Jenkins CI/CD Engine● SaltStack To provide

orchestration capability for CICD Pipeline

Copyright © 2016 Mirantis, Inc. All rights reserved

Deploy and Manage various clusters

● Builds MCP Components● Deploys MCP Components● Local or Remote MCP

Clusters● Manages MCP clusters with

different setups and components

Copyright © 2016 Mirantis, Inc. All rights reserved

OpenStack Small Site Deployment

Copyright © 2016 Mirantis, Inc. All rights reserved

Kube Node as OpenStack Controller

● OpenStack components in k8s PODs

● OpenContrail roles in PODs

● Calico as Plugin for k8s

Copyright © 2016 Mirantis, Inc. All rights reserved

Kube Node as OpenStack Compute

● Libvirt & nova-compute in k8s POD

● OpenContrail in host OS

● Calico as network plugin for k8s

Copyright © 2016 Mirantis, Inc. All rights reserved

Reclass metadata model - “Single source of truth”

● Where clusters/sites are defined● Reclass YAML as primary

method of defining sites● Metadata model allows:

● Hierarchical definition of sites

● Changes at any level of granularity

■ Global■ Site-Type■ Site■ Node

● Single location for all operations

● All changes as code commits● Audit trail

Copyright © 2016 Mirantis, Inc. All rights reserved

Lifecycle Workflow - upgrade OpenStack Nova

Copyright © 2016 Mirantis, Inc. All rights reserved

DEMO Scenarios

Copyright © 2016 Mirantis, Inc. All rights reserved

#1 Deploy OpenStack on Kubernetes

● Deploy OpenStack on preinstalled Kubernetes cluster● 4 HW nodes

● 3 Nodes - Kubernetes Master/Nodes with OpenStack/OpenContrail control services

● 1 Compute● Launch Jenkins Deploy OpenStack pipeline

“ As an infrastructure administrator, I need to provision small site OpenStack deployment.”

Copyright © 2016 Mirantis, Inc. All rights reserved

#2 Scale up OpenStack Component

1. Change Metadata model2. Push gerrit review3. Launch Jenkins Deploy OpenStack pipeline

“ As an infrastructure operator, I need to scale up my small deployment to at least 3 replicas.”

Copyright © 2016 Mirantis, Inc. All rights reserved

#3 Configuration Change in OpenStack Nova

1. Change Metadata model2. Push gerrit review3. Launch Jenkins Deploy OpenStack pipeline

● Manually run Salt update and k8s rolling update to show what is behind

“ As an infrastructure operator, I need to add or modify the scheduler filters in nova.conf on my site.”

Copyright © 2016 Mirantis, Inc. All rights reserved

#4 Upgrade OpenStack Cinder from Mitaka to Newton

“ As an infrastructure administrator, I need to upgrade Cinder component because of new storage features.”

1. Change Metadata model2. Push gerrit review3. Launch Jenkins Deploy OpenStack pipeline

● Manually run Salt update and k8s rolling update to show what is behind

Copyright © 2016 Mirantis, Inc. All rights reserved

Q&A

Thank you for your time

top related