Windows Virtual Desktop Nedir? Kurulum ve Konfigürasyon
Merhabalar,
Bu makalede sizlerle Windows Virtual Desktop (WVD) inceleyecegiz ve sonrasında kurulumunu yapacağız
Öncelikle Windows Virtual Desktop (WVD) nedir diyerek başlayalım,
WVD terminal server mimarisi baz alınarak yapılan uygulama ve masaüstü sanallaştırma teknolojisidir.
Bu Teknoloji sayesinde multi-session olarak bir W10 makinesi ve içerisine Office 365 Pro plus yüklü olarak getirebilirsiniz veya Windows Server kurabilirsiniz.
Tabiki bu Microsoft’un kendi imajları ancak siz kendi imajınızı kurmak isterseniz VHD olarak bu imajı aktarabilirsiniz ve eğer Azure üzerinde bir diskin imajını almak istiyorsanız bunuda sağlayabiliyorsunuz.
Bu sayede firmalar sanal makina iş gücünü bulutta çalıştırarak ilk yatırım maliyetinden kurtuluyorlar hemde yoğun kullanımda hızlı bir şekilde ek makine ihtiyaçlarını karşılayabiliyorlar.
Dilerseniz şimdide kurulumlara geçelim,
Tabiki öncelikle yapımızda bir Active Directory Domain Services olması gerekmekte, burada dikkat etmemiz gereken yapımız on-prem yapıdaysa yukarı ile iletişim kurması için araya öncelikle VPN kurmakta yarar var ancak Active directoy bulut ortamındaysa aynı vnette olması gerek buna kurulum kısmında tekrardan değineceğim.
Active Directory yapımızda Azure AD ye bağlarken Enterprise Admin olması gerekmekte.
Bunun sebebi ise Azure AD kurulumunda bizden hali hazırda bu işlem için bir hesabın varmı yoksa yeni bir hesap oluşturalımmı diye soruyor.
Ben öncesinde syncadmin hesabını oluşturdum ve Azure AD arka tarafta bütün senkronizasyon için gerekli yetkilendirmelerini bu hesap üzerinden yapacak.
Şimdi Azure Active Directory Connect agent uygulamasını indirelim.
https://www.microsoft.com/en-us/download/details.aspx?id=47594 bu sayfadan agentı indirebilirsiniz.
İndirdiğimiz exe dosyasını çalıştırdığımızda karşımıza Azure AD Connect’e hoşgeldiniz diyor ve aşağıdaki anlaşmayı kabul ederek Continue kısmına tıklıyoruz.
Gelen pencerede ayarları bizim tarafımızdanmı yapılacak yoksa Azure AD hızlı kurulum ayarlarımı yapılsın diye soruyor ben burada Customize diyerek ilerliyorum.
Karşımıza çıkan pencerede bir işlem yapmadan ilerliyorum
User Sign-in penceresinde sadece Password Hash Synchronization seçeneğini seçiyoruz.
Connect to Azure AD penceresinde Azure AD içerisinde global admin yetkisi olan bir hesap bilgisi istiyor.
Ben bu işlemleri varsayılan global admin hesabı yerine senkronizasyon için yeni bir global hesabı açtım.
Next diyerek ilerliyoruz.
Connect your Directories bölümünde domainimizi görüntülüyoruz ve sağında yer alan Add Directory butonuna tıklıyoruz.
Açılan pencerede local active directoy içinde bahsettiğim syncadmin hesabımızı giriyoruz.
Domain and OU filtering bölümünde istersek bütün OU larımızı senkronize etmesini sağlayabiliyoruz.
İstersekte belirli OU larımızı seçebiliyoruz. Ben burada hepsini senkronize etmesini istediğim için Sync all domain and OUs seçeneği ile ilerliyorum.
Optional Features bölümünde Password hash sync ve Password writeback seçeneklerini seçiyoruz.
Dilerseniz diğer seçenekleride ekleyebilirsiniz ancak ben demo ortamı olduğu için seçmedim.
Next diyerek ilerliyoruz.
Ready to Configure bölümünde bir işlem yapmadan Configure diyerek yukarıda yaptığımız bütün ayarların senkronize edilmesi için süreci başlatıyoruz.
Evet Azure Active Directory kurulumu tamamlandı exit diyerek kapatıyoruz.
Şimdide Portal Azure sayfasına giriyoruz ve sol altta yer alan Azure Active Directory kısmına geliyoruz ve burada on-prem kullanıcılarımızın senkronize olduğunu görüntülüyoruz.
Sonrasında rdweb.wvd.microsoft.com sayfasından Azure hesabımıza Server App ve Client App yetkilerini vermemiz gerekiyor. Öncelikle Server App yetkisi veriyoruz ve Submit dediğimizde Azure global admin hesabımız ile oturum açmamızı istiyor ve yetki verebilmesi için sizden izin istiyor.
Gerekli izinleri verdikten sonra teşekkürümüzü alıyoruz. ?
Tabiki aynısını sonrasında Client App içinde yapıyoruz.
Yetkilendirme işlemimiz bittikten sonra Portal üzerinden Azure Active Directory sekmesine gelerek
Enterprise applications panelini açıyoruz.
Burada bizi etkin olarak kullanabileceğimiz uygulamalar karşılıyor aşağıda göreceksiniz ki azevel yetkilendirme yaptığımız Winows Virtual Desktop ve Desktop Client eklenmiş olacaktır.
Biz burada yetkilendirme yapacağız ancak önden belirtmemde yarar var Windows Virtual Desktop tarafına sadece yöneticileri Windows Virtual Desktop Client tarafına ise sadece kullanıcılarınızı ekliyorsunuz.
O zaman yöneticilerimizden başlayalım.
Windows Virtual Desktop uygulamasına tıklıyoruz ve Owners sekmesini açıp +Add diyerek yöneticilerimizi ekliyoruz.
Sonrasında Users and Groups sekmesine gelerek yine +Add diyerek kullanıcılarımızı seçiyoruz ancak kontrol etmemiz gereken kullanıcılarımızı ekledikten sonra Tenant Creator yetkisini alıp almadığı aksi taktirde ilerleyen aşamalarda hata alırız.
Akabinde Enterprise Applications’a gelerek Windows Virtual Desktop Client uygulamamıza geliyoruz.
Users and Groups sekmesinden bu hizmeti kullanacak kullanıcılarımızı seçiyoruz.
Portal üzerinde yapacaklarımız şimdilik bu kadar.
Şimdide PowerShell ile komutlarımızı yazıyoruz.
PowerShell’imizi yönetici olarak açtıktan sonra aşağıda sizinle paylaştığım komutları kullanacağız.
Burada ben hepsini ekledim ancak adım adım ilerlemenizde yarar olacaktır.
Komutlarda dikkat etmeniz gereken noktalar;
Oturum açtığınız hesap hep aynı olacak ve global admin yetkisine sahip olacak.
$tenant = “POOL ADI” bu komutta oluşturacağınız POOL ismini giriyorsunuz
Örnek;
Komutlar ;
1.ADIM
Install-Module az -Force
Install-Module AzureAD -Force
Install-Module microsoft.rdInfra.rdpowershell -Force
2.ADIM
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned
Import-Module az
Import-Module AzureAD
Import-Module microsoft.rdInfra.rdpowershell
Login-AzAccount
Connect-AzureAD
3.ADIM
$url=”https://rdbroker.wvd.microsoft.com”
Add-RdsAccount -DeploymentUrl $url
4.ADIM
$tenantId = “TENANT ID GIRILECEK”
$subId = “SUBS ID GIRILECEK”
$tenant = “OU ISMI GIRILECEK-pool açıyoruz”
New-RdsTenant -Name $tenant -AadTenantId $tenantId -AzureSubscriptionId $subId
Get-RdsTenant
5.ADIM
New-RdsRoleAssignment -TenantName $tenant -RoleDefinitionName “RDS Owner” -SignInName [email protected]
PowerShell komutlarımız bittikten sonra Azure Portalımızı açıyoruz. Create a Resource diyerek Windows Virtual Desktop yazıp arama yapıyoruz ve hizmetimizi bulup Create diyoruz.
Açılan pencerede benim Active Directory makinem Azure tarafında olduğu için aynı lokasyona kuruyorum. Siz on-prem ile bağlayacaksanız VPN gerekecektir.
Burada önemli olan kısım
Hostpool name : Burada kullanıcılarımız arayüze bağlandıklarında görecekleri makine adını yazıyoruz ancak karışıklık olmasın bu sanal makinenin adını bir sonraki adımda giricez burada sadece kullanıcılar gireceğimiz ismi görecekler.
Desktop Type : burada bir Pooled şeklindemi yani bir RDS server mantığında bir sunucu açıp içerisine 10-20-30 vs.. kullanıcı giriş yapıp çalışakmı yoksa Personal olarak her kullanıcıya yeni bir makinemi açayım diye soruyor.
Ben burada Pooled olarak ilerliyorum.
Service metada location : Burada sadece United States var ancak merak etmeyin sadece , Hostname, UPN ve Poolname bilgilerini tutuyor.
Configure virtual machines diyerek ilerliyoruz
Burada dikkat edilmesi gerekenler.
Availability Set : Sistemin bir kesinti durumunda durmaması için farklı bir ortamda oluşturduğumuz altyapının bir yedegini bulunduruyor ve gerekli durumda aktif ediyor. Ancak ben bunu istemediğim için kapalı konuma aldım.
Usage Profile : Seçtiğiniz kategoriye göre makineleri getiriyor ancak aşağıdaki size kısmından istediğiniz makineleri seçebiliyorsunuz.
Virtual Machine Name Prefix : Burası bir önceki panelde size söylediğim Azure üzerine açılacak Sanal VM’in admin olarak sizde gözükecek ismi.
Next : Virtual Machine Settings diyerek ilerliyoruz.
Virtual Machine Settings sekmesinde dikkat edilmesi gerekenler;
İmage Source : Burada kuracağımız makinemizin hangi iso dosyası ile açılmasını istediğini bize soruyor.
Blob storage dersek hali hazırda imajını aldığımız bir vhd dosyasını blob storage atarsak burada storage linkini verip imajı çekebiliriz.
Managed İmage dersek Azure üzerinde hali hazırda bir makinemiz varsa onun diskinin imajını alabiliyoruz.
Gallery içerisinde Microsoft multi-session olarak bu hizmet için hazırladığı imajları görüntülüyoruz.
AD Domain join UPN : içerisine domain admin kullanıcımızı yazıyoruz.
Specify Domain or OU : Bu makineyi belirli bir OU içerisinemi vericez yoksa oturum açan herkesemi göstericez diye soruyor.
Burada tekrar dile getiriyorum ancak makinamız Active Drirectory ile aynı vnette olması gerekiyor.
Aksi halde uyarı veriyor.
Next : Windows Virtual Desktop İnformation diyerek ilerliyoruz.
Burada dikkat etmemiz gerekenler;
Windows Virtual Desktop Tenant Name : Azevel PowerShell üzerinde çalıştırdıgımız komutlarda $tenant = “VEYSELITPOOL1” yer alıyordu burdada bu komuta girdiğimiz pool ismini vermemiz gerekmektedir.
UPN : Bulut ortamında sahip olduğumuz global etmin hesabını yani PowerShell üzerinde komut girişi yaparken bizden istediği RDS rolünü atadığımız hesap bilgilerini istiyor.
Create diyoruz.
Bu işlem yaklaşık 15dk sürmektedir.
Kurulum tamamlandıktan sonra ilgili Resource Group’umuza giderek kurulan makinemizi görüntüleyebiliriz.
Şimdi aka.ms/wvdweb web sayfasına girerek user olarak oluşturduğumuz veyseltest1 hesabı ile oturum açıyoruz ve oluşturduğumuz pool ve kullanıcıya göstermek istediğimiz makinemizi görüntülüyoruz.
SRV-CRM ismi olarak kullanıcımıza gösterdiğimiz makineye tıkladığımızda bizden giriş bilgilerimi istiyor ve bilgileri girdikten sonra görüyoruzki web üzerinden kullanıcımız oturum açarak ilgili makineye bağlanabildi.
Windows Virtual Desktop içerisinde kullanıcılarımızı yönetebileceğimiz bir GUI malesef bulunmuyor.
Bundan dolayı şuanda GitHub’da bulunan bir management Web App ile işleyişimizi gerçekleştiriyoruz.
Ancak belirtmeliyimki sonuç olarak bir WebApp oluşturacağımız için bu size ek bir maliyet getirecektir.
http://aka.ms/managementui sayfasına gidiyoruz ve ortada yer alan Deploy to Azure butonuna basıyoruz.
Karşımıza WebApp oluşturacagımız ekranı açıyor ve bilgilerimizi giriyoruz.
Burada Global ve RDS rolünü atadığımız hesabı giriyoruz ve WebApp ismi girerek satınalma işlemi yapıyoruz.
Bu kurulum işlemi yaklaşık 5dk sürmektedir.
Management UI kurulumu tamamlandıktan sonra Resource Group’a girip kontrol ediyoruz ve hizmetlerimizin hazır olduğunu görüyoruz.
App içerisine girerek URL kısmından linke tıklıyoruz.
Açılan web sitesinde ilgili pool ve sunucumuzu görüntüleyebilmekteyiz.
Biz zaten bir kullanıcı ile sunucuya bağlanmıştık dilerseniz şimdide bir kullanıcımıza sadece belirli bir app açması için yetki verelim ve bu sefer bağlantı şeklinide Microsoft’un bize sundugu Remote Desktop uygulaması ile yapalım.
Öncelikle App Groups’a geliyoruz ve içerisinden +Create a App Group diyoruz.
Sağ tarafta açılan pencerede uygulama grup ismini yazıyoruz ve aşağıda RemoteApp seçeneğini işaretleyip save diyerek kaydediyoruz.
Muhasebe grubumuz oluştu ve içerisinden Users sekmesinden +Add User bu uygulamaya bir kullanıcı atıyoruz ve kaydediyoruz.
Uygulama sanallaştırmada istersek hali hazırda kurulu gelen Windows ürünlerini istersekte var ve kurulu olan bir uygulamamızın dosya yolunu göstererek uygulamayı sanallaştırabiliriz.
Ben burada daha fazla uzatmamak adına hali hazırda var olan bir uygulama olan Word uygulaması ile ilerleyeceğim.
AppGroups içerisinde oluşturduğumuz Muhasebe-App içerisinde Apps sekmesine gelip içerisinden +Publish Apps from the Start Menu butonuna basıyoruz ve sağda açılan pencerede Word uygulamasını seçiyoruz ve Publish diyerek dağıtımı başlatıyoruz.
Her şey güzel peki kullanıcı nasıl bağlanacak?
Bunun için öncelikle kullanıcımıza https://docs.microsoft.com/en-us/windows-server/remote/remote-desktop-services/clients/windowsdesktop linkinde yer alan Microsoft’un bize sunduğu Remote Desktop uygulamasını sisteminize göre seçip indiriyoruz.
Uygulamamızı indirip kurulumunu yaptıktan sonra Subscribe diyerek ilgili kullanıcımız ile oturumu açıyoruz.
Giriş yaptığımızda gördüğümüz üzere kullanıcı sadece Word uygulamasını görüntüleyebiliyor.
Eğer biz burada bir path verip istediğimiz başka bir uygulamayı seçseydik yine sadece o uygulama gözükecekti.
Aynı uygulama üzerinden kullanıcılarınıza rdp olarak oturum açmasını sağlayabilirsiniz.
Ancak şunu unutmamak gerekiyorki bir kullanıcı hem App gurubunda hemde DesktopApp grubunda bulunamaz aksi taktirde yetkiler çakışacaktır.
Evet bu makalede sizlerle Windows Virtual Desktop hizmetini beraber deneyimlemiş olduk.
Vakit ayırıp okuduğunuz için teşekkürler.
Eline sağlık kardeşim, çok güzel bir makale olmuş.
Teşekkürler Hakan hocam 🙂
Eline sağlık
Teşekkürler Hasan hocam 🙂