首页 > 其他分享 >将虚机从vcenter导入到pve

将虚机从vcenter导入到pve

时间:2023-09-28 15:23:39浏览次数:39  
标签:导入到 vm echo pve 虚机 vcenter vmname id

 

#改脚本用来将vmware虚机通过ovftool导出到pve宿主机,然后再将其导入pve,可以设置pve虚机名称、OS类型、添加网卡配置mac地址,修改磁盘scsi改为ide,如果虚机之前在vmware中是开机状态,则将其开机

vms_path='/data1/scripts/vms.txt'
vms_ovf_path='/mnt/pve/dir-116/tmp_ovfbak/'
vc_username='ly%40yx.dd'
vc_password='password'
pve_storage='dir-116'
pve_vm_id=107   #定义导入pve的虚机开始的id

for line in $(cat $vms_path)
  do

    #export vmware vm to ovf
    vmname=`echo $line |awk -F , '{print $1}'`
    vmmac=`echo $line |awk -F , '{print $2}'`
    vlan=`echo $line |awk -F , '{print $3}'`
    vlanid=`echo $vlan | sed 's/VLAN//g'`
    os=`echo $line |awk -F , '{print $4}'`
    status=`echo $line |awk -F , '{print $5}'`
    echo "exporting $vmname ..."
    /root/vmware-ovftool/ovftool  --noSSLVerify -dm=thin  --powerOffSource  vi://$vc_username:[email protected]/SH/vm/$vmname $vms_ovf_path
    sleep 2

    #import ovf vm to pve
    qm importovf $pve_vm_id $vms_ovf_path/$vmname/$vmname.ovf $pve_storage --format qcow2 
    sleep 2

    #configure netcard with mac and vlan id
    echo "Configuring vm name,mac,disk..."
    echo "pve vm id is: $pve_vm_id , mac is $vmmac , vlan id is $vlanid"
    vmname_new=`echo $vmname | sed 's/_/-/g'`
    qm set $pve_vm_id --name $vmname_new

    qm set $pve_vm_id -net0  e1000=$vmmac,bridge=vmbr1,firewall=1,tag=$vlanid

    #configure vm os type
    os_windows=`echo $os |grep -i windows |wc -l`
    if [ $os_windows -eq 1 ];then
      qm set $pve_vm_id --ostype=win11
    else
      qm set $pve_vm_id --ostype=l26
    fi

    #change disk scsi to ide
    disk_num=`qm config $pve_vm_id |grep scsi |grep -v 'order=' |wc -l`
    if [ $disk_num -gt 0 ];then
      echo "find $disk_num disks with $vmname_new"
      for ((i=0;i<$disk_num;i++))
      do
        echo "changing disk $i scsi to ide..."
        scsi_id="scsi$i"
        qm set $pve_vm_id --delete $scsi_id  #dispatch scsi disk
        sleep 1
        disk_unused=`qm config $pve_vm_id |grep unused0 |awk '{print $2}'` #discover unused disk
        echo $disk_unused
        sleep 1
        qm set $pve_vm_id -ide$i $disk_unused #add unused disk to vm
      done
    #elif [ $disk_num -eq 1 ];then
    #  qm set $pve_vm_id --delete scsi0
    #  sleep 1
    #  disk_unused=`qm config 107 |grep unused0 |awk '{print $2}'`
    #  sleep 1
    #  qm set $pve_vm_id -ide0 $disk_unused
    else
      echo "Not find scsi disk with $vmname_new"
    fi
    sleep 2

    #check if start the vm
    if [ $status = 'PoweredOn' ];then
      echo "starting $vmname_new..."
      qm start $pve_vm_id
    fi

    pve_vm_id=`expr $pve_vm_id + 1`
    sleep 30
  done

cat vms.txt,内容如下:

虚机名称,虚机MAC,VLAN,OSid,虚机状态,宿主机IP,虚机备注

Dev-mq01_10.10.20.11,00:51:56:bf:cf:87,VLAN26,centos7_64Guest,PoweredOn,10.10.2.13,notes
Dev-mq03_10.10.26.19,00:51:56:bf:13:6b,VLAN26,centos7_64Guest,PoweredOn,10.10.2.12,notes

 

标签:导入到,vm,echo,pve,虚机,vcenter,vmname,id
From: https://www.cnblogs.com/dreamer-fish/p/17735861.html

相关文章

  • Maven项目,本地jar包导入手动导入到Maven库中
    一、手动添加jar包到Maven仓库(1)在pom.xml加入依赖,例如:(2)把包拷贝到到mavenhome下,然后进入bin目录下,执行mvninstall:install-file-Dfile=C:\Users\admin\Desktop\1.0-SNAPSHOT\1.0-SNAPSHOT\common-file-1.0-SNAPSHOT.jar-DgroupId=com.chinatower.awh.file-DartifactId=c......
  • VMware vCenter Server 8.0U2 发布 - 集中式管理 vSphere 环境
    VMwarevCenterServer8.0U2发布-集中式管理vSphere环境2023-09-21,北京时间22日凌晨vSphere8.0Update2正式发布。请访问原文链接:https://sysin.org/blog/vmware-vcenter-8-u2/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.orgvSphere8.0U2新增功能,请......
  • 将hive数据库中的数据导入到mysql数据库中时需要注意到的问题
    在hive中使用jdbc将hive与mysql连接起来时一定要注意到每个数据库不同的字段个数,在打算直接复制时,不能只是修改表的名称和字段名称,还要记得修改几个?那里,个数要与字段名称保持一致!!!不然就会报错(比如我);......
  • 每日总结(hdfs文件导入到hive表)
     1CREATETABLEemployees(2idINT,3nameSTRING,4ageINT,5salaryFLOAT6)7ROWFORMATDELIMITED8FIELDSTERMINATEDBY','9STOREDASTEXTFILE;1011--将数据上传到HDFS12hadoopfs-putemployees.csv/input1314--导......
  • pve系统盘扩容、网络IP设置、端口映射、DHCP服务器
    pve系统盘扩容fdisk/dev/vda输入n然后按几下回车直到提示Createdanewpartition最后输入w退出pvcreate/dev/vda4vgextendpve/dev/vda4vgs #查看可用容量lvresize-r-L+40G/dev/pvelvs  #查看lv卷大小在Datacenter->pve->System->NetworkCreate一个新的Linux......
  • vCenter证书过期解决方法
    vCenter证书过期解决方法 目录1概述  2详细操作步骤       2.1检查关键的STS证书是否过期并修复       2.2检查除STS证书外是否还有其余证书过期       2.3续订除STS和data-encipherment以外的证书       2.4续订data-encipherment证书......
  • hive导出到mysql以及mysql导入到hive
    hive导出到mysql:/export/server/sqoop-1.4.7.bin__hadoop-2.6.0/bin/sqoopexport--connectjdbc:mysql://10.99.118.207:3306/db_msg--usernameroot--password1003392478--tabletb_rs_sender_phone--export-dir/user/hive/warehouse/db_msg.db/tb_rs_sender_phone--......
  • vCenter 6.X无法提取请求的数据。有关详细信息,请查看 vSphere Client 日志
    vCenter6.X无法提取请求的数据。有关详细信息,请查看vSphereClient日志解释:根本原因是证书不一致,但是vc的证书和vsan他们不共用一个证书,所以需要保证集群证书的统一,当时由于vc的证书到期后,只替换了vc的sts证书,在替换了STS证书之后,可能会导致计算机SSL证书与该vCenterServer......
  • VMware vCenter Server 7.0.3 安装
    VMwarevCenterServer7.0.3安装文章目录VMwarevCenterServer7.0.3安装1.安装vcenter1.1第一阶段1.2第二阶段2.exsi查看vcenter3.部署DNSserver3.1安装unbound3.2配置unbound3.3vcenter配置域名访问部署完EXSI7.0.3,你要在EXSI创建一台windows10虚拟机,在......
  • VMware vSphere 8.0 Update 2 下载地址(ESXi 8.0 U2 & vCenter Server 8.0 U2)
    ESXi8.0U2&vCenterServer8.0U2请访问原文链接:https://sysin.org/blog/vmware-vsphere-8-u2/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.org企业级工作负载平台vSphere将云计算的优势引入本地部署工作负载。vSphere可提高性能和运维效率并加速创新。vSpher......