经过一晚上的折腾, 终于验证出来一个非常简单的方法. 也比较好理解和使用. 这里简单记录一下:

使用linux上面powershell安装vm powercli 连接vcenter 通过计划任务自动创建部分虚拟机的快照以及自动清理过期快照的办法

1. 通过微软官方文档,在centos7 上面安装配置 powershell . 命令很简单 大家自行下载安装即可

sudo yum install https://github.com/PowerShell/PowerShell/releases/download/v7.0.1/powershell-lts-7.0.1-1.rhel.7.x86_64.rpm

2. 安装上 powershell 之后 可以安装 vm 的powercli 工具 也是通过包管理器进行安装 因为网络原因 可能需要花一定的时间

我一般都是在root 上面上面 处理起来比较简单了
pwsh #进入powershell 的命令行界面 输入
Install-Module -Name VMware.PowerCLI -Scope CurrentUser 进行安装powercli 时间可能会很漫长

3. 安装完成之后就可以进行连接 自己的 vCenter了 可以进行简单测试

Connect-VIServer vcenterip -u vcenteruser -Password YourPasswords

我不知道是我设置的原因 还是其他 我每次登陆都要花 至少 3分钟. 原因不明确.  但是的确能登录上.

4. 登录上之后就可以执行脚本了  一个很简单的创建移除脚本的命令样式如下

创建快照:
get-vm -name yourvmname  |new-snapshot -name  (date +%Y%m%d)
# 注意 我这个命令快照的名字是当前日期.
移除快照
get-vm -name yourvmname |get-snapshot -name (date  -d '5 days ago' +%Y%m%d) |remove-snapshot
#注意这个命令能够移除 名字是五天前日期的快照.

5. 设置计划任务, 因为自己要做的虚拟机快照比较多, 索引应该放到一个文件list里面会好一些.

所以第一步创建一个list 里面仅仅放一下 虚拟机的名字

vim /alert/vmlist

yourvmname1
yourvmname2 #注意 名字一定要符合 发生了变化要定期改.

第二步 使用foreach 语法编写一个脚本用来创建快照

Connect-VIServer yourvcenterip  -u root -Password yourpasswords
$i=0;Get-Content /alert/vmlist |foreach {get-vm -name $_ |new-snapshot -name (date +%Y%m%d);$i++}

编写一个删除快照的脚本, 注意一点删除快照要增加一个默认值. 能够默认删除快照信息

$ConfirmPreference = 'None'
Connect-VIServer yourvcenterip -u root -Password yourpasswords $i=0;Get-Content /alert/vmlist |foreach {get-vm -name $_ |get-snapshot -name (date -d '5 days ago' +%Y%m%d) |remove-snapshot;$i++}
$i=0;Get-Content /alert/vmlist |foreach {get-vm -name $_ |get-snapshot -name (date -d '6 days ago' +%Y%m%d) |remove-snapshot;$i++}
$i=0;Get-Content /alert/vmlist |foreach {get-vm -name $_ |get-snapshot -name (date -d '7 days ago' +%Y%m%d) |remove-snapshot;$i++}

# 注意 我这个删除是默认删除 最近四五天的快照 , 多写几个 避免有某天的快照删除出现异常. 快照多了 太影响性能了.

6. 创建计划任务

Linux下面创建计划任务的方式比较简单
crontab -e的方式就可以了
增加的内容基本上为 1 23 * * * pwsh /alert/mksnapshot
1 22 * * * pwsh /alert/rmsnapshot 每天的 晚上十点自动删除日期是五天前, 六天前 和七天前的快照
每天的 晚上十一点自动创建一个为当前日期的不带内存镜像的快照. 注意快照一定不要太多 重要的事情一定要多说几遍.

7. 其他说明

包含内存映象的快照

get-vm -name yourvmname  |new-snapshot -name  (date +%Y%m%d)  -Memory -Quiesce
# 注意增加一个 -Memory -Quiesce 的参数就能够实现带内存镜像的快照
但是这个会严重影响快照的制作速度
不带内存影响大概3秒钟一个 带内存镜像的话 20G内存的虚拟机 一般配置的服务器 需要12min 才能做一个快照. 删除的速度也会明显变长

使用linux上面powershell安装vm powercli 连接vcenter 通过计划任务自动创建部分虚拟机的快照以及自动清理过期快照的办法的更多相关文章

  1. linux版powershell安装教程(.net core版)

    powershell 传教士 原创文章 始于2016-12-20,2017-03-15改.文章版本目前博客园为最新版. 允许转载,但必须保留名字和出处,否则追究法律责任 问:powershell二进制 ...

  2. Linux学习(一)-安装vm虚拟机以及如何在虚拟机上安装Centos系统

    (一)基本说明 学习Linux需要一个环境,我们需要创建一个虚拟机,然后在虚拟机上安装一个Centos系统来学习. 1)安装软件vm12; 2)通过vm12创建一个虚拟机空间; 3)在vm12创建好的 ...

  3. 如何安装VM Tool软件包

    在linux下,我们想把原windows操作系统下的一些文件拷入到新linux系统中,在windows下对文件(夹)进行复制,在linux下无法进行粘贴,何故?这是因为新装的linux操作系统未安装V ...

  4. VMware Linux 下 Nginx 安装配置 - Tomcat 配置 (二)

    准备工作 相关浏览: VMware Linux 下 Nginx 安装配置 (一) 1. 选在 /usr/local/ 下创建 softs 文件夹,通过 ftp 命令 把 apache-tomcat-7 ...

  5. redis linux 安装及jedis连接测试

    一.安装配置 1:下载redis下载地址 http://code.google.com/p/redis/downloads/list推荐下载redis-1.2.6.tar.gz,之前这个版本同事已经有 ...

  6. 在VM中安装Android4.4连接小米手环 之 在VM中安装Android4.4

    今天刚买了个小米手环,系统须要4.4及以上,但自己手机系统版本号不匹配.故打算在VM中安装Android4.4连接小米手环. 这一节先介绍在VM中安装Android4.4(怎么安装VM就不介绍了) 1 ...

  7. Linux centos7下安装配置redis及Redis desktop Manager工具连接注意事项

    基本工具:VMware12.CentOS-7-x86_64-Everything-1611.iso.redis-desktop-manager-0.8.0.3841 废话不多说,首先,关于什么是Red ...

  8. linux(kali,centos)安装vm及其提示缺少c头文件解决方法

    我电脑系统是kali最新版 首先去官网下一个vm安装包,给个直达网址 http://www.vmware.com/cn/products/workstation/workstation-evaluat ...

  9. linux安装mysql全纪录[包括yum和rpm安装,编码,远程连接以及大小写问题]

    linux安装mysql全纪录[包括yum和rpm安装,编码,远程连接以及大小写问题] 一.查看mysql是否已经安装 使用“whereis mysql”命令来查看mysql安装路径: [root@h ...

  10. 解决Linux环境下安装xampp之后外部无法连接MySQL的问题

    在Linux系统下,开发PHP一般都是LAMP环境,对于开发环境来讲,没有必要花太大精力去单独配置LAMP环境,采用xampp一键安装包是一个很好的方式.在Linux系统上安装xampp的过程这里就不 ...

随机推荐

  1. 【乘风破浪的开发者】丁一超:从AI实战营出发探索未知的AI世界

    摘要:从年初的不知不觉进入AI学习的道路,到认识并熟练使用ModelArts平台.虽然只有短短的半年,但这半年的探索学习,让丁一超看清了未来的路在何方. 从招聘网站上输入"人工智能工程技术人 ...

  2. 华为云AI论文精读会2021第一期:高效语义分割模型Fast-SCNN分享

    2020年举办的华为云AI经典论文复现活动,不仅受到了参赛者们一致好评,也产出了许多优质的算法成果.这些论文复现的算法描述.源代码以及算法使用指导文档均已发布到了AI Gallery.为了让开发者更好 ...

  3. 提升源代码安全性的C#和Java深度混淆工具——IpaGuard

    提升源代码安全性的C#和Java深度混淆工具--IpaGuard 摘要 Ipa Guard是一款功能强大的IPA混淆工具,通过对iOS IPA文件进行混淆加密,保护其代码.资源和配置文件,降低破解反编 ...

  4. 企业诊断屋:二手车交易平台 APP 如何用 AB 测试赋能业务

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 2023年汽车行业新车市场低靡,由新车降价引发的车辆价格波动很快传导到二手车市场,二手车的交易也受到了冲击,收车验 ...

  5. mac下python3.7安装mysqlclient出错解决

    错误信息 Building wheel for mysqlclient (setup.py) ... error ERROR: Command errored out with exit status ...

  6. CPU推理|使用英特尔 Sapphire Rapids 加速 PyTorch Transformers

    在 最近的一篇文章 中,我们介绍了代号为 Sapphire Rapids 的第四代英特尔至强 CPU 及其新的先进矩阵扩展 (AMX) 指令集.通过使用 Amazon EC2 上的 Sapphire ...

  7. 关于 Windows10升级版本后,内存占用率居高不下的解决办法

    一个月前,打开系统更新,win 10 推送了 最新版本. 然后手贱点了更新. 的确一开始没觉得的有什么明显变化,但最近总觉得机子卡的卡的严重,查看了下内存,占用率居高不下. 经常才打开一两个软件内存就 ...

  8. 硬核调试实操 | 手把手带你实现 Serverless 断点调试

    导读:在应用开发过程中,或者开发完成后,若出现执行结果不符合我们的预期时,通常需要进行一定的调试工作.但是在 Serverless 架构下,调试工作往往会受到一些环境因素限制,如所开发的应用在本地是比 ...

  9. python生成word文档

    python生成word文档,感觉比java生成方便很多 下面看看步骤 1.环境 pip install python-docx 2.准备一张需要插入word中的图片monty-truth.png 3 ...

  10. <vue 路由 2、router-link标签属性>

    说明:在上一节的工程下继续讲解 一.     知识点说明 上一节中, <router-link>我们只是使用了一个属性: to, 用于指定跳转的路径.<router-link> ...