Time To Take Off To The MVP Summit 2014 #Microsoft #MVP #MVPbuzz #Summit #HyperV

MVP Summit 2014

So here I go. I’m off to United States of America, Washington, Seattle, Bellevue/Redmond. I’m travelling to attend the MVP Global Summit 2014.

BA-Airlines-TakeOff

I’ll be quiet in the next week. I’ll be very busy, both during the day as well as at night with all my fellow MVPs to meet ups and networking opportunities that are planned. The MVP summit is Super Non-Disclosure Agreement (NDA). So there will be no techie tweets except about fun stuff in Seattle/Bellevue and suburban. I will never breach the NDA.

I’m very fortunate to be able to attend the MVP Global Summit at the Microsoft beautiful campus, and I have every intention to make the most of this opportunity.

Microsoft_Redmond_Campus

To all my fellow MVPs, nerd friends, colleagues in route to the Summit, I’m looking forward to seeing you all! But first I have to pack my luggage and get ready!

SeattleSkyline

Have a safe trip!

Cheers,
/Charbel

Posted in Hyper-V, MVP Tagged with: , , , ,

Update Rollup 4 for System Center 2012 R2 is Released #SysCtr

Hello folks,

I am glad to share with you that Microsoft just released the update rollup 4 for System Center 2012 R2.

How to obtain and install Update Rollup 4 for System Center 2012 R2.

You have two options to obtain and install UR4:

1- The first option is through regular Microsoft Windows Update in control panel.

2- The second option is to manually download the update packages from the Microsoft Update Catalog or the Microsoft Download Center:

Data Protection Manager
Download the Data Protection Manager update package now.

Operations Manager
Download the Operations Manager update package now.

Service Manager
Download the Service Manager update package now.

Orchestrator
Download the Service Provider Foundation update package now.

Service Reporting
Download the Service Reporting update package now.

Virtual Machine Manager
Download the Administrator Console update package now.
Download the Virtual Machine Manager update package now.

Windows Azure Pack
Download the Windows Azure Pack update package now.

Windows Azure Pack Websites
Download the Windows Azure Pack Web Sites Version 2 update package now.

Warning: Please remember that you must try the update first in a dev environment before you install them in production!

Happy testing Smile

Cheers,
/Charbel

Posted in System Center, System Center 2012 R2 Tagged with: ,

Hyper-V Enhanced Session Mode ‘Show Options’ Issue #HyperV

Hello folks,

In the past I came across a weird issue where I was not able to copy files into the Virtual Machine with allow enhanced session mode. if you are experiencing the same issue, then make sure to check my previous post here.

Today I came across another odd behavior where the ‘Show Options’ to configure device redirection is gone.

If you recall the Enhanced Session Mode feature that was introduced in Windows Server 2012 R2. Hyper-V can now redirect local resources to a virtual machine session through Virtual Machine Connection tool. The enhanced session mode connection uses a Remote Desktop Connection session via the virtual machine bus (VMBus), so no network connection to the virtual machine is required!

In below figures you can experiment the options when you try to connect to a Virtual Machine through Hyper-V Manager console with allow enhanced session mode: 

EnhancedSessionMode-Show01

If you expand show options, you can browse through various settings:

EnhancedSessionMode-Show02

The following local resources can be redirected when using Virtual Machine Connection.

  • Display configuration
  • Audio
  • Printers
  • Clipboard
  • Smart cards
  • USB devices
  • Drives
  • Supported Plug and Play devices

EnhancedSessionMode-Show04

Scenario

When I tried to connect from my Hyper-V host to all my virtual machines, I noticed that ‘Show Options’ is disappeared Surprised smile

EnhancedSessionMode-Show03

Resolution

If you noticed the display is not very clear if you compare it with above screenshots.

Actually this host is HP Mobile Workstation and has a high end NVIDIA Quadro graphic adapter.

I fired up device manager and noticed that I forgot to install the display driver.

EnhancedSessionMode-Show05

After I installed the appropriate display driver, then adjust the screen resolution and finally restart my Hyper-V host…

EnhancedSessionMode-Show09

The ‘Show Options’ is back again Open-mouthed smile

EnhancedSessionMode-Show06

EnhancedSessionMode-Show07

EnhancedSessionMode-Show08

Hope this helps if you are experiencing the same behavior!

Until then… Enjoy your day!

Cheers,
/Charbel

Posted in Hyper-V Tagged with: , ,

VMM Service Deployments: Deploying a Scale-Out RDS as a Service – Part 3 #VMM #CloudOS #SCVMM #HyperV #SysCtr

Hello folks,

During this post, I will be wrapping up this in-depth look at VMM service deployments. Over the last two postings we have examined the following items, so make sure you review them before you continue:

In this last post, I will be using all previously discussed topics, prerequisites and the detailed RDS Application profiles to deploy a multi-tiered instance of Remote Desktop Services and finally Scale Out/In the service.

Deploying the Service Template

And now the moment of truth Fingers crossed, we reap the rewards of three long blog posts worth of content. To deploy the Service Template, click ‘Save and Validate’ and then click ‘Configure Deployment’.

VMM-ScaleOut-RDS41

VMM-ScaleOut-RDS42

Select a name and destination for the service.

VMM-ScaleOut-RDS43

On the Deploy Service window, we can observe a few items. First notice that we can see a visual representation of the service as it will be deployed, in this case 1 VM for RDSH Tier, 1 VM for RDWA Tier, and 1 VM for RDCB Tier. On the left hand pane we can see the current VM computer names for the VM’s of each Tier, and finally we see the text box on the right hand in which we provide the value to be used in the @Collection@, @RDCB@, and @RDWA@ variables.

VMM-ScaleOut-RDS44

After populating the variables with the right information, we could click the ‘Refresh Preview’ which would engage the fabric placement algorithm ensuring that our service will ‘fit’ on the destination cloud, or we can just click on the ‘Deploy Service’ button. If there is going to be a pre-detectable placement issue, the Deploy Service wizard will let you know.

VMM-ScaleOut-RDS45

VMM-ScaleOut-RDS46

As you can see, the service is ready to be deployed without any warning ! signs.

VMM-ScaleOut-RDS47

VMM-ScaleOut-RDS48

After selecting ‘Deploy Service’, confirm that you would like to deploy the service and VMM will take care of the rest. Once this process has completed your service will be cooked and ready for use.

VMM-ScaleOut-RDS49

Now for disclosure, this process takes a long time… and this depends on the hardware what you have.

Now you can grab a couple cups of coffee Coffee cup, have some snacks Pizza and then come back.

VMM-ScaleOut-RDS50

And here you go… The RDS service completed pretty successfully Open-mouthed smile.

We have one VM in each of this three tiers.  

VMM-ScaleOut-RDS51

Let’s go and verify that we have a functioning Remote Desktop Services infrastructure.

I will open and login into the Remote Desktop Web Access page (https://rdwa01.domain.net/RDWeb).

And voilà… here are the office applications Open-mouthed smile, click one button, and we have a fully functioning Remote Desktop Services infrastructure, this is awesome! 

VMM-ScaleOut-RDS52

Scaling-Out the RDS Service Deployment

As you recall from the previous post, the RDSH tier is configured to be Scaled-Out and Scaled-In.

Right click on the RDSH tier, and select ‘Scale Out’.

VMM-ScaleOut-RDS54

The Scale Out Tier Wizard will pop-up.

You can confirm that we have the proper configuration for the tier size (Current VM count, minimum and maximum).

Click Next,

VMM-ScaleOut-RDS55

Here you have the option to specify a different Virtual machine name, however it should automatically populate the correct name based on the RDSH## variable.

Click Next,

VMM-ScaleOut-RDS56

We can verify the identity information for the new virtual machine that will be created.

If you do that process again, it will be RDSH03, RDSH04 and so on and so on…

VMM-ScaleOut-RDS57

Here you can change the action properties for this new VM if you wish to.

VMM-ScaleOut-RDS58

Quick summary and finally the Scale Out button will go and complete that process… this is pretty cool!

VMM-ScaleOut-RDS59

And here you go, we have a second instance of Remote Desktop Session Host Open-mouthed smile

VMM-ScaleOut-RDS61

Scaling-In the RDS Service Deployment

Now what interesting is that while there is a ‘Scale Out’ button, you will find that there is no ‘Scale In’ button that exist in VMM Surprised smile

I don’t know why Microsoft chose not to actually include a ‘Scale In’ button in VMM, however if you played with System Center Orchestrator you can see there is a ‘Scale In’ activity that we can choose from.

If you do want to ‘Scale In’ a tier in VMM, the way in which you Scale In a tier happens by right-click the tier and choosing to ‘Delete’ the tier literally.

Deleting a tier, will go through all the process that need to happen in order to remove that virtual machine appropriately.This deletion just like with the Scale Out, will go through those additional application profile actions (scripts) that needs to happen as well.         

VMM-ScaleOut-RDS60

Note: As I mentioned in the first post, this deployment is solely depends on System Center Virtual Machine Manager, however if you like to add more automation, you can use definitely System Center Service Manager along with System Center Orchestrator, add more fun and let the users deploy, scale-out, scale-in and even re-deploy the complete Remote Desktop Service infrastructure while you are focusing on doing other important projects… This is the power of Microsoft System Center integration.

Conclusion

If you read all three posts of this blog series or simply flipped though, I hope that this has been helpful in your pursuit to VMM service deployment Smile

Thanks for reading! until then… enjoy your day…

Cheers,
/Charbel

Posted in Service Templates, System Center, System Center 2012 R2, Virtual Machine Manager Tagged with: , , , , ,

Free Webinars! Reduce Disaster Recovery & Business Continuity Expenses with Windows Server Clustering and Geo-Clustering #StarWind #WindowsServer

Hello folks,

StarWind has been named as Finalist for the SVC Awards 2014 in three categories:

· Storage Virtualization Product of the Year
· Storage Management Product of the Year
· Virtualization Management Product of the Year

This is the Press release: http://www.starwindsoftware.com/news/118
Please make sure to vote before November 6th, 2014

Here are the free webinars for the month of November:

1. Reduce Disaster Recovery & Business Continuity Expenses with Windows Server Clustering and Geo-Clustering!

In this free webinar, we will discuss the technical issues involved in implementing DR in a virtual server environment and will show you how using the StarWind Virtual SAN solution can help increase the availability of your business critical workloads. Topics covered will include:

· Windows Failover Clustering requirements
· Quorum, networking and storage considerations
· Geo-Clustering for disaster recovery
· Using StarWind Virtual SAN with hyper-converged multi-node scale-out clusters

Thursday, November 13, 2:00 PM ET

Featured Speakers:

Michael Otey, Senior Technical Director for Windows IT Pro
Max Kolomyeytsev, Product Manager, StarWind Software

Register here.

Webinar_November13th, 2014

2. Webinar: How to Reduce Disaster Recovery Expenses up to 50% DR & BC Best Practices for Virtual Environments

Thursday, November 6, 2:00 PM BST

Featured Speakers:

Chris M Evans, Independent Consultant, Langton Blue Ltd.

Want to reduce IT expenses and help your business comply with the legal requirements? To do so, you’ll need to implement a comprehensive Business Continuity / Disaster Recovery (BC / DR) strategy.
Join our webinar to learn why having an effective disaster recovery plan is so important and the additional protection one gets you over simple application or server resiliency. We’ll discuss the technical details involved in implementing a DR strategy in a virtual server environment that includes the StarWind Virtual SAN solution.
During the webinar you’ll learn:

· The business need for BC/DR
· Why BC/DR is different from simple hardware resiliency
· Strategies for implementing BC/DR based on application and business Service Level Objectives
· Choosing between storage array and hypervisor based recovery solutions
· Choosing between VM-level and LUN-level recovery solutions
· Technical solutions for BC/DR with virtual servers, including Microsoft Hyper-V, VMware vSphere and open source platforms
· Vendor roundup – 3rd Party recovery solutions for virtual environments

Register here

3. Live Webinar: Building a Highly Available Hyper-V Cluster Using Free Microsoft Hyper-V Server

Tuesday, November 11, 1:00 PM GMT

Featured Speakers:

Alexander Karavanov, Virtualization Security Engineer, 5nine Software
Max Kolomyeytsev, Product Manager, StarWind Software

Virtualization experts from 5nine and StarWind tell how to create a cost effective and highly available Hyper-V failover cluster.
Discover best practices on how to:

· Benefit from highly available Hyper-V failover cluster
· Simplify the cluster and VM management using 5nine Manager for Hyper-V
· Cut costs, increase resilience and minimize hardware footprint with StarWind Virtual SAN
· Adopt the needs of your environment with easy scale up and scale out

Special Offer: Attend the webinar and get a chance to win a FREE 6-month NFR license key for StarWind Virtual SAN!

Register here

Enjoy the Webinars!

Until then…

Cheers,
/Charbel

Posted in Hyper-V, StarWind Tagged with: , ,

VMM Service Deployments: Deploying a Scale-Out RDS as a Service – Part 2 #VMM #CloudOS #SCVMM #HyperV #SysCtr

Hello folks,

In Part I of this series we covered the service deployment prerequisites for Scale-Out and Scale-In Remote Desktop Services (RDS) as a Service, Part II this post is dedicated to design and construct the service template. I know it’s a long series of blog posts, but I want to make sure that we covered all the aspects of the requirement upfront in order to have a successful RDS deployment Smile.

Prerequisites Recap: If you recall from the previous blog post, the following items have been created / gathered in support of the RDS service template and deployment. Many of these will be utilized throughout this process:

1. Virtual Hard Disk with Windows Server 2012 R2 Standard fully updated generalized and ready for deployment.
2. Virtual Hard Disk with Windows Server 2012 R2 Standard fully updated including Office 2013 generalized and ready for deployment.
3. VM Template for each VHDX.
4. Guest OS Profiles including necessary information for the deployment.
5. Hardware Profiles including necessary information for the deployment.
6. Application Profiles including the commands/scripts required for creating the RDS deployment.

So without further ado, let’s start creating step by step the service template:

Browse to the Library workspace, Templates and click on Create Service Template:

VMM-ScaleOut-RDS14

You name it with a descriptive name: RDS Scale-Out & Scale-In Service

I prefer to select a Blank Pattern, so I have the most flexibility in creating the machine tiers.

VMM-ScaleOut-RDS15

And because of the dependencies… we are actually going to create three different machine tiers as the following:.

1- Tier One (RDSH) Remote Desktop Session Host

2- Tier Two (RDWA) Remote Desktop Web Access

3- Tier Three (RDCB) Remote Desktop Connection Broker

VMM-ScaleOut-RDS16

1- Tier One (RDSH) VM:

As I mentioned in the previous post, the Remote Desktop Session Host (RDSH) VM will be Scaled-Out and Scaled-In, so it’s good idea to have this role with it’s own machine tier.

I will start by creating the first tier by clicking Add Machine Tier from the ribbon.

VMM-ScaleOut-RDS17

I will select Customize a copy of an existing VM template.

VMM-ScaleOut-RDS18

I will select the RDSH-VM template that includes Office 2013 fully updated.

VMM-ScaleOut-RDS19

Give it a descriptive Name: RDSH Scale-Out & Scale-In Tier

Now pay attention, this part is important.

Preferred deployment order: 1
This machine tier can be scaled-out: 1 –> 5
Create an availability set for the tier: YES

The deployment order is 1, we need to configure this tier indeed for Scale-Out, so we start by default instance count 1, maximum instance count 5, minimum instance count 1, and finally create an availability set for the tier.

The availability set allows us to ensure that when we are going through patching and updating cycles, then we make sure that the service is up and operational by only rebooting/putting machines in a maintenance mode in correct time, so there is always enough machines available to support the workload.  

Click Next,

VMM-ScaleOut-RDS20

Select the Hardware Profile that we created earlier, I will choose High VM Hardware Profile for this tier, because this role will have all users connected to.

Note: Make sure you select the appropriate VM Network and Static IP Pool before you move to the next section.

Click Next,

VMM-ScaleOut-RDS21

Now we move to the Operating System Configuration.

Again we will select the appropriate OS Profile, in my case will be: RDSH WS2012R2 Standard Guest OS Profile

Then make sure to change the computer name in Identity Information to: RDS##

If you recall from the previous post, the ## sign is for creating auto-incremental series of RDSH VMs from 01, 02, 03, … up to 99 Winking smile.

As you can see in below figure, the correct Roles are included as well in the Guest OS Profile (Remote Desktop Service and Remote Desktop Session Host).

Click Next,

VMM-ScaleOut-RDS22

The last part is the Application Configuration.

We will select the Application Profile that has all the corresponding PowerShell scripts for this tier to be Scaled-Out and Scaled-In.

Click Next,

VMM-ScaleOut-RDS23

Nothing to do with SQL Server Configuration for this service template, leave it as blank.

Click Next,

VMM-ScaleOut-RDS24

Here is a quick summary for this tier before it gets created…

Click Create,

VMM-ScaleOut-RDS25

Here is the design that you will see in the Service Template Designer view.

VMM-ScaleOut-RDS26

2- Tier Two (RDWA) VM:

Now we will do the same process again for the second machine Tier (Remote Desktop Web Access).

We will select the second VM template, Windows Server 2012 R2 Standard fully updated.

VMM-ScaleOut-RDS27

Give it a descriptive Name: RDS Web Services Tier

Here is the things that get a little bit different

Preferred deployment order: 2
This machine tier can be scaled-out: N/A
Create an availability set for the tier: N/A

Click Next,

VMM-ScaleOut-RDS28

Select the appropriate Hardware Profile, I will choose Medium VM Hardware Profile for this tier.

Next, make sure you selected the corresponding VM Network and Static IP Pool before you move to Guest OS Profile.

Click Next,

VMM-ScaleOut-RDS29

Now we move to the Operating System Configuration.

Again we will select the appropriate OS Profile, in my case will be: RDWA WS2012R2 Standard Guest OS Profile

Then make sure to change the computer name in Identity Information to: @RDWA@

If you recall from the previous post, the @RDWA@ sign is a variable, so later on when we go to deploy this service template, I can choose the name of the Remote Desktop Web Access with an actual host name.

Click Next,

VMM-ScaleOut-RDS30

The last part is the Application Configuration.

We will select the appropriate Application Profile that we created previously.

Click Next,

VMM-ScaleOut-RDS31

Quick summary for this tier before it gets created…

Click Create,

VMM-ScaleOut-RDS32

Here is an updated design that you will see in the Service Template Designer view (two machine tiers).

 

VMM-ScaleOut-RDS33

3- Tier Three (RDCB) VM:

Last but not least, we will do the same process again for the third machine Tier (Remote Desktop Connection Broker).

We will select the second VM template, Windows Server 2012 R2 Standard fully updated.

VMM-ScaleOut-RDS34

Give it a descriptive Name: RDS Connection Broker Tier

The Preferred deployment order will be 3.

Click Next,

VMM-ScaleOut-RDS35

Select the appropriate Hardware Profile, I will choose Small VM Hardware Profile for this tier.

Next, make sure you selected the corresponding VM Network and Static IP Pool before you move to Guest OS Profile.

Click Next,

VMM-ScaleOut-RDS36

Now we move to the Operating System Configuration.

Again we will select the appropriate OS Profile, in my case will be: RDCB WS2012R2 Standard Guest OS Profile

Then make sure to change the computer name in Identity Information to: @RDCB@

As I mentioned above, the @RDCB@ sign is a variable, so later on when we go to deploy this service template, I can choose the name of the Remote Desktop Connection Broker with an actual host name.

Click Next,

VMM-ScaleOut-RDS37

The last part is the Application Configuration.

We will select the Application Profile that has all the building block of PowerShell scripts in order to interconnect the three RDS instances.

Click Next,

VMM-ScaleOut-RDS38

Here is a quick summary for this tier before it gets created…

Click Create,

VMM-ScaleOut-RDS39

The final beautiful design that you will see in the Service Template Designer view, full RDS service Open-mouthed smile.

VMM-ScaleOut-RDS40

Thanks for reading.

See you in the final Part III where we will deploy this service, If you have any question or feedback, please feel free to leave a comment below:

Until then… enjoy your day!

Cheers,
/Charbel

Posted in Service Templates, System Center, System Center 2012 R2, Virtual Machine Manager Tagged with: , , ,

VMM Service Deployment: Deploying a Scale-Out RDS as a Service – Part 1 #SCVMM #CloudOS #HyperV #SysCtr #PrivateCloud

Hello folks,

In this series of blog posts, I will show you step by step how to use only System Center Virtual Machine Manager 2012 R2 to deploy a Scale-Out Remote Desktop Services (RDS) service deployment.

Introduction to Service Templates:

Service Templates allow us to rapidly deploy a pre-configured services (application), consisting of one or more virtual machines, managed as a single entity, which can be scaled-out to match service demand. A simple example may be a two tiered application consisting of a SQL Server, and a load balanced web server. As demand for the application increases, the web interface may be scaled-out into a three or four NLB cluster. As demand decreases, the service can be scaled-in to the initial two nodes cluster.

Service Templates are configured through the use of many VMM resources such as virtual hard disks, VM Templates, Guest OS profiles, Hardware profiles, and other VMM library resources. The service template allows us to configure how many Virtual Machines are initially deployed as part of the service deployment, then configure the applications to be installed at deployment time, as well as to configure other scripts to be executed throughout the deployment. Finally, the service templates allow us to define thresholds or minimum and maximum instance sizes at which the service can be scaled.

And remember that IT is all about Service!

Scenario

In Part I this post, we will create three tier RDS service consisting of a Remote Desktop Connection Broker (RDCB) Server, Remote Desktop Web Access (RDWA) web server, and Remote Desktop Session Host (RDSH) server. As I mentioned earlier, as demand for the application increases, the remote session host server (RDSH) may be scaled-out into two or three instances. As demand decreases, the service can be scaled-in to the initial one session host server.

In Part II next post, I will be detailing how to create the service template design.

In Part III last post, I will be detailing how to deploy the service template to a cloud.

Ok, so having this explained and without further ado, let’s start the service deployment plan:

RDS Service Deployment Prerequisites

I will begin detailing how this service template has been configured. This post is all about pulling together the prerequisites. In order to achieve a service deployment similar to the scenario that I am working with, the following items will be required:

1. Virtual Hard Disk with Windows Server 2012 R2 Standard fully updated generalized and ready for deployment.
2. Virtual Hard Disk with Windows Server 2012 R2 Standard fully updated including Office 2013 generalized and ready for deployment.
3. VM Template for each VHDX.
4. Guest OS Profiles including necessary information for the deployment.
5. Hardware Profiles including necessary information for the deployment.
6. Application Profiles including the commands/scripts required for creating the RDS deployment.

During the next few sections, I will be detailing each of the 6 prerequisites.

The RDS service deployment detailed in this blog series consist of three different VM tiers.

  • Tier One (RDCB01): Remote Desktop Connection Broker (RDCB), this is required and core component for the RDS deployment.
  • Tier Two (RDWA01): Remote Desktop Web Access (RDWA), this is required to publish the remote applications to the users.
  • Tier Three (RDSH01->RDSH05): Scale-Out Remote Desktop Session Host (RDSH), this is required to host users’ sessions.

Because of the RemoteApp requirements, I have chosen to use two different Virtual Hard drives, one for RDCB and RDWA and the second for RDSH tier. There are other ways that could be performed using only one hard drive and a scripted office installation through Configuration Manager (SCCM) or App-V, however the method detailed here works very well and without the need for any additional infrastructure.

1- Tier 1 (RDSH) Source: The following steps were used to complete this task:

  • Deployed a Standard Generation 1 VM with Windows Server 2012 R2
  • Install Office 2013 x64 SP2
  • Applied all software updates
  • Powered off the VM
  • Used the SCVMM create template from existing machine capabilities to create both a virtual hard drive from the VM as well as a VM Template

2- Tier 2 & Tier 3 (RDWA/RDCB) Source: I’ve prepared the source VM with a SYSPREP copy of Windows Server 2012 R2. The following steps were used to complete this task:

  • Deploy Standard Generation 1 VM with Windows Server 2012 R2
  • Applied all software updates
  • Powered off the VM
  • Used the SCVMM to create template from existing machine capabilities to create both a virtual hard drive from the VM as well as a VM Template

After completing these tasks, we have two VHDX files in my VMM Library and also two VM Templates which takes care of the first three deployment prerequisites.

4- VMM Guest OS Profile

I will create 3 guest OS profiles one for each tier with the following information:

Identity Information: @RDCB@ – VMM support use of variables, # OR @ sign, the # sign is for creating incremental series of virtual machines 01, 02, 03… and the @ sign is a variable, so when we go to deploy this service template, then is going to asks us to populate the server host name with an actual host name, I also need this because later on, I have to know what is the computer host name is in order to put together all the PowerShell scripts that are going to allow me to create the RDS service deployment and configuration.

Roles and Features: Remote Desktop Services, Remote Desktop Connection Broker, and Remote Desktop Licensing Roles.

Domain: Joined to Domain.

VMM-ScaleOut-RDS01

Identity Information: @RDWA@

Roles and Features: Remote Desktop Services, and Remote Desktop Web Access Roles.

Domain: Joined to Domain.

VMM-ScaleOut-RDS02

Identity Information: RDSH##, the ## sign is for creating incremental series of RDSH VMs 01->05.

Roles and Features: Remote Desktop Services, and Remote Desktop Session Host Roles.

Domain: Joined to Domain.

VMM-ScaleOut-RDS03

So what we did here, I selected the prerequisites requirement for each host tier, so when it comes time to deploy this service, those Roles will get installed as part of the deployment.

After completing these tasks, we have three Guest OS profiles in VMM Library which takes care of the fourth prerequisite on the list.

5- VMM Hardware Profiles

I will create 3 hardware profiles one for each tier with the following information:

Small VM Hardware Profile will be used for the Remote Desktop Connection Broker (RDCB) tier.

Important point to remember that all hardware profiles must be created using Generation 1 VM, because VMM 2012 R2 does not support Generation 2 VM as service template, and most likely this could be changed in the next VMM release.

VMM-ScaleOut-RDS04

Medium VM Hardware Profile will be used for the Remote Desktop Web Access (RDWA) tier.

VMM-ScaleOut-RDS05

High VM Hardware Profile will be used for the Remote Desktop Session Host (RDSH) tier.

VMM-ScaleOut-RDS06

What we did here, I created three different hardware profiles to be used for each host tier, so when it comes time to deploy this service, then each VM will be configured accordingly.

After completing these tasks, I have three Hardware profiles in my VMM Library which takes care of the fifth prerequisite on the list.

6- Application Profiles

This is the last and the longest exciting prerequisite, we know that we need to do some upfront work in order to automate the whole RDS service deployment.

I will create 3 application profiles with the following scripts:

(a) RDSH Scale-Out / Scale-In Application Profile

First VM When Created 1: cmd.exe Parameters: /q /c shutdown /r /t 0
First VM When Created 2: %WINDIR%\System32\WindowsPowerShell\v1.0\PowerShell.exe Parameters: -command Set-ExecutionPolicy Bypass –Force

Other VMs When Created 1: %WINDIR%\System32\WindowsPowerShell\v1.0\PowerShell.exe Parameters: -command Add-RDServer -Server @ComputerName@ -ConnectionBroker @RDCB@.domain.NET -Role RDS-RD-SERVER
Other VMs When Created 2: %WINDIR%\System32\WindowsPowerShell\v1.0\PowerShell.exe Parameters: -command Add-RDSessionHost -CollectionName @CollectionName@ -SessionHost @ComputerName@ -ConnectionBroker @RDCB@.domain.NET

Other VMs When Deleted 1: %WINDIR%\System32\WindowsPowerShell\v1.0\PowerShell.exe Parameters: -command Remove-RDSessionHost -SessionHost @ComputerName@ -ConnectionBroker @RDCB@.domain.NET –Force
Other VMs When Deleted 2: %WINDIR%\System32\WindowsPowerShell\v1.0\PowerShell.exe Parameters: -command Remove-RDServer -Server @ComputerName@ -ConnectionBroker @RDCB@.domain.Net -Role RDS-RD-SERVER -Force

Basically what I am doing in First VM When Created 1, I am rebooting the Virtual Machine, because the RDS roles when they are installed, if you recall last time you installed Remote Desktop Services, what have to happen after the installation? you had to actually reboot the computer. So I am forcing the reboot here in order to continue with the remaining scripts.

As for First VM When Created 2, I am setting the execution policy to Bypass mode, so any kind of PowerShell commandlet that will run later that has (Press the [Y] to continue), is going to just automatically continue without waiting.

Now will move to Scale-Out two scripts, what is changed in the command type (Other VMs When Created): Those two scripts will run only when you Scale-Out this tier (Add VM instances).

The last two scripts are for Scale-In this tier (Other VMs When Deleted): Those two scripts will run only when you Scale-In this tier (Delete VM instances).

If you noticed, there is one special variable in VMM @ComputerName@, as you can guess, the ComputerName variable will just simply give you the fully qualified domain name of the computer that the variable is executing on. The ComputerName variable is important here, because we may not necessary know what that machine name is going to be, it can be RDSH02, RDSH03, 04 or up to 99, so by using the computer name variable here, it doesn’t matter what the name of the machine is, simply take this machine and add it to an RDS deployment.      

VMM-ScaleOut-RDS07

(b) RDWA Application Profile Second

First VM When Created 1: cmd.exe Parameters: /q /c shutdown /r /t 0
First VM When Created 2: %WINDIR%\System32\WindowsPowerShell\v1.0\PowerShell.exe Parameters: -command Set-ExecutionPolicy Bypass -Force

I am forcing the reboot of the RDWA virtual machine tier, and then set the execution policy to bypass.

VMM-ScaleOut-RDS08

(c) RDCB Application Profile Third Tier

Last but not least, RDCB application profile that has all the building block series of scripts in order to interconnect the three RDS instances.

First VM When Created 1: cmd.exe Parameters: /q /c shutdown /r /t 0
First VM When Created 2: %WINDIR%\System32\WindowsPowerShell\v1.0\PowerShell.exe Parameters: -command Set-ExecutionPolicy Bypass -Force
First VM When Created 3: -command New-RDSessionDeployment -ConnectionBroker @RDCB@.domain.NET -WebAccessServer @RDWA@.domain.NET -SessionHost RDSH01.domain.NET
First VM When Created 4: -command New-RDSessionCollection -CollectionName @CollectionName@ -SessionHost RDSH01.domain.NET -ConnectionBroker @RDCB@.domain.NET
First VM When Created 5: -command Set-RDLicenseConfiguration -Mode PerDevice -ConnectionBroker @RDCB@.domain.NET -LicenseServer @RDCB@.domain.NET
First VM When Created 6: -command New-RDRemoteApp -Alias POWERPNT -DisplayName ‘PowerPoint2013′ -FilePath ‘C:\Program Files\Microsoft Office\Office15\POWERPNT.exe’ -ShowInWebAccess 1 -CollectionName @CollectionName@ -ConnectionBroker @RDCB@.domain.NET
First VM When Created 7: -command New-RDRemoteApp -Alias WINWORD -DisplayName ‘Word2013′ -FilePath ‘C:\Program Files\Microsoft Office\Office15\WINWORD.exe’ -ShowInWebAccess 1 -CollectionName @CollectionName@ -ConnectionBroker @RDCB@.domain.NET
First VM When Created 8: -command New-RDRemoteApp -Alias EXCEL -DisplayName ‘Excel2013′ -FilePath ‘C:\Program Files\Microsoft Office\Office15\EXCEL.exe’ -ShowInWebAccess 1 -CollectionName @CollectionName@ -ConnectionBroker @RDCB@.domain.NET
First VM When Created 9: -command New-RDRemoteApp -Alias AcroRd32 -DisplayName ‘AdobeReaderXI’ -FilePath ‘C:\Program Files (x86)\Adobe\Reader 11.0\Reader\AcroRd32.exe’ -ShowInWebAccess 1 -CollectionName @CollectionName@ -ConnectionBroker @RDCB@.domain.NET
First VM When Created 10: -command Set-RDSessionCollectionConfiguration -CollectionName @CollectionName@ -UserGroup ‘Domain\Members’ -DisconnectedSessionLimitMin 1 -ActiveSessionLimitMin 480 -IdleSessionLimitMin 480 -SecurityLayer 0 -ConnectionBroker @RDCB@.domain.NET

If you noticed, we added three additional variables here, so later on when we go to deploy this service template, I can choose the names of the @RDCB@, @RDWA@ with an actual host name, and @CollectionName@ with an actual collection name.

VMM-ScaleOut-RDS09

For all scripts, you need to browse to the Advanced option and then specify the Standard Output/Error and Restart policy as the following:

First VM When Created 1: Reboot Scripts Settings

We need to change the Standard Output/Error Failure policy to “Do not match”, because in case the reboot script failed, then VMM won’t stop and fail the entire RDS deployment.

VMM-ScaleOut-RDS13

Now for First VM When Created, Other VMs When Created and Other VMs When Deleted - PowerShell Scripts Settings

We need to change the Standard Output Failure policy to “Do not match” and Standard Error Failure policy to “Match any string”, because if for any reason any of the PowerShell script failed during the deployment, then VMM will stop the deployment and the error will be logged into a text file inside the Virtual Machine, so you can troubleshoot and remedy the issue, and this makes your life a lot easier Winking smile.

You can set also the Action when matched to “warn and continue”, if for any reason any of the PowerShell script failed during the deployment, then VMM will not stop and fail the entire deployment, the error will be logged into a text file as well inside the VM.

VMM-ScaleOut-RDS11

We are done now with all prerequisites Smile.

Part II will cover how to create the service template design, and Part III will cover how to deploy the service, If you have any question or feedback, please feel free to leave a comment below:

Thanks for reading.

Stay tuned… Until then, enjoy your day!

Cheers,
/Charbel

Posted in Service Templates, System Center, System Center 2012 R2, Virtual Machine Manager Tagged with: , ,

Microsoft Releases Virtual Machine Converter V3.0 #HyperV #MVMC

Hello folks,

Good news :) Microsoft just announced the release of Microsoft Virtual Machine Converter Version 3.0.

The new features as I noted in earlier post on What To Expect in Microsoft Virtual Machine Converter (MVMC) Release 3.0 are the following:
The 3.0 release of MVMC adds the ability to convert a physical computer running Windows Server 2008 or above server operating systems or Windows Vista or above client operating systems to a virtual machine running on Hyper-V host.

MVMC3.0-01

MVMC can be deployed with minimal dependencies. Because MVMC provides native support for Windows PowerShell®, it enables scripting and integration with data center automation workflows such as those authored and run within Microsoft System Center Orchestrator 2012 R2. It can also be invoked through the Windows PowerShell® command-line interface. The solution is simple to download, install, and use. In addition to the Windows PowerShell capability, MVMC provides a wizard-driven GUI to facilitate virtual machine conversion.

The standard features are the following:

  • Converts virtual disks that are attached to a VMware virtual machine to virtual hard disks (VHDs) that can be uploaded to Microsoft Azure.
  • Provides native Windows PowerShell capability that enables scripting and integration into IT automation workflows.
    Note The command-line interface (CLI) in MVMC 1.0 has been replaced by Windows PowerShell in MVMC 2.0.
  • Supports conversion and provisioning of Linux-based guest operating systems from VMware hosts to Hyper-V hosts.
  • Supports conversion of offline virtual machines.
  • Supports the new virtual hard disk format (VHDX) when converting and provisioning in Hyper-V in Windows Server® 2012 R2 and Windows Server 2012.
  • Supports conversion of virtual machines from VMware vSphere 5.5, VMware vSphere 5.1, and VMware vSphere 4.1 hosts Hyper-V virtual machines.
  • Supports Windows Server® 2012 R2, Windows Server® 2012, and Windows® 8 as guest operating systems that you can select for conversion.
  • Converts and deploys virtual machines from VMware hosts to Hyper-V hosts on any of the following operating systems:
  • Windows Server® 2012 R2
  • Windows Server® 2012
  • Windows Server 2008 R2 SP1
  • Converts VMware virtual machines, virtual disks, and configurations for memory, virtual processor, and other virtual computing resources from the source to Hyper-V.
  • Adds virtual network interface cards (NICs) to the converted virtual machine on Hyper-V.
  • Supports conversion of virtual machines from VMware vSphere 5.5, VMware vSphere 5.0, and VMware vSphere 4.1 hosts to Hyper-V.
  • Has a wizard-driven GUI, which simplifies performing virtual machine conversions.
  • Uninstalls VMware Tools before online conversion (online only) to provide a clean way to migrate VMware-based virtual machines to Hyper-V.
    Important MVMC takes a snapshot of the virtual machine that you are converting before you uninstall VMware Tools, and then shuts down the source machine to preserve state during conversion. The virtual machine is restored to its previous state after the source disks that are attached to the virtual machine are successfully copied to the machine where the conversion process is run. At that point, the source machine in VMware can be turned on, if required.
    Important MVMC does not uninstall VMware Tools in an offline conversion. Instead, it disables VMware services, drivers, and programs only for Windows Server guest operating systems. For file conversions with Linux guest operating systems, VMware Tools are not disabled or uninstalled. We highly recommend that you manually uninstall VMware Tools when you convert an offline virtual machine.
  • Supports Windows Server and Linux guest operating system conversion. For more details, see the section “Supported Configurations for Virtual Machine Conversion” in this guide.
  • Includes Windows PowerShell capability for offline conversions of VMware-based virtual hard disks (VMDK) to a Hyper-V–based virtual hard disk file format (.vhd file).
    Note The offline disk conversion does not include driver fixes.

Here are the supported Configurations for Converting Virtual Machines:

VMware sources:

  • VMware vSphere 5.5 (VMware ESXi 5.5)
  • VMware vSphere 5.1 (VMware ESXi 5.1)
  • VMware vSphere 4.1 (VMware ESXi/ESX 4.1)
  • VMware vCenter Server 5.5
  • VMware vCenter Server 5.1
  • VMware vCenter Server 4.1

Destination host servers: (Note: Hyper-V role must be enabled)

  • Windows Server 2012 R2 Standard
  • Windows Server 2012 R2 Datacenter
  • Windows Server 2012 Standard
  • Windows Server 2012 Enterprise
  • Windows Server 2012 Datacenter
  • Windows Server 2008 R2 Standard with Service Pack 1 (SP1)
  • Windows Server 2008 R2 Enterprise with Service Pack 1 (SP1)
  • Windows Server 2008 R2 Datacenter with Service Pack 1 (SP1)

Operating systems that are supported for which MVMC can be installed:

  • Windows Server 2012 R2 Standard
  • Windows Server 2012 R2 Datacenter
  • Windows Server 2012 Standard
  • Windows Server 2012 Enterprise
  • Windows Server 2012 Datacenter
  • Windows Server 2008 R2 Standard with Service Pack 1 (SP1)
  • Windows Server 2008 R2 Enterprise with Service Pack 1 (SP1)
  • Windows Server 2008 R2 Datacenter with Service Pack 1 (SP1)

Microsoft Operating systems that are supported for conversion to Hyper-V from physical, or VMware virtual machines  

  • Windows Server 2012 R2 Standard x64
  • Windows Server 2012 R2 Datacenter x64
  • Windows Server 2012 Standard x64
  • Windows Server 2012 Datacenter x64
  • Windows Server 2008 R2 Standard x64
  • Windows Server 2008 R2 Enterprise x64
  • Windows Server 2008 R2 Datacenter x64
  • Windows Server 2008 R2 SP1
  • Windows Server 2008 Standard (x86/x64)
  • Windows Server 2008 Enterprise (x86/x64)
  • Windows Server 2008 Datacenter (x86/x64)
  • Windows 8 Enterprise (x86/x64)
  • Windows 8 Pro (x86/x64)
  • Windows 7 Enterprise (x86/x64)
  • Windows 7 Professional (x86/x64)
  • Windows 7 Ultimate (x86/x64)
  • Windows Vista Enterprise x86/x64 

Linux operating systems that are supported for conversion from VMware virtual machines:

  • Red Hat® Enterprise Linux® 6 (x86/x64)
  • Red Hat Enterprise Linux 5 (x86/x64)
  • Ubuntu 12.04 (x86/x64)
  • Ubuntu 10.04 (x86/x64)
  • SUSE® Linux Enterprise Server 11 (x86/x64)
  • CentOS 6 (x86/x64)
  • CentOS 5 (x86/x64)
  • Debian GNU/Linux 7 (x86/x64)
  • Oracle Linux 6 (x86/x64)
  • Oracle Linux 5 (x86/x64)

Kick the tires and get the new version of the Microsoft Virtual Machine Converter 3.0 in the Microsoft Download Center.

Until then… N’joy!

Cheers,
/Charbel

Posted in Hyper-V, MVMC

The VM Failed To Restore… The System Could Not Find The File Specified (0x80070002)… The Operation Failed Because The File Was Not Found #HyperV

What a nice morning when you get a call from a customer @ 6AM  Sleepy smile

[The Virtual Machine is not turning on, I sent you the screenshot!]

Really! What you do in this case? Be kind Smile

The error in PowerShell:

VMFailedToRestore-01

And in the UI:

VMFailedToRestore-02

As you can see, the error is indicating that “Microsoft Synthetic SCSI Controller: Failed…”

So let’s query the SCSI controller for that Virtual Machine.

PS C:/>Get-VMHardDiskDrive –VMNAME <NAME> | ?{$_.ControllerType –eq ‘SCSI’}VMFailedToRestore-06

We have 3 disks attached to the SCSI controller.

Have you noticed something? The disk attached to Controller Location 2 is missing! The Path is empty\

However the disk attached to Controller Location 1 is pass-through disk using DiskNumber 9.

What is the status of the VM?

VMFailedToRestore-13

Can you Turn Off a VM in Saved State?

NO!

VMFailedToRestore-10

Can you remove the disk while the VM in Saved State?

And NO!

VMFailedToRestore-04

Can you delete the Saved State of the VM?

YES Smile

From the UI:

VMFailedToRestore-12

Or using PowerShell:

PS C:/>Get-VM | ?{$_.State -eq ‘saved’} | Remove-VMSavedState

VMFailedToRestore-14

And here you go… The VM started Smile

VMFailedToRestore-15

You might wonder why the disk failed and showing as “Not Found”?

The host rebooted, then all VMs entered in Saved State, when the host came back online, the VMs supposed to be turned on automatically, however the pass-through disk that was attached to this VM failed Surprised smile, he was using an external USB disk Thumbs down.

In conclusion Pass-though disks are not flexible and don’t use them.

Hope this help,

N’joy your weekend!

Cheers,
/Charbel

Posted in Hyper-V

StarWind V2V Converter #StarWind

Changing virtual machine formats on demand is not a luxury, but a real necessity right now. That’s exactly why StarWind brings V2V Converter to us.

Here’s what StarWind V2V Converter does:

  • Converts VMs freely between the major formats – VMDK, VHD(X) and StarWind native IMG, basically “cloning” it, leaving the original intact.
  • As a side effect from the previous feature, there’s an additional backup copy of the converted VM, so the process becomes completely safe.
  • Enables the activation of Windows Repair Mode when converting to VHDX format. This way, the VM adapts to the changes in hardware environment without any issues.

Download the latest StarWind version of V2V Converter here

Cheers,
/Charbel

Posted in Hyper-V, StarWind

How To Reclaim Unused Space In Dynamic VHDX In Windows Server 2012 R2 & Hyper-V? #HyperV #WS2012R2 #WS2012

The other day I had a request to send a Virtual Machine over continent.

Well this is very easy, but what if the size of the VM is large and you have limited Internet bandwidth Winking smile

So without further ado, let’s jump into the scenario:

The guest OS is Windows Server 2012 R2 with 50GB dynamic VHDX. This VM is used by the Dev department for Webserver testing purposes. They do copy large files, delete, etc…

The VM is Generation 1 and has an IDE attached VHDX.

If we look inside the VM we can see that ~15GB of space is being used which is basically the OS bits, updates and small web application:

Optimize-Volume01

However if we look on the host, we can see that this VM is occupying 45GB disk space, this is odd Disappointed smile

Optimize-Volume02

In Windows Server 2012 and above, Microsoft introduced TRIM/UNAMP feature. When a large file is deleted from the file system of a VM guest operating system, the guest operating system sends a file delete request to the virtual machine’s virtual hard disk file. The VM’s VHD or VHDX file tunnels the UNMAP request to the class driver stack of the Windows Hyper-V host. So in the scenario above, the disk would initially expand from 15GB to 45GB but when the large files are deleted inside the guest, this would theoretically (automatically) be able to drop back down the VHDX file to ~15GB size.

Why I said theoretically, because the hardware needs to specifically support this. So you’ll need to check with the storage vendor to know if this will work or not.

In my scenario, I am running the Virtual Machine locally on DAS storage, therefore the TRIMP/UNMAP feature won’t work automatically Sad smile

So how can we reclaim back the unused space?

With PowerShell, of courseWinking smile

Let’s fire up PowerShell within the guest OS and force UNMAP using the following cmdlet:

PS C:/>Optimize-Volume –DriveLetter C –ReTrim –VerboseOptimize-Volume03

Shut down the VM and look again at the size of the dynamic VHDX file. It shrinks back to the original file size ~15GB Smile.

Optimize-Volume04

If you like to see TRIM/UNMAP on a Dell Compellent SAN in action, my fellow MVP Didier Van Hoye has recorded a screencast demo.

In conclusion, Trim requires trim-compatible hardware and is also requires Windows Sever 2012 or above on Hyper-V hosts and guests.

Update: Storage Spaces supports UNMAP/Thin provisioning, so if your Virtual Machines are stored on Storage Spaces volumes, you will get the benefit of UNMAP automatically without any trim-compatible hardware.

In the upcoming post, we will see how can we reclaim unused space in dynamic VHDX in older guest OS.

Hope this helps.

Until then… N’joy your day!

Cheers,
/Charbel

Posted in Hyper-V

Microsoft Announced The General Availability For Azure Site Recovery #Azure #HyperV #MSCloud

Hello folks,

In TechEd NA this year, Microsoft announced that Hyper-V Recovery Manager would be rebranded to Microsoft Azure Site Recovery (ASR), at that time Microsoft also made available a free technical preview of the product back in June.

On Thursday October 2nd 2014, Microsoft announced the general availability (GA) of Azure Site Recovery (ASR). ASR is a cloud based service which coordinates failover and failback between two SCVMM 2012 R2 managed datacenters, or one if the same VMM instance is used to manage both datacenters. Azure Site Recovery will provide the option to failover a site with Virtual Machine Manager managed VM’s based on Hyper-V to Microsoft Azure.

What Azure Site Recovery with support for DR to Azure and InMage integration looks like: (Source: Microsoft)

More information about Microsoft Azure Site Recovery here.

N’joy your day!

Cheers,
/Charbel

Posted in Hyper-V, Microsoft Azure

What’s new for Hyper-V in the Windows Server Technical Preview? #HyperV #vNext

Hello folks,

Today Microsoft® released the new Windows Server Technical Preview bits along with Windows 10 Technical Preview.

Here are the list of features on TechNet of what to expect for Hyper-V Windows Server Technical Preview:

Enjoy the new features Smile

Until then… Stay tuned!

/Charbel

Posted in Hyper-V, vNext

Microsoft MVP Profile

Sponsor – StarWind

Sponsor – ALTARO

Visitors!

Thanks for visiting!

Copyright Warning

All material is copyrighted by me or by its respective owners. To use any of it, full or in part, you must contact me or owner of the material. You may quote few paragraphs from this blog only if you link to the original blog post.

Follow me on Twitter

Follow

Get every new post on this blog delivered to your Inbox.

Join other followers: