另存为xxx.ps1

##########################通过模版批量部署虚拟机以下内容需要人工定义变量#######################

#Vcenter的IP
$vcenterIP ="10.40.24.3"
#ESXI的IP
$vmhost="10.40.8.2"
#该ESXI对应的存储名称
$dataStore="8.2_RAID5"
#使用的克隆的模版名字
$vmTemplate="linux-template10.40.24.252B"
#计算机名的前缀,不要再加一个-
$vmName_prefix="lin-42-0"
#计算机IP的前缀,不要再加一个.
$vmIP_prefix ="10.42.0"
#计算机的子网掩码
$vmIP_mask ="255.255.255.0"
#计算机的网关
$vmIP_gateway ="10.42.0.254"
#虚拟机创建循环的步长
$vmIPstep =1
#虚拟机创建循环的起始IP地址
$IPstart=12
#虚拟机创建循环的结束IP地址
$IPEnd=12
#连接Vcenter的IP,帐号密码
Connect-VIServer  -Server $vcenterIP -User xxxx -Password xxxx
#查找自定义规范管理器里的模版
$custSysprep = Get-OSCustomizationSpec | where {$_.name -like "linux-vlan120"}
#想把虚拟机创建到哪个文件夹
$Location = "abc"
#设置当前虚拟机的网卡属于哪个vlan
$NetworkName = "vlan120"
##########################通过模版批量部署虚拟机以上内容需要人工定义变量#######################
 
#IP从哪个开始
$i=$IPstart
#当IP>当前循环IP,<循环IP,才继续执行
while (($i -ge $IPstart) -and ($i -le $IPEnd))
{
#拼接计算机IP
$vmIP="$vmIP_prefix.$i"
#拼接计算机名称
$vmName="$vmName_prefix-$i"
#修改自定义规范管理器里的模版内容,使用静态IP方式,IP地址,IP子网掩码,和网关
$custSysprep | Get-OSCustomizationNicMapping | Set-OSCustomizationNicMapping -IpMode UseStaticIP -IpAddress $vmIP -SubnetMask $vmIP_mask  -DefaultGateway $vmIP_gateway
#创建虚拟机,哪台ESXI,计算机名,模版,数据存储,自定义模版,以及创建到哪个文件夹下。
New-VM -vmhost $vmhost -Name $vmName -Template $vmTemplate -Datastore $dataStore -OSCustomizationspec $custSysprep -Location $Location
#设置当前虚拟机的网卡属于哪个vlan
Get-VM -Name $vmName | Get-NetworkAdapter | Set-NetworkAdapter -NetworkName $NetworkName -Confirm:$false
#启动当前虚拟机
Get-VM -Name $vmName | Start-VM
#循环增加一次
$i=$i+$vmIPstep
}
#恢复自定义规范管理器里的模版到默认情况,用户自定义IP。。。
$custSysprep | Get-OSCustomizationNicMapping | Set-OSCustomizationNicMapping -IpMode PromptUser -SubnetMask $vmIP_mask  -DefaultGateway $vmIP_gateway

Vcenter5.5+vmwarePowercli6.5+powershell5批量创建虚拟机的更多相关文章

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

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

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

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

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

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

  4. 用cloudmonkey批量创建虚拟机

    需求: 1.root磁盘120G(这个在做镜像的时候已经做好) 2.需要用到share网络 3.添加500G磁盘并且挂载早虚拟机上面 #!/bin/bashzone_id=d530fee4-413a- ...

  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. sql server 表结构 导出 到excel

    SELECT 表名 then d.name else '' end, 表说明 then isnull(f.value,'') else '' end, -- 字段序号 = a.colorder, 字段 ...

  2. 对抗网络之目标检测应用:A-Fast-RCNN

    对抗网络之目标检测应用:A-Fast-RCNN 论文:A-Fast-RCNN: Hard Positive Generation via Adversary for Object Detection ...

  3. jeecms系统使用介绍——通过二次开发实现对word、pdf、txt等上传附件的全文检索

    转载请注明出处:http://blog.csdn.net/dongdong9223/article/details/76912307 本文出自[我是干勾鱼的博客] 之前在文章<基于Java的门户 ...

  4. IOS 作业项目(1) 关灯游戏 (百行代码搞定)

    1,准备工作,既然要开关灯,就需要确定灯的灯的颜色状态 首先想到的是扩展UIColor

  5. LIBCURL踩坑记

    这里一个java程序员进行C++开发使用libcurl踩过的坑: 1.  发送指定请求类型body,比较通用方法如下,可以直接填写数据并手动指定content type,如果是form表单等形式,则需 ...

  6. stm32 DMA配置

    DMA就是将一个地址空间复制到另外一个地址空间.DMA传输方式无需CPU直接控制传输,也没有中断处理方式那样保留现场和恢复现场的过程,通过硬件为RAM与I/O设备直接传送数据,使CPU的效率大大的提高 ...

  7. Spring DI

    一.   Spring DI 依赖注入 利用spring IOC实例化了对象,而DI将实例化的对象注入到需要对象的地方,完成初始化任务. 对象由spring创建,之后再由spring给属性赋值 spr ...

  8. Spring Boot(5) 集成Hibernate 日志配置

    https://blog.csdn.net/ZNG_XP/article/details/78131809 https://blog.csdn.net/u011998835/article/detai ...

  9. 【网络通讯】Nat知识了解

    一.Nat的含义 NAT(Network Address Translation,网络地址转换)是1994年提出的.当在专用网内部的一些主机本来已经分配到了本地IP地址(即仅在本专用网内使用的专用地址 ...

  10. 当php版本为5.6时的提示信息解决方法

    ecshop修饰符preg_replace/e不安全的几处改动 Strict standards: Only variables should be passed by reference in D: ...