Businesses are adopting Cloud Computing and the Cloud Native approach to facilitate project scalability and business growth. But more and more cloud resources are needed to support growth, and it is, therefore, natural that implementation costs will increase. But to what extent? To keep track of corporate spending on Cloud services, the so-called FinOps - Cloud Financial Management - comes into play.
What is FinOps?
By the term FinOps we refer to that whole set of practices dedicated to Cloud Financial Operations. It is, in other words, the monitoring, forecasting and optimisation of costs related to the use of pay-as-you-go services, hosted on one or more Cloud providers.
The FinOps Foundation defines FinOps as "an evolving discipline and cultural practice for cloud financial management." It further specifies that FinOps "enables organisations to achieve maximum business value by helping engineering, finance, technology and business teams collaborate on data-driven spending decisions."
The definition fits in theory, but what does the FinOps approach consist of in practice? Let's find out together in the following paragraphs.
Let's start here. Like the word DevOps, the term FinOps refers not only to a discipline, but also to a cultural mindset.
The term FinOps combines two words: financial and operations. It is in fact an approach adopted by an organisation that seeks to promote collaboration between different departments of the company, specifically the operations, finance and engineering departments.
The FinOps model aims to maximise the value produced, without neglecting how and how much the expenditure, in this case of cloud services, affects the end result.
The collaboration model is complemented by a data-driven decision-making model. The latter is set to evolve continuously. It will mature as teams and the organisation itself become more aware of and master the optimisation levers that the Cloud provides.
READ ALSO: FinOps and GreenOps: efficient and green cloud management
What are the benefits of FinOps for cloud management?
Having defined what FinOps is, it is fair to ask what the objectives of this specific approach are. So what is FinOps for? And, above all, why should a company adopt this framework?
Nowadays, a company adopting Cloud Native not only needs to master the fundamental concepts related to the Cloud, such as microservices architecture, containers or DevOps methodology. An efficient financial management model is an enabling and critical factor within any Cloud Native initiative.
- More accurate forecasting, management and allocation of costs 'shared' between different initiatives.
- The reduction of waste (to which the topic of the Green Cloud and thus CO2 emissions from unused computing power is also linked).
- Greater financial responsibility on the part of IT teams, and thus a financially responsible use of the Cloud.
READ ALSO: DevOps: What it is and how can you best introduce it in your Company
How can the effectiveness of FinOps be measured?
Thanks to the FinOps model, organisations can collect and organise all the KPIs needed to evaluate the project's progress. In this way, it is possible to understand whether the assumptions made during the drafting of the business case are in line with reality. Above all, it is possible to analyse all necessary corrective activities should these assumptions be disproved.
An example may be the assumption of the load volumes that need to be supported and, consequently, the number of consumable resources that need to be purchased. But how exactly?
FinOps provides a specific framework that companies can adopt. By means of reporting capabilities, tagging operations and capacity plans, the FinOps framework makes it possible to construct a homogeneous view - if there is more than one cloud provider being monitored - and above all one that can be understood by all the various departments of the organisation.
The birth of the FinOps framework
The FinOps framework, has been formalised by the FinOps Foundation. It is a programme sponsored by the Linux Foundation and dedicated to evangelising the IT industry to the discipline of Cloud Financial Management, through the definition and sharing of standards and best practices. Within the FinOps framework, and consequently in each of its implementations, we have:
- The principles: i.e. the fundamental points on which the collaboration between cross-functional teams is based and the level of responsibility that each of these actors has in the implementation or governance of the initiative.
- The personas: i.e. the professionals that need to be involved in a FinOps project.
- The phases: i.e. the steps and related actions to be taken by the organisation and teams according to their degree of maturity. The approach outlined by the FinOps Foundation is of the crawl, walk, run type, i.e. iterative and incremental.
- Domains: understood as the areas on which operational activities resulting from the decision-making process can and/or must intervene.
The structure of this framework follows the evolution of the industry. Therefore, the subject areas just described may change with the advent and adoption of new computational models associated with emerging trends, such as the Metaverse or decentralised/Web3 computing.
The principles of a Cloud FinOps model
As mentioned above, the principles of the FinOps model define the guidelines on which the different corporate roles operate and collaborate with each other. Let us look at them in detail:
- Teams must collaborate. An organisation that wants to adopt the FinOps model, but at the same time maintain vertical silos, loses the ability to make decisions taking into account all points of view of the company.
- Each team is responsible for its own costs. The sizing and allocation of cloud costs is the responsibility of the sponsor/owner team of the initiative.
- Centralised governance. There is a central board that coordinates and supervises the implementation of the FinOps framework.
- Timely and easily accessible reporting. Producing the KPIs/reports associated with Cloud costs should not be time-consuming, but as close as possible to Self-BI models.
- Value & Data driven decisions. Choices based on the value that the Cloud has in that particular circumstance, choosing the appropriate hosting model also in relation to the strategic nature of the initiative.
- Exploiting the benefits of a dynamic cost model. This is a cost model that encapsulates not only computing capacity costs, but also licence costs (which have traditionally been an independent cost item). This allows for a double level of consolidation and optimisation.
The structure of a FinOps team
A FinOps team is a heterogeneous team, bringing together different professions and areas of the company that contribute in a participatory manner to the creation of value for the company.
A FinOps team, as well as any cross-functional team, lends itself very easily to the outsourcing of certain profiles/roles. This allows not only to optimise resources, but also to make use of skills that are not necessarily present in the company, and which are nevertheless key to the successful implementation of a FinOps strategy. The key roles are:
- FinOps Practitioner: facilitator and expert in the FinOps framework (similar figure to Scrum Master).
- Executive: focus on accountability, transparency and progress of the FinOps initiative (budget and time).
- Business/Product Owner: focal point for internal initiatives where the Cloud is a key element.
- Finance/Procurement: work with the FinOps Practitioner to interpret the data and metrics collected.
- Engineering/Operation: responsible for the delivery and maintenance of product value.
How to implement the FinOps model?
Having come this far, we have realised that the proper financial management of Cloud services is critical to the success of any Cloud project. So how do you apply FinOps principles in your reality?
Regardless of a company's level of maturity, the FinOps framework can be adopted by following a well-defined path. In the 2023 Meeting "Cloud and FinOps Cost Management", organised by the Cloud Transformation Observatory of the Politecnico di Milano, the three phases that constitute the FinOps lifecycle were described.
The first phase provides the visibility needed to create shared responsibility. The second phase is aimed at identifying efficiency opportunities and determining their value. Finally, the last phase defines and implements processes to achieve technology, finance and business objectives. Let us look at the three phases of the FinOps life cycle in detail:
1. First phase: inform
The first phase of FinOps focuses on cataloguing cloud expenses to obtain accurate chargebacks and showbacks. In this phase, the dynamics of Cloud usage by business teams are also analysed.
KPI for the first phase: percentage of Cloud costs correctly allocated via chargeback.
2. Second phase: optimize
Once cloud expenses are mapped and the necessary skills acquired, companies need to optimise their cloud presence, e.g. with rightsizing and automatic shutdown activities. The census of business needs makes it possible to limit the use of generally more expensive on-demand services.
KPI for the second phase: percentage of Cloud in commitment vs. Cloud on demand.
3. Third phase: operate
Organisations begin to continuously monitor business objectives and benchmark KPIs, involving the Cloud Cost Centre of Excellence built around business, financial and operational stakeholders, who also define the appropriate policies and governance models.
KPI for the third phase: deviation between Cloud expenditure forecast and actual expenditure.
FinOps and Cloud Native: technological declinations of the model
If you have defined the appropriate team and understood the steps for adopting the FinOps model, you are one step closer to more efficient management of Cloud services. Now, however, you need to understand how to implement the guidelines identified in the Benchmarking/ Optimisation phases described in the previous section from a technological point of view.
In a Cloud Native context, the reference architecture makes use of a microservices model hosted within a Kubernetes-based cluster (be it RedHat's OpenShift, AWS's Elastic Kubernetes Service or Microsoft Azure's Azure Kubernetes Service, or others). In this context, it is possible to dimension, govern and monitor the resources allocated or to be allocated by means of technological capabilities. These capabilities, which can be defined in the deployment/design phase, are:
- Resource request/limits: Identify at Pod level the resources that can be requested and are needed for the service;
- Quality of Service: The type of workload, in order to optimise the scheduler's node utilisation density
- Namespace: Logical segregation within the cluster that allows the definition of a maximum CPU/RAM ceiling that the pods contained within it can commit;
- Autoscalers: Both vertical and horizontal autoscalers help to adjust the number of replicas of a given POD within the cluster.
Observing and educating oneself about these guidelines (or even deployment settings) makes it possible to keep the actual utilisation of computing capacity - be it cloud or on-premises - under control and maximise its utilisation density.
Finally, through appropriate data collection and reporting tools, it is possible to convert technical metrics (CPU/RAM based) into more easily understandable monetary values. This is in full compliance with the cardinal concept of transparency and reporting that can be easily consulted and understood by all company stakeholders.
How can FinOps evolve in the future?
The FinOps philosophy and practices are fairly new, yet it is already transforming the way organisations manage their cloud infrastructure. What does the future hold for FinOps and the companies that will increasingly use it? There are a few areas where FinOps is expected to evolve the most.
One of these is the ecosystem of tools for Cloud Financial Management. As companies improve their FinOs approach, the tools will be constantly evolving, with more and more vendors and variety of proposals.
New aggregation tools for cloud cost management will be added to current proposals (such as Flexera One, Cloudability, CloudHealth), but also new automation tools (in addition to tools such as Ansible, Terraform, Kubernetes) and optimisation tools (such as NetApp Spot).
Another aspect of FinOps' evolution concerns the increasing correlation between cloud spending and business value. The cultural shift triggered by FinOps will reach a point where cloud spending will be considered directly based on the business and economic value it can generate. Clarity on spending and accurate metrics will help organisations create business performance-based targets and identify where they should invest to drive value.
In other words, the data-driven approach to cloud and IT spending decisions will become more and more predominant, supported by new, increasingly accurate and comprehensive tools.
Conclusions
The FinOps model is an approach to improve the financial management of consumer Cloud services. It is useful for organisations exploiting the potential of the Cloud and even more so for those that are growing and managing complex Kubernetes clusters.
As we have seen throughout the article, the FinOps methodology provides a specific framework that companies can adopt to manage cloud costs and properly balance speed, cost and quality. In this way, it is possible to make more efficient use of the Cloud, invest without waste and continue to grow.
- Previous Post
- See all posts
- Next Post