需求:

1.root磁盘120G(这个在做镜像的时候已经做好)

2.需要用到share网络

3.添加500G磁盘并且挂载早虚拟机上面

#!/bin/bash
zone_id=d530fee4-413a-463b-abf5-4fdcf523077b
network_id=96eb15a6-ccd3-4e33-adf0-b5f3e63e2466
serviceofferingid='b1fb445d-2571-4803-a3f5-93f0ad81b245'
templateid='6d2a206a-eecb-4ba2-b6ab-7db8f38a7b00'
diskOffering_id='049de7c5-48db-4f10-83fe-be54ebb61cc7'
centos_ips="172.18.3.114..115,"
cli='cloudmonkey'

function parseIps()
{
ips=`echo $* | egrep -o "[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}(\.\.[0-9]{1,3})?"`
#TODO: needs validate ip
for i in `echo $ips`
do
ipPre=`echo $i | cut -d '.' -f -3`
ipStart=`echo $i | cut -d '.' -f 4`
# if $i.contain("..")
if [[ $i == *..* ]]; then
ipEnd=`echo $i | cut -d '.' -f 6`
for ((j=$ipStart; j<=$ipEnd; j++))
do
echo $ipPre.$j
done
# else !$i.contain("..")
else
ipEnd="$ipStart"
echo $ipPre.$ipStart
fi
done
}

function create_vm()
{
centos_iplist=`parseIps $centos_ips`
echo "starting to create centos vm:"
for ip in $centos_iplist
do
a=`echo $ip | cut -d '.' -f 3`
b=`echo $ip | cut -d '.' -f 4`
echo "create haha $a-$b..."
$cli deploy virtualmachine zoneid=$zone_id templateid=$templateid serviceofferingid=$serviceofferingid displayname=haha$a-$b ipaddress=$ip networkids=$network_id
$cli create volume name=haha$a-$b zoneId=$zone_id diskOfferingId=$diskOffering_id
#todo: to attach volume to the vm
volume_id=`$cli list volumes|grep -B1 "name = haha$a-$b" |awk 'NR==1{print }'|awk '{print $3}'`
#echo $volume_id
vm_id=`$cli list virtualmachines|grep "displayname = haha$a-$b" -B15|awk '/^id = /{print}'|awk '{print $3}'`
echo $vm_id

$cli attach volume id=$volume_id virtualmachineid=$vm_id

done
}
create_vm

用cloudmonkey批量创建虚拟机的更多相关文章

  1. VMware workstation批量创建虚拟机和自动化安装操作系统(一)

    一. 简述 作为从事IT行业运维工作的Linuxer,大多情况下需要在测试环境中部署业务系统并进行测试,在没有足够的计算存储网络条件下,使用虚拟机进行虚拟集群的创建和使用,是一种不错的学习和实践方式. ...

  2. VMware workstation批量创建虚拟机和自动化安装操作系统(二)

    一. 简述 在上一篇<VMware workstation批量创建虚拟机和自动化安装操作系统(一)>中,主要介绍了VMware workstation自定义创建虚拟机的过程,和一些其他的有 ...

  3. Vcenter5.5+vmwarePowercli6.5+powershell5批量创建虚拟机

    另存为xxx.ps1 ##########################通过模版批量部署虚拟机以下内容需要人工定义变量####################### #Vcenter的IP $vce ...

  4. KVM 一键批量创建虚拟机

    目录 一.原理 二.基础镜像 2.1.创建基础镜像 2.2. 完善基础镜像 2.3.基础镜像设置权限 3.4 设置 title 3.5.基础镜像XML 三.批量创建机器脚本 四.挂载磁盘多种方式 4. ...

  5. vmrun 批量创建vmware虚拟机

    1 准备模板机 具体步骤如下: 1. 下载镜像安装系统 https://mirrors.aliyun.com/centos/7.5.1804/isos/x86_64/ 2. 安装完成配置好IP ,关闭 ...

  6. powercli创建虚拟机步骤及批量创建脚本

    https://pubs.vmware.com/vsphere-51/index.jsp?topic=%2Fcom.vmware.powercli.cmdletref.doc%2FSet-OSCust ...

  7. 如何在Windows中批量创建VMware的虚拟机

    在最近的工作中,需要创建一批类似的机器.在VMware中创建了模板,然后根据自义向导部署之后,发现可以快速的完成新vm的部署.系统中的计算机名,IP地址都可以自动的完成更新.唯一的缺点是,系统自带的向 ...

  8. 批量创建10个用户stu01-stu10

    1.批量创建10个用户stu01-stu10,并且设置随机8位密码,要求不能用shell循环(例如:for,while等),只能用命令及管道实现. ##方法1: [root@server tmp]# ...

  9. 使用Azure REST API创建虚拟机

    Hollis Yao, Shihao Rong  使用REST API创建虚拟机之前,首先要确保Azure订阅中已经建好了"云服务"和"存储账号".如果没有的话 ...

随机推荐

  1. 【读书笔记】iOS-网络-应用间通信

    一,URL方案 URL方案有3个主要用途:根据设备上其他应用的存在与否调整逻辑,切换到其他应用以及响应打开你的应用的其他应用.你还可以通过URL方案从某个站点或是在基于Web的认证流程结束是打开应用. ...

  2. kotlin3-IdeaIU编辑器字体自动放大缩小

  3. 《Spring实战》第4章--面向切面的Spring--处理通知中的参数(经验总结)

    今天学习<Spring实战>第4章<面向切面的Spring>,根据4.3.3小节写出如下切面类: package proxy; import java.util.HashMap ...

  4. objc与鸭子对象(上)

    这是<objc与鸭子对象>的上半部分,<objc与鸭子对象(下)>中介绍了鸭子类型的进阶用法.依赖注入以及demo. 我是前言 鸭子类型(Duck Type)即:“当看到一只鸟 ...

  5. 【three.js练习程序】创建简单物理场景

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  6. MAYA逼真手枪制作视频教程 中文字幕

    下载地址 更多中文字幕教程请关注微镜映画网,有各类CG教程提供

  7. php编译安装 报错 make ***[libphp5.la] Error 1解决方法

    报错信息: /usr/bin/ld: cannot find -lltdl collect2: ld returned 1 exit status make: *** [libphp5.la] Err ...

  8. linq not in 查询

    想要的sql: select A.* from BL_BCSS_Invoice A join BL_BCSS_OfflineInvoice B on A.ID!=B.InvoiceID; 不知道如何写 ...

  9. 03-04_配置并启动Managed Server(受管服务器)

    本文重点: 配置Managed Servers(受管服务器) 启动Managed Servers 原理 运行多个Managed Servers实例             一.配置Managed Se ...

  10. 03-03_启动weblogic domain

    本文重点: 直接启动weblogic 控制台访问 weblogic概念及手工启动脚本分析 启动weblogic 启动admin Server做了哪些事情     一.直接启动weblogic [roo ...