We are now in March 2019, the new
Azure DevOps Server 2019 just got released. Now it is time to have a look to all the hosting possibilities we have regarding the
Azure DevOps product.
But before that, a little clarification on all the names associated to this product.
Visual Studio Team System,
Team Foundation Server,
Team Foundation Services,
Visual Studio Online,
Visual Studio Team Services,
Azure DevOps and now
Azure DevOps Server &
Azure DevOps Services: Easy to be lost when you are not following with attention these evolutions :)
Good news! Now you can forget all of the previous names and keep only one:
Azure DevOps. This is the name of the product, that you can have in 2 versions:
Azure DevOps Servicesfor the SaaS version, hosted by Microsoft in Azure.
Azure DevOps Serverfor the On-premise version, that you can install on your own servers.
Now that the names are clarified, let’s have a look at the advantages and drawbacks of each of the 2 solutions (SaaS or On-premise), and also have a look at a potential third solution (an hybrid solution ?).
A brief parenthesis on access licences
As of March 2019, the pricing for the client access licences (CAL) are the same in both the SaaS and the on-premise version:
- You start with 5 free Basic access licences.
- You can go to the
Azure Marketplaceand buy some additional Basic access licences through the Azure DevOps Services Users.
The only real difference here, is that for the on-premise version (i.e.
Azure DevOps Server 2019), you need to have purchased at least 1 Visual Studio subscription (Professional or Enterprise) to get the right to use
Azure DevOps Server 2019 in production. But I guess that if you are reading this post, that is already the case for you ;)
Azure DevOps Services: Recommended solution for starters in most cases
This one will be pretty straightforward:
- No installation or server to maintain (Scaling, Failover, etc.),
- Automatic upgrade with the latest functionality each sprint (~15 new announces every 3 weeks)
- 1800 minutes per month of Azure Pipelines to Build or Deploy your project using Hosted pools (Ubuntu, VS2017, MacOSX, etc.)
- Free pricing for open sources projects
httpsexposition*, protected with Azure AD (Active Directory*)
- Azure Datacenters Security (No you don’t enter to change manually a hard drive in an Azure Datacenter that easily :)
In short, if you want to use product and not worrying about anything, go for
Azure DevOps Services!
Some drawbacks to keep in mind though:
- English language only
- The location of the data, which is defined at a geographical level and not at a datacenter level (i.e. as of today, you cannot locate your data in France only).
Official reference here
Azure DevOps Server 2019: Keep everything under control (but bear the maintainance associated with it)
Ok, so you are not so lucky as to be able to use
Azure DevOps Services, but you might be interested by running your own version on your own servers on-premise! Main advantages are:
- Multi-languages (French, Japanese, etc.)
- Control over your data location (within your own enterprise private network)
- Control over the
upgradetiming (when you need to validate, plan and guide the users with the new features)
- No limit to concurrency jobs in
- Access to
Artifactspackages within the
In summary, go for the
Azure DevOps Server 2019on-premise version when you have strong requirements about
languages, but be prepared for the heavy workload associated.
Main drawbacks are:
- !!! INFRASTRUCTURE COST !!!: You get the idea: not the easiest thing to match a 99,9% Uptime SLA and a security as high as the one in the Azure datacenters.
- Upgrade cost: yes you have the control over the timing, but planning a migration is not without a cost, especially if you have heavily customized your own version.
The Hybrid configuration with Azure DevOps Server 2019 in an Azure VM, relying on an Azure SQL Database: Intermediary step to move from on-premise to the Cloud?
With the latest
Azure DevOps Server 2019, an interesting new feature make its appearance:
The possibility to run
Azure DevOps Server 2019 on an
Azure VM and rely on
Azure SQL Database managed service for the data.
Official announcement here
All in all, you get :
- The same benefits of the on-premise version
Azure DevOps Server 2019
- No need to maintain hardware and benefit from the elasticity of the Cloud (You need more CPU? more memory? storage? No problem!)
- **No need to manage your SQL Database service **(failover, scaling, backups, etc.)
- My favourite advantage: You get also the benefit of being able to locate your data in a chosen
Azure Region(France for instance) and profit from the security and certifications of the region (Who wants an Azure DevOps product running in
sensitive health data certifiedenvironment such as French HDS (
Hébergeurs de Données de Santéor
Health Data Hosting)? :))
If you need an Azure DevOps Server HDS certified, or if you want to get rid of those physical servers in your office, this Hybrid configuration might be the right choice for you!
For small companies, as well as big companies who want to move onto the Cloud to externalize the infrastructure management,
Azure DevOps Services is the version to go, and if you just want to go one step at a time, the
Hybrid configuration might be a good compromise for a start.
And even if you are not ready to move onto the Cloud right now,
Azure DevOps Server 2019 get you covered and let you manage things the way you used to do.
Hopefully this small comparison have given you some insights. As usual, feel free to come back to me on twitter or anything if you have any question/remark.
May the code be with you!