Virtual Machines (VMs) are available on Microsoft Azure, providing what is built as a low-cost, per-second compute service, available via Windows or Linux.
$0
Per Hour
Kubernetes
Score 9.1 out of 10
N/A
Kubernetes is an open-source container cluster manager.
We also use AWS Cloud Services, personally, I think AWS is a little more expensive than Azure Virtual Machines but its swings and roundabouts mostly. I prefer the interfaces in Azure Virtual Machines as I feel I'm closer to the Machine than with AWS and my roots are from a …
If you want to host a dedicated Windows server on the cloud, and especially if you want to integrate it with your on premises Active Directory, Azure Virtual Machines should be your first choice. Obviously running Linux on Azure works very well too, but given Azure's pricing is not the cheapest, there are other providers out there that have a better cost-benefit ratio for Linux. That said, hosting Windows on Azure can be affordable (especially when compared to other providers) if you plan your licensing, topology, and application architecture correctly.
K8s should be avoided - If your application works well without being converted into microservices-based architecture & fits correctly in a VM, needs less scaling, have a fixed traffic pattern then it is better to keep away from Kubernetes. Otherwise, the operational challenges & technical expertise will add a lot to the OPEX. Also, if you're the one who thinks that containers consume fewer resources as compared to VMs then this is not true. As soon as you convert your application to a microservice-based architecture, a lot of components will add up, shooting your resource consumption even higher than VMs so, please beware. Kubernetes is a good choice - When the application needs quick scaling, is already in microservice-based architecture, has no fixed traffic pattern, most of the employees already have desired skills.
When demand is high, we scale the service out, eg During a Football Match.
When a football match is over and the throughput of data from OPTA drops we save by the service scaling back in.
Our App Service Plans along with the Clean C# code are lightening fast giving a good customer experience.
When producing the TV Guide information and a program overruns its scheduled time, a client can instantly be updated to the new programming schedule as our change is instant and its in the right place for all the clients to download and adjust their television guides appropriately to send out to the public giving a 24x7 uptime service that is precise and accurate and resilient to outages due to failover zones around the world.
Pricing can be a concern if you are truly agnostic to which cloud you are building your particular solution in.
The UI, as is the case with any cloud provider, is crowded.
As with any cloud provider, it can be difficult to tune in exactly the right amount of servers for your needs...you might find yourself under/overprovisioning.
Local development, Kubernetes does tend to be a bit complicated and unnecessary in environments where all development is done locally.
The need for add-ons, Helm is almost required when running Kubernetes. This brings a whole new tool to manage and learn before a developer can really start to use Kubernetes effectively.
Finicy configmap schemes. Kubernetes configmaps often have environment breaking hangups. The fail safes surrounding configmaps are sadly lacking.
The Kubernetes is going to be highly likely renewed as the technologies that will be placed on top of it are long term as of planning. There shouldn't be any last minute changes in the adoption and I do not anticipate sudden change of the core underlying technology. It is just that the slow process of technology adoption that makes it hard to switch to something else.
No VM console, weak management interface, changing CPU/memory is not straightforward. On the positive side, basic RDP functionality is good to have. As long as things are working, the ability to host Windows VMs is appreciated.
It is an eminently usable platform. However, its popularity is overshadowed by its complexity. To properly leverage the capabilities and possibilities of Kubernetes as a platform, you need to have excellent understanding of your use case, even better understanding of whether you even need Kubernetes, and if yes - be ready to invest in good engineering support for the platform itself
I give the overall support for Azure Virtual Machines a 7 because I think while the overall support do a great job there are still areas that it could improve on such as efficiency and speed. So while I only give it a 7 and it has some issues it is still better than the overall support at Amazon EC2 Auto Scaling.
Azure Virtual Machines offer unparalleled flexibility in provisioning, managing and upgrading the VM instances, both manually and programmatically. AVM offer very granular billing options and enables high costs optimisations (while still being costly). The other competitors I mentioned are very good at offering dead-cheap VMs. But if you need anything beyond that, especially for big computing, you need Azure Virtual Machines.
Most of the required features for any orchestration tool or framework, which is provided by Kubernetes. After understanding all modules and features of the K8S, it is the best fit for us as compared with others out there.
It's so easy to spin up new instances, that it becomes also to easy to have to many of them to manage. Many teams end up with a couple of hundreds of VMs after a short while, making the whole thing very hard to maneuver
Azure VMs are the next step for us to rely on Onprem servers, and leaving the management of the infrastructure to the professionals
The ease of use, is also important when our main focus is to deliver new applications and integrations fast, and not having to worry about infrastructure. We sell bottles, not CPUs