- Lori MacVittie,
senior technical marketing manager at F5 Networks,
says:
Most applications today maintain at least two if not three or more "tiers" within their architecture. Web (presentation), application server (business logic), and database (data) are the three most common "tiers" to an application, web-based or otherwise, with the presence of middleware (queues and buses) being an optional fourth tier, depending on the application and its integration needs.
It's never been an easy task to ensure that the web servers know
where the application servers know where the middleware know where the
databases are during a deployment. Most of this information is manually
configured as pools of connections defined by IP addresses.
IP addresses that,
with the introduction of virtualization and cloud computing , may be dynamic. Certainly not as dynamic as
one would expect in a public cloud environment, but dynamic nonetheless. A high
frequency of change is really no more disruptive to such an IP-dependent
environment than a single change, as it requires specific configuration
modifications, additions or, in the case of elasticity, removals.
It is only somewhat ironic that the same technology that
introduces the potential for problems is the same technology that offers a
simple solution: virtualization. Only this virtualization is not the
one-to-many server-style virtualization, but rather the many-to-one network
virtualization that has existed since the advent of proxy-based solutions.
VIRTUAL SERVICE ENDPOINTS
If considered before deployment – such as during design and
implementation – then the use of virtual service endpoints as implemented
through network virtualization techniques can dramatically improve the ability
of application architectures to scale up and down and deal with any mobility
within the infrastructure that might occur. Rather than directing any given
tier to the next directly, all that is necessary is to direct the tier to a
virtual service endpoint (an IP-port combination) on the appropriate
infrastructure and voila! Instant scalability.
The endpoint on the infrastructure, such as an application
delivery controller,
can ensure the scalability and availability (as well as security and other
operationally necessary functions) by acting on that single "virtual
service endpoint". Each tier scales elastically of its own accord, based
on demand, without disrupting the connectivity and availability of other tiers.
No other tier need care or even be aware of changes in the IP
address assignments of other tiers, because it sees the entire tier as being
the "virtual service endpoint" all the time. It stabilizes
integration challenges by eliminating the problems associated with changing IP
addresses in each tier of the architecture.
It also has the benefit of eliminating service-IP sprawl that is
often associated with clustering or other proxy-based solutions that must also
scale along with demand and consume more and more (increasingly) valuable IP
addresses.
This decoupling is also an excellent form of abstraction that
enables versioning and upgrades to occur without disruption, and can be used to
simultaneously support multiple versions of the same interface simply by
applying some application (page level) routing at the point of ingress (the
virtual service endpoint) rather than using redirects or rewrites in the
application itself.
The ability to leverage network virtualization to create virtual
service endpoints through which application architectures can be simplified and
scaled should be seriously considered during the architectural design phase to
ensure applications are taking full advantage of its benefits. Once virtual
service endpoints are employed, there are a variety of other functions and
capabilities that may be able to further simplify or extend application
architectures such as two-factor authentication and OTP (one time password) options.
The future is decoupled – from internal application design to
application integration to the network. Employing a decoupling-oriented
approach to enterprise architecture should be a focus for architects to enable
IT to take advantage of the benefits and eliminate potential operational
challenges.
No comments:
Post a Comment