您的位置:首页 > 运维架构 > Linux

如何在CentOS 5.x 中安装Windows Azure Linux Agent (WALA)

2015-04-08 15:11 387 查看

Qing
Liu Tue, Mar 10 2015 3:06 AM

在今天的这一个章节中,我们主要讨论在CentOs 5.x 中如何安装Windows Azure Linux Agent 2.11 (简称WALA)。如果你是需要对CentOS 6.x 发行版本进行Windows Azure 基本镜像进行配置,请参考Azure 中文官网 "创建并上传包含
Linux 操作系统的虚拟硬盘"

对应6.x 的相关步骤,在CentOS 5.x中进行Windows Azure Linux Agent 主要步骤和区别如下,

需要手工安装Python 2.6 以上版本
需要手工安装python-pyasn1
需要修改resource disk 类型为ext3
需要手工安装WALA (waagent -install)

准备 CentOS 5.x 客户虚拟机,您必须在本地有HyperV 功能的操作系统中完成特定的配置步骤才能使虚拟机在 Azure 中运行,如Windows 8.0 or Windows 2008 R2 或以上版本的Windows 操作系统

在 Hyper-V 管理器中,选择已经通过ISO镜像安装完成的虚拟机
单击“连接”以打开虚拟机窗口。使用root账号登录系统

通过运行以下命令卸载 NetworkManager

# yum remove NetworkManager

注意:如果未安装此包,则该命令将失败,并显示一条错误消息。这是正常情况。
/etc/sysconfig/
目录中创建一个名为 network 的文件,该文件包含以下文本:

NETWORKING=yes
 NETWORKING_IPV6=no
 HOSTNAME=localhost.localdomain


/etc/sysconfig/network-scripts/
目录中创建一个名为 ifcfg-eth0 的文件,该文件包含以下文本:
DEVICE=eth0
 ONBOOT=yes
 BOOTPROTO=dhcp
 TYPE=Ethernet
 USERCTL=no
 PEERDNS=yes
 IPV6INIT=no


移动(或删除)udev 规则,以避免产生以太网接口的静态规则。在 Windows Azure 或 Hyper-V 中克隆虚拟机时,这些规则会引发问题

# mkdir -m 0700 /var/lib/waagent
 # mv /lib/udev/rules.d/75-persistent-net-generator.rules /var/lib/waagent/
 # mv /etc/udev/rules.d/70-persistent-net.rules /var/lib/waagent/


通过运行以下命令,确保网络服务将在引导时启动:

# chkconfig network on


安装适用于 Linux Integration Services 的驱动程序 , 注意此处5.5 、5.6 、5.7、5.8 需要安装相应版本的LIS, 5.9、5.10可以省略,发行版本中已经包含了相应的LIS 驱动程序

将下列行添加到 /etc/yum.conf

http_caching=packages


通过编辑文件“/etc/yum/pluginconf.d/fastestmirror.conf”禁用 yum 模块“fastestmirror”,并在 [main] 下面键入以下内容

set enabled=0


运行以下命令以便清除当前 yum 本地库

# yum clean all


对于 CentOS 5.x,通过运行以下命令更新正在运行的虚拟机的内核

# yum --disableexcludes=all install kernel


在 grub 配置中修改内核引导行,以使其包含 Azure 的其他内核参数。若要执行此操作,请在文本编辑器中打开 /boot/grub/menu.lst,并确保默认内核包含以下参数:

console=ttyS0 earlyprintk=ttyS0 rootdelay=300 numa=off
[/code]

安装编译器环境

# yum install gcc zlib-devel python-setuptools readline-devel
[/code]

下载,解压,编译,安装Python 2.6 以上版本。在本例中使用了2.7.8。

# cd /
 # mkdir /tmp
 # wget http://www.python.org/ftp/python/2.7.8/Python-2.7.8.tgz
 # tar -xzvf Python-2.7.8.tgz
 # cd Python-2.7.8
 # ./configure
 # make altinstall


建立sbin 硬连接

# ln -s /usr/local/bin/python2.7 /usr/sbin/python


下载,解压,安装python-pyasn1

# cd /tmp
 # wget http://apt.sw.be/redhat/el5/en/i386/rpmforge/RPMS/python-pyasn1-0.0.12a-1.el5.rf.noarch.rpm  # rpm -ivh python-pyasn1-0.0.12a-1.el5.rf.noarch.rpm
 # rpm -qa|grep "python"


复制python-pyasn1的安装包到2.7.8的site-package内

# cp -avr /usr/lib/python2.4/site-packages/pyasn1 /usr/local/lib/python2.7/site-packages/pyasn1
[/code]

下载,安装Windows Azure Linux Agent

# cd /tmp
 # wget https://raw.githubusercontent.com/Azure/WALinuxAgent/WALinuxAgent-2.0.11/waagent --no-check-certificate
 # chmod +x waagent
 # cp waagent /usr/sbin
 # cd /usr/sbin
 # waagent -install
[/code]

清除/tmp下的文件
# cd /
 # rm -Rf /tmp
 # mkdir /tmp
[/code]

不要在 OS 磁盘上创建交换空间。Azure Linux 代理可使用在 Azure 上设置后附加到虚拟机的本地资源磁盘自动配置交换空间。在安装 Azure Linux 代理(请参见步骤19)后,相应地在 /etc/waagent.conf 中修改以下参数:
ResourceDisk.Format=y
 ResourceDisk.Filesystem=ext3
 ResourceDisk.MountPoint=/mnt/resource
 ResourceDisk.EnableSwap=y
 ResourceDisk.SwapSizeMB=4096 ## NOTE: set this to whatever you need it to be.
[/code]

重新启动Linux VM, 用root账号登录系统,执行deprovision
# waagent -force -deprovision
 # export HISTSIZE=0
 # logout


关闭虚拟机,上传VHD 到Windows Azure 块存储中, 可以使用Add-AzureVHD
PS C:\> Add-AzureVhd -Destination http://mytestaccount.blob.core.windows.net/vhdstore/centos53image.vhd  -LocalFilePath C:\vhd\centos53image.vhd -NumberOfThreads 32


最后可以参考
Create and upload a Linux VHD in Azure 完成虚拟机的建立。

如果你有任何疑问,欢迎访问MSDN社区,由专家来为您解答Windows
Azure各种技术问题,或者拨打世纪互联客户服务热线400-089-0365/010-84563652咨询各类服务信息。

本文转载自:http://blogs.msdn.com/b/cciccat/archive/2015/03/10/centos-5-x-windows-azure-linux-agent-wala.aspx
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: