@DevOpsSummit Authors: Liz McMillan, Yeshim Deniz, Zakia Bouachraoui, Pat Romanski, Elizabeth White

Blog Feed Post

Tales from Glue Con: The Network Can't Run Code

#gluecon #SDN #devops

Glue kicked off this morning with some great keynotes and a full set of breakouts. I was clipping along happily, enjoying Rachel Chalmers keynote on "Social Glue" and contemplating the fascinating relationship between the use of well-designed interfaces (API) between systems and services as a means to scale the human side of the equation when Solomon Hykes, creater of Docker, took the stage to discuss containers and the Internet as a platform.

Most of what Solomon discussed resonated; the Internet is increasingly seen as "the platform" on which developers want their apps to run; applications should be made of discrete, logical loosely-coupled composable components; the Internet has never been "shut down" for maintenance since it was turned on in the late 1960s.

But then Solomon said something I didn't agree with, that didn't resonate and that, given the shift toward software-defined networking, didn't make sense to me.

"Networks can't run code."

Ah,I said to myself, but they can. Especially if you don't relegate "the network" to layers 2 and 3 of the OSI stack.

But of course, he did.

Now, I'm not trying to pick on Solomon because his perspective is not atypical of developers. In fact, I'd say it's prototypical. Archetypical even. It's a common perception that "the network" is layers 2 and 3, routing and switching, the pipes that make up the Internet.

But that's increasingly problematic. The "network" that is the platform on which developers want to run their applications comprises a full complement of services from layer 2 through layer 7. That includes HTTP, SPDY, TLS and SSL, as well as the "everybody's favorite transport protocol", TCP.

Many of these services, these "network middleboxes", as they are so often referred to, do indeed run code. And run code quite well. And increasingly operations are concerned with exactly how to run code on those devices because the variety and diversity of applications, clients, and environments is simply too complex to natively support at those layers of the network with pre-defined tables that describe how to deal with a given connection or request.

This is very much the premise of programmable proxies, of intelligent application services, and to some extent, even emerging network architectures like SDN. Programmability in the network is a foundational component to emerging network architectures.

"The Network" most certainly can - and does - run code. And the more we software-define it, and introduce new technologies designed to support rapid provisioning of services in support of accelerating application deployment, the more the network is going to "run code" because it has to if we're going to achieve the levels of flexibility and customization needed to scale the next generation of application architectures.

Read the original blog entry...

More Stories By Lori MacVittie

Lori MacVittie is responsible for education and evangelism of application services available across F5’s entire product suite. Her role includes authorship of technical materials and participation in a number of community-based forums and industry standards organizations, among other efforts. MacVittie has extensive programming experience as an application architect, as well as network and systems development and administration expertise. Prior to joining F5, MacVittie was an award-winning Senior Technology Editor at Network Computing Magazine, where she conducted product research and evaluation focused on integration with application and network architectures, and authored articles on a variety of topics aimed at IT professionals. Her most recent area of focus included SOA-related products and architectures. She holds a B.S. in Information and Computing Science from the University of Wisconsin at Green Bay, and an M.S. in Computer Science from Nova Southeastern University.

@DevOpsSummit Stories
With more than 30 Kubernetes solutions in the marketplace, it's tempting to think Kubernetes and the vendor ecosystem has solved the problem of operationalizing containers at scale or of automatically managing the elasticity of the underlying infrastructure that these solutions need to be truly scalable. Far from it. There are at least six major pain points that companies experience when they try to deploy and run Kubernetes in their complex environments. In this presentation, the speaker will detail these pain points and explain how cloud can address them.
While DevOps most critically and famously fosters collaboration, communication, and integration through cultural change, culture is more of an output than an input. In order to actively drive cultural evolution, organizations must make substantial organizational and process changes, and adopt new technologies, to encourage a DevOps culture. Moderated by Andi Mann, panelists discussed how to balance these three pillars of DevOps, where to focus attention (and resources), where organizations might slip up with the wrong focus, how to manage change and risk in all three areas, what is possible and what is not, where to start, and especially how new structures, processes, and technologies can help drive a new DevOps culture.
When building large, cloud-based applications that operate at a high scale, it's important to maintain a high availability and resilience to failures. In order to do that, you must be tolerant of failures, even in light of failures in other areas of your application. "Fly two mistakes high" is an old adage in the radio control airplane hobby. It means, fly high enough so that if you make a mistake, you can continue flying with room to still make mistakes. In his session at 18th Cloud Expo, Lee Atchison, Principal Cloud Architect and Advocate at New Relic, discussed how this same philosophy can be applied to highly scaled applications, and can dramatically increase your resilience to failure.
As Cybric's Chief Technology Officer, Mike D. Kail is responsible for the strategic vision and technical direction of the platform. Prior to founding Cybric, Mike was Yahoo's CIO and SVP of Infrastructure, where he led the IT and Data Center functions for the company. He has more than 24 years of IT Operations experience with a focus on highly-scalable architectures.
CI/CD is conceptually straightforward, yet often technically intricate to implement since it requires time and opportunities to develop intimate understanding on not only DevOps processes and operations, but likely product integrations with multiple platforms. This session intends to bridge the gap by offering an intense learning experience while witnessing the processes and operations to build from zero to a simple, yet functional CI/CD pipeline integrated with Jenkins, Github, Docker and Azure.