Auf der diesjährigen Build Konferenz hat Microsoft Dev Box vorgestellt. Bei Dev Box handelt es sich um vorkonfigurierte, virtuelle Clients für Entwickler, über Azure Virtual Desktop provisioniert und als Windows 365 Cloud PC bereitgestellt. Ich probierte die seit wenigen Tagen verfügbare Public Preview aus.
Mit Dev Box möchte Microsoft Entwicklern performante, vorkonfigurierte Clients bereitstellen. Nach dem Motto “Focus on code – not infrastructure“. Seit dieser Woche kann jeder die Public Preview ausprobieren und eine Dev Box erstellen, ein Azure Tenant und Subscription vorausgesetzt.
Microsoft Dev Box is a managed service that enables developers to create on-demand, high-performance, secure, ready-to-code, project-specific workstations in the cloud. You can set up dev boxes with the tools, source code, and pre-built binaries specific to your project, so you can immediately start work.
Neben der unkomplizierten Erstellung neuer Testclients sind die Clients vollständig in Azure AD integriert und über bekannte Werkzeuge wie Endpoint Management und Intune verwaltbar.
Eine Dev Box ist ein über Azure bereitgestellter Windows 365 Cloud PC. Microsoft stellt mehrere Windows 11 und 10 Images bereit. In der Praxis ist es sinnvoller bestehende, benutzerdefinierte Images für Windows, Linux und andere Betriebssysteme einzubinden. So könnten Entwickler einen Client vorbereiten und Administratoren von dem Client ein Image erstellen. Im Video zeigt Microsoft ein paar Optionen. Während der Preview kann eine Dev Box mit 8 vCPU und 32 GB RAM für 15 Stunden pro Monat kostenlos ausprobiert werden, ausserdem sind für 365 Stunden 512 GB SSD Storage inkludiert. Nach Überschreitung, und während der Client gestartet ist, wird stündlich für Compute (CPU und RAM) und Storage abgerechnet.
Dev Box wird im Moment in 9 Azure Regionen angeboten. Bei der Konfiguration von einem neuen Dev Center ist die Wahl der Regionen erforderlich.
- (Asia Pacific) Australia West
- (Asia Pacific) Japan East
- (Canada) Canada Central
- (Europe) UK South
- (Europe) West Europe
- (US) East US
- (US) East US 2
- (US) South Central US
- (US) West US 3
Für einen Test konfigurierte ich in Azure den Dev Box Service und erstellte eine Dev Box. Nach der Erstellung zeigt es in Intune jede Dev Box als Windows 365 Cloud PC.
In meinem Test sind es 3 Teile:
- Dev Box Service in Azure konfigurieren und freigeben
- Erstellen von neuer Dev Box
- Verwalten von Dev Box über Intune
Dev Box Service in Azure konfigurieren
Ein Admin muss den neuen Dev Box Service in Azure konfigurieren und Dev Box Project Pools an berechtigte Konten freigeben. Microsoft stellt ein Tutorial für die ersten Schritte bereit.
Generell sind bei mir während der Erstellung in mehrfacher Form Fehler beim Deployment von verschiedenen Dev Box Diensten aufgetreten. Da es sich um eine Preview handelt einfach noch einmal versuchen. Meist funktioniert es beim zweiten Versuch, oder zu einem späteren Zeitpunkt. Das Tutorial beschreibt praktisch alle erforderlichen Schritte, mit Ausnahme der Netzwerkkonfiguration. Weiters fehlen in Dev Box noch Funktionen wie die automatische Abschaltung, Limitierungen für Benutzer und anderes.
Zusammengefasst sind es 5 Schritte:
- Dev Box Service in Azure vorbereiten.
- Neues Dev Center erstellen. Zu beachten ist, das Dev Center definiert in welcher Azure Region ein zukünftiger Client steht. Es kann mehrere Dev Center geben.
- Neue Network Connection erstellen.
- Dev Center mit Network Connection verbinden.
- Dev Box Definitions erstellen.
Über die Dev Box Definition wird ein vorkonfiguriertes Image für eine Betriebssystem und vCPU + RAM ausgewählt. Pro Dev Center sind mehrere Images möglich, optional auch benutzerdefinierte Images. In der Dev Box Definition steht die zuvor erwähnte 8 vCPU, 32 GB RAM und 512 GB SSD zur Verfügung. Die Auswahl könnte nachträglich angepasst werden. Für meinen Test erstellte ich 4 Definitions. Als Tipp, der Name einer Definition wird dem Benutzer später für seine Wahl angezeigt und sollte lesbar sein.
- Ein oder mehrere Dev Box Projects erstellen.
Ein Dev Center kann mehrere Projekte inkludieren, die von unterschiedlichen Konten verwaltet sind. Der Projektname wird dem Benutzer ebenfalls angezeigt. - Einen oder mehrere Dev Box Project Pools erstellen.
Pro Pool wird ein OS-Image aus den Dev Box Definitions, das Netzwerk und die Zugriffsberechtigung gewählt. Im Project Pool ist später die Erstellung von einem oder mehreren virtuellen Clients möglich. Zukünftig soll es über den Pool möglich sein einen Client an einem definierten Zeitpunkt zu stoppen. Projekt Pool wird dem Benutzer ebenfalls angezeigt.
- Berechtigung für Dev Box User Rolle vergeben.
Über die Berechtigungsrolle “DevCenter Dev Box User” sind Benutzerkonten berechtigt in dem gewählten Projekt neue virtuelle Clients anzulegen.
Nach Vergabe der Berechtigungen ist die administrative Konfiguration abgeschlossen.
Neue Dev Box erstellen
Berechtigte Konten können nun über devbox.microsoft.com einen neuen virtuellen Client beantragen oder ihre erstellten Clients starten/stoppen und löschen. Bei der Bestellung wird für den Client ein Name definiert, und je nachdem wie viele Project Pools erstellt wurden stehen ein oder mehrere Images zur Auswahl. Der Name ist nur für einen selbst relevant. Im Hintergrund vergibt das System automatisiert einen Namen.
Bis ein Client fertig provisioniert ist kann es 60 bis 90 Minuten dauern. Während meinen Tests dauert es rund 45 bis 60 Minuten.
Ist die Provisionierung abgeschlossen zeigt es im Web die neue Dev Box. Standardmässig startet das System eine neu erstellte Dev Box. Eine gestartete Box verursacht Kosten.
Ich kann die Box starten / stoppen, löschen, in einem RDP-Client oder im Browser öffnen. Der Start dauert ebenfalls bis zu 15 Minuten. Läuft die Box ist die Anmeldung über das Azure AD Konto möglich. Ist die Synchronisierung von Windows Konfiguration aktiv übernimmt die neue Box nach kurzer Zeit manche Einstellungen. Eine Kontrolle bestätigt meine Konfiguration von Windows, CPU, RAM und Speicherplatz. Die lokalen Laufwerke von meinem PC sind mit der Dev Box verknüpft.
Eine Dev Box lässt sich über Windows nicht heruntergefahren. Microsoft hat die Option scheinbar im Image entfernt und möchte das eine Dev Box übers Web gestoppt wird.
Eine nicht mehr benötigte Dev Box sollte vom Benutzer gelöscht werden. Mit dem Schritt führt das System ein Deprovisioning des Cloud PCs in Intune durch.
Dev Box Clients in Intune finden, verwalten und löschen
Clients aus Microsoft Dev Box werden über Windows 365 bereitgestellt. In der Hilfe beschreibt Microsoft den Provisionierungsprozess für einen Windows 365 PC. Ähnlich verhält es sich für die Dev Box.
Cloud PCs are provisioned in the Windows 365 service, connected to Azure, joined to your Azure AD, and enrolled into Microsoft Endpoint Manager.
Eine neu provisionierte Dev Box wird automatisch in Intune mit einem vordefinierten Namen erfasst. Über das Modell ist eine Dev Box erkennbar.
Sucht man alle Dev Box Clients sind sie in Intune unter Devices > Windows 365 gelistet. In der Auflistung zeigt es den Client Namen, welches Image der Client einsetzt, welche Hardware Konfiguration, den Status und welches Konto den Client erstellte.
Während der Preview ist es ratsam die Liste regelmässig zu kontrollieren. Bei meinen Tests sah ich das System hat teilweise zwei statt einer Box erstellt. Im Web zeigt es jedoch nur eine Box. Da eine Dev Box standardmässig gestartet ist verursacht sie Kosten und kann aber nicht gestoppt werden. Ein Löschen ist über Intune nicht möglich. In so einem Fall fand ich zum aktuellen Zeitpunkt nur eine Option, vermerkt im Hinweise über Deprovisioning von Windows 365 Cloud PC.
If you remove the user’s license or targeted provisioning policy, their Cloud PC is moved into a seven-day grace period. This grace period allows for errors and reinstatement without affecting the user.
Öffnet man in Intune eine der Dev Box ist eine Azure Provisioning Policy sichtbar. Es handelt sich um den Project Pool.
Wird die Provisioning Policy in Azure gelöscht startet Intune ein Deprovisioning des Windows 365 Cloud PCs. Es gilt für alle Cloud PCs mit dieser Policy. Eine Grace period gibt es für eine Dev Box nicht.
Die Verwaltung von einer Dev Box ist identisch zu jedem anderen verwalteten Client in Intune. Eine Dev Box übernimmt Conditional Access Policies, Compliance Vorgaben, Configuration Profiles, Gruppen und anderes.
Update vom 20. Februar 2023:
Microsoft Dev Box ist weiterhin in Preview und wird über die nächsten Wochen aktualisiert. Die Aktualisierung bewirkt die Löschung von allen bestehenden Dev Box Clients mit 4 vCPUs. Dafür stellt Microsoft weitere Konfigurationen bereit.
- Ab 1. März ist keine Erstellung von neuen Dev Box Clients mit 4 vCPU mehr möglich.
- Ab 3. April löscht Microsoft alle bestehenden Dev Box Clients mit 4 vCPU.
- Über die nächsten Wochen stellt Microsoft neue Konfigurationen bereit.
- 16 vCPU und 32 vCPU (+ die bereits bestehenden 8 vCPU). Minimalkonfiguration ist zukünftig 8 vCPU.
- Bis zu 2 TB lokaler Speicherplatz (+ die bereits bestehende 256 GB, 512 GB und 1 TB).
In Endpoint Management > Devices > Windows 365 kannst du überprüfen, ob du betroffene Clients im Einsatz hast. Clients mit 4 vCPU werden gelöscht.
Weiters löscht Microsoft alle Definitions mit 4 vCPU.