From How-To to POC to Production: Learning by Building Presented - - PowerPoint PPT Presentation

from how to to poc to production learning by building
SMART_READER_LITE
LIVE PREVIEW

From How-To to POC to Production: Learning by Building Presented - - PowerPoint PPT Presentation

From How-To to POC to Production: Learning by Building Presented By: Grant Kirkwood, CTO Unitas Global March 4, 2017 SCALE 15x Pasadena, Calif 1 OPENSTACK WHAT IS OPENSTACK? Science experiment A mess of competing


slide-1
SLIDE 1

1

From How-To to POC to Production: Learning by Building

Presented By: Grant Kirkwood, CTO – Unitas Global March 4, 2017 – SCALE 15x – Pasadena, Calif

slide-2
SLIDE 2

2

OPENSTACK

WHAT IS OPENSTACK?

  • “Science experiment”
  • “A mess of competing projects and priorities”
  • “De facto choice for new private clouds”
slide-3
SLIDE 3

3

ONE DOES NOT SIMPLY LEARN OPENSTACK

slide-4
SLIDE 4

4

FROM HOW-TO: TO POC: TO PRODUCTION! LEARNING BY BUILDING…

slide-5
SLIDE 5

5

STEP 1:

slide-6
SLIDE 6

6

DEVSTACK

WHAT IS IT?

  • Scripted install
  • All-in-one
  • Up and running in minutes
slide-7
SLIDE 7

7

WHAT YOU NEED

  • Laptop!
  • VirtualBox
  • Ubuntu
  • DevStack

+ +

DEVSTACK

slide-8
SLIDE 8

8

DOWNLOAD

  • VirtualBox:

https://www.virtualbox.org/wiki/Downloads

  • Ubuntu:

http://releases.ubuntu.com/16.04/ubuntu-16.04.10-server-amd64.iso

DEVSTACK

slide-9
SLIDE 9

9

INSTRUCTIONS

  • Install VirtualBox
  • Create an Ubuntu VM
  • Install DevStack
  • Help found here:

http://ronaldbradford.com/blog/downloading-and-installing-devstack-2016-04-02/

DEVSTACK

slide-10
SLIDE 10

10 10

  • Step by step instructions here
  • Tested…. it works!
  • Thanks Ronald Bradford

http://ronaldbradford.com/blog/downloading-and-installing-devstack-2016-04-02/

DEVSTACK

slide-11
SLIDE 11

11 11

WHAT WE LEARNED

  • CLI basics
  • How Horizon (etc) should work (and look)

DEVSTACK

slide-12
SLIDE 12

12 12

STEP 2:

slide-13
SLIDE 13

13 13

WHAT IS IT?

  • Step-by-step walkthrough
  • “Vanilla” / trunk-based
  • Not scripted – each component built by hand

HOW-TO

slide-14
SLIDE 14

14 14

WHAT YOU NEED

  • Some hardware ideal
  • Intel NUCs are good
  • VLAN-capable switch
  • Patience!

HOW-TO

slide-15
SLIDE 15

15 15

DOWNLOAD

  • Ubuntu:

http://releases.ubuntu.com/16.04/ubuntu-16.04.10-server-amd64.iso

  • Documentation:

http://docs.openstack.org/mitaka/install-guide-ubuntu/

  • A good text editor:

https://atom.io

  • A note on versions…

HOW-TO

slide-16
SLIDE 16

16 16

DOWNLOAD

  • Documentation:

HOW-TO

slide-17
SLIDE 17

17 17

DOCUMENTING

  • Why the good text editor?
  • Documenting your work critical
  • You WILL do things wrong
  • You WILL want to do things differently next time

around… yes next time

HOW-TO

slide-18
SLIDE 18

18 18

DOCUMENTING

  • Leave yourself

some notes!

  • Will save you grief

later…

  • And helps with

learning

  • …AND will need for HA

HOW-TO

slide-19
SLIDE 19

19 19

INSTRUCTIONS

  • Internet (2 networks)
  • Switch
  • 3+ Servers
  • Architecture decisions in official how-to doc
  • Use provider networks with self-service option

HOW-TO

slide-20
SLIDE 20

20 20

INSTRUCTIONS

  • Initial network setup
  • Translate to home network…

http://docs.openstack.org/mitaka/install-guide-ubuntu/environment-networking.html

HOW-TO

slide-21
SLIDE 21

21 21

TOPOLOGY

  • 192.168.10.0/24
  • Cut it in half…
  • 10.0.10.0/24

Internet Router Switch Compute 1 Controller Compute 2, etc.

HOW-TO

slide-22
SLIDE 22

22 22

CORE COMPONENTS

  • Contents from How-To Tutorial:
  • Essential: Environment, Identity,

Image, Compute, Networking, Dashboard, Block Storage

HOW-TO

slide-23
SLIDE 23

23 23

OPENSTACK TIME MACHINE

slide-24
SLIDE 24

24 24

LIFTOFF

  • Time to launch your first VM…
  • Good chance it won’t work
  • Where to look for clues
  • Remember Devstack…

HOW-TO

slide-25
SLIDE 25

25 25

LOOKS LIKE THIS: FEELS LIKE THIS:

WHEN YOU (SUCCESSFULLY) LAUNCH YOUR FIRST VM…

slide-26
SLIDE 26

26 26

WHAT WE LEARNED

  • OpenStack under the hood
  • How all the components work together
  • Where to look for clues when something goes wrong
  • CLI in-depth

HOW-TO

slide-27
SLIDE 27

27 27

SHORTCOMINGS

  • Not designed to scale
  • Not optimized for performance
  • Not built highly available
  • Wouldn’t use this in production

HOW-TO

slide-28
SLIDE 28

28 28

NEXT STEPS

  • Tear it down and start over! J
  • Do it from your notes this time

(how-to phone-a-friend)

  • Fix the things you want to improve
  • Make sure documentation complete – will need

for POC

HOW-TO

slide-29
SLIDE 29

29 29

NOT QUITE READY FOR POC…

  • A proof of concept has to be built with business

use in mind

  • That means we have a bunch of new stuff to learn

HOW-TO

slide-30
SLIDE 30

30 30

SCALABILITY & RELIABILITY

  • Now the fun begins…
  • First, time to upgrade storage: Ceph!
  • Start by changing Glance to a Ceph backend
  • Keep it simple – only change one thing at a time!
  • Then change Cinder to use Ceph for volumes

HOW-TO

slide-31
SLIDE 31

31 31

SCALABILITY & RELIABILITY

  • Building for high availability: wrapping services in

more services… service burritos?

  • What components do we use? Where do they fit?
  • Can’t really build on top of the existing config
  • This is just one way to do it…

HOW-TO

slide-32
SLIDE 32

32 32

HIGH AVAILABILITY

slide-33
SLIDE 33

33 33

MariaDB RabbitMQ

HIGH AVAILABILITY

slide-34
SLIDE 34

34 34

MariaDB RabbitMQ

Private VLAN for RabbitMQ Private VLAN for MariaDB

MariaDB RabbitMQ MariaDB RabbitMQ

Galera Galera

HIGH AVAILABILITY

slide-35
SLIDE 35

35 35

MariaDB RabbitMQ MariaDB RabbitMQ MariaDB RabbitMQ

Private VLAN for RabbitMQ Private VLAN for MariaDB Galera Galera

HAProxy Keepalived I P I P I P V I P Linux Bridge network Linux Bridge network Linux Bridge network Private VLAN for OpenStack Management

HIGH AVAILABILITY

slide-36
SLIDE 36

36 36

SCALABILITY & RELIABILITY

  • Ok, so that’s the controllers!
  • Now that we know how it fits together…
  • Back to your build notes!

HOW-TO

slide-37
SLIDE 37

37 37

SCALABILITY & RELIABILITY

  • Notable changes – service endpoints
  • Update hosts file with pointer to HA endpoint
  • …which means build the service endpoints to IPs that

don’t initially exist!

  • Update haproxy as you go along

HOW-TO

slide-38
SLIDE 38

38 38

SCALABILITY & RELIABILITY

  • Example:

HOW-TO

slide-39
SLIDE 39

39 39

TESTING

  • Break it!
  • Looping VM launching
  • Power cycle controllers mid-cycle
  • Haproxy stats helpful
  • Tempest, Rally, etc.

HOW-TO

slide-40
SLIDE 40

40 40

HOW-TO

slide-41
SLIDE 41

41 41

STEP 3:

slide-42
SLIDE 42

42 42

NOW THE FUN BEGINS

  • You know how it all works now…

but…

  • Throw everything you just learned
  • ut the window!

PROOF OF CONCEPT

slide-43
SLIDE 43

43 43

QUESTION:

  • Are you in the business of building and operating

technology infrastructure?

PROOF OF CONCEPT

slide-44
SLIDE 44

44 44

DECISIONS

  • Are we building for a business requirement?
  • Must assume POC will be used

(after all, if not, it wasn’t a successful POC!)

  • Therefore, build as if for production
  • Don’t want to be doing this by hand…

PROOF OF CONCEPT

slide-45
SLIDE 45

45 45

DECISIONS

  • Deployment method
  • Distribution?

(refer to question 1)

  • Automation

ie; OpenStack-Ansible

  • Hardware

PROOF OF CONCEPT

slide-46
SLIDE 46

46 46

BUSINESS REQUIREMENTS

  • Define business requirements & success criteria
  • Keep it simple to start!
  • Each service adds complexity, whether or not used
  • Conduct surveys: regimented/consistent process

for adding new services

PROOF OF CONCEPT

slide-47
SLIDE 47

47 47

GETTING STARTED

  • Build small environment using distribution of choice

now that you understand how it works inside (or non-distribution with OpenStack-Ansible)

  • Test business applications in environment

PROOF OF CONCEPT

slide-48
SLIDE 48

48 48

UPDATES & UPGRADES

  • Brain surgery…

PROOF OF CONCEPT

slide-49
SLIDE 49

49 49

STEP 4:

slide-50
SLIDE 50

50 50

DEFINITION

  • Supporting business-critical workload
  • Downtime not an option
  • Tied to revenue (and thus our jobs!)

PRODUCTION

slide-51
SLIDE 51

51 51

OPERATIONAL REQUIREMENTS

  • Monitoring
  • Tracking
  • Measuring performance
  • Updates & upgrades

PRODUCTION

slide-52
SLIDE 52

52 52

AUTOMATION

  • Much of what you did is automated with major

distributions

  • Still critical to understand how it all works
  • Serves as foundation for production grade
  • perational excellence

PRODUCTION

slide-53
SLIDE 53

53 53

Testing the waters with DevStack

  • VirtualBox and a laptop
  • Up and running in minutes
  • Get comfortable with how it should work

Build with How-To

  • Build it by hand with openstack.org

tutorial

  • Learn how the pieces work together
  • Document and take notes like crazy!

High availability and scalability

  • Upgrade storage to Ceph
  • Make all services HA
  • Try to break it

Proof of Concept

  • Define business objectives
  • Desire to build/operate or consume?
  • Switch to distribution
  • Keep it simple, add services

slowly/thoughtfully

  • Test, break, break again

Production

  • Monitoring
  • Tracking
  • Updates & upgrades

ROADMAP / SUMMARY

LEARNING BY BUILDING

slide-54
SLIDE 54

54 54

CONTACT

Contact Us

Presenter

Grant Kirkwood - CTO, Unitas Global grant.kirkwood@unitasglobal.com IRC: tnarg Twitter: @prolixity

Visit Us!

Booth #610 (on the left when you walk in – next to Disney)