New fuel for growth
To read the full article, learn about JOS Recommendation and receive updates,
Speed Matters in Innovation
Introducing timely and customised digital services is essential to capture a larger market share in this competitive digital world. Gone are the days when new applications and services take 18 months to prepare, build and implement. More business units and customers are expecting new applications to launch in no more than three months.
Conventional public cloud computing provides a cheaper and more flexible option for computing resources to kickstart the development of innovative digital services. Its on-demand and speedy delivery, turns computing power delivery from weeks into minutes. But it does not speed up application deployment.
The bottleneck to launch new digital services often lies in the deployment. The endless user acceptance test (UAT) and multiple setbacks for taking the applications from the public cloud-based development environment to the production environment, could delay the release of new services by weeks and months.
In addition, to make innovation real, businesses often have only a short window of three to six months to test an innovative idea. Within this period, users needed the application flexibility to adjust the features and system agility to prove its business model. But monolithic architecture—even with public cloud computing—bundles many services into a single deployment package leading to a higher upfront investment cost and loss of agility in deployment.
These issues—caused by the gap between software development and IT operations—are life or death for a company competing in the digital era.
“To make innovation real and speed up the time-to-market, more Asia businesses are exploring the cloud-native environment” said Patrick Pang, Chief Architect, JOS.
“Cloud-native” appears to be another buzzword in the long list of cloud terminologies. But it first started appearing around 2010, when Netflix shared publicly the concept of cloud-native computing. It is a key strategy that turned Netflix into a household name by enabling it to provide scalable, high performance and low-latency video streaming experiences.
At its heart, cloud-native environment means enabling software that is designed and built to run in the cloud. But in reality, what it entails is a lot more. By utilising features of cloud computing, cloud-native applications enable huge improvement in developer productivity, business agility, scalability and availability.
It may sound too good to be true. But this promise is lost without a combination of technology paradigms, including container technologies to enable microservices architecture, the practice of DevOps and agile approach, as well as the orchestration of the overall infrastructure.
Accelerate with Containers and Microservices
To speed up not only computing power delivery, but also accelerate application deployment, more businesses are turning towards container technologies and microservices architecture.
Container technologies uses operating system (OS)-level virtualisation to enable executable lightweight packages to run across platforms. This abstraction allows developers to code at a faster rate by focusing on the software features, instead of configuring, patching and maintaining OS.
These lightweight containers—can be easily created and destroyed—with high density in a single virtual machine (VMs). Container is not only a natural extension of virtualisation, but also an ideal compute vehicle for realising microservices architecture.
Under this architecture, applications are developed as a suite of microservices. Each microservices are created using a separate technology stack and communicating through application programming interfaces (APIs).
These microservices are loosely coupled and independently operated, enabling new digital features to be built and deployed at a much faster rate. This architecture enables a tighter feedback loop from the users to drive multiple iterative development cycles. They can also be released and maintained without overall impact to the applications.
“Tools for container execution, orchestration and integration are maturing. The time is now to explore a container adoption strategy to build a cloud-native environment,” said Pang.
More Hong Kong companies have started to explore a cloud-native environment for faster reactions to the market. One of them is a jewellery chain, who adopted this model for its online e-commerce platform, to roll out new features faster. A cloud-native environment also supports its growing number of distribution channels to realise it omni-channel retail strategy.
Beyond Speed—Agile and DevOps
For many applications, even after they are smoothly deployed, they are often needed for amendments or additional features upon customers’ request. This ability for businesses to amend code fast can be transformative to customer experiences. It is particularly vital for businesses like retail, food & beverage and insurance that are looking to build on customer feedback and rely heavily on strong consumer engagement.
“A cloud-native environment enable continuous development through realising the concept of agile development and DevOps,” added Pang.
Agile development is an approach to promote a tighter feedback loop between developers and customers through providing rapid iterative development cycles. Meanwhile, DevOps encourages a closer collaboration between developers and IT operations to enable a smooth and speedy digital service delivery. But to put these approaches into practice, specific technical architecture is required—a cloud-native environment fits the bill.
Using microservices architecture, a cloud-native environment enables rapid iterative development cycles. These multiple small releases of application features, or microservices, allow users and customers to provide responses throughout the development process, driving more effective and agile development.
To realise the benefit of DevOps, a cloud-native environment brings automated orchestration tools to speed up the provision of computing resources and smoothen the transfer of finished application code into production.
“The promise of DevOps and agile development cannot be realised without an infrastructure support and this is when a cloud-native environment comes into place,” added Pang.
With the easy creation of containers, frequent update of microservices and rapid user feedback through agile development, a manual process to manage server, network and storage configurations becomes an impossible task.
Automation and orchestration are important elements in a cloud-native environment to ensure scalability and availability.
By applying rules to automatically scale different computing resources, scalability in a cloud-native environment goes beyond automating servers, but the entire system. Infrastructure automation at scale also eliminates downtime due to human error.
To ensure availability, orchestration tools also play an important role to discover and manage containers in a cloud-native environment. Any interaction between microservices and creation of new containers need to be found, in order to support elastic scaling and recovery or restart during application or infrastructure failure.
Single View of Hybrid and Multi-Cloud
The demand for orchestration is not limited to a cloud-native environment. With the maturity of public cloud offerings and private cloud development, more enterprises are operating a hybrid cloud environment with multiple public clouds.
While IT executives can enjoy the choices and benefits from different cloud providers for different workloads, the rising complexity and lack of visibility are starting to outweigh the benefits. The challenge to manage multi-cloud environment adds up when more business units subscribes to different cloud services through shadow IT.
To make innovation real with multi-cloud, more cloud management platforms (CMPs) are available. CMPs provide a unified panel to present real-time spending, workload analytics and enable the allocation of resources across different clouds, as if they were a single cloud to optimise spending.
Some CMPs providers also bring professional service to help match the appropriate cloud options—public cloud offerings, private cloud infrastructure or cloud-native environment—with the businesses or workloads. Security management services also help to standardise the policy and audit across different platforms.
Regardless the cloud options enterprises are pursuing, working with a cloud service provider or partner with technical capabilities and business knowhow is essential. Its ability to understand and assess your business to offer practical advice will be the foundation to make innovation real with cloud.
How do you feel about speeding up innovation with containers and microservices?
How do you feel about building a cloud-native environment in your organisation?