zoukankan      html  css  js  c++  java
  • 使用Azure CLI 2.0创建CentOS 6.5虚拟机

    目前在中国的Azure的标准Linux镜像列表里面,为了保证用户有最佳的用户体验和安全考虑,很多Linux版本都是用在厂商支持服务期内或者大版本下的最新版本,比如在新的Azure管理界面上(portal.azure.cn),你搜索CentOS的话,可以看到我们支持的CentOS是6.9和7.3:

    如果你是在经典的Azure管理界面(manage.azure.cn)创建虚拟机,可以看到支持的CentOS版本是6.8, 6.9,7.2和7.3:

    那问题来了,如果客户的应用系统,购买的商业软件,开发的系统和老版本的Linux系统有严重依赖,而且用户希望快速的迁移到Azure上,例如必须使用CentOS 6.5,6.6, 6.7 版本,有没有什么办法昵?官方解决办法如下:

    用户本地创建虚拟机,上传VHD文件制作自定义镜像,然后使用自定义镜像创建Azure虚拟机,这种方式适用于任何Azure认可的发行版,例如Debian,Oracle Linux, FreeBSD, RedHat Enterprise Linux等等,以CentOS为例,请参考:https://docs.azure.cn/zh-cn/virtual-machines/linux/create-upload-centos

    这种方法当然没问题,但对于我的需求来讲,比如安装CentOS 6.5, 6.6, 6.7来说,稍微麻烦一点,有没有更简单一点的办法昵?其实我们创建虚拟机,只需要有一个官方的image在Azure上即可,偶然使用命令行的时候,发现其实这些版本的image依然在Azure的repo里面,只是界面不可见,所以我们使用命令行是可以创建的,具体步骤如下:

    1. 在你的Windows/Linux/Mac上安装Azure CLI 2.0,Azure CLI最大的好处是跨平台,最新的版本是基于Python做的,不同平台上的安装步骤请参考:

    https://docs.microsoft.com/en-us/cli/azure/install-azure-cli?view=azure-cli-latest

    我使用的是Ubuntu Bash on windows,简单的安装步骤如下:

    $ echo "deb [arch=amd64] https://packages.microsoft.com/repos/azure-cli/ wheezy main" |

    sudo tee /etc/apt/sources.list.d/azure-cli.list

    $ sudo apt-key adv --keyserver packages.microsoft.com --recv-keys 417A0893

    $ sudo apt-get install apt-transport-https

    $ sudo apt-get update && sudo apt-get install azure-cli

    如果你的安装没问题,命令行下输入az,应该看到如下提示:

    2. 设置当前环境为中国的Azure云,需要注意设置cloud的地域,AzureChinaCloud:

    $ az cloud set --name AzureChinaCloud

    3. 登陆Azure中国云,-u后面是你的订阅用户名,-p是你的密码:

    az login -u XXXXX@XXXX.partner.onmschina.cn -p "PASSWORD!"

    4. 检查Azure可以提供的CentOS镜像,在前端我们是看不到6.5,6.6,6.7版本的,但通过命令行我们可以看到,这些版本其实都在Repo里面:

    $ az vm image list-skus --location 'chinanorth' --publisher OpenLogic --offer 'CentOS' --output table

    5. 在使用Azure CLI创建虚拟机的过程中,最重要的是知道镜像的Alias或者URN,那么我们来检查一下CentOS 6.5的URN:

    $ az vm image list --publisher OpenLogic --all

    可以看到,CentOS 6.5最新版本的URN是"OpenLogic:CentOS:6.5:6.5.20160329",记录下来,供我们在后续的创建中使用。

    6. 后面的步骤就比较简单了,使用Azure CLI来创建网卡,NSG,公共IP,虚拟机等等,唯一的变化,就是在image参数上协商6.5的URN即可:

    1. az vm create --resource-group myResourceGroup

                   --name myVM

                   --nics myNic

                   --image "OpenLogic:CentOS:6.5:6.5.20160329"

                   --size Standard_DS2_v2

                   --admin-username azureuser

                   --admin-password 'Password!'

    7. 成功创建完成后,我们在Azure管理界面上可以看到,虚拟机正常运行,操作系统是Linux,大小是DS2 V2:

    8. 最后我们通过SSH登录到虚拟机,验证一下虚拟机的操作系统版本,可以看到是CentOS 6.5:

    本文所用到的脚本我已经放到了Github上面,需要的同学可以自行下载:

    https://github.com/kingliantop/azurelabs/blob/master/vm/createCentos65cli.azcli

    通过本例可以看到,类似的需求都可以通过后台的命令行实现,大家可以以此类推,创建完需要的OS后,安装软件,制作镜像,然后使用VMSS进行大规模部署。

  • 相关阅读:
    HDU 1813 Escape from Tetris
    BZOJ 2276 Temperature
    BZOJ 4499 线性函数
    BZOJ 3131 淘金
    HDU 5738 Eureka
    POJ 2409 Let it Bead
    POJ 1286 Necklace of Beads
    POJ 1696 Space Ant
    Fox And Jumping
    Recover the String
  • 原文地址:https://www.cnblogs.com/cloudapps/p/7610051.html
Copyright © 2011-2022 走看看