So, you’re an enterprise admin who wants to run a modernized, Enterprise-ready app in your environment. Maybe you’re looking for something that helps capitalize on a new market opportunity or revenue stream for your business – mobile point of sale software or digital payments software. Or maybe you want cutting-edge software that can support key cost-savings strategies like streamlining or automating internal (or external) operational processes. When enterprises have such an app, they usually need to bring it on swiftly and efficiently – without a lot of the risk that can arise from the install process. In this blog, we’ll show you what’s involved in delivering a modern app to the enterprise, what the challenges are in doing so, and why it’s so valuable to get it right.

If you’re in the ‘TL;DR’ (too long, didn’t read) camp, here’s the crux of what you’ll find here and in our Day 1 Product Demo:

  1. ‘Day 1’, Defined: ‘Day 1’ of standing up a modern app in the enterprise is all about installing – and updating – that app in the enterprise’s target environment. 
  2. The Challenges of ‘Day 1’: Sounds simple enough, right? Wrong. There are myriad different environment configs, diverse technical skills on your IT team, early maturity with Kubernetes, and managing a portfolio of hundreds if not thousands of apps. Together, it’s far from simple.
  3. Getting ‘Day 1’ Right: The good news is that getting the demands of Day 1 ‘right’ comes with great rewards – streamlined installs, silky smooth troubleshooting. If you’re an enterprise, succeeding with these is really the stuff that nimble IT teams live for.

Let’s dig into these further with Alex Parker, Replicated Product Manager who’s a visionary force in this Day 1 experience.

Q: Alex, what’s involved in ‘Day 1’?

A: Ultimately, ‘Day 1’ is about an enterprise end user getting a software application installed into their own environment. They have a relationship with an independent software vendor (ISV), from whom they’ve been given this app, and they need to stand it up. There are usually a number of steps – often detailed in some 50-page ‘quickstart’ instruction manual – and it’s the IT admin that needs to install the app in a way that increases the chances of success and reproducibility. 

In order to install with Replicated, the first thing that this end user will need are some artifacts from the vendor – a license that entitles the end user to install, and some install command that will actually run in the environment and perform the installation of the admin console. Once you have that installed, you’re ready to install the app itself.

One of the cool things about this phase of the Day 1 experience is that it’s as much about ensuring success as anything. Replicated has a number of things that help set up that install for success – like preflight checks, which check the environment to ensure suitability for a smooth install. From there, it’s ‘drag and drop’ – take the license file and drag it into the install environment, click a button in the Replicated admin console, check the environment with preflight checks, and as long as you pass your preflights, you’re off to the races.

And lastly, installing the app is core to its delivery, but we also think about updating the app to the current version as a ‘Day 1’ activity – the process involved is so similar to installing the app. But of course, at this point the end user already has Replicated’s admin console installed so no need to repeat that. Within that console, the end user can check for app updates, run preflights, confirm their passage, and click the button to deploy – Replicated takes care of the rest of the deployment.

Q: What are the common ‘stuck points’ in Day 1 – for both vendors and enterprises?

A:  Installing and updating an app smoothly – without disruption – can be difficult enough for an online environment (not disconnected or ‘air gap’ environment) that is already running Kubernetes (K8s). But vendors serve a variety of enterprise customers that are running just as varied environments – think varying degrees of security demands (all the way to air gap), or varying degrees of K8s adoption. Having an avenue to distribute apps to such diverse environments is not very straightforward. And as a vendor, if you only solve for app distribution to an online K8s cluster, you’re missing a big part of the market that either is newer to K8s or doesn’t run connected environments – or both. Why not give your killer app much more distribution runway in the market serving enterprises that are not running K8s or those running disconnected environments? Replicated solves for all of these different combinations. We can deliver an app to a virtual machine without K8s, without connectivity. We can deliver to a managed Kubernetes cluster running on a cloud provider with connectivity. Replicated helps vendors tackle this challenges and address a much wider market.

Enterprises have their own challenges. When standing up or updating an app in the environment, the enterprise is typically very sensitive to doing this efficiently and without downtime. You have internal (and external) users of the app that for any reason will not want to experience disruption in their usage. Having a reliable, consistent and repeatable way to install and update is really key for the enterprise. Replicated helps achieve repeatable enterprise installs in spades with built-in utilities to check things like CPU, memory, container runtime, connectivity, all sorts of things, and to check these in a reproducible way. As an enterprise IT admin, this gives me so much more confidence that the install is going to work – or that if it fails, it will fail fast and I’ll be able to know what went wrong and what the fix is. 

And of course, another really common stuck point for an enterprise admin is – how am I going to manage this app as it gets updated? How do I get visibility to the version history, check for updates, see that the app config has evolved and changed the requirements of the environment? My vendor can ‘just’ give me a Helm chart and tell me to go deploy – this is fine if I have K8s and am fully adept with it, but what if that’s not the case? The Replicated admin console brings this all together so that the IT admin can retrieve updates, process them, and make it possible for the admin to ‘one click’ apply those updates. And of course, if you’d prefer to just use the command line, we service that avenue, too – the admin can just use the KOTS command line.

Q: What’s the joy of getting it right then? What does success look like?

A: If you’re an IT admin or operator, then you’ve surely known the tough challenges that come with installing, debugging, troubleshooting an app – challenges that can be unique to each of your tens or hundreds or even thousands of apps in your portfolio. A single app can come with a 45-page install doc, making for a really long process. It’s really not scalable – or pleasant. ‘Getting it right’ in Day 1 means a much more streamlined, successful, repeatable process. Replicated really delivers here, codifying a lot of that stuff and distilling it down to a license and command to install, with a single, consistent place to go for ongoing visibility. Replicated does this for the admin, and even further down the line in ‘Day 2’ land, there’s a lot of great support for troubleshooting. If you’re an admin or operator, this streamlined work makes success especially sweet. 

Check out the Replicated ‘Day 1’ product demo to see how we help enterprises install and update their third-party applications with ease and success. Alex himself walks through key steps and capabilities of:

  • Collecting the needed artifacts
  • Preparing the environment 
  • Installing the app manager and the app
  • Confirming the environment
  • Upgrading the app

If you haven’t yet checked out our ‘Day 0’ material, I’d highly recommend taking a spin through it as well or even checking it out firsthand with a personalized demo from the Replicated team:

Engage: See first hand how Replicated can empower your enterprise software