HVRemote Kullanarak Hyper-V Sunucusunun Uzaktan Yönetime Açılması
Günümüzde çoğu kurum ya da kuruluşta etki alanı ortamı bulunmakta. Ancak baz ortamlar hala Workgroup mantığı üzerinden çalışmaya devam etmekteler. Etki alanı olsun ya da olmasın ortama kurulacak olan Hyper-V sunucusunun uzaktan yönetilebilmesi de gerekli bir ihtiyaç olacaktır. Kaldı ki eğer kurulum ServeCore şeklinde ise bu ihtiyaçtan çok bir zorunluluk durumuna gelecektir. Bu makalemde sizlere öncelikle Workgroup ortamında bulunan bir Hyper-V sunucusunu uzaktan yönetime açabilmek için sunucu ve client tarafında yapılması gerekenleri anlatmaya çalışacağım. Normal olarak yapılması gereken ayarları el ile uygulayabilecek olmamıza rağmen bu işlemi kolaylaştırmak için Microsoft Hyper-V takımında Senior Program Manager olarak görev yapan John Howard tarafından (kendi ifadesiyle tatildeyken J) Hyper-V Remote Management Configuration Utility isimli araç Kasım 2008 de yazıldı. Bu araç aslında yapılan işlemleri otomatikleştiren kodları içeren vbscript dosyasından oluşmakta ve sistemler ile ilgili uyarılarda da bulunmakta. İlgili araca http://code.msdn.microsoft.com/HVRemote adresinden ulaşıp indirebilirsiniz. Ağustos 2009 da yayınlanan 0.7 versiyonu ile birlikte sunucu tarafında Windows Server 2008 R2, Microsoft Hyper-V Server 2008 R2 desteğinin yanısıra client tarafında da Windows 7 desteği gelmektedir. Araç ile beraber kullanımı ile ilgili bilgileri içeren belgeye de ulaşabilirsiniz. Bu aracı hem sunucu hem de client tarafında kullanabilmekteyiz. Makalemizde kullanacağımız işletim sistemleri, sunucu tarafında Windows Server 2008 R2 iken client tarafında Windows 7 olacaktır.
Verilmesi gerekli olan izinleri tek tek ekran görüntüleri ile göstermek yerin HVRemote script i ile yapılan işlemlerin ekran görüntülerini paylaşmak çok daha faydalı olacaktır. Genel olarak baktığımızda Hyper-V sunucumuz üzerinde aşağıda ki yetkilendirmeleri yapmak gerekecektir.
- Eğer firewall üzerinde WMI (Windows Management Instrumentation) için gerekli izinler yok ise bunların oluşturulması ki Windows Server 2008 R2 ile birlikte bunları açık geliyor.
- DCOM (Distributed COM Users) grubuna belirlenen kullanıcı veya grupların üye yapılması.
- WMI Control bölümünde Root\CIMV2 ve Root\Virtualization namespace lerinde belirlenen kullanıcı veya gruplar için Remote Enabled yetkisinin verilmesi.
- AzMan (Authorization Manager) konsolu üzerinde belirlenen kullanıcı veya gruplar için yetkilendirme yapılması.
Makalenin bundan sonra ki bölümünü Sunucu ve Client olarak ikiye ayırıyorum.
Sunucu Tarafı
Yetkilendirme işlemlerine geçmeden önce Hyper-V sunucumuz üzerine indirmiş olduğumuz HVRemote klasörünü kopyalayalım ve Run as administrator olarak açtığımız komut satırında HVRemote klasörünün içerisine gelip HVRemote script ini aşağıda ki yazılan komutu kullanarak çalıştıralım ve ayarlanması gerekenlerin listesini alalım. Komutun ardından aldığımız ekran görüntüleri aşağıda ki gibidir.
NOT: Dilersek komutun sonuna > hvremote_show.txt parametresini ekleyerek sunucu üzerinde ki ayarları değişiklik yapmadan önce text dosyasına da aktarabiliriz. Böylece işleme başlamadan önceki son durum da elimizin altında bulunmuş olur.
cscript hvremote.wsf /mode:server /show
Root\cimv2 Namespace Ekran Görüntüsü
Root\virtualization Namespace Ekran Görüntüsü
AzMan Administrator Role Assignments Ekran Görüntüsü
Distrubuted COM Users Ekran Görüntüsü
Firewall Settings for Hyper-V Ekran Görüntüsü
Ekran görüntülerinden de anlaşılacağı üzere henüz herhangi bir kullanıcı için uzaktan yönetim yapılandırılmamış durumda. Bu işleme başlamadan önce hem sunucu hem de client üzerinde aynı kullanıcı adı ve parolaya sahip bir hesap oluşlturulmalıdır. Ben hvadmin isimli bir kullanıcıyı her iki tarafta da aynı parolaya sahip olacak şekilde oluşturdum. Kullanıcım sunucu üzerinde admin yetkisine sahip değil ancak client üzerinde admin yetkisine sahip durumda.
Bu düzenlemelerin ardından Hyper-V sunucumuz üzerinde hvadmin kullanıcısı için gerekli yetkilendirmeleri oluşturacak olan aşağıda ki komutu çalıştırabiliriz. Komutun çalıştırılmasının ardından ekran görüntüleri aşağıda ki gibi olacaktır.
cscript hvremote.wsf /mode:server /add:MHCLABSHVN2\hvadmin
NOT: Yukarıda ki işlemin ardından yapılan değişikliklerin geçerli olabilmesi için Hyper-V sunucusu yeniden başlatılmalıdır.
Bu işlemin ardından client tarafında ki değişikliklere geçebiliriz.
Client Tarafı
Client tarafında Windows 7 kullanacağız. Windows 7 makinemizde oluşturmuş olduğumuz hvadmin kullanıcısı ile oturum açalım.
NOT: Hyper-V sunucumuzu uzaktan yönetebilmemiz için öncelikle Windows 7 üzerinde Remote Server Administration Tool (RSAT) uygulamasını kurmuş olmamız gerekmektedir. İlgili paketi http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=7887 adresinden indirebilirsiniz.
İlgili güncellemeyi çift tıklayarak sisteme kurduktan sonra Control Panelà Programsà Programs and Features bölümüne gelip sağ tarafta bulunan Turn Windows features on or off seçeneğine tıklayalım. Karşımıza gelen ekranda Remote Server Administration Tools seçeneğini genişleterek Role Administration Tools altında bulunan Hyper-V Tools seçeneğini işaretleyerek kurulumu tamamlayalım.
Kurulum tamamlandığında Start–> All Programs–> Administrative Tools altında Hyper-V Manager konsolunun yüklendiğini göreceğiz. Artık bu konsolu kullanarak Hyper-V sunucularımızı Windows 7 bilgisayarımız üzerinden yönetebiliriz. Ancak öncelikle HVRemote script ini kullanarak client üzerinde de gerekli düzenlemeleri yapmamız gerekiyor.
NOT: Eğer Hyper-V Manager konsolu gözükmüyorsa Start–> Search bölümüne mmc yazalım ve açılan Microsoft Management konsolunda File–> Add/Remove Snap-in linkine tıklayalım. Açılan ekranda Hyper-V Manager seçeneğini seçip Add diyerek sağ tarafa ekleyelim ve Ok diyerek tüm açık pencereleri kapatalım. Bu konsolu dilediğimiz bir yere kayıt ederek bundan sonra da kullanabiliriz.
NOT: Workgroup ortamında Hyper-V sunucunuza rahat ulaşabilmek için host dosyasına ilgili Hyper-V sunucunuz için kayıt girmeniz işlemleri kolaylaştıracaktır. Hosts dosyasını C:\Windows\System32\Drivers\etc klasörü altında bulabilirsiniz. Değişikliğin ardından sistem dosyayı kayıt etmenize izin vermeyecektir. Dosyayı farklı bir yere (örneğin masaüstü) kayıt edip ardından orjinal dosyanın üzerine yazdırabilirsiniz.
Öncelikle client makinemiz üzerinde HVRemote script imizi kullanarak aşağıda ki komutu çalıştıralım ve eksiklerimizi gözden geçirelim. Ekran görüntüleri aşağıda ki gibi olacaktır.
cscript hvremote.wsf /mode:client /show
Yapılan işlemin ardından script bizi iki konuda uyarıyor. Bunlar,
- Ananymous Logon un remote access yetkisinin olmaması. Bu izin eğer hem Hyper-V sunucusu hem de client Workgroup ortamında ya da Hyper-V sunucusu Workgroup ortamında ama yönetecek client etki alanı ortamında ise verilmesi gereken bir izindir.
- Client üzerinde kullanacağımız Hyper-V Manager konsolumuzun firewall için izninin bulunmamasıdır.
NOT: Eğer client mız bir etki alanında bulunuyor ise Hyper-V sunucusuna ulaşma esnasında kimlik doğrulama için gerekli olacak olan kullanıcı adı ve parolanın kayıt edilmesinin gerekli olabileceğine dair bir uyarı yukarıda ki uyarılara eklenecektir.
Yukarda ki eksikleri nasıl gidereceğimiz uygulama tarafından tarif edilmektedir. Buna göre ilk hatayı düzeltmek için aşağıda ki komutu client üzerinde çalıştırmamız yeterli olacaktır.
cscript hvremote.wsf /mode:client /anondcom:grant
Anonymous Logon yetkimizi tanımladığımıza göre son olarak MMC konsolumuz için firewall üzerinde izin tanımlanması kaldı. Bu işlem için aşağıda ki komutu çalıştırmamız yeterli olacaktır.
cscript hvremote.wsf /mode:client /mmc:enable
Yukarıda ki işlemlerin ardından client üzerinde Hyper-V Manager konsolumuzu açalım ve Actions bölümünden Connect to Server linkine tıklayalım. Karşımıza gelen ekranda “Another computer” seçeneğini seçip boş alana bağlanmak istediğimiz Hyper-V sunucumuzun adını yazalım ve ardından OK e tıklayalım. Bağlantı sağlandıktan sonra artık Hyper-V sunucumuz üzerinde sanal makine oluşturabilir ve oluşturulan sanal makineleri yönetebiliriz.
Sanal makinelerden harhangi birisine konsol bağlantısı yapmak istediğimizde karşımıza çıkan kimlik doğrulama ekranında Hyper-V sunucumuz üzerinde yetkili duruma getirdiğimiz kullanıcı adını ve parolasını kullanabiliriz.
Bu makalemde sizlere öncelikle Workgroup ortamında bulunan bir Hyper-V sunucusunu uzaktan yönetime açabilmek için sunucu ve client tarafında yapılması gerekenleri anlatmaya çalıştım.
Faydalı olması dileğimle…
M. Hakan CAN
Hakan hocam yine süper bir bilgi paylaşmışsın. Çok teşekkürler.
Teşekkürler Recep hocam.
Hocam merhaba;
ben bu işlemleri yaptım ama hyperview sunucuya ping atabiliyorum rdp gidebiliyorum ancak win7 client tan hyper-v manager ile sunucuya erişemiyorum firewall kapalı ve açık olarak bu anlatılanları yapmama rağmen ancak benim hyper-v server ım bir işletim sisteminde role olarak kurulu değil işletim sistemi olasrak bi fiziksel sunucuya yüklü ve ordada mmc remote manage açık ve remote server management te açık yanlız server workgroup client domainde fakat dns iplerimiz aynı server neti çözüp update alabiliyor domainedahil etmeyre çalıştığımd ise failed join alıyorum denemediğim yöntem kalmadı bir yerde ufak bi kaçırılan nokta olabilir yardımlarınızı riza ediyorum bu konu ile ilgili
saygılarımla…
Merhabalar,
Hyper-V sunucunuzun kullandığı dns ayarı ortamınızda ki domain controller ın ip si mi?
Hyper-V sunucunuz workgroup ise hvremote ile gerekli düzenlemeleri yaptıktan sonra bağlanabiliyor olmalısınız. Burada dikkat etmeniz gereken şey Hyper-V sunucunuz üzerinde oluşturmuş olduğunuz local kullanıcı ile etki alanına dahil olan client da kullandığınız kullanıcı adınız ve parolanız aynı olmak durumunda. Farklı olduğunda bağlantı sağlanamaz. Son olarak da kullanıcınızın Ad Soyad bölümlerinde Türkçe karakter olmaması gerekmekte. HVRemote ile ilgili olarak http://www.mhakancan.com/hvremote-kullanarak-hyper-v-sunucusunu-uzaktan-yonetime-acilmasi/ adresinde ki makaleyi incelemenizi öneririm.
Kolay gelsin…
Merhabalar, çözemediğim bir sorun var.
Bir şirketten Hyper-V Server kiraladım, evdeki Win7 Ultimate kurulu olan bilgisayarımdan yönetmeye çalışıyorum.
– Yerel bilgisayarımın WMI Control kısmında Root\CIMV2 bulunmasına rağmen Root\Virtualization bulunmuyor.
– cscript hvremote.wsf /show /target:{SERVER} komutunu çalıştırdığımda 7. adımda takılıyor.
– Hyper-V Manager ile bağlanmaya çalıştığımda “rpc server unavailable …” şeklinde bir hata alıyorum.
Yardımcı olursanız sevinirim.
Merhaba,
Öncelikle hvremote komutunun sunucu tarafında ki işlemlerini tamamladınız mı?
Hakan Bey makale için teşekkürler sunucu tarafındaki tüm işlemleri yaptım ancak firewall kapalı olmasına rağmen hala sunucuya ulaşamıyorum Windows Hyper-V Server 2008 Core kullanıyorum ve etki alanı hakkında bir deneyimim yok.
cscript hvremote.wsf /mode:client /mmc:enable Komutunuda hvremote tanımıyor.
See online documentation for more information
– http://code.msdn.microsoft.com/HVRemote
– http://tinyurl.com/kvov7c
***** Unrecognised parameter /mmc:enable
C:\>