AS3
acronymnetworkingcloud
Stands for: Application Services 3 Extension
An F5 extension for declaratively configuring application services via JSON.
Application Services 3 Extension takes a JSON declaration of the desired application configuration and makes BIG-IP match it, a declarative alternative to imperative tmsh commands, delivered over a REST endpoint.
AS3 takes a JSON declaration of what an application should look like and makes the BIG-IP match it, which is a different proposition from a script that issues commands. You describe the desired end state, the extension works out the difference, and running the same declaration twice produces the same result rather than a second copy of everything.
That idempotence is the whole argument for it. Imperative configuration drifts, because a script that adds a pool member has no opinion about the pool member somebody added by hand last month, and reconciling that gap is the work nobody budgets for. A declaration is comparable to what is deployed, which makes configuration reviewable in a pull request and recoverable from a repository rather than from a backup.
The practical caution is scope. A declaration owns a tenant completely, so anything present in that tenant and absent from the declaration is removed, which is correct behaviour and a genuinely unpleasant surprise the first time it deletes something a colleague added outside the workflow. The migration to declarative is therefore organizational before it is technical: it only works if everybody stops editing by hand.
Also known as: as3