PowerShell Direct

Selamlar arkadaşlar bu makalemde sizlere PowerShell Direct hakkında bilgi vereceğim.

Bu yapı Windows 10 ve Windows Server 2016 ile birlikte gelen bir özelliktir. Windows Server 2016 Hyper-V, Windows 10 Hyper-V ve PowerShell 5.0 ile birlikte kullanılan bu özellik, Hyper-V Host’lar üzerinde VM’ler içerisinde PowerShell komutlarını çalıştırmanızı sağlayan bir yoldur.

Eğer tek bir makineye bağlanacaksanız Enter-PSSession, bir komutu birden fazla Virtual makineye göndermek istiyorsanız ise Invoke-Command, CMDLET’i kullanarak ile PowerShell bağlantılarınızı gerçekleştirebilirsiniz.

Bir bilgisayara bağlantı yaparken –ComputerName parametresi kullanılırken, burada -VMName parametresi kullanılmaktadır. Sonrasında ise IP ile bağlanamadığımız için HostName yazıyorduk ancak burada Hyper-V üzerinde bulunan VMName kullanılarak cihazlara bağlantı sağlanmaktadır.

Eğer Fiziksel bir makine üzerinde Hyper-V kurmuş iseniz ve bu özelliği orada kullanacaksanız herhangi bir ayar yapmadan cihazları PowerShell Direct ile yönetebilirsiniz. Burada tek önemli konu ise Fiziksel makineniz ve VM’leriniz Windows 10 ve Windows Server 2016 üstü olması gerekmektedir.

Cihazınız üzerinde kullanılan VM’leri görmek istiyorsanız;

> Get-VM –VMName *
//Komutunu kullanarak cihazınızdaki VM’leri görebilirsiniz.

> Enter-PSSession –VMName  deneme-computer
//Kodu yardımıyla –VMName bilgisi girmiş olduğunuz makineye bağlanacaktır. Burada sizden bir Credential (Kullanıcı adı ve Password) bilgisi isteyecektir. Bu komutu çalıştırdığınızda domaine bağlı ve admin kullanıcı hesaplı bir cihazdan bu komutu çalıştırırsanız herhangi bir şifre istemeyecektir.

Bu komutlar yardımıyla VM’lerinize bağlanmış olacaksınız ve içerisinde istediğiniz gibi PowerShell komutu çalıştırabiliyor olacaksınız.

> Exit-PSSession
//Komutunu kullanmanız durumunda ise bağlantınızı sonlandırıyor olacaksınız.

Farklı bir makineden bağlantı sağlamanız durumunda ise diğer makalelerimde anlatmış olduğum ayarları yapmanız gerekmektedir.

> Invoke-Command –VMName deneme1, deneme2 –ScriptBlock { Get-Process }
//Komutu yardımıyla ise aynı anda birden fazla makineye komut yollayabilirsiniz.

Bir sonraki makalemde görüşmek üzere kolaylıklar dilerim.

Bir Cevap Yazın