Observability and Remote Configuration with NGINX Agent

Original: https://www.nginx.com/blog/observability-and-remote-configuration-nginx-agent/

NGINX Agent - An NGINX Project

At NGINX Sprint 2022, we committed to modernizing the way we manage NGINX open source projects and engage with our community. As part of that promise, we announced the upcoming release of NGINX Agent, a daemon that manages individual NGINX deployments as companion software, providing observability and a configuration API. Today we’re proud to follow through on that promise by launching NGINX Agent under the Apache 2 license.

At F5 NGINX, our vision is to build an ecosystem that extends into every facet of application management and deployment. NGINX Agent plays a pivotal role in that vision by providing Development and Platform Ops teams with granular controls and added functionality for configuring, monitoring, and managing NGINX instances.

What Does NGINX Agent Do?

NGINX Agent is a lightweight daemon that can be deployed alongside your NGINX Open Source or NGINX Plus instance. Significantly, NGINX Agent enables a number of capabilities not provided by NGINX Open Source:

How Does NGINX Agent Work?

NGINX Agent runs alongside an NGINX instance, exposing both REST and gRPC interfaces for remote interaction with the instance from both the control and management planes, enabling you to build sophisticated monitoring and automation capabilities.

NGINX Agent Management Server to Compute Instance diagram

Why Are We Open Sourcing NGINX Agent?

Complement NGINX Open Source
We want to empower the community to use NGINX Open Source in more use cases and with far more flexibility. Open sourcing NGINX Agent helps fill in some current functional gaps in NGINX Open Source, and opens a completely new avenue for us to extend NGINX Open Source and bring features to the community more quickly. It can be installed alongside your NGINX Open Source instance to let you manage NGINX configuration using REST or gRPC interface, or enable you to develop sophisticated visualizations from NGINX events and metrics.

Transparency
We take pride in bringing industry-leading open source software to our community and enabling you to build highly scalable, resilient infrastructures to power your business. One of the core pillars of this success is the trust the open source community places in NGINX software. Our design philosophy with NGINX Agent is to be completely open and transparent about how and what data it touches in your NGINX infrastructure. We think being fully transparent with the community and bringing in features which delight you is a key enabler to realizing our open source vision.

Make NGINX Developer Friendly
Staying true to another promise we made at Sprint – to optimize the developer experience – NGINX Agent accelerates the “time to value” of NGINX products by providing controls and functionality that we hope make NGINX more attractive to more adopters. NGINX Agent provides granular controls so developers can make smart decisions about managing, deploying, and configuring NGINX in their environment. Our goal is to meet developers where they are by enabling them to integrate with NGINX’s suite of products on the control and management planes or bring in their own.

Get Started with NGINX Agent

NGINX Agent started out as the agent used by NGINX Management Suite Instance Manager to find all the NGINX instances in your environment. And while it will continue to serve that function, by open sourcing it in version 2.17.0 we’ve launched it on an independent path towards usefulness to the broader NGINX open source community. Given that history, we expect there are many ways NGINX Agent needs to grow, so we are inviting you to visit the NGINX Agent repo on GitHub to get started and learn how to contribute, make suggestions, and report issues.

Retrieved by Nick Shadrin from nginx.com website.