Train Like You Fight, Test Like You Deploy
Preparing to deliver a scalable, elastic microservice upside the opponent's head
In a variety of interesting disciplines, the sage wisdom of training like you fight and fighting like you train has been attributed to a number of sources including General George S. Patton. Looking back on history it is clear that organizations like the Roman legions valued this approach, with tremendous emphasis placed repetition and drill with a focus on eventual flawless execution at scale in the field. Even in the somewhat more chaotic world of fighting sport, we see the brutal effectiveness of approaches such as muy thai (Thai kickboxing) with training that is largely fighting versus other schools focused more on movements like aikido, tai chi, tae kwon do and the like. Don’t get me wrong, there is nothing wrong with using martial arts to limber up and get some cardio but when it is time to brawl, nothing seems to prepare like practice brawling.
Which brings us to networking and the cloud Once upon a time, ever so long ago, the network could be characterized as a crunchy outer shell with a soft, chewy middle – classic firewall with trusted network architecture. With the rise of BYOD, cloud, distributed networking, the network has become increasingly borderless. Anyone remember Cisco’s borderless networks? That was an awesome vision that still rings true today.
But now where once you had boxes in a basement defended by that crunchy outer shell of a firewall, you now have an increasingly amorphous network deployed over multiple sites, on multiple clouds, largely build on workloads running on someone else’s hardware.
This new architecture has of course helped shape the products powering the networks of enterprises and other organizations today, but getting the most out of this sea change has required more than just porting code that used to run on boxes in the basement and hosting it in the cloud, it requires an entirely new approach – cloud native application development.
Cloud native is one of those terms that marketing wonks love to abuse, but generally most seem to agree that certain basic tenets apply to things that are cloud native including the use of containers (vs virtual machines) which allow for rapid scaling to meet demand (or lack thereof). Cloud native applications also tend to be built as modular microservices, in contrast to the monolithic approaches of old. Microservices may be built on different stacks and written in different languages to best meet the need at hand and scale independently – allowing you to get the very best possible bang for your cloud buck.
The fundamental architecture if not the only thing that is different, the environment in which applications are now deployed into is also different – a lot more dynamic (some would say chaotic) and in many ways more interesting but challenging. Instead of the relatively benign, warm tropical tidepool of the "chewy middle" data center in the basement, with multiple clouds connected over the internet connections are much more likely to be best effort than have iron clad SLAs. Routes shift, connections drop and flap and stutter and while the whales and big fish can thrive in the stormy seas of the Cape of Good Hope, survival and basic function require a different approach than those tranquil pools back in the tropics.
This all brings with it a need to revisit network test and how to ensure you are doing the best possible job of finding issues and problems with your products before your customers do. Hint – in many cases you are going to need something beyond the bitblasters you are probably familiar with. You are going to need something a little more cloud native.
That is where CyPerf comes in. Designed from the ground up to do cloud native testing on cloud native applications and solutions, CyPerf is what you need to help optimize SD-WAN, validate SASE test WAF and make sure that CDNs are doing what they should.
The best news is that while these use cases and the technology behind the test and validation software we have put together are complex, using CyPerf is not. To see what I mean, I invite you to check out our free Keysight University course, Introduction to CyPerf, which will show you the basics and illustrate how fast and easy it can be to get up and running with cloud native testing.
Thanks for reading.