Armory Enterprise install in 10 minutes
Apr 23, 2021 by Chad Tripod
I was introduced to Armory and the open-source project Spinnaker a little over 18 months ago. Up to that point, I’d worked with numerous open-source and proprietary software and was a specialist in application delivery and data analytics. I immediately found out that Spinnaker was the continuous delivery platform of choice for many large scale production services. This piqued my interest because I live in a global high scale world, hyperscale if you will. So, this immediately gave some street cred to Spinnaker and what Armory was building on the platform.
Why else would I see Waze at Google Cloud Next using Spinnaker for software release and verification? What did companies like Airbnb, Salesforce, and SAP see in this platform? I’m sure top technology firms move fast at scale. They most likely did months of research to evaluate the lift to get Spinnaker up and running. There had to be some high value use cases solved by this software delivery platform.
So, I dove right in. “This should be cake” I thought to myself. I started from scratch on various technologies, rapidly digesting the use cases, the configuration, the high availability and scale of all these technologies. I spent my first day grasping the concept of Spinnaker’s microservice architecture, I looked into Halyard, which was the way you configured the platform. I started with my Halyard installation and connected it to my Kubernetes cluster to deploy the microservices. I then started to build out all the dependencies needed for Spinnaker to run my first “hal deploy apply” the command that deploys Spinnaker after you finish configuring it.
Great! Now what? I saw microservices running in my Kubernetes clusters so I’m feeling good so far. It took me longer than expected to get to this point, and yet I still can use this technology to do what I want it to do, which is deploy software. I then started to look at how I can get to building a pipeline. That’s what I want; to compose a workflow. But I’m almost a full day in, and I haven’t even gotten to the UI yet. Ah! Found it. I have to expose the UI and API through an ingress of some sort, and make Spinnaker aware of its external endpoints. Should be easy enough.
Now, this is a big test for those new to Spinnaker. Armory’s technical field team used this as a high mark validation of a candidate looking to join Armory. “Oh, they actually got to the UI and built a basic pipeline!” The reason most walk away from Spinnaker initially is because installations usually end somewhere around here. After days of work, most people couldn’t even realize the power of the platform because it was just too hard to get to. This causes folks to look for other software delivery platforms with less friction in realizing the benefits, but it built a mystique about Spinnaker.
- You need a team of engineers to get Spinnaker up and running.
- Spinnaker requires a full team dedicated just to it to run.
- We need experts to get Spinnaker running.
As a DevOps leader at an organization working to remove friction across teams and simplify software delivery processes, do I really want to onboard a platform that needs experts? Do I really want to carve massive blocks of my sprints trying to get this platform running?
So around the industry, and in the realm of those practicing DevOps, Spinnaker is branded as “Hard.” It’s something I hear on every call I get on. “I’ve heard it’s really hard to set up and run Spinnaker.” Well, this is definitely an antipattern to the mark of a great technology: to take extremely hard problems and make them easy or even transparent to those using and consuming it. I want thousands of pipelines a day. I want a battle tested, production grade solution. I want the scale that this platform has demonstrated. But the level of effort to value ratio is just too high. When I started with Spinnaker, I agreed with this. It just isn’t worth the effort.
Fast forward to today, and things have changed. Armory has made the platform extremely easy to get your hands on. We have taken the difficulties out of the way and hidden them with automation. Not only have we worked through everything the field engineering team has done, but we did it in a declarative way through native Kubernetes YAML. The complete setup (from installation and integrations to deployment) are all GitOps based and can be managed from your SCM like Git.
Removing Halyard as the installation point. Nobody wants to learn another tool when they can just use the Kubernetes API in the way they are today. So, Halyard is gone. Armory replaced the complete operation with a CRD and Operator that deploys and manages Armory Enterprise through “kubectl”. YES! Halyard is gone. That’s one hurdle removed.
Automating all of the arduous steps to actually get to using the platform. For many, their journey into true CD is to build workflows, which in Armory Enterprise are pipelines. Now, you can get right to the UI within 10 minutes of hitting the GO button. Ingresses, authentication, persistent stores, SSL/TLS, public FQDN and IP, namespaces, operator installation, and CRD installation are all done for you. Packaged with a little bow on it. Now, you get right to the value of Armory and can start exploring the enterprise features that will help you strengthen and automate your software delivery.
Learning. This is always overlooked. It’s true, the goal of a CD tool is to remove cognitive load from the developer. They shouldn’t care what cluster, what cloud, or what regions. They want to commit awesome code and know that it is running and being interacted with as expected. But some one (or something) has to know how to use the platform.
Armory has taken things a step further and built a content cloud which will populate your Armory installation with pre-built pipelines! Not just that, but also an immersive self-guided tour of the platform. Right out of the gate, you’ll be deploying to Kubernetes. There has never been a “faster time to pipeline.” If you like what you see, you can quickly integrate Armory with your DevOps toolchain, such as your CI systems, Git repos, security tools, and, of course, your software delivery targets.
Quickly realizing the enterprise features Armory has built on top of the core platform. Armory’s customers asked us to take other aspects of their software delivery and unify them into a CD solution to handle more than just developers and software. So you get more out of it:
- IaC with Terraform and Pulumi plug-ins. These allow you to orchestrate your workload dependencies in any cloud. Your operations team can now codify their work as part of a larger software delivery strategy. This strengthens immutability and verification across environments.
- Armory Agent for Kubernetes. Kubernetes adoption is exploding and more microservices are coming. Armory took a forward looking stance on what this scale and operational model means for organizations. How do you support thousands of clusters? How do you operationalize the onboarding of those clusters? Armory Agent provides you with limitless Kubernetes and removes the concern most people think about when running Kubernetes at production scale.
- Pipelines as Code. At phase 2 of your Armory journey, you will have already determined what the pipeline constructs are. Your “golden paths to production” will include stages for deploying to each environment. You might have terraform stages to build Kubernetes clusters dynamically. You might also have security scans, canary deployments, chaos engineering, and many more steps included. Now, codify those workflows with Pipelines as Code. The Armory Pipelines as Code feature takes all of those pipelines and puts them in source control. Armory Enterprise renders those pipelines in realtime from source control and executes them. This consistency and automation ensure successful deployments that meet all team requirements.
- Security and Compliance. Armory Policy Engine leverages the Open Policy Agent (OPA) as a means to ensure that software delivery is meeting the security requirements that are upstream in the process. With Security and Development working together, innovation can happen faster without putting the business at risk to security threats and holes left by fragmented methods. Security as an afterthought is no more.
With the Armory Enterprise quick install, we removed these hurdles. Spinnaker is not “Hard” any more. In fact, my 10 year old son recently stood Armory Enterprise up and ran his first Kubernetes pipelines. I told him he’s now ready to work at Netflix, and he thought that was pretty cool.
The power and scale are here for you now. It’s easy to get to the same level of deployment as these top technology companies, and Armory is here to help. Software delivery and innovation are at the core of Armory, and we’ll continue to work hard to make your user experience the best it can be. Expect to see more from us in the coming days, months, and years about removing even more friction in your digital journey.