The Death of Hardware Knowledge
SCALE 20x
Who are we?
Julia Kreger
Sr. Principal Software Engineer @ Red Hat
Chair @ OpenInfra Foundation
Ex-Ironic Project Leader
Jay Faulkner
Ironic Project Team Lead
OpenStack Technical Committee Member
Why are we here?
What we are not here for?
“We are bare metal cloud developers, who automate things on bare metal”
We do this as part of the Ironic Project which provides Bare Metal as a Service.��Learn more: https://ironicbaremetal.org
But this is not an Ironic talk.
Or is it an Ironic talk?
We’re starting to see a trend…
Where the lower layers we have built newer technology upon, are less understood.
Creating a technology “fog-of-war”
…but it’s not all our fault.
Hardware is an afterthought to many modern developers.
But what are we leaving behind?
What are we giving up?
To answer that, we must recognize the trade-offs we make at each abstraction.
These trade-offs impact your business…
Vendors are working to monetize a lack of knowledge through services offerings
…and your technology, too!
xkcd.org/2347
Let’s walk through some abstractions from the bottom up!
Your own Hardware vs. Managed Hosting Provider
Option A:
Your data center and it’s universe is local.
Option B:
Your data is hosted remotely, data is between two or more locations.
Trade offs:
Less specific control over the hardware. What is in the chassis?
The amount of data and your access pattern becomes a HUGE consideration.
Latency and Security management drives many operators to remain in direct control of workloads.
Physical Servers to Virtual Machines
Option A:
Local hardware or hosted hardware
Option B:
Virtual Machines (cloud or self-hosted)
Trade-Off:
Precise understanding of capacity/performance availability and locality plus the variability of noisy neighbors.
Utility-based billing plus auto-scaling compute can lead to surprise cloud bills. Overcoming data gravity can actually cost you money!
Virtual Machines to Managed containers
Option A:
Virtual Machines in a cloud provider.
Option B:
Managed container services (like kubernetes)
Trade-Off:
Lock-in to a single approach. Abstraction layer is the container, which can lead to surprise complexity.�Many traditional services, such as relational databases, can be difficult to manage inside a container.
VMs/Containers to Serverless
Option A:
An architecture built on building blocks of containers or VMs
Option B:
An architecture built on a curated platform (e.g. Heroku, AWS Beanstalk)
Trade-offs:
Control of your technology stack. Lock-in to a specific vendor. �Lack of knowledge or personnel to recover should your vendor shut down.
Mix and match your own trade-offs!
Example 1
Example 2
Technology is evolving.
Understanding the way you got there helps give you future direction.
Key Factors to Consider - Business
Financial Limitations
Key Factors to Consider - Risk
Risk tolerance or Intolerance?
Key Factors to Consider - Technical
Conclusion
Most importantly!
Learn to negotiate your technical and business requirements.
Learning about the lower layers can be fun!
And if you have knowledge of the lower layers, mentor & teach!
Thanks for listening! Questions?
Jay can be found at:
Want a job? Talk to me!�G-Research is hiring!
Julia can be found at:
For context:
The speed of light is:
299,792,458 m/s.
… In a medium (fiber):
~200,000,000 m/s.
One way:� ~622000 Meters
~ 3.11 milliseconds
Except: Protocols have error detection, you are not getting the entire internet archive back in ~7 milliseconds.