Microsoft says 40 percent of all VMs in Azure now are running Linux
zdnet.com
zdnet.com
I still don't like though.
How do you even get that from these comments? Is 3 comments 'lots' now?
Is this your first time on Hacker News?
With MS, the EEE process should be your null hypothesis when you are trying to predict their behavior.
Having said that, I am not against the idea of taking advantage of an opponent who prostrates themselves, just make sure that you can safely extricate yourself from the trap. If you want to deploy on Azure, make sure it's a multi cloud deployment with some insulation above the infrastructure, like Mesos or Kube. Which precludes using the more specialized services, but seriously, who pipes unencrypted data through 3rd party message queues? That's just crazy.
It's only been 200 years. ;-)
Tie that to experience with Hyper-V. Companies like mine who have unused Hyper-V capacity due to Microsoft's ridiculous VM licensing scheme for Windows, tend to run Linux instances on that extra capacity. The high performance of Linux on Hyper-V was an eye-opener for us. I could see us using Azure for Linux.
That said, we are 99% AWS, and I don't see our online platform ever moving from them.
Microsoft offers at least three different ways to license Windows to run on a VM in-house. Core count, instance count, or site. Are all three "ridiculous?"
None of Microsoft's license types require a certain Hyper-V capacity. In fact the whole "we were required to over-allocate Hyper-V so run Linux on the spare capacity" claim makes no sense.
There is only core licensing, and you have to license all cores in a hypervisor, 16 minimum, and then you can only run two Windows Server instances unless you re-licensing all cores on the host a second time. The exception to that rule is Datacenter edition, which is only cost effective for large businesses running high-density servers. (7.5x the price for the same number of cores vs. Standard.)
http://download.microsoft.com/download/7/2/9/7290EA05-DC56-4...
Volumes would become read-only for no good reason, VMs would reboot...
At least, when we moved to AWS, our software was exquisitely resilient, with multiple levels of degraded functionality everywhere.
Sometime in the next couple years I'll likely migrate it to a vhdx, but this was quick and easy to setup.
We ended up here, because as I mentioned, I just moved the RAID into the new box, and mounted at the place the VM needed to have it, that made the setup process much faster.
Hyper-V Server 2016 has improved things even further when running your images on ReFS. Near-instant checkpoint creation and merging.
It has worked so well that we abandoned ESX (except for one appliance maintained by an unenlightened vendor who refuses to support anything else), and KVM, and now manage all (but two) of our VMs in Hyper-V Manager. Plus, it makes backups a breeze, because (like most modern backup solutions) Arcserve UDP supports agentless backups of Hyper-V VMs.
Like GP said, I can see very few compelling features to adopt Microsoft's platform. Is there a killer feature I'm unaware of?
edit: clarify. And "burn, karma, burn"
I'm still a FOSS shop. The people developing all their FOSS on Macbooks using a proprietary OS are still FOSS shops too.
The world isn't black and white.
Anyway, the thing I like about Azure over AWS is that it's more organized and simpler to deal with. Azure is focused on high-quality while AWS pretty much throws spaghetti at the wall to see what sticks. That's why AWS has 3 of every type of service.
So somewhere down the road, even if I quit and decide to work with FOSS, for me the reason might be familiarity - which is not unlike the reason a lot of people insist on using other Microsoft products.
While I personally feel the performance of Azure is bad vs cost, and the management portal is a mess UI and performance wise, it's a decent product. Nothing like deploying your app from scratch from Git in a couple of clicks.
I also filed a support call the other day and got truly exemplary phone support within a few hours from someone who definitely knew their stuff.
With that being said, the typical appeal of Azure (and likely other cloud providers) are the PaaS services. Those typically do have Windows VMs sitting behind them, although we are starting to make Linux an option on most of those.
Very few people start a project using SQL Server if they're not otherwise using MS stuff.
Sometimes it's because a long time ago the service was done by a whole different set of people and now some other group has inherited it and just doesn't want to port it to something else even though everything else they use is open source. These are typically the groups who go to the Azure SQL PaaS service because they don't want to manage something that they don't really care for.
There is a ton of fragmentation out there :)
Postgres is free and usually good enough. If you are going to pay, Oracle is generally better. The ground that mssql wins for a non-microsoft shop is verrrrry small.
In short, there are reasons, they likely aren't ones that matter to you, but they exist (as I type this from my RHEL7 work desktop!)
[1] https://docs.microsoft.com/en-us/azure/virtual-machines/wind...
Source: Am MSFT dev on the Azure side of things.
Goes to show Linux has truly become the swiss army knife of computing.
Windows is a window manager for Chrome, vagrant/vbox, putty. I even use OWA for outlook on windows.
More seriously, it's not portable and not something I want to invest in any further brain-wise. Plus you can't drive half of it with vagrant. I burned about 4 days recently learning that.
Part of the reason is very bad design of the case, but also the terrible UX of Windows 10 compared to Ubuntu. I think most Windows users would be amazed if they tried Ubuntu.
Windows 10 shows significant signs of software senility, which inevitably follows maturity.
Even if the manufacturer does make Linux drivers available, they frequently don't actually work with the hardware. For example, the wireless card in my laptop only has one of two antennas and the default Linux driver tries to use the wrong one. The Windows driver somehow works around that, but on Linux I'm dependent on the work of one amazing guy who makes the driver actually work: https://github.com/lwfinger/rtlwifi_new
- Loads of things in the start menu that I don't need and cannot uninstall (like XBox games).
- Unwanted monitoring which needs to be explicitly turned off.
- Forcing Edge down my throat at every opportunity.
- Automatic updates still restart computer without warning.
- Unwanted wi-fi communication even in sleep causing huge battery drain.
- Ugly appearance.
I am sure there are other things that bothered me but I already forgot. They really lost their marbles.
It's not perfect but it fixes many of your complaints including disabling stupid MS Store Apps you'll never use, turning off tracking, disabling cortana and giving you better control over updates.
Compared to our Linux VMs on GCP, which get millisecond sync and stay that way because NTP actually works on whatever platform they use.
It's shocking that Windows still has no proper NTP support and people are OK with their clocks being so off. Makes logging and debugging certain issues a bigger pain.
On the other hand, there's arguably little reason to use Azure if you just want Linux; it's less mature than AWS and not generally cheaper. I suspect most Linux users have some sort of hybrid system and are using _both_.
This would for example control for development environments and pet projects as compared to production projects running on the platform.
Here, fixed that for you.
Here's a couple of ideas:
1. Linux support. If you look in Azure documentation they never say they support any Linux distro - they "endorse" a couple. Amazon provides their own for of Centos with all the conveniences like having the AWS CLI pre-installed. Incidentally Azure is the only cloud platform where I've had machines kernel panic randomly.
2. A consistent interface. The Azure portal has been under development for over 2 years now but you still need to use the "classic" interface for some settings.
3. Database support. Other then MS SQL Server. MySQL is supposed to be in beta. It's been in AWS since 2009. Also Amazon is developing AuroraDB which is, supposedly, optimised to work in AWS.
4. Availability zones. Again in preview in Azure but have been in AWS since 2008. What's also interesting is, up until now MS marketed "Availabilty sets" as the Azure version of AZ. One is a guarantee that a box will be spun up on a different rack within the same datacenter, the other guarantees the box in a separate DC.
5. A consistent API. And I don't mean the definitions being immutable - that's actually handled with schema versioning. I mean getting the correct responses. Although unchanging API would be nice as well.
Here's an example: https://drive.google.com/open?id=0Bz59vPCFY-fham1qN1E1MnZBcl... (3mb video). What basically happened was, I would deploy my environment, run Ansible against it and get errors/unconfigured nodes. So what happens in the video is: I run 'for i in 1 2 3; do azure vm list; done' and get three different responses: a list of VMs, an error message saying I have insufficient access rights to list the VMs and an empty list. All are incorrect. The first one is the closest to the truth but it's still missing one box. I get eventual consistency is a thing, but this was >30min after the boxes had been provisioned.
So to answer your question as to what is needed for Azure to become a viable alternative to AWS: I would say about 10 years.
George Lucas predicted this in 1983.