Using Federated Clouds For Accurate, Real World Load Testing
The nightmare scenario for system administrators working on web services and applications: they push a new iteration of their code into production, everything seems to be going well, then, as demand peaks, their cloud servers slow to a crawl, users start complaining, databases can’t keep up with the demand.
The code push introduced a regression that wasn’t caught in testing and under real world use, the service goes down. Perhaps it was a caching flaw, an error with the way files were pushed out to content distribution networks, or a coding mistake that caused the application to use far more resources that it should.
Docker Is A Federated Cloud User’s Dream Application Deployment Tool
The modern cloud marketplace offers businesses a bewilderingly complex set of options. There are dozens of cloud vendors offering subtly differentiated and incompatible products spread across the globe. None of these vendors fits all potential use cases. A large cloud deployment might include storage, database servers, virtual machines, bare metal servers, and a host of software-defined and hardware networking solutions. Often, to provide optimal performance, resources will need to be located close to users, and since large cloud providers usually only offer a presence in a handful of big cities, that means dealing with multiple vendors.
Cloud marketplaces and integration layers have evolved to solve one of the problems associated with modern multi-cloud environments. By uniting the multitude of cloud vendors and their platforms under one control interface and payment system, cloud integrators can significantly simplify the process of procuring and paying for infrastructure wherever and whenever it’s needed.
But running software development and production environments in multi-cloud environments is a problem even if setting up the infrastructure is relatively straightforward. Ideally, all cloud platforms could be thought of as simple and compatible units of computing resource that would run anything you threw at them, allowing businesses to move their workloads around at will.
The Docker container technology, in essence, allows businesses to not care about the operating system environment into which they are launching their software. Docker, and competing container technologies, package up software and all of its dependencies into a self-contained unit that will run everywhere that the Docker container engine will run — and it runs almost everywhere.
Docker is in use by many large companies for large-scale application distribution, continuous integration and delivery, and for building distributed application architectures.
The magic of Docker is that if an application runs on a developer’s MacBook or a company’s development server, it will run on any server. That quality helps companies elide the differences inherent in cloud platforms. In essence, Docker provides a portable Platform-as-a-Service environment, except that instead of relying on a vendor’s platform, each application carries its own platform with it, ready to be deployed on any suitable infrastructure.
If a company needs to spin up servers for an application deployment in a new geographic area, they can use a cloud marketplace’s integration layer to select, manage, and deploy the infrastructure layer, and push existing Docker containers onto that infrastructure, enormously reducing the time it takes to deploy.
Compared to how it would have been done a few years ago — contracting and negotiating with a new cloud or hosting provider, configuring individual server environments, installing applications — the Docker / Cloud integration model is fast, significantly less complex, and easier to manage.
Image: Flikr/ Glyn Lowe
20 Apr / 2015
In the previous article of ourWordPress On Cloud series, we discussed various techniques for improving performance of our WordPress site. Once basic performance improvement methods are applied, we use monitoring tools to test and optimize the performance of the site. This methodology is referred to as “fine tuning,” which we have already discussed in previous article.
The testing we are going to perform is often known as load testing. In this form of testing we see how our site would perform when accessed by number of users at the same time from predefined geographical locations. There are various tools available for this kind of testing, and we are going to use an online load testing tool called Load Impact. Load Impact will provide us with results and graphs of various metrics from which we will be able to deduce the factors affecting our site performance.
02 Apr / 2015
So far in the WordPress on the Cloud series, we successfully installed WordPress and understood what are the major differences while working with a cloud server instead of VPS. We also learned how to manage themes, plugins and deployment for WordPress sites on Cloud. If you have followed the tutorials so far, you should have WordPress site running with smooth & fast deployments. Now it’s time that we take a deeper look at site performance optimization. We need to make sure that our WordPress site is fast, which is very essential when you are trying to deliver the best user experience and SEO (Search Engines take site speed into consideration while ranking).
For achieving the said optimization, we will make use of general optimization methods like caching, CDN, asset compression, database optimization, etc; Once basic optimization is in place, we’ll fine tune it by using monitoring tools and making appropriate changes accordingly.
20 Mar / 2015
In last article of the WordPress on Cloud series, we covered WordPress installation on a cloud server. Once WordPress is up & running, the next immediate step is to customize our website and add features to it. The most common way to approach this customization is with themes and plugins.
In our case, for using themes and plugins we have to come up with a way aligned to our infrastructure. In production we cannot install themes and plugins directly from the WordPress admin panel, as it will create inconsistency among host servers. We approach this issue by making use of the “Develop locally and Deploy globally” strategy. In this approach we develop and test on a local machine, and then we deploy that code to all of our production servers. This approach makes sure that each server has updated version of the website and there is no inconsistency. This approach also saves us hassle of making changes and testing in production environment, which is usually quite slow and does not include in ideal devops practices.
Cloud in the EU – Regulations and Data Privacy Laws To Be Aware Of
When the General Data Protection Regulation takes effect, it will replace the Data Protection Directive and become the ruling law for data processing and collection in all EU member states, regardless of those states’ individual laws.
Currently, the EU Data Protection Directive — which applies to EU-based organizations and those whose data passes through the EU — isn’t legally binding for citizens of EU states and leaves it up to member states to translate the principles into their own laws. And several have, including the UK, the Netherlands, Germany, France, Denmark, and Italy.
By now, cloud-based systems have proven their superiority over traditional infrastructure: Cloud infrastructure facilitates seamless availability (touting almost zero downtime), scalability, security, and more (You can read more about cloud based systems on our blog). As of January 2015, WordPress was used by more than 23% of top 10 million websites and it’s still the most popular blogging system on the web with more than 60 million websites.
The Benefits Of A Geographically Diverse Federated Cloud
It’s cliché to say that modern online businesses are global businesses, but it’s worth focusing attention on their global nature because it raises a number of issues. Physical limitations in the speed of data transmission can significantly hinder the provision of fast interactive services. Federated clouds, which use a geographically diverse selection of cloud vendors, can help overcome many of the limitations of geographic distance.
Centralization and Geographical Diversity
Data is central to the functioning of modern businesses, and for data to be useful, it has to be integrated. Much of the value of data depends on companies being able to to contextualize, integrate, compare, and analyze. That imposes some restrictions on data handling, particularly where centralization is concerned. The most effective big data analytics strategies depend on access to huge data lakes — it’s the mass of data that provides much of the value.
However, the centralization of data into data lakes is at odds with the desire to provide high-performance interactive services. Centralization necessarily involves degraded performance as we move away from the location of the data repository. The solution is an infrastructure model based on both localized and centralized processing and storage, and that requires infrastructure to be placed at the edges of the network, close to users.
A heterogenous network of geographically dispersed end points exchanging data with a central repository is one of the foundational cloud federation strategies, and it’s one we’re likely to see becoming more popular as companies begin to rely on applications built on top of big data lakes. The technology to tie together these heterogenous networks at the application layer is well established: RabbitMQ is a popular way to manage communications between dispersed machines and networks.
But federated clouds of this nature can be extremely complex to provision and manage at the infrastructure level — particularly when multiple cloud vendors are involved. Larger companies may have to deal with dozens of cloud vendors at the edges of their network, and because the big cloud vendors tend to stick fairly close to large urban centers, many of those edge nodes will be with smaller providers, multiplying the complexity of building a global federated cloud network.
Cloud Integration Layers Cut Through Complexity
ComputeNext’s cloud marketplace integration layer was built to mitigate the inherent complexity of deploying geographically diverse federated clouds, making it far easier to provide very fast performance to geographically distributed users. Rather than negotiating contracts with many vendors, effectively handling payment to multiple companies, getting to grips with their control interfaces, and managing the integration of their cloud networks, ComputeNext provides a single interface for deploying, managing, and paying for infrastructure from vendors across the world.
Reductions in complexity translate to reductions in cost and increases in reliability: companies are able to bring their product to market more quickly and with less management overhead. Companies who use ComputeNext’s cloud integration layer are able to build heterogeneous, geographically diverse cloud networks that provide excellent user experience more quickly and more reliably.
23 Feb / 2015
Cloud Video Editing (and much more) with Kaltura
A Platform for Cloud Video Editing and Content Management
Whether for the desktops, laptops, tablets, or mobile phones, it’s no argument that video has become the king medium for content consumption. To stay relevant and competitive, companies are becoming content creators — with marketing budgets being channeled into the video medium in increasing amounts. This has created a new challenge and business units are now realizing it’s necessary to deploy and own a video content management system or platform that helps them not only ingest and edit video but also share, distribute, manage and possibly monetize their content online across a variety of devices. Enter Kaltura, one of the world’s leading video platforms for a wide variety of applications and use cases in video content delivery and management.