A survey from Canonical of 326 IT executives found the most widely employed DevOps tool for managing cloud infrastructure is the Bash shell and command language (53%), followed by the Ansible automation platform (47%) and Terraform (40%). Another 27% reported they used tools they developed themselves.
The survey also found 58% managed their cloud infrastructure entirely on their own rather than relying in part or entirely on some type of managed service.
Not surprisingly, the survey also found that 83% have seen spending on cloud infrastructure expenses increase over the last two years, but 23% have no visibility into how much they are actually spending. Well over half (57%) do feel they are paying “a lot” for cloud infrastructure.
Tytus Kurek, a product manager at Canonical, said during uncertain economic times, there’s now more focus on the total cost of IT. Cloud costs have become a much larger percentage of the IT budget, so more scrutiny is being brought to bear, he added. As such, there’s more interest in FinOps as a framework for programmatically managing cloud costs more effectively, noted Kurek.
However, only 58% said they believed their public cloud costs were predictable. Well over half (53%), however, noted they qualified for discounts on cloud services offered by providers. In comparison, 73% said their private cloud costs were predictable.
The most widely deployed software on cloud infrastructure are web applications (57%), followed by file storage (52%) and databases (51%). The most widely employed cloud service providers were Amazon Web Services (AWS) at 60%, Microsoft Azure (49%) and Google Cloud Platform (GCP) (33%). In terms of private cloud platforms, the most dominant is VMware (40%), followed by OpenStack (28%) and Azure Stack (15%). Only 25% of respondents managed less than 1TB of data.
In general, cloud computing environments are evolving as more cloud-native applications are built and deployed. The bulk of applications running in the cloud today are monolithic. As such, they typically consume a set of IT infrastructure resources dedicated to running that application. Cloud-native applications take advantage of Kubernetes to scale consumption of IT infrastructure more efficiently; over time, the cost of running a cloud-native application should be less than a monolithic application. It’s still early days as far as deployment of cloud-native applications is concerned, so the bulk of applications running in the cloud will continue to be monolithic for many years to come, noted Kurek.
In the meantime, there is a clear need for more automation. Many cloud infrastructure resources are currently provisioned by developers. There is an opportunity for DevOps teams to automate that process so that it is more efficient and more secure. Developers tend to make mistakes when provisioning cloud resources that, for example, result in data being exfiltrated by cybercriminals via a port inadvertently left open.
One way or another, the management of cloud computing is becoming more structured in an era where IT organizations are rediscovering the importance of capacity planning. The challenge is that many organizations have never known anything other than the cloud, and they may not even know how to achieve that goal. On the plus side, however, it may not be too long before the whole process is automated by an artificial intelligence (AI) model that optimizes the allocation of resources without any human intervention required.