Project Spartan is…. Microsoft Edge

This is flash info, this night I received an email from the Microsoft insider program telling me that I can use the latest Project Spartan builds, finally revealed as Microsoft Edge.

Snap 2015-05-01 at 01.14.14

It’s clear that Spartan was just a code name like Longhorn and Threshold Smile

There is a lot of news at Builds 2015  at San Francisco, a lot and lot is coming. Don’t miss it, and don’t forget that next week, the best is coming : Ignite

Happy labor day!!

VMM UR6 : New features and release date

Hi all,

Good news I read this morning about the VMM 2012 R2 Update Rollup 6 new features. VMM UR6 will be released the next Tuesday 28 April according to Jonobie Ford, Senior Program Manager in Microsoft.

So what will UR6 bring to us:

Azure IaaS Virtual Machines view in the VMM console

Many customers use today the Azure VM’s public cloud service in conjunction of their on-premises virtualized infrastructure managed by VMM. Until today, customer need two consoles to manage their VMs (Start, Stop, Remote connect…) : The VMM console  and the Azure portal. VMM UR6 will add the capability of connecting VMM to your Azure subscription and view and make some management tasks. Of course the actual management tasks reported by Jonibie are very basic : Start, Stop, Shutdown, Restart and Connect via RDP. Creating or configuring VMs still only possible form the Azure portal. For that a new view was added to the VMM console : Azure Subscriptions

Snap 2015-04-25 at 14.06.24

(Picture Credit : Microsoft Channel 9)

You can easily add an Azure subscription by providing 2 information : The Subscription ID and the Certificate that you can download from the Azure portal

Snap 2015-04-25 at 14.06.38

(Picture Credit : Microsoft Channel 9)

And then, you will be able to manage your Azure VMs

Snap 2015-04-25 at 14.03.42

(Picture Credit : Microsoft Channel 9)

Support for Generation 2 Virtual Machines  in service templates

The second added feature is that with UR6, you will able to create VMM service templates using Generation 2 VM templates, this feature was mainly requested by customers and implemented by Microsoft

Support for Generation 2 VMM Clouds in Windows Azure Pack

With UR6, Windows Azure Pack tenants will be able to deploy Gen2 VMs on Gen2 capable Clouds

Virtual Network usage in Windows Azure Pack

With UR6, the VNET usage is reported to Windows Azure Pack, and hence Service Providers and WAP admins can charge tenants for the Virtual Network usage and consumption, and create a chargeback model around it.

Hyper-V Replica Cloud or Host group can be overcommitted

In the past, VMM did not allow over-commitment of Hyper-V replica clouds or host groups. That was vey inconvenient for VMM users because they want be able to replicate more VMs than the target replica platform can sustain, but that they will only start and use  a part of them in a failure case. With UR6, VMM will not prevent you of overcommitting a hyper-V replica target platform.

So wait for 28 April and do not forget the gold rules:

– Do not install this update until the community feedback (Bugs, misbehavior…)

– If you use Windows Azure Pack, do not forget that all the platform should be updated to the same UR level (WAP, VMM and SPF) to gain access to the new features

Source : http://channel9.msdn.com/Shows/Edge/Edge-Show-144-Azure-IaaS-VM-management-and-more-in-VMM-UR6

Leveraging Azure Site Recovery with SQL Always On Availability Groups for Disaster Recovery to Azure

Hi all,

A very interesting post by the Azure team to explain how to create an ASR recovery plan that leverages and permits failing of an SQL Server AlwaysOn platform and related applications tiers.
A must read
http://azure.microsoft.com/blog/2015/04/21/leveraging-azure-site-recovery-with-sql-always-on-availability-groups-for-disaster-recovery-to-azure/

Azure : Premium Storage empty disks are also billed

Hi all,

We all know that among the  Azure advantages is to pay what you consume. In storage for example, if you create a 500 GB VHD and there is just 100 GB used, you will be billed just for 100 GB instead of 500 GB. But this is not true for the Azure Premium Storage:

For Azure Premium Storage, you will be billed for the number of P disks you are using, and here some examples to better understand:

If you create a 50 GB VHD, you will be billed for a P10 disk (128 GB)

If you create a 150 GB GB VHD, you will be billed for a P20 disk (512 GB)

If you create a 600 GB VHD, you will be billed for a P30 disk (1024 GB)

I think that this billing model is very expensive and will not be appreciated by customers, I wish Microsoft will rethink again about it.

The following table resumes the billing possibilities depending on VHD sizes

Snap 2015-04-19 at 22.35.36

Source : Microsoft (See the FAQ)

Understand how Azure Premium Storage works : Watch HERE

Windows Phone 10 preview 2 : The disappointment

4 days of Windows phone 10 preview 2, and I decided to revert back to Windows Phone 8.1 update 2

I’m a real fun of new Windows versions (I’m using Windows 10 technical preview since 1 year) and I like using new features that make my life easier. I know that preview versions are full of bugs and unexpected behavior,  but I can relatively handle it. With Windows Phone preview 2 (build 10.12534.56), it was not easy and  I encountered enough bugs to decide to give up. And believe me, I don’t give up so easily. Here some bugs encountered just after 12 hours of use:

– The Wifi hotspot (Internet connection share over Wifi) is not stable, and my devices are rapidly disconnected from the phone

– Cortana is out, there is an error that prevents me to use it

– When I call someone via Skype, the speaker is automatically activated, and you can’t disable it Smile

– Some applications just do not work (When you open the app, it just do nothing)

– The famous PIN code bug, I was obliged to move my SIM card to another phone to disable the PIN security (You wont be able to use your phone if PIN security is enabled)

I’m disappointed because I was thinking, that at least the main features will work correctly, but no luck.

The good news is that after 2 days of using Windows Phone 8.1 update 2, I decided to keep it  and give it a chance : The main interface is great !

wp_ss_20150419_0001

Windows Phone 10 preview 2 finally released

I finally got the preview builds of Windows phone 10 on my Nokia Lumia 925. I left Windows phone two years ago (Windows phone 7), and today (It’s luck i guess) my Android phone gave up. So i decided to temporally use my business Lumia 925 phone. I remembered that Mary Joe Foley  posted last week news about Windows 10 and sad that during the weekend, Microsoft will work to deliver the Windows phone 10 preview 2 builds, and that my phone is finally supported (The preview 1 supports just few Microsoft Lumia devices). And here we are! I installed the Windows Insider app (via the Windows phone store), and discovered that i can install the Windows phone 10 preview builds.

  • Windows Phone 8.1 update 2 will be installed first if you are on Windows phone 8.1 update 1
  • The total installation time is around 1 hour (+ the download time) and  you will not able to use your phone for 45 minutes (15 minutes of preparation + 40 minutes of installation)

wp_ss_20150415_0002

Now, i’m discovering the enhancements :

– The new Outlook app

– The enhanced metro interface

– The nice enhancement on the Settings menu

– Project Spartan

I wish i will not end up on Cdisount.com. I keep my finger crossed.

Azure : Powershell Script to fix IP addresses of a group of Virtual Machine

Hi all,

In my previous post, I posted a script that allow you to fix an Azure virtual machine IP address. But what will you do if you created or have 20 VMs with dynamic IP addresses ? What if you want to set a static IP address for 50 VMs? No worry, I wrote this script that will let you fix IP addresses on a bunch of Azure virtual machines. 

How it works

  • The script use a CSV file that contains the needed information to fix IP addresses for a group of virtual machine. You must provide a valid CSV file as an input. The file is 4 columns separated CSV file : the columns are Name, ServiceName, IpAddress and VirtualNetworkName. You can download and edit this sample CSV file HERE
  • Filling a CSV file can be time consuming and error prone (Specially if we are dealing with tens of VMs). So i added a sweet feature to the script that connect to your Azure subscription and generate a file containing all the VM’s information. you will just edit this CSV file by removing the extra VMs and choosing the right IP addresses

Steps

  • Download and install  the Azure Powershell modules HERE
  • Copy the script to a local location (Example : C:\Scripts)
  • Run an elevated Powershell window
  • change the powershell script execution policy to unrestricted (Set-ExecutionPolicy Unrestricted)

POwershellExecutionpolicy

  • Browse the folder where the script resides and run it using the following syntax
    • If you want to generate a csv file, you will only provide the Azure Subscription Name as an input, a csv file named AzureVMlist.csv will be generated on the same script folder  

.\SetAzureVMStaticIPfromCSV.ps1 -SubscriptionName ‘SubscriptionName

    • If your CSV file is already created, use the following syntax to run the script

.\SetAzureVMStaticIPfromCSV.ps1 -SubscriptionName ‘SubscriptionName‘ -csvpath csvfilepath

Examples

  1. To Generate a CSV file
    .\SetAzureVMStaticIPfromCSV.ps1 -SubscriptionName ‘BuildWindows – SAMIR FARHAT’
  2. Using a CSV file
    .\SetAzureVMStaticIPfromCSV.ps1 -SubscriptionName ‘BuildWindows – SAMIR FARHAT’ -csvpath .\Azurevmlist.csv

NB

  • This script will only work on VMs with one single NIC. I will soon post another script that support fixing IP addresses for VMs with multiple NICs
  • Azure will restart your machines to apply the modifications, so be aware of it

You can download the script here

Azure : Powershell Script to fix an Azure virtual machine IP

Hi All,

When provisioning an Azure virtual machine connected to an Azure network, the machine receives an IP address within the network address space field. Unfortunately, the IP provided is dynamic and provided via an Azure DHCP platform.But, we need to keep in mind some aspects:

  1. If you restart your VM, the IP will remain the same
  2. If you shutdown your VM from the operating system, the machine will be stopped. And when you start back your machine, the VM will will remain the same too.
  3. If you shutdown your VM from the Azure portal or via an Azure powershell command or API, the machine will be stopped. When you start back your VM, the machine may receive a new IP address
  4. If an Azure host or hardware failure occurs, the Azure controller will try to start the machine on a healthy host. The VM may receive a new IP address

The question is why ?

The answer can simply be resumed on two sentences:

  1. The IP address is dynamic, so don’t be surprised that one day, you figure-out that the IP has changed 🙂
  2. There are two types of VM shutdown :
    1. Shutdown without de-provisioning: When you shutdown your VM from the OS itself, the VM is shuttled down but Azure will keep it resources ready (IP, VIP…). The bad news is that Azure will keep billing this VM even if it’s really stopped and dos not use compute resources.
    2. Shutdown with de-provisioning : If you shutdown your VM for the Azure portal, Powershell command or using Azure API, the machine will be stopped and de-provisoned (De-allocated). All its non-static resources will be lost, certainly i’m taling about IP and VIP

Look her for more information about this interesting topic : HERE

To avoid loosing your IP configuration, make your life easier by fixing the IP addresses of your VM.

Until this time, fixing a VM IP address can only be done using powershell. I created this simple Powershell script that can be used to fix your IP address.

Steps

  • Download and install  the Azure Powershell modules HERE
  • Copy the script to a local location (Example : C:\Scripts)
  • Run an elevated Powershell window
  • change the powershell script execution policy to unrestricted (Set-ExecutionPolicy Unrestricted)

POwershellExecutionpolicy

  • You should to provide the following information

Script Parameters

  • Browse the folder where the script resides and run it using the following syntax
    • .\SetAzureVMStaticIP.ps1 -SubscriptionName ‘AAAA’ -VMName  ‘BBBB’ -ServiceName ‘CCCC’ -VNETName  ‘DDDD’ -IP  ‘EEEE’

Example

.\SetAzureVMStaticIP.ps1 -SubscriptionName ‘BuildWindows SAMIR FARHAT’ -VMName  ‘Renault4L01’ -ServiceName ‘Renault4L01’ -VNETName  ‘VNET01’ -IP  ‘192.192.1.100’

NB

  • This script will only work on VMs with one single NIC. I will soon post another script that support fixing IP addresses for VMs with multiple NICs
  • Azure will restart your machine to apply this modification, so be aware of it

Download HERE

Your Azure credentials have not been set up or have expired, please run Add-AzureAccount to set up your Azure credentials

Hi all,

Sometimes, you may encounter the following error when trying to run an Azure PowerShell command.

‘Your Azure credentials have not been set up or have expired, please run Add-AzureAccount to set up your Azure credentials’

Snap 2015-04-02 at 11.44.31

Obviously, even with running the Add-AzureAccount  for several times, the error stills there:  Restarting PowerShell, restarting Windows, login/logout form the portal does not solve the issue.

I have been in this problem many times, but today, it was the worst, 30 minutes of googling and binging and the error won’t go away. The proposed solution was to run the Remove-AzureAccount PowerShell command to remove the stored Azure account from the computer. But again, I still get the error message. However, a small detail intrigues me : The    Remove-AzureAccount command is requesting the Azure account  to be removed and I remembered that i ‘m using two Azure accounts on my computer (My user session).

Snap 2015-04-02 at 11.43.12

So I run the Get-AzureAccount command to show the stored Azure Accounts on my session

Snap 2015-04-02 at 11.43.37

I guess this is the culprit, I have more than one Azure account so maybe this is why I still get the error. I decided to remove all the Azure accounts using one stone

foreach ($AzureAccount in (Get-AzureAccount).ID) {Remove-AzureAccount $AzureAccount}

Snap 2015-04-02 at 11.56.58

And bingo, adding an Azure account and then running commands worked like a charm. No more errors.