Jak využít zdarma Azure DevOps Services a za co je třeba platit? Mnoho malých týmů a jednotlivců zcela vystačí s limity free úrovně. Velké týmy mívají zase problémy vše správně napočítat. Pokud se k tomu přidá podivně znějící email o změně cen, který nyní chodí největším zákazníkům, vyvolá to mnoho dotazů. Níže najdete doufám stručné a pochopitelnou odpovědi.
Azure DevOps Services
Azure DevOps Services (historicky Visual Studio Team Services) je cloudová služba určená k podpoře práce DevOps týmů. Její onprem obdoba je Azure DevOps Server (bývalý Team Foundation Server). Cloudovou službu Azure DevOps Services používá i ~ 80tisíc vývojářů Microsoftu. Obsahuje následující hlavní skupiny nástrojů:
- Azure Boards – agilní nástroje pro plánování práce, sledování a debaty mezi týmy.
- Azure Repos – práce v neomezených privátní úložištích Git a TFvc
- Azure Test Plans – pro plánování a správu manuálních testů a load testů.
- Azure Pipelines – CI/CD orchestraci včetně možnosti využití build/release serverů Windows, Linux, MacOS
- Azure Artifacts – package management pro Maven, npm, NuGet, Python … balíčky a feedy.
- A spoustu dalších integrovaných maličkosti kolem jako Wiki, Marketplace doplňky, věci kolem identit, auditingu, atd.
Licencování Azure DevOps Services, cena za uživatele na měsíc a další náklady
Obecně se počítají uživatelé zavedeni do systému nebo služby, které jsou spotřebovány nad free limit v rámci konkrétního tenantu. Určití uživatelé mají tedy „zcela odpuštěnu platbu“ a nemusí se za ně platit nic. Veřejné open source, tzv. public projekty mají zase možnost využívat free paralelních buildů s neomezeným časem a nabízí free read only přístup pro každého. Pro zjednodušení se budeme ale zabývat komerčním světem v privátních projektech. Azure DevOps Services se zde, nad rámec free úrovně, platí vždy přes nějakou Azure Subskripci.
Vždy něco zdarma v rámci každého tenantu
Azure DevOps službu lze založit zcela zdarma i pro komerční účely, bez kreditky a pro maličký tým je free funkčnost mnohdy zcela postačující:
- Prakticky neomezený prostor v Git nebo TFvc úložišti pro vaše zdroje
- 5 standardních uživatelů (Basic user) je vždy zdarma na každý tenant
- Všichni uživatelé zalicencováni aktivním Visual Studio Subscription zdarma
- Neomezený počet uživatelů typu Stakeholder (nemůže do repa ale vkládá bugy, tasky, …) zadarma
- 1 x souběžné využití cloud build/release serveru (služby) v rámci hosted Pipelines max. 30h měsíčně.
- 1 x souběžné využití vašho privátního build/release serveru, private Pipelines, neomezený čas.
- 2 GB prostoru na package management v rámci Artifacts
Ceny nad free limity
Pokud se nevejdete do free limitu, je třeba napárovat Azure subskripci otevřenou k platbě a uživatelé nebo služby nad rámec free úrovně budou účtovány zpětně po měsíci na vrub dané Azure Subskripce. V jednom firemním tenatu může být mnoho týmů a mnoho projektů a mnoho uživatelů ale ve finále se pak vše účtuje na jednu provázanou subskripci.
Oblast | Free limity a free uživatelé | Cena nad free limit |
Boards Repos | 5 uživatelů vždy zdarma + všichni Visual Studio předplatitelé + všichni uživatelé Stakeholder | 6$ na uživatele měsíčně |
Test Plans, Test Manager | všichni Visual Studio Enterprise Test Professional a MSDN Platforms uživatelé | 52$ na uživatele měsíčně |
Hosted Pipelines | jeden souběžný job/pipeline 1 800 minut (30h.) měsíčně | 40$ za každý paralelní běh bez časového limitu |
Private Pipelines | jeden souběžný job/pipeline bez omezení času + 1 za každého VS Enterprise uživatele | 15$ za každý paralelní běh bez časového limitu |
Artifacts | 2 GB prostoru na balíčky celkem | od 2$ do 0,25$ za další GB měsíčně dle objemu |
Oficiální popis a cenovou homepage najdete zde : https://azure.microsoft.com/cs-cz/pricing/details/devops/azure-devops-services/
Lepší je na to ale Azure kalkulačka.
Nově z nelineárního výpočtu na 6$ za uživatele pro všechny firmy
Důvod proč dostávají někteří administrátoři Azure DevOps Services email o změně ceny je, že Microsoft historicky neměl lineární cenu usera nastavenu na 6$ ale lišila se podle počtu uživatelů od 8$ do 2$. S tímto nebyl problém u zákazníků ale v Microsoftu. V Enterprise ceníku pro velké firmy, kde se dala fixovat cena, byla raději zavedená jednotná promo cena 4$ než kvůli tomu měnit různé korporátní EA smlouvy nebo dělat dodatky. Jen pro informaci níže je starý model výpočtu ceny uživatelské DevOps licence.
- Prvních 5 uživatelů zdarma
- Dalších pět, tj. od 6tého do 10tého : $6 měsíčně za každého
- Od 11 do 100 uživatele : $8 měsíčně za každého
- Od 101 do 1000 : $4 měsíčně za každého
- Od 1001 výše : $2 měsíčně za každého
Porovnání jak pro 20 platících vývojářů vypadal kdysi, a jak vypadá dne výpočet měsíční ceny za uživatele:
1. Historicky pro běžné firmy nebo EA bez promo položky : 5×0$+5×6$+10×8$ =110$.
2. Historicky pro EA zákazníky s fix. promo položkou : 5×0$+15×4$ = 60$.
3. Dnešní jednotná cena platná pro všechny typy smluv: 5×0$+15×6$ = 90$
Pro většinu firem levněji ale pokud nějaká společnost využila kdysi promo nabídky v rámci své Enterprise smlouvy, tak bude mít usera o 2 dolary na měsíc dražší. Enterprise zákazníci mohou však stále využívat promo cenu do konce platnosti své smlouvy.
Příklad ceny Azure DevOps u konkrétní české společnosti, asi 60+ uživatelů a další infrastruktura
- 30 vývojářů ve dvou týmech, Java a .NET, 5 z nich má VS Enterprise z MPN Silver.
// Prvních 5 zdarma, 5 x z VS Enterprise zdarma, 20 userů á 6$ = 120$ // - 6 testerů, 2 tvorba testů pro manuální testování, 4 další brigádníci je pak spouští.
// 52$ za Basic+Test users = 102$ a 4 x Basic user = 24$, celkem 126$ // - 4 PMové, nevývojáři, kteří potřebují mít plný přístup k backlogu i do zdrojáků
// 4 x Basic user za 6$ = 24$ // - 20+ dalších externích uživatelů (neurčité množství) dodávající bugy, tasky, feedback, atd.
// Zdarma pro neomezené množství v rámci stakeholder licence 0$ // - 2 private pipelines souběžné a neomezené do starého on-prem build prostředí
// Není třeba platit, pokryto celkem 6, jedna free, 5 je v VS Enterprise 0$ // - 2 hosted pipelines souběžné a časově neomezené build servery – v cloudu
// 2 x 40$ = 80$ // - 60 GB Artifacts (Nuget, Maven, packages ale i jako Symbol Server)
// nelineárně, 2 GB zdarma, od 2 do 10 za 2$ od 10 do 100 za 1$ = 66$ //
Celkově infrastruktura za měsíc pro takový tým 60 lidí kolem 418 USD, tj asi deset tisíc Kč celkem, 170 Kč na člověka měsíčně. Výpočet najdete v Azure kalkulačce zde.
Na závěr několik tipů jak ušetřit
- Nezapomeňte na to, že existuje výhodná možnost zalicencovat si onprem Azure DevOps Server přes cloudové 6$ uživatele, vyjde to levněji. Naopak to nefunguje.
- Pokud pracujete ve firmě v opravdu oddělených týmech, vůbec nespolupracujete a firemní politika to dovolí, nic nebrání tomu založit si více tenantů. V každém je 5 free userů. Dlouhodobě to není dobrý nápad ale pokud chcete ušetřit …
- Admini, zkuste se prohlédnout user management, zda vám tam nevisí někteří uživatelé, kteří se nikdy nebo již dlouho do systému nelogovali.
- Visual Studio Subscription si „očuchává“ user account a Azure DevOps také. Aby se vše napárovalo a user byl označen za neplatícího, je samozřejmě nutné aby byl login stejný. Ať se kouknou vývojáři na VS Subscription Alternate Account.
- Chcete-li vyzkoušet nějakou technologii nebo postupy, ušetřete svůj čas, prohlédněte si Azure DevOps Labs a nechte si vygenerovat Azure DevOps generatorem hotový naplněný projekt pro výuku dané problematiky.
Buri
Dobrý den,
díky za shrnutí cenové politiky u AZDO.
Mohl byste, prosím, zodpovědět několik dodatečných otázek?
* Jsou uživatele účtování po hodinách, dnech a nebo celém měsíci?
* Opravdu musím platit 15 USD za měsíc, když mám vlastní build agenty? K tomu navíc ještě další peníze, když vlastní build agenti běží současně?
* Je legální a má vůbec smysl každý večer vymazat všechny BASIC uživatele, kteří nejsou přidání přímo ale přes
AAD group assignment a tak ušetřit? Uživatel se může vždy opět přihlásit a získá svoje práva zpět, protože je v AAD skupině, která má BASIC licenci a pravá na projekty.
* Pipelines: Když chci zmigrovat Jenkins build joby do pipelines, musím do všech branchí a tagu přidat pipeline.yaml? Nebo to jde i jinak, globálně pro celé repository?
Předem děkuji
JV
* Users jsou účtováni po měsících, jen na začátku první měsíc (v některých případech), kdy je již nějaké starší běžící Azure, se účtuje jen zbytek měsíce do doby standardního Azure billing termínu dané subskripce. Pak již měsíčně zpětně.
* Vlastních agentů může být více ale stejně se budou „flákat“ a čekat až některý jiný skončí, vlastně až se uvolní „roura“. Jedna „roura“ je vždy zdarma, ale další nikoli, pokud tedy společnost nemá zavedeny v projektu Visual Studio Enterprise uživatele, kteří přidávají paralelní „roury“ navíc. Pokud ne tak jediný možný způsob zaplatit za paralelní buildy.
* Nejsem v tom moc zběhlý, možná by to tak šlo viz zde: https://docs.microsoft.com/cs-cz/azure/devops/organizations/accounts/assign-access-levels-and-extensions-by-group-membership?toc=%2Fazure%2Fdevops%2Fsecurity-access-billing%2Ftoc.json&bc=%2Fazure%2Fdevops%2Fsecurity-access-billing%2Fbreadcrumb%2Ftoc.json&view=azure-devops
* Nevím, zjistím.