Adam Frank, Armory.io | KubeCon + CloudNativeCon North America 2023
Adam Frank discusses the evolution of continuous deployment and how it improves the developer experience, and in turn, the customers’ experience.
Transcript
This is Techron tv. Hi everybody. Welcome back to Kku Con here in Chicago, 2023.
Lots of great conversations. And here comes another one with Adam Frank Armory. Welcome, Adam.
Thanks For having me. Pleasure here. Always.
We love having you on. Yeah. So, um, so what's happening in your, in continuous delivery in this, I mean, it's evolved so much just in the last even year or so, about how many it has environments we're deploying to and the mix of all that it has.
You know, we, most of us don't live in a greenfield, so we gotta deal with lots of variety of things. That's Right, that's right. And I think one of the biggest things that people are really starting to come across now is the fact that they are looking at, uh, multid deployments, uh, multi cluster, multi environments, really trying to orchestrate all of that and, and coming around to manage delivery.
Understanding that, you know, everybody from a seed stage to large, large enterprises, they all have at least three dev stage prod, right? So how are you going to orchestrate across that when that just grows to more and more environments, talking about it, global companies and, and things of that nature. So I think that's one of the big conversations that's been happening around here is, is about the, the orchestration of that deployment.
So it's been exciting, it's been exciting for us. You know, that's one of the things that we went into from the very beginning was understanding that the deployments have to be orchestrated. There's a lot of things that have to happen, security scanning, integration tests, uh, you name it, throughout that deployment.
So it's, it's been quite nice When you mentioned kind of managed, managed deployment, right? It's not just press the button, everything happens. There's a lot of vari, you know, things have to be sequenced.
Some environments require different things than other environments. Some you can do is declarative. You can really kind of build it from the ground up, you know, through automation and others.
Maybe you can't do that. You've gotta work with infrastructure or apps or code that's already there. Yeah.
Whether it's infrastructure apps or code, or whether it's just policies that you have in place that you need manual approval before you go out to production. Or something has to happen in staging. Like, um, data, uh, data needs to be transferred from production into staging to do actual validated tests.
We had a talk on Monday with, with Port Works actually, uh, really fantastic use case that, that we've come up with them. There's a, a use case with their largest customer where they are actually transferring live production data, uh, into staging environments to do real tests. Because I know a lot of people today, the code's the same, the configuration's the same, the infrastructure's all the same.
Is the actual data the same? Well, not really. Okay, well, how do you know that what you're actually about to change is, is going to inflict what you wanna change?
So the fact that, uh, we've worked a lot with Fort Works to do the actual data transfer, to have real live production data in the staging environment to, to run those tests and things against has been, uh, has been pretty cool for, For our customers. That that was always one of my biggest challenges. How do you get data, especially earlier in the development of an app, a product is you don't have a lot of access to a lot of production data unless you're in a SaaS, and maybe you can then, but you have to worry about things of anonymizing.
But you have data, but not necessarily the right data to test what you're gonna deploy. So you've gotta kind of match that all up. Is there anything in that, in that demo that talked about that sort of, that part of the problem?
How do you get the right data in the right environment? Yeah, exactly. You know, one of the big things that, that, you know, the security of data, the, the management of data, um, moving data around and, and that, and, you know, port Works has a great solution for it.
Um, so it's nice to partner with them. Um, given that we can do the orchestration of those deployments and have that as a check that's within that deployment, it's not going out to production before that data is moved into staging and tests are, are run against that and, and validation has happened. So, like I said, you can have the manual approval at that point if you want, if that's a policy within your organization, or you can have that, uh, continue on automatically and go straight out to production, which is, which is great.
You know, that's the full, that's the, that's the, the, the dream right there is to have that end-to-end automation and have that deployment fully, fully automated, which a lot of people work towards, which is great. Well, let's talk about that. Is there kind of a life cycle that people go through from, we're not doing it at all now, everything's manual and, and, uh, not nec maybe it's scripted, but it's not automated in the same way they do through Armory.
Is there sort of a step by step phases people usually go to, to get to a point where they might do some really automated release? There absolutely is. I mean, we talked to, uh, a couple of of people yesterday from, uh, I can't remember what company now, but you know, one of the first questions that we start to ask them is, you know, what do you, what do you do for your organization?
Uh, okay, great. You're a, you know, you're a DevOps engineer, you're a platform engineer, you're an SRE. There's loads them around.
Uh, these two particular gentlemen said that they were, um, just automation ninjas. They didn't really have specific titles or roles and, you know, they just helped the organization automate everywhere they could. So the next question is then, okay, well what are you doing to deploy your software?
Whatcha you doing for deployment? And they said, well, it's, it's manual right now. Okay.
But I mean, that's, you know, where most people are starting, it's, it's gonna be manual. So I think that one of the biggest things that we see is, um, people start with ci, you know, they're gonna automate the build and the test of that, and they're gonna have an artifact that, that they want to be deployed. The next thing they'll start to do is, is exactly what you said.
They'll start writing some scripts and they'll start extending some of that CI until that starts to become a little bit fragile and, and it doesn't necessarily, uh, provide the developer experience that they're looking for and, and enabling bluegreen and your canary and things like that to protect your customer experience. So at that point, then they go out and they look for, uh, a continuous deployment solution that is going to actually meet that. And that's where the evolution comes from.
From that point, they'll start to have some of the manual checks in place. They might not have integration tests all automated. That's okay.
You can have the deployment go out to dev, you can have deployment, go to staging, you can go run some manual integration tests if you need to, and then you can carry that deployment on. That would kind of be the next piece of it. And, and making sure that all those, those pieces are automated, um, that are being orchestrated.
And then the final piece is, are you comfortable with all of this to remove that, that gate, to remove that, that manual approval to go after production. And once people are, then you start to see that end to end automated deployment. And it's, it's really, really fantastic to see.
Really. Cool. So I'll, I'll make a, a premise supposition.
You can tell me if it's true or not. It seems to me that that last step of kind of getting into the, okay, yeah, we're gonna kind of pull the pin and let it go and see and let it, let it automatically deploy. A couple things I would want to have experience with.
One is how often do we say no when we're doing a manual decision about, okay, it's time to release and when do we do, what are the issues? The other is, well, if something does happen, I want to be able to quickly redeploy AIX to whatever it is. And we might have put in production so in minutes, you know, half an hour, hour, whatever, very quickly, I can't deliver code that fast, then maybe I'm not ready to fight.
That's right. Go to the automation That's right. Fully onto production.
Is that, is that a good characterization, Do you think? It is. Yeah.
And I mean, you know, the fact that we're talking about that as well, the rollback of that as well. Are you comfortable rolling that back? You know, do you have the mechanisms in place that, that are gonna allow you to roll that back?
And that's, that's again, you know, where a, a great CD solution is gonna enable that both automatically, or, you know, by a single click, you actually see that the baseline is off and this isn't behaving the way that it's supposed to be or the way that it's expected to be. You can one click and roll that back to the last known working state. Um, or you can have that automatically rolled back based on looking at some of that observability data that might be outside of the expected threshold.
Interesting. Well, how, so we're at K coupon. Let's talk about Kubernetes.
That old holds another layer of complexity and, and, uh, technology and challenges. How does that roll into it? What are the things you need to consider about automated delivery deployment with Kubernetes?
Yeah, I think one of the, one of the big things is, uh, people have their repos structured in, in a way that makes sense for their business. People also have a couple different choices in the way that they're architecting Kubernetes. So they go, you single big clusters, are they going multi clusters, uh, depending on what they're doing there.
And one of the mantras that we have at Armory is, you know, meet the customer where they are. So we're, we don't tell people to structure their repos in a certain way. We don't tell people to architect Kubernetes in a certain way.
We don't tell people that you have to have ACRD written in a certain format, however you have your Kubernetes manifest today. We'll, we'll deploy that. And I think that's one of the, the beautiful things that alleviates a lot of that complexity of Kubernetes is, is giving people that flexibility that allows them to meet their organizational needs.
We'll, we'll deploy that, that manifest, uh, we'll deploy those containers anyway that you need. Yeah, it's, it could be multi-cloud could be out to the edge and whatever regional center. I mean, it's Edge and multiple application.
The edge stuff is getting really interesting Too. It is. There's a lot of, it's picking up, I hear a lot more about the edge.
Yeah, absolutely. I mean, the fact that people are running, you know, pretty small clusters, but still Kubernetes clusters out in edge, out in, out in cars is a, is a great example. That's One of the big 1, 1, 1 of the big manufacturers in in Germany speak about that.
There you go. There you go. I know there's a, a big, uh, American one that, that does that as well.
And then, you know, again, that's, you know, one of those use cases, having that data on board, shifting that data back to a staging environment, testing with that, and then deploying back, uh, back out. Maybe that'd be a light on our dashboard. You'll see the little captain's wheel Kubernetes.
Yeah. Come On. You're Over surrounding somewhere in your automobile.
That's, it needs a resource. Yeah, Yeah. You know, I was, I was actually really surprised when I first started hearing about that, thinking like, well, that's a, that's gotta be pretty resource intensive in the car.
Like there's, we've gotta figure out a way to do that without having clusters in every single one of these cars and Edge and things like that. But it seems to be, it seems to be working so far and we're talking thermostats and, and things of that nature as well with, with some of our customers. So it's, it's pretty cool.
Yeah. I heard someone describe Automobiles now are becoming software platforms with wheels. Oh yeah.
I mean, essentially, you know, that's exactly how much of it is. It's all software, right? With some electric motors or whatever Yeah.
Kind of things. Yeah. So what, what's, what's coming up next, the six months?
Next six months where we're gonna be at Reinvent? We are, we're hopefully we'll see you there. Um, kind of where, where, what's on, what's on your mind about the next set of things you want to work on?
Yeah, so we're at Q Con, we're talking a lot about Kubernetes, but every single person that we talk to also has something else. And whether they've found that Kubernetes is a little bit too complex for them and they don't wanna invest the resources in it, and they move to another container service like ECS, um, or they've got some serverless e everybody seems to have some level of, of serverless, uh, whether it be Lambda or, or whatnot. So one of the things that, uh, we've really been working on that we're, we're gonna be revealing pretty big at, at reinvent is not only deploying to Kubernetes, but also being able to deploy to Lambda in a declarative way.
Kubernetes, you know, brought us the, the world of declarative and, and gave us that abstraction layer above, uh, the imperative nature of things. So we're now bringing that to Lambda and Full Blue, green full Canary, and being able to just share that declarative config between your Kubernetes and Lambda deployment so you can actually deploy to both within the exact same deployment, which absolutely nobody's doing right now. So we are Very, very so both, but also in parallel, right?
Because Exactly. Apps maybe running in both environments, different parts of it. Precisely.
Well, sounds like you get a, so we'll have to, uh, a pretty good peek into what's coming. Yeah. We'll have to, uh, we'll have to get back together at reinvent and, and sit down and, and showcase and discuss that a Little bit.
Yeah. We'd love to hear a lot more about that. Yeah, that sounds exciting.
Well, good. Yeah. Well, congratulations.
I sent you and I have talked before. The show seems really great. I mean the, the buzz and the traffic and yeah, it's awesome conversations.
And I, I've been to a session. I never get to go to sessions anymore. We're always talking, which is likewise.
Which is good. I'm good. But I've heard that they're really good as well.
Yeah, most definitely. Great. Definitely have a, a good rest of the show and we will see you.
Appreciate it. Thank Las Vegas. See you there.
Okay. Reinvent. Right.
All right, man. Cheers. Say hi to Adam.
Stop by the booth. Go visit Armory. Check him out online.
com? Dot io. Armory dot i, I io.
You got it. Okay, good. Definitely check 'em out.
And, uh, lots of good things coming to as well as, uh, where we are today with Armory. Okay. Talk to you again.
We'll be right back with our next great guest.





