Thursday, December 20, 2012

Important updates to Windows Azure (immediate action required)

Microsoft is updating Windows Azure to improve the performance and stability of their virtual machines (VM), currently still in preview. This requires immediate action by January 15, 2013 for custom Linux images that fit the following descriptions:
  • Captured into your storage account from a VM originally created on or before December 21, 2012
  • Uploaded to Windows Azure on or before December 21, 2012
There is no impact to your running Linux VMs. However, if you intend to capture images from a running Linux VM and that VM was created on or before December 21, 2012, you need to update it with the instructions below. Otherwise you may be unable to provision new Linux SUSE VMs from your custom images. Refer to the FAQ posted at the Windows Azure forum for details.

Updating Personal Images or VMs created from the Gallery

"Personal Images" are those that you have created by capturing a VM into your storage account. They are typically used to provision new VMs.

Step 1: Create a running VM from a personal image

Skip to the next step if you do not have a personal image and are updating a running VM. Otherwise, follow the instructions to create a custom VM. Select your personal image from the "MY IMAGES" option in the "VM OS Selection" dialog box instead of "PLATFORM IMAGES".

Step 2: Ensure correct update repositories

Due to recent changes in the Windows Azure IP ranges, it is possible that the necessary update repositories are misconfigured. To verify, run the following command in the VM's terminal as root:
  zypper repos
A correctly configured SUSE Linux Enterprise Server 11 SP2 (SLES11 SP2) VM will return something like:
  # | Alias                        | Name               | Enabled | Refresh
  --+------------------------------+--------------------+---------+--------
  1 | susecloud:SLES11-SP1-Pool    | SLES11-SP1-Pool    | Yes     | Yes
  2 | susecloud:SLES11-SP1-Updates | SLES11-SP1-Updates | Yes     | Yes
  3 | susecloud:SLES11-SP2-Core    | SLES11-SP2-Core    | Yes     | Yes
  4 | susecloud:SLES11-SP2-Updates | SLES11-SP2-Updates | Yes     | Yes
If so, skip to the next step. Otherwise re-add the repositories by running:
  suse_register --restore-repos
Similarly, a correctly configured openSUSE 12.1 VM will return something like:
  # | Alias                 | Name                  | Enabled | Refresh
  --+-----------------------+-----------------------+---------+--------
  1 | openSUSE_12.1_OSS     | openSUSE_12.1_OSS     | Yes     | Yes
  2 | openSUSE_12.1_Updates | openSUSE_12.1_Updates | Yes     | Yes
If so, skip to the next step. Otherwise re-add the repositories by running:
  zypper addrepo --force http://download.openSUSE.org/distribution/12.1/repo/oss \
                         openSUSE_12.1_OSS
  zypper addrepo --force http://download.openSUSE.org/update/12.1 \
                         openSUSE_12.1_Updates
In both cases, if the repositories are present but disabled, you can enable them by running:
  zypper modifyrepo --enable --all

Step 3: Update the kernel

Run the following commands:
  zypper refresh
  zypper install perl
  zypper update kernel-default
Note: It is only necessary to install perl on openSUSE 12.1 as a workaround to a missing dependency.
Now update the kernel parameters by running:
  vi /boot/grub/menu.lst
And add the following string to the end of the kernel line:
  console=ttyS0 rootdelay=300
For openSUSE 12.1, you will also need to remove the following string from the kernel line:
  libata.atapi_enabled=0 reserve=0x1f0,0x8
It is also recommended that you set the value of DHCLIENT_SET_HOSTNAME in /etc/sysconfig/network/dhcp or equivalent from "yes" to "no".

Step 4: Update the Windows Azure Linux agent

For openSUSE 12.1, you'll first need to add the repository containing the updated agent:
  zypper addrepo --force --repo http://bit.ly/W2taca
Then for both SLES and openSUSE, update the agent:
  zypper update WALinuxAgent
There will be a message like:
  There is an update candidate for 'WALinuxAgent', but it is from different vendor.
  Use 'zypper install WALinuxAgent-1.2-1.1.noarch' to install this candidate.
This is due to the vendor change of the package. Simply run the zypper command as suggested by the output and reboot your VM to apply the changes.

Step 5: Capture the VM as a personal image

Skip this step if you skipped Step 1.
To capture the VM that you have just updated, follow these instructions. This operation terminates the running VM.

Step 6: Delete the old personal image

Skip this step if you skipped Step 1.
Once you see the personal image that you just created listed on "MY IMAGES" section of the portal gallery you will need to:
  • Navigate to "VIRTUAL MACHINES" from the left menu and select "IMAGES".
  • Select the old image that you have updated and click "DELETE IMAGE" (trash icon) on the bottom menu.
Now you're finally done! Note that these steps are only required for old Azure images due to the planned changes in Windows Azure. All newly built Studio images already incorporate these changes and do not need these manual changes.

No comments:

Post a Comment

 
© 2013 SUSE