Jun 18 2021

How to Update Mission-Critical IT Systems Without Taking Them Offline

Agencies should have their infrastructure ready as upgrades take place, and they also should invest in DevOps.

There are many obvious, citizen-facing federal services that Americans rely on every day: among them, mail delivery by the U.S. Postal Service, airport security screenings by the Transportation Security Administration and management of the nation’s national parks. There are also many less visible, yet critical government services that can have a direct impact on citizens’ health and well-being, including health and safety inspections by the Agriculture Department, the processing of Social Security benefits and threat monitoring by the intelligence community.

These critical services must continue even as the government moves to modernize the IT infrastructure that supports them. They cannot afford to go down, even for a short period of time, because people will notice and lives will be impacted. Agencies are always looking for ways to make such upgrades safely, securely and seamlessly as they transition to more modern platforms.

That’s easier said than done, though, which is why it is crucial for federal IT leaders to

clearly and methodically think through their strategy when they need to make upgrades.

Because every agency’s IT environment and mission needs are different, there is no one-size-fits-all approach to performing upgrades while keeping mission-critical systems and applications running. However, there are some best practices, and it increasingly makes sense for agencies to adopt DevOps and DevSecOps approaches to application development and modernization to make these transitions as smooth as possible.

Designing Infrastructure to Move Apps Seamlessly

Even though agencies have the desire to use agile development methodologies and DevOps, legacy software and aging hardware present limitations to doing so. Often, what happens when a critical system or application needs to be upgraded is that agencies will use existing equipment in their IT environment to provide space for migrating the system or app.

As agencies think about future IT investments, they should plan for ways to design their environments so that applications can be moved safely within their infrastructure and then moved back into upgraded infrastructure.

Ideally, this can be done in real time and in a dynamic fashion, enabling the application itself to reside in several places easily. If there is capacity in another part of the infrastructure, the application could be moved there while the upgrade is ongoing.

Remember that mission-critical apps will have backup structures. Most of the time, agencies can use the infrastructure set aside for backup and recovery as the place to move these apps while upgrades on the primary infrastructure are being completed.

To properly move mission-critical applications, IT teams need both the appropriate bandwidth and an understanding of dependencies. The application will need to maintain the same performance and the same level of security so that there are no disruptions.

Agencies can use software tools to encapsulate and maintain everything needed for the app to keep running, including bandwidth, latency and security requirements. Software is now smart enough to know that there might be optimal places within an agency’s infrastructure to run specific applications, either on-premises or in the cloud.

Agencies should design their future infrastructure with an eye toward maximizing efficiency as the infrastructure scales out. That will provide greater flexibility for future application migrations.

RELATED: What are the perils of not modernizing your applications?

The Way Forward with Agile and DevOps

As agile, DevOps and DevSecOps platforms have evolved, they have grown more interoperable. This is critical because, as agencies modernize applications, their systems need to be able to communicate and translate different programming languages.

Agencies should leverage continuous integration and continuous delivery (CI/CD) and integrate their development and data center operations teams. CI/CD enables teams to work together closely to deploy code as quickly as possible without interrupting mission operations.

Depending on how mature an agency’s cloud environment is, it can also conduct application modernization using an agile development process to make apps cloud-ready — using containers to virtualize applications and deconstructing them as individual pieces that can be delivered and patched faster than on legacy infrastructure.

Developing a DevOps approach can accelerate this kind of work.

Citizens rely on mission-critical apps from the government. To upgrade those apps without disrupting citizen services, agencies need to have a clear plan for modernization. That means knowing the application’s requirements, dependencies and security protocols. It means having the infrastructure in place to ensure apps can keep running even as upgrades are being made. And it increasingly involves DevOps.

All of this work will be more seamless and less disruptive if federal IT leaders bring forethought to upgrading the applications and systems that so many of us rely on.

This article is part of FedTech’s CapITal blog series. Please join the discussion on Twitter by using the #FedIT hashtag.

CapITal blog logo

undefined undefined/Getty Images