设为首页 收藏本站
查看: 929|回复: 0

[经验分享] Linux P2V Azure

[复制链接]

尚未签到

发表于 2017-6-30 06:50:23 | 显示全部楼层 |阅读模式
  一:知识点:
  将本地Hyper-V的VM上传至Windows Azure Virtual Machine
  本章介绍的内容是将本地Hyper-V的VHD,上传到Azure数据中心,并且保留OS中的内容
  1.首先在本地的Hyper-V上制作Server 2012的VHD,VHD Size必须为固定大小。
  2.通过Azure Powershell上传 VHD
  登陆Azure Management Portal。找到已经创建了叫的Storage Account,然后我们点击Add Container。
  3.然后在弹出的New Container窗口中,我们设置NAME,访问方式设置为      Private(也可以设置为Public Container)
  4.创建成功后,我们将来会通过访问这个URL,将本地的Server 2012 VHD上传至这个Blob Container。
  5.然后就可以做接下来就正式进入上传VHD的过程了。
  6.请先确认已经安装最新的Azure SDK,目前最新的SDK版本是2.0,http://www.windowsazure.com/en-us/downloads/进行下载,通过Web Installer进行安装。
  安装完成,以管理员身份运CMD命令提示符,进入C:\Program Files\Microsoft SDKs\Windows Azure\.NET SDK\v2.0\bin目录,执行csupload.exe命令
  7.同时也要下载Azure PowerShell工具通过http://go.microsoft.com/?linkid=9811175&clcid=0x409,继续下载PowerShell。随后通过Web Installer安装。安装完  Azure PowerShell,以管理员身份运行Azure PowerShell。
  8.本地计算机和Azure建立可靠的安全连接。请在Azure PowerShell输入以下命令:
  Get-AzurePublishSettingsFile
  9.这时候计算机会弹出新的IE窗口,导航至Windows Azure。并要求我们输入登陆Azure的用户名和密码并登陆。
  10.登陆完毕后,系统会要求我们保存扩展名为publishsettings的文件,我们保存至本地计算机的磁盘上。
  11.然后我们回到Azure PowerShell窗口,继续输入以下命令:
  Import-AzurePublishSettingsFile <PathToFile>
  PathToFile就是我们保存步骤11中扩展名为publishsettings的文件位置(文件路径+文件名),比如我将该文件保存至D盘根目录,我们就输入以下命令:
  Import-AzurePublishSettingsFile 'D:\Windows Azure MSDN - Visual Studio Ultimate-7-2-2013-credentials.publishsettings'
  上面的命令实际上是将本地的publishsettings文件上传至Azure的Management Certificates。我们可以打开Azure Management Portal。点击Settings,并选择  Management Certificates,查看上传的publishsettings文件
  这样,本地计算机就和Azure建立了可靠安全的链接了。接下来就可以上传我们的VHD文件了。
  上传VHD文件在之前的内容提到过。主要以Azure PowerShell 的命令上传方式。
  12.请在本地Azure PowerShell继续输入以下命令。
  Add-AzureVhd -Destination <BlobStorageURL>/<YourImagesFolder>/<VHDName> -LocalFilePath <PathToVHDFile>
  上面的参数说明是这样的:例如:
  Add-AzureVhd -Destination 'http://leivms.blob.core.windows.net/uploadvm/Server2012_CHN_64bit.vhd' -      LocalFilePath 'D:\VHD\Server2012_CHN_64bit\Server2012_CHN_64bit.vhd'
  接下来的Azure PowerShell会做出上传VHD的操作。
  13.最后,我们可以通过Azure Management Portal查看到上传成功的VHD
  上传完毕后,我们可以在Azure Management Portal -> Azure Storage中观察结果:
  上传之后将VHD外挂在VM 上
  14.在Azure Management Portal中,选择Virtual Machine,Disk,选择Create A Disk   创建一个磁盘
  15.在弹出的窗口中,选择VHD URL。之前存放vhd的路径
  16.浏览到我们上传VHD的Storage路径:
  17.然后输入其他相关信息。这点上传跟VHD上传文件不同,这个VHD是有操作系统存在的。
  18.然后我们开始创建Azure Virtual Machine:
  19.在mydisks 镜像中选择我们之前上传的操作系统。
  20.Azure VM创建完毕后,我们通过远程桌面连接可以观察结果,VM的机器名与在本地Hyper-V上设置的一致。
  CPU和内存是按照Azure VM Size来设置的,本地Hyper-V的设置已经不再有效。
  二:知识点:
  1.     MA介绍:MA是为无缝迁移物理机、Vmware虚拟机、Amazon网页服务以及微软Hyper-V应用到Azure而设计的工具软件,迁移时,能够自动发现源工作流,自动发现远程客户端,网络适配器及配置。
  2.     Sysprep的作用:是一个“系统准备”工具,主要功能是在创建磁盘映像之前删除当前操作系统的所有唯一性信息,便于Ghost之类的工具复制磁盘映像。在VHD上创建模板的时候,会用到这个功能。
  3.     创建并上传包含linux操作系统的VHD     
  在 Windows Azure 中创建的虚拟机运行您从支持的操作系统版本中选择的操作系统。您可以自定义虚拟机的操作系统设置以快速运行您的应用程序。您设置的配置存储在磁盘上。您可以使用虚拟硬盘 (VHD) 文件在 Windows Azure 中创建虚拟机。您可以选择使用映像库中的 VHD 文件创建虚拟机,也可以选择创建您自己的映像,然后以 VHD 文件的形式将其上载到 Windows Azure。
  1)在hype-v 上创建虚拟机之后,然后在虚拟机上创建存储账户
  2)准备要上载的映像,这里以linux的CentOS 为例
  准备 CentOS 6.2 和 CentOS 6.3 操作系统
  您必须在操作系统中完成特定的配置步骤才能使虚拟机在 Windows Azure 中运行。
  1.在 Hyper-V 管理器的中间窗格中,选择虚拟机。
  2.单击“连接”以打开该虚拟机的窗口。
  3.通过运行以下命令卸载 NetworkManager:
  rpm -e --nodeps NetworkManager
  注意:如果未安装此包,则该命令将失败,并显示一条错误消息。这是所期望的情况。
  4.在 /etc/sysconfig/ 目录中创建一个名为 network 的文件,该文件包含以下文本:
  NETWORKING=yes HOSTNAME=localhost.localdomain
  5.在 /etc/sysconfig/network-scripts/ 目录中创建一个名为 ifcfg-eth0 的文件,该文件包含以下文本:
  DEVICE=eth0 ONBOOT=yes DHCP=yes BOOTPROTO=dhcp TYPE=Ethernet USERCTL=no PEERDNS=yes IPV6INIT=no
  6.通过运行以下命令启用网络服务:
  chkconfig network on
  7.安装适用于 Linux Integration Services 的驱动程序。
  a) 从下载中心获取包含适用于 Linux Integration Services 的驱动程序的 .iso 文件。
  b) 在 Hyper-V 管理器中的“操作”窗格中,单击“设置”。
  c) 在“硬件”窗格中,单击“IDE 控制器 1”。
  d) 在“IDE 控制器”框中,单击“DVD 驱动器”,然后单击“添加”。
  e) 选择“映像文件”,浏览到“Linux IC v3.2.iso”,然后单击“打开”。
  f) 在“设置”页中,单击“确定”。
  g) 单击“连接”以打开该虚拟机窗口。
  h) 在命令提示符窗口中键入以下命令:
  mount /dev/cdrom /media /media/install.sh` reboot
  8.通过运行以下命令安装 python-pyasn1:
  sudo yum install python-pyasn1
  9.将其 /etc/yum.repos.d/CentOS-Base.repo 文件替换为以下文本
  [openlogic] name=CentOS-$releasever - openlogic packages for $basearch baseurl=http://olcentgbl.trafficmanager.net/openlogic/$releasever/openlogic/$basearch/ enabled=1 gpgcheck=0 [base] name=CentOS-$releasever - Base baseurl=http://olcentgbl.trafficmanager.net/centos/$releasever/os/$basearch/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
  #released updates [updates] name=CentOS-$releasever - Updates baseurl=http://olcentgbl.trafficmanager.net/centos/$releasever/updates/$basearch/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
  #additional packages that may be useful [extras] name=CentOS-$releasever - Extras baseurl=http://olcentgbl.trafficmanager.net/centos/$releasever/extras/$basearch/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
  #additional packages that extend functionality of existing packages [centosplus] name=CentOS-$releasever - Plus baseurl=http://olcentgbl.trafficmanager.net/centos/$releasever/centosplus/$basearch/ gpgcheck=1 enabled=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
  #contrib - packages by Centos Users [contrib] name=CentOS-$releasever - Contrib baseurl=http://olcentgbl.trafficmanager.net/centos/$releasever/contrib/$basearch/ gpgcheck=1 enabled=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
  10.将下列行添加到 /etc/yum.confhttp_caching=packagesexclude=kernel*
  11.通过编辑文件“/etc/yum/pluginconf.d/fastestmirror.conf”禁用 yum 模块“fastestmirror”,并在 [main] 下面
  设置 enabled=0
  12.清除当前 Yum 元数据。您需要清除当前 yum 元数据:
  yum clean all
  13.通过运行以下命令来更新正在运行的 VM 的内核对于 CentOS 6.2,请执行:
  sudo yum remove kernel-firmware
  sudo yum --disableexcludes=main install kernel-2.6.32-279.14.1.el6.openlogic.x8664 kernel-firmware-2.6.32-279.14.1.el6.openlogic.x8664
  对于 CentOS 6.3,请执行:yum install kernel-2.6.32-279.14.1.el6.openlogic.x86_64.rpm
  14.确保您已修改内核引导行以包含以下内容的行
  console=ttyS0(这将启用串行控制台输出)rootdelay=300
  15.确保您内核中安装的所有 SCSI 设备都包含 300 秒或更长时间的 I/O 超时。
  16.在 /etc/sudoers 中注释掉 Defaults targetpw
  17.默认情况下,应包括 SSH 服务器
  18.不应该在主机操作系统磁盘上创建 SWAP,如果需要,Linux 代理可请求在本地资源磁盘上创建 SWAP。可以适当地修改 /etc/waagent.conf。
  19.通过运行以下命令来安装 Windows Azure Linux 代理 yum install WALinuxAgent-1.2-1
  20.运行以下命令以取消设置虚拟机:
  waagent –force –deprovision export HISTSIZE=0 logout
  21.在 Hyper-V 管理器中单击“关闭”。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-389524-1-1.html 上篇帖子: Azure IaaS 知识点小节 下篇帖子: Azure ARM架构深度解析
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表