At DevOps Summit NY there’s been a whole lot of talk about not just DevOps, but containers, IoT, and microservices. Sessions focused not just on the cultural shift needed to grow at scale with a DevOps approach, but also made sure to include the network ”plumbing” needed to ensure success as applications decompose into the microservice architectures enabling rapid growth and support for the Internet of (Every)Things.
Jerome Petazzo (@jpetazzo) of Docker discussed microservices and their natural affinity for containers, but significant in his discussion was the need for “the network” for independent scale, discovery, resiliency, and managing the increasingly network-dependent architecture resulting from microservices. Indeed, DNS plays a natural and important role in discovery, ensuring a level of abstraction at the service layer necessary to ensure that services are not reliant on network addressing schemes, but rather leverage the ability of DNS to update in rapid fashion the actual location of a service (or service endpoint, in the case of scalability) to ensure seamless connectivity.
This acknowledgement of the need to include and rely on, in many cases, “the network” for capabilities that lie outside the domain of applications and their infrastructure, was good to see. The application side of IT recognizes the need to include “the network” in its architectures. It’s imperative, then, that the network side of IT recognize the need to support them by embracing a more programmatic and collaborative approach to delivering their services. Microservices, in particular, is driving that need home and it’s the topic of my session “How Microservices Architectures are Driving DevOps into the Network” (link goes to the presentation).
John Willis (@botchagalupe) dove into immutable infrastructure and gave us a view of how application infrastructure – servers and platforms – can be and should be made immutable. The concept is equally applicable to those application affine services like load balancing, application security, and acceleration. His contention – one with which I agree, if you were wondering - is that reliance on scripting-based long term management can be fraught with peril. Command order, lack of adequate rollback options, general failure, and failure to address failure within scripts all have the potential to be highly disruptive, particularly in the disruption sensitive production network. Using the immutable infrastructure model – based on the premise that no packages, configuration, apps or data can be modified once deployed – organizations can achieve a more stable and agile (as well as manageable) environment. He offered a simple recipe for implementing immutable infrastructure:
1. Provision new
2. Test new
3. Direct traffic to new
4. Keep the old around for rollback
Last but not least, I sat in on Mark Thiele (@mthiele10) and his session in which he asserted that DevOps is a symptom of a healthy organization, rather than a means to achieve a healthy organization. The VP of Switch SUPERNAP advises organizations to “assume the way you are doing things today won’t scale” and continuously look to people and process to enable the scale necessary to meet the next big demand. Scale, like applications today, is not static and thus a more agile, collaborative approach to IT in general is necessary. Mark’s focus was more on efficiency and value to the business, noting that “IT wasn’t created to reduce the cost of IT” but rather to add value to the business. To that end, he encourages organizations to think in terms of services rather than technology, and to adopt a collaborative approach to designing and delivering those services.
Collaboration has been a common theme, with as much attention on the intra-silo silos as on the IT silos themselves. Reaching out across silos – whether intra or inter IT group – is important not just to establishing and enforcing policies regarding delivery times, performance, scale, and security of applications but in being able to define and put into place the processes necessary to optimize the end-to-end delivery of applications from dev to production, from app to user.
Overall, the connection between microservices and containers was emphasized, along with the need to manage the resulting explosion of services and supporting infrastructure with a DevOps approach. IoT will be a significant driver both of the technology (containers, microservices, and software-defined approaches to the network) and the overarching approach, DevOps, as organizations begin to embark on what is certainly going to be akin to the exponential growth experienced in the .com era.
That’s all from NY. Happy Thursday!