deploying a baremetal cloud is hard
play

Deploying a baremetal cloud is hard Julia Kreger Open Source - PowerPoint PPT Presentation

Deploying a baremetal cloud is hard Julia Kreger Open Source Developer Advocate IBM Twitter: @ashinclouds OpenStack Summit Sydney Email: juliaashleykreger@gmail.com November 6th, 2017 A little about me! Ironic contributor since early 2015.


  1. Deploying a baremetal cloud is hard Julia Kreger Open Source Developer Advocate IBM Twitter: @ashinclouds OpenStack Summit Sydney Email: juliaashleykreger@gmail.com November 6th, 2017

  2. A little about me! Ironic contributor since early 2015. Ironic core and recently elected to the OpenStack Technical Committee Author of Bifrost, a set of Ansible playbooks for leveraging ironic to deploy baremetal servers. Knows the pain of deploying fleets of servers from many years of experience! Prefers purple bike sheds! @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  3. So why baremetal? Physical Infrastructure… As in what the cloud is built on. High Performance Computing High Memory Regulatory or Compliance Production-like environments @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  4. What most imagine deployments are like @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  5. A deployment is more like... RDU -> PHL -> RDU -> ATL -> SFO -> SLC -> RDU -> SLC -> SJC -> SFO -> RDU -> ATL -> SLC -> SEA -> NRT -> LAX -> ATL -> RDU -> AUS -> RDU -> BOS -> RDU -> MSP -> RAP -> MSP -> ATL -> RDU -> PHL -> ABQ -> DEN -> SLC -> PDX -> SEA -> SJC -> SEA -> PDX -> SMF -> PSP -> LAS -> ABQ -> SLC -> LAX -> SYD … @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  6. A few typical realistic steps Unbox Finish base setup, i.e. add cards. Record additional information, such as MACs and WWNs Configure the Baseboard Management Controller Connect all of the cables! Verify all of the cabling! Then begins the burn-in process! @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  7. Easy? Right? @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  8. One would think... @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  9. Operational constraints are a thing! What might seem like a simple step could actually take many steps. Depending on the organization specific processes may vary endlessly. Imagine a ticket per network port! At the end of the day though, self-imposed red tape can slow a deployment to a crawl… Imagine double-verification of all data! Or mandatory paper checklists per server chassis! @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  10. Common Headaches @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  11. Architectural Mandates Photo credit: torkildr via Foter.com / CC BY-SA @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  12. Labeling? Lack their of? Photo credit: one individual via Foter.com / CC BY-SA @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  13. Deployment via Human Photo credit: Jemimus via Foter.com / CC BY @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  14. Inconsistent Hardware Photo credit: Julia Kreger - @ashinclouds @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  15. VLANs, Inside VLANs? Photo credit: jronaldlee via Foter.com / CC BY @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  16. Policy, More Humans? Photo credit: Foter.com @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  17. Here be Dragons! @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  18. A bare metal cloud is not Traditional IT! @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  19. It is a union of self-service and raw infrastructure! @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  20. It can support traditional workloads, but processes and workflows must adapt! @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  21. There must be willingness for change! "Do not meddle in the affairs of dragons for you are crunchy and taste good with ketchup" -- source unknown @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  22. How to get it right? @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  23. Step 0: Identify needs, not wants! @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  24. Treat it as an island not as an addition. @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  25. Plan ahead to walk through everything! At least once! @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  26. Plan on inconsistencies in hardware! @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  27. Run current software! @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  28. Run what the community develops! Consider NOT running vendor packages! @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  29. Engage the community! We don’t read minds! @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  30. Helpful hints with Ironic @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  31. Ironic is intended to be Admin-only @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  32. Nova initiated and manually deployed baremetal can co-exist! @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  33. Networking will be the headache! @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  34. Ironic Networking Expectations At least one network interface must be registered as a “port” ● A cleaning network ● A deployment network ● Cleaning and deployment networks able to reach the Ironic API ● A network for the node to live on after deployment ● @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  35. Ironic Networking Three use models “flat” - Preconfigured static networking ● “neutron” - Dynamic networking through Neutron ml2 driver controlled switches ● “noop” - Short for “no operation” used by neutron-less and stand-alone users. ● @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  36. Ironic Networking Hardware iPXE support is not always “real” Tools like WireShark can be extremely useful for troubleshooting. ● iPXE continues to evolve and add new features. ● Some newer hardware will only boot via PXE when in UEFI mode. @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  37. Hardware drivers often the next headache! @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  38. Hardware Drivers Some hardware needs special drivers! To properly support, the drivers MUST be in the “deployment ramdisk” and the “instance image”. @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  39. Ironic Drivers/Hardware Types @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  40. Ironic Drivers and Hardware Types “Classic Drivers” pxe_ipmitool for “iscsi” based write from the conductor ● Agent_ipmitool for “direct” write to disk via the agent ● Hardware Type based drivers Driver set to “ipmi” ● deploy_interface can now be “iscsi” or “direct” ● @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  41. Ironic’s State Machine @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  42. Node States @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  43. What is cleaning? In production, never turn cleaning off and never turn off a node that is cleaning! Ironic Python Agent (IPA) will utilize shred or ATA Secure Erase to wipe the contents from disks. Custom IPA Hardware Managers can also do things like flash firmware or assert settings. @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  44. How do I troubleshoot? @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  45. Troubleshooting Hints Look at the node “last_error” field `openstack baremetal node show <uuid>` If in a “wait” state? Is there connectivity? Heartbeating? ● Is there a clean_step populated or running? ● Deploy failing? Consider the [agent]/deploy_logs_collect setting in ironic.conf And feel free to ask us for help in #openstack-ironic on irc.freenode.net @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  46. Questions? @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

  47. Thanks! https://docs.openstack.org/ironic @ashinclouds - Deploying a baremetal cloud is hard - November 6th, 2017

Recommend


More recommend