Digital transformation is significantly changing how companies operate their IT infrastructure. Migrating IT systems to the cloud has brought many benefits. Among those is the ability to scale systems as demand grows. It has also allowed them to launch new services to meet the demands of the business.
Cloud has begun to address that business mantra of doing more with less. However, it also means that the business has to rethink what scaling its IT means and how it can do that the most effectively.
We have moved from application servers to virtual machines searching for a more efficient IT and application deployment model infrastructure. Both have benefits and drawbacks, but now they are being replaced by containers.
Containers can run entire applications or something as small as a code snippet or service. They can be deployed quickly, on a massive scale and allow IT to be reactive to the business. More importantly, those containers can be removed just as quickly as they are created. But what does this mean for the business?
A business case for containers
Imagine running an online shopping site with 2,000 products and 100,000 visitors per month. Business is good, but it could be better. At various times of the year, such as Black Friday, you spend a lot of money to scale your website. It takes a lot of time and money to plan, but you are still not getting the most return for that investment.
When you investigate why you discover several problems that seem to occur every year.
- The site gets overwhelmed by a sudden surge in visitors.
- Loading the list of products takes time
- Visitors struggle to find what they want
- Shopping cart takes ages to load and complete
- Checkout processes slow down and appear to hang
- Visitors abandoning carts resulting in lost sales
With both application servers and virtual machines, you would need to duplicate a lot of infrastructure to solve the above problems. That would take time and cost a lot of money.
Containers are more flexible. For example, as visitor numbers hit a given number, you just deploy more containers holding the code for the website. As the load speed of shopping carts increases, you create more copies of the shopping cart code. The same is true for the checkout process. In each case, you are just deploying the container with the key pieces of software in them. When visitor numbers drop, you delete the unwanted containers. It is fast, efficient and very cost-effective.
More importantly, this is not just about one shopping event per year. The flexibility of containers means that you can have this solution running all year round. Using automation, it will deal with other planned and even unplanned shopping events.
How does this scale for the rest of the business?
The example above looks at a very specific instance to solve a typical business problem. It shows how pieces of code and business logic can be stored in containers and how those containers can then be deployed using automation, to help an organisation overcome a customer issue. Importantly, it not only makes things easier for customers it also allows the business to scale on-demand.
There are likely many instances where containers can be used to improve the customer experience. However, not every use of containers is about the customer experience. They are just as useful and powerful when it comes to solving internal problems as well.
For example, a business unit has an idea for a new functionality in an application it uses. Traditionally this would have meant looking at the request and recoding a new solution. This is rarely quick. If the existing apps were created from multiple containers, adding that new functionality is easy. The new function or functions are written and stored in containers and then linked into the existing application. It requires limited coding, limited testing and delivers the solution quickly.
Containers are also platform agnostic. It means they can be deployed across any cloud or on-premises platform the business is using. This can best be characterised create once, deploy many.
There are several benefits to this approach. It is easier to test, validate and maintain code if it is created just once. Updated containers can be quickly pushed to users delivering new functionality as required. They can also be more easily assembled to create new applications to meet the demands of the business.
Kubernetes is the engine that makes it all happen
To manage containers at scale, IT departments need an orchestration engine. The leading engine is called Kubernetes. It allows developers and operations teams to define how containers come together and how they are to be managed. Part of that management capability also includes configuring load balancing and other performance requirements.
For example, when there is excessive load on a service, it can quickly deploy more of the containers that are needed for that service. That is what would happen in the shopping cart example above. The load balancing would deploy additional containers when required and remove them when the load eases. This ability to remove unwanted containers helps reduce costs by releasing unnecessary resources.
Kubernetes is also capable of self-healing. If a container should fail it can restart it. If a container fails to respond to health checks from management software it will stop and restart the container. All of this is done automatically. It does not require operators to be monitoring and making decisions. This speeds up response and keeps infrastructure operating at peak efficiency.
Conclusion
Moving away from traditional virtualisation and application server environments and towards containers and Kubernetes makes sense. It lowers costs, improves performance, makes IT more agile and frees up IT teams to spend time working on other projects and tasks.
IFS develops and delivers cloud enterprise software for companies around the world who manufacture and distribute goods, build and maintain assets, and manage service-focused operations. Within our single platform, our industry specific products are innately connected to a single data model and use embedded digital innovation so that our customers can be their best when it really matters to their customers—at the Moment of Service™. The industry expertise of our people and of our growing ecosystem, together with a commitment to deliver value at every single step, has made IFS a recognized leader and the most recommended supplier in our sector. Our team of 4,500 employees every day live our values of agility, trustworthiness and collaboration in how we support our 10,000+ customers. Learn more about how our enterprise software solutions can help your business today at ifs.com.