Building an Application Delivery Platform
People use applications when they are performing business related tasks. These could be native desktop applications, web applications via a browser, or mobile applications on a tablet or smart phone. When you get right down to it, people using computers are using applications of one form or another. Increasingly, the applications in use will vary, depending on the location of that user at any given time and the device they have. However, the business tasks that they are undertaking will remain the same. In order to deliver applications to users across the diverse platforms in use requires the building and maintenance of a robust Application Delivery Platform.
Organisations looking to build an Application Delivery Platform that can serve the diverse needs of the modern mobile workforce need to take into account a wide range of factors. It first requires doing an assessment of the applications that are in use within your organisation and then putting in place an infrastructure platform that can deliver the applications in a robust way.
The application infrastructure needs to be comprised of compute resources to host the applications and an Application Delivery Network to serve them to the users.
Infrastructure needs to be adaptive and flexible in order for the platform to grow and change as the organisation’s goals grow and change. Infrastructure has to support both legacy and new applications so that existing modules can be accommodated. The platform needs to provide good endpoint performance, irrespective of the location of the user. It needs to secure data transmission across the network, within the data centre, and provide security to endpoint devices. It also needs to be easy to manage and possibly provide self-management and orchestration with the ability to monitor and report on resource usage at a granular level.
When thinking about building an Application Delivery Platform, a vital first step is to do an assessment of the applications that are in use within an organisation. You need to know what applications are in use before an infrastructure planning project can be undertaken. It is often the case that there are many applications in use within an organisation that are flying under the radar of the IT department. This is especially true in organisations with a technical workforce, especially with application discovery and purchases on smartphones and tablets being so common.
The goal of an application assessment shouldn’t be to eliminate applications that are not supplied by the IT department. Rather, it should be to see what applications are in use that make your workforce more productive and how you can best deliver and support their use in a secure and robust manner. It’s also useful to see what applications are being used in preference to IT supplied applications. Applications that are truly providing business benefits to the workforce can be brought under the control of IT and made available to the whole organisation. Those that aren’t or are duplicating existing functionality can be eliminated or replaced.
The infrastructure that needs to be put in place in order to deliver an Application Delivery Platform will vary based on an organisation’s size and the geographic spread of its users.
For small organisations, the platform could be a simple as some industry standard servers running Microsoft Windows Server based applications, either directly or as virtual machines. The servers could be held on the organisation’s own premises, located within a dedicated third party hosted data centre, or rented from a cloud services platform company. Many cloud service providers are available, from large vendors such as Microsoft with their Azure and Office 365 cloud services, to Amazon Cloud Services, VMware vCloud offerings, and the myriad of vendors who offer Cloud Infrastructure as a Service and other cloud platforms.
Many organisations are adopting a hybrid approach when providing Application Delivery Platforms. In this approach, some of the servers are hosted in the organisation’s existing IT infrastructure and additional server capacity is hosted outside the organisation with secure cloud infrastructure providers. It’s important not to fall into the trap of duplicating IT resources within the organisation when using services from a Cloud Service provider. It’s also very important to see the hybrid environment as a single entity that provides compute resources for the organisation.
Adopting this hybrid approach when building an Application Delivery Platform provides many benefits for an organisation:
- It provides a virtually unlimited application platform. The platform can be scaled up and down as business needs change.
- It allows an organisation to be flexible and agile when delivering application services.
- Application servers can be provided from the locations that help deliver the fastest service to users. For example, if you have a large mobile workforce, then cloud-based providers can be used that have Data Centres located close to those mobile workers.
Irrespective of which server hosting method is adopted, an Application Delivery Network will need to be put in place to deliver the applications to users. An Application Delivery Network includes a suite of technologies that are deployed in concert to deliver applications over the network. Technologies that need to be considered when thinking about designing the network component of your Application Delivery Platform are:
- Application Acceleration – Designed to increase the responsiveness of applications that are delivered over a network connection. Some of the techniques used to optimise access to network applications include local content caching, the offloading of processor intensive tasks like SSL encryption to dedicated hardware devices, and network compression to reduce network bandwidth use and latency.
- Application Traffic Management – Optimises the routing and delivery of specific data types to the best resource as quickly as possible. Deep Packet Inspection is used to determine what the data type is and – combined with rules and policies – the data can be routed to specified servers within an organisation. This allows certain application data to be preferentially sent to high performing servers that can process it in priority to other data types.
- Application Layer Security – Protects data and information at the points where applications interact with the network. It builds on the traditional security method of protecting the network border with firewalls. Protection is enhanced at the source of the data, when the data passes across the network, when it passes through network gateways, and by enforcing controls on network endpoints. This function is often offloaded to dedicated Application Layer Gateway devices or servers that work in tandem with the other typical network security infrastructure.
- Security – in addition to the Application Layer Security mentioned above, the Application Delivery Network should have the standard security infrastructure such as border firewalls, content checkers to detect malware and viruses, and a good Access Control List based network authentication scheme.
- Application Discovery – Provides a centralised and managed way for users to find applications that deliver business functionality.
- Application Load Balancers – A network management component that takes requests for access to network services, such as web servers or messaging servers, and allocates the request to a resource from the Application Delivery Platform that is best placed to handle the request. The rules that govern how the load balancer allocates the session can be based on metrics such as current server load, geographic location of the end point device making the request, or the current network latency. This ensures that the access requests are shared out evenly over the available servers and data centres, if multiple geographic hosting centres are in use.
- Resilience – It is important that the Application Delivery Platform is available whenever it’s needed. This can be achieved by building it in a resilient manner. The use of virtualised servers and the deployment of hot standby appliances as part of the Application Delivery Network infrastructure allow for automated server restart and device switchover in the event of an outage.
When building an Application Delivery Platform, you should include planning on how it will be managed from the start. This is especially true if the platform will use a hybrid infrastructure. Choosing a set of management tools that can manage the complete hybrid infrastructure as a single entity will pay dividends over the lifetime of the platform. Many vendors now provide management suites that allow hybrid clouds to be managed as a single entity.
Beyond the basic management that needs to be included when designing the infrastructure that delivers an Application Delivery Platform, you should also include automation and orchestration in your plans.
Automation allows controllers and agents to continuously monitor the state of the servers and networks that comprise the Application Delivery Platform. Then it can automatically distribute compute, network and storage resources based on policies related to load balancing, data security and compliance rules. This can be coupled with self-service functionality to allow users to request access to applications when they need them, without having to wait for IT staff to provision access. The automation tools can allow applications and data to migrate between hosting centres as users move or as work moves between time zones.
When automation is taken to a level where most of the resources that comprise an Application Delivery Platform can be provisioned, moved, scaled up and down, or decommissioned automatically based on requirements, the platform is said to be orchestrated. Orchestration allows each application and other resources that support the applications to be scaled and managed in real time based on the current needs of the organisation. This is the state of nirvana for an Application Delivery Platform. It should be considered as a target state when designing a platform, even if in a real world scenario the presence of legacy applications and resources might prevent it from being immediately attained.
Service Monitoring and Billing
In addition to planning for management when designing an Application Delivery Platform, you should also include the ability to do service monitoring and billing.
Service monitoring is important as it feeds into the workflows and rules used for automation and orchestration. It also makes it easier to obtain resources from the organisation to expand the platform when required. You can’t make a case for more resources if you don’t understand how the current platform is being used. Service monitoring allows you to track in real time who is using resources and to produce usage reports. The reporting can be based on various metrics that you may want to monitor, such as use of applications, storage, network bandwidth, compute resources, virtual desktops or any other metric that is important to you.
The monitoring of service use can also allow billing for platform resource use to be implemented. Even if you don’t want to actually bill internal users or departments for their use, the billing information can be useful. Many organisations see IT as a cost centre. Being able to track IT resource usage and provide billing reports, even if internal departments are not actually billed, can highlight the costs of supplying the applications infrastructure.
Service monitoring and billing tools can also highlight when certain users or departments within an organisation are overusing, or even underusing, the applications provided. This can help to drive more efficient business practices within the organisation and help show that IT can improve the business, not just be a cost centre that consumes budget.
Designing an Application Delivery Platform requires considering how different IT components will be evaluated, selected and integrated into a coherent platform. Many choices are available to IT decision makers when undergoing such a project. It is advisable to pick components that are easy to integrate with other tools and that are easy to manage.
When considering the Application Delivery Network and application security aspects of the overall infrastructure requirement, IT decision makers should take a look at KEMP’s flagship LoadMaster products. These deliver support for private, public and hybrid cloud environments and are compatible with deployment on a wide array of platform types. This makes your application platform easy to scale and allows organisations to optimise their application delivery infrastructures.