AI in Cloud Hosting - Automation, Efficiency & Limitations
Artificial intelligence has been a hotly debated topic over the last year with the popularity of the search term constantly increasing, reaching over 30 million average monthly searches:
Sortlist via Statista, 2023, ‘Average monthly search volume for the keyword "AI" worldwide from June 2022 to March 2023’
While the potential of AI is currently being explored in all existing fields worldwide, technology remains one of the most popular sectors, with generative AI for example being utilized by over 35% of all US companies:
Fishbowl via Statista, 2023, ‘Rate of generative AI adoption in the workplace in the United States 2023, by industry’
But while marketing and technology remain on top of the list, it is not surprising that artificial intelligence is starting to get integrated into other fields such as consulting and teaching. This global implementation is further fueled by the continuous growth of the global AI market, which is expected to reach 21 billion dollars by 2030:
Next Move Strategy Consulting via Statista, 2023, ‘Size of explainable artificial intelligence (AI) market worldwide from 2021 to 2030’
But how will artificial intelligence affect our field of cloud hosting? We decided to find out for ourselves by putting theory into practice. We curated a list of hosting areas that can benefit from AI implementation and ran some tests in order to evaluate whether artificial intelligence can indeed revolutionize cloud hosting. Here’s what we found!
Automating cloud hosting processes with AI
The first and most important aspect of cloud hosting that artificial intelligence can help improve is process automation. In order for a hosting business to be successful, it needs to implement multiple features into one seamlessly-working machine. These processes involve anything from software development and integration to server management and customer support, which can all be automated with AI.
Using artificial intelligence to detect server errors
When it comes to hosting, the most integral part of any business is to ensure that all servers are constantly running. Any issues that occur with the servers, be it technical or logistical, can result in unexpected downtime, which consequently leads to unhappy customers.
Rather than having to build an entire monitoring network (from scratch) to track each and every node, hosting providers could look into developing a system that relies on artificial intelligence. This AI-based solution will be able to immediately detect server faults and take actions quickly such as swapping the node to a different IP address in order to avoid downtime. The AI implementation will also be able to take initial action to suppress the issue until the system administrator tends to it.
Additionally, a fail-safe system could also be developed and integrated with the help of AI, which will ensure that all information and data is stored and backed up prior to shutting down or restarting any nodes.
We decided to put this to the test and fired up Python. After creating our machine learning algorithm, we allowed it to study our system. We simulated a sudden high influx of traffic on a test node in order to check how our algorithm would respond. Surprisingly enough, the bot was capable of indicating the problem within just a couple of runs:
The logs were also successfully received by the administrator, which goes to show that with the correct configuration and setup artificial intelligence can be used to detect server issues.
Traffic routing & avoid bottlenecking
Each individual server manages incoming traffic in order to avoid bottlenecking issues. However, with virtual machines and cloud hosting, things are a bit more complicated. Due to the fact that there are multiple virtual instances running on the same physical server, traffic management is essential to avoid any disruptions.
Generally speaking, in order for a website or application to load as fast as possible for the final user, all traffic and requests need to be routed through the fastest possible channel. While this can be easily configured for on a smaller scale, it can turn into an issue that grows exponentially with the number of nodes and the available resources.
If we zoom out, traffic routing is similar to the traveling salesman problem (TSP), which requires in-depth machine learning algorithms in order to produce a functional solution. We also wanted to check whether this was possible and created a very simple AI bot that utilizes generic algorithms in order to find the fastest route for incoming traffic.
After a week of learning, our custom AI solution was able to identify the most optimal path in 25% of all scenarios. While this does not seem that impressive at a first glance, it displays the potential of AI if it is given more time to learn.
Even though there are tools that can help with routing, having an automated system that can manage traffic on its own will lead to better performance, faster loading times and less resource investment.
Calculating server resources & deploy nodes with AI
One issue that cloud hosting providers often experience is resource calculation. Each physical server has a given amount of CPU cores, RAM and storage. When a customer orders a virtual machine, a new instance is deployed on the server, reserving a part of the resources.
However, a server can have many VPS instances, which all differ in resources. This makes deploying new nodes a more complicated task as providers need to take into consideration both the resources in use as well as the remaining server resources in order to maximize the server’s capacity.
To test this, we created a simple algorithm that we first configured to equally fill up 4 imaginary cups without knowing how much water is going to be poured out each time. The results showed that the algorithm first tried to fill up 1 cup at a time. Afterwards, it chose to fill them up simultaneously, keeping the levels equal across all 4. In one of the tests, the results showed that the algorithm was trying to put the higher amount into 1 cup while filling the rest with the lower amounts:
We then gave it all of our hosting plans to study and provided the algorithm with 3 test servers. Afterwards, we began deploying VM configurations with different resources to see how the algorithm would spread the nodes out across the servers. The test showed that the second option of equally spreading all nodes across all servers was the most optimal one. However, this is also the most expensive method, requiring providers to buy multiple servers, which can lead to losses if they don’t fill up entirely.
Due to this, we have to conclude that AI can definitely be used to calculate server resources, but it needs more time and calibration in order to be effective. Ultimately, if implemented correctly, artificial intelligence will not only save time and effort for the provider, but will also ensure maximum performance for each client.
Installing additional software on a cloud server
One of the most tedious, and sometimes most complicated tasks, for cloud hosting users is having to manually install additional software. While many providers do offer servers with pre-installed applications, such as our app templates, some customers still prefer to install other software by themselves.
While more experienced users do have sufficient technical knowledge and are capable of manually installing software, there are those who are just starting out and are not that familiar with cloud servers, let alone with using the terminal, SSH or any other tools.
This is where artificial intelligence comes in. As we already tested in one of our previous articles, it is currently possible to use AI such as ChatGPT to create a step-by-step tutorial that intricately describes how to set up a given application on your cloud server.
To summarize, for our experiment, we asked ChatGPT to create a list of instructions that could be used to install WireGuard VPN on a server. The instructions that it generated were really straight-forward and we managed to set up our own VPS-hosted VPN server in a matter of minutes! We also conducted the same test with Google’s AI - Bard and also got really detailed instructions on how to set up everything.
These results prove that artificial intelligence can be extremely useful for creating tutorials. Additionally, this also goes to show that if configured correctly and given enough direction, AI could potentially be used to automatically set up applications or ISO files on a cloud server. This will be slightly more difficult to implement than the aforementioned automations because of the different programming languages, packages and software versions.
Generating a server configuration based on user input
In the previous section we briefly discussed that some customers might not have substantial technical experience when it comes to hosting and server management. Additionally, there are also users who have never bought a server and don’t know how to choose a configuration.
AI can be extremely helpful for those potential customers that need a server but don’t know which type to choose. Additionally, each provider has their own set of hosting plans, all of which have predefined resources including CPU cores, RAM, storage space, bandwidth and any other additional features.
This information might be difficult to understand for those with no prior technical experience. What if instead of manually configuring a server, an AI bot asked the customer a few questions such as:
- Why do you need a server? (e.g. host a website, host a web application, start a blog)
- How much traffic do you expect to get each month? (e.g. 100, 1k or 100k users)
- How much are you willing to spend on a server each month?
- Will your website/application use interactive elements or images?
- Will you be using your server only for storage?
This would turn the configuration process into a conversation, making it much easier for the customer. Then, based on the answers, the client would be presented with an optimal configuration, which they can order.
We decided to give this idea a go and went directly to Microsoft’s ChatGPT and Google’s Bard and asked both of them to recommend a server type and a more specific configuration that we can use to host our website.
Both Bard and ChatGPT provided us with sufficient information about the different server types. We did also get good recommendations from both with them also giving us additional information about some additional features which could be useful to get.
Although not conversational in nature, this proves that AI can be used to generate a configuration based on user input. We then decided to test out this theory and we created our very own ‘V-Bot’ that we used in order to generate configurations based on user answers.
Creating V-Bot and testing it for our platform
When we created our very own config generation bot, we wanted to test out how it would perform based on user answers (with dynamically generated questions) and based entirely on user input. We created a dataset containing server-related questions, which we then gave to V-Bot to study. We also provided it with our services and hosting plans and after a few test runs, the bot was ready to be deployed.
We decided to implement A/B testing, offering dynamic questions to one group of users that wanted to try out the feature and an input box to the other group of people. This would ultimately indicate whether questions or complete user input would be the way to go if we were to implement this feature in the future.
Generating a config with dynamic questions
With dynamic questions, V-Bot generates specific queries based on all previous customer answers. Each question has multiple answers that the client can choose from.
The bot begins by asking us whether we are looking to host a website, a web application or if we want to get a server for storage purposes. It then generates a second question, based on our previous answer and the process continues until V-Bot has gathered enough information about our server needs.
The number of questions differs based on the responses, but will never exceed 10. Once all the questions have been answered a ‘Generate Configuration’ button appears that when clicked, will present the customer with a server configuration:
Based on our answers, V-Bot concluded that a 2GB Cloud VPS plan would be enough for our needs. Given that we said that we will be running a blog and we want to have a CMS, the bot also automatically included our free WordPress application template, allowing us to save time and get a cloud server with WordPress pre-installed.
Generating a config with user input
The second landing page features a blank text input, which we can use to describe why we need a server and what we are going to be using it for. However, this option requires the development of an in-depth machine learning algorithm that can understand the input and also make accurate assumptions based on the input, which we did not fully implement. Hence why, the results from this test did produce different results. This is due to the fact that some customers don’t know what type of information they need to provide.
The generated configuration was different than the config, offered by the dynamic questions option:
Given that the second method relies entirely on user input, the bot was not able to identify that we wanted to get a server with a CMS. Since we did not mention that in our prompt, the bot did not recommend it as an option. Additionally, we were also offered a configuration with more storage space.
Overall, the results from both tests show that it is definitely possible to implement AI when it comes to suggesting a server configuration. Our tests suggested that using dynamic questions was the better approach. This is because this option gave customers guidance. V-Bot also benefited more from this as it was able to generate a more accurate server configuration.
The second option that relies entirely on user input can still work, but it needs to be developed further.
AI-managed server (based on user instructions)
Again, focusing on those users that don’t have technical experience in server management, AI can also be utilized in order to help operate a cloud server. Many providers offer features like automatic server snapshots and backups and floating IPs, but newer customers might not know about the benefits of these features or how to utilize them.
To help with this, an AI assistant could potentially be created and integrated that would advise customers on how to operate and manage their server. For example, it could prompt them to backup their files if they are going to be making any changes or database migrations. This would allow customers to restore their website or application.
The assistant could also help clone a server from a snapshot or notify a customer that a given license is about to expire so that they can renew it in time.It could also indicate that the customer should change to a floating IP address due to system issues in order to avoid any downtime.
Ultimately, this assistant would also be able to automatically perform these actions based on the customer’s inputs, which would automate the entire server management process. Using artificial intelligence will also result in the creation of a new hosting branch, adding AI-managed to the already existing managed and unmanaged hosting options.
While we did not test out this theory due to scale and complexity, we do believe that this is possible to incorporate, given that AI is becoming more popular in the fields of customer support and assistants.
AI-powered customer support
It was recently concluded that about 40% of US adults were interested in AI products, specifically when it comes to customer support:
Morning Consult via Statista, 2023, ‘Share of adults in the United States who are interested in artificial intelligence (AI) related products as of February 2023’
This data depicts the fact that artificial intelligence can be really helpful when it comes to customer support. Chat bots are becoming more and more popular and tools like ChatGPT and Bard have made it obvious that AI is not only becoming the future in terms of online searching but also support in relation to user queries.
Due to this, it’s not surprising that companies like Amazon, Facebook, Twitter and even Google’s now discontinued project - Allo all utilize artificial intelligence to create chatbots that make use of natural language processing algorithms to understand and help with user queries. Uber, on the other hand, implements AI into their customer support bot that can capture user emotion, allowing unhappy customers to be directly connected to a human agent.
If you are a hosting provider, it is essential to have a customer support team that can respond and help fix any issues in a quick and timely manner. Implementing an AI-based ticket system can help providers manage all incoming customer queries, resulting in lower wait times.
While artificial intelligence will not be able to resolve all issues, it will definitely make ticket management easier. It could offer customers immediate answers to their questions while also being able to distribute each ticket to a system administrator that can immediately assist the customer to resolve any issues. Such a system could also be trained to automatically fix minor server problems in order to save time, which developers and sysadmins can use to create new or improve current features.
We decided to put this to the test and created our own AI assistant. We let the bot study a list of some of the most common questions that we get and the results were quite good with the bot being able to answer about 90% of the most generic questions.
But having a pre-generated list of responses is like having another FAQ page, which is just easier to access. We also wanted to try to incorporate a system monitoring status and allow the bot to give accurate feedback based on user input. After quite a few failed attempts, the bot was able to accurately respond to our query:
It also created a system log with the server errors, which it then sent to the system administrator to review. The bot also created a task for the sysadmin and marked the issue as pending. While the test was successful, such a system would need a lot of time in order to become fully automated.
Cut hosting costs & save resources with artificial intelligence
Running a hosting business can be extremely expensive. Our servers for example utilize only premium hardware, featuring AMD EPYC CPUs and NVMe SSDs. The price of these powerful components can scale quite substantially as the number of servers increases. While it’s not possible to lower the cost of the components, providers can cut some corners elsewhere with the power of AI.
Develop new software easier with AI
First and foremost, providers can utilize artificial intelligence to develop new software. As we previously mentioned, AI can generate installation scripts, solve problems and help produce new software by finding answers to different development questions almost instantly.
This will save a substantial amount of time and effort, allowing developers to focus primarily on coding, designing and testing rather than having to spend countless hours looking for a solution to a given problem online.
Low maintenance costs
The same principles of time saving apply to system administrators. AI can be used to automatically detect and inform sysadmins of any issues that occur on a given node.
Similarly to the point we made previously about customer support, artificial intelligence can be utilized to even perform minor fixes, allowing administrators to focus on the more important issues. This again saves time by optimizing the process and setting task priority.
Lower position entry requirements
AI can also make it easier to get into the field. System administrators can sometimes be difficult to find as the position requires specific knowledge and an ability to work with different software and operating systems.
Artificial intelligence can make it easier for people to get into the field by lowering the entry requirements. Instead of needing to have in-depth knowledge of the aforementioned areas, candidates would instead need to know how to operate and work alongside the AI system. This will allow new staff members to get to know how the business operates as well as allow them to identify any areas for improvement.
Additionally, this would also allow potential employees to learn faster and to be integrated into the working environment much quicker.
AI can make hosting more efficient
In addition to process automation and saving resources, artificial intelligence can also be used to improve the efficiency of any hosting platform while keeping the customer’s privacy and security in mind.
As we previously discussed, artificial intelligence can be used to detect server issues and take immediate action in order to keep the affected nodes online. Automatically switching IP addresses is one of the solutions that can be configured with AI. This can also be utilized when there is planned server maintenance in order to reduce the downtime to 0%.
Stronger security & algorithm detection
AI can also be used in order to help identify and detect any security issues across the hosting platform. A special AI-based security system can be created, implemented and deployed to monitor each node, which can immediately notify the customer if there are any security breaches or attacks that are currently targeting their server.
The system will then take immediate action in order to keep the server secure without any disruption. This will be particularly useful for repelling DDoS attacks, with the AI system being trained to differentiate between real and fake influxes of traffic.
Artificial intelligence will be able to detect patterns and algorithms that attackers use to try to break into a given node, which is a laborious task that is currently performed manually by system administrators.
Better privacy protection
Another aspect in which AI can help is customer privacy protection. We at VPSBG, for example, take our clients’ privacy very seriously.
That is why we don’t use any third-party cookies or anywhere across our website or platform. We utilize only open-source software and we also upload all of our app installation scripts to our GitHub repository.
With the help of artificial intelligence, privacy protection can be taken even further. AI can help encrypt data and server information as well as personal details across the entire platform.
This would mean that even if someone were to hack into a customer’s account, they would not be able to extract any information or perform changes without the appropriate decryption tools.
AI limitations in the hosting industry
While all of the mentioned suggestions seem very probable and our tests do show very promising results, there are still some limitations due to which AI can still not be fully integrated into the hosting field.
Artificial intelligence is a powerful tool that can save time and resources, but human system monitoring is something that can not be currently replaced. AI is not yet capable of performing tasks that require a thought-out solution - it merely utilizes available information unless it’s trained to understand each and every aspect of the system that it is supposed to oversee.
Teaching the AI network in order for it to become competent enough to deal with issues and produce accurate responses to customer queries will take a very long time and there is no guarantee that the outcome will be positive. Due to this, AI is currently being predominantly used to automate tasks that will produce the same or almost identical results every time.
Additionally, artificial intelligence can develop a sense of bias, depending on the resources or inputs that it studies, which can result in false information and create more problems than solutions.
This is also one of the reasons why many people are still skeptical about the use of AI. Another reason is the concern that AI will replace people at their workplace, with older US citizens for example, being concerned that the implementation of AI will lead to less job openings, whereas young adults tend to disagree:
YouGov via Statista, 2023, ‘Do Americans think artificial intelligence will lead to there being more jobs for people or fewer jobs?’
While this is yet to be seen, hosting will remain a field where human interaction is irreplaceable. Even though some tasks can be automated, the complicated nature of the field will always require manual management and maintenance.