使用linux上面powershell安装vm powercli 连接vcenter 通过计划任务自动创建部分虚拟机的快照以及自动清理过期快照的办法
经过一晚上的折腾, 终于验证出来一个非常简单的方法. 也比较好理解和使用. 这里简单记录一下:
使用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 通过计划任务自动创建部分虚拟机的快照以及自动清理过期快照的办法的更多相关文章
- linux版powershell安装教程(.net core版)
powershell 传教士 原创文章 始于2016-12-20,2017-03-15改.文章版本目前博客园为最新版. 允许转载,但必须保留名字和出处,否则追究法律责任 问:powershell二进制 ...
- Linux学习(一)-安装vm虚拟机以及如何在虚拟机上安装Centos系统
(一)基本说明 学习Linux需要一个环境,我们需要创建一个虚拟机,然后在虚拟机上安装一个Centos系统来学习. 1)安装软件vm12; 2)通过vm12创建一个虚拟机空间; 3)在vm12创建好的 ...
- 如何安装VM Tool软件包
在linux下,我们想把原windows操作系统下的一些文件拷入到新linux系统中,在windows下对文件(夹)进行复制,在linux下无法进行粘贴,何故?这是因为新装的linux操作系统未安装V ...
- VMware Linux 下 Nginx 安装配置 - Tomcat 配置 (二)
准备工作 相关浏览: VMware Linux 下 Nginx 安装配置 (一) 1. 选在 /usr/local/ 下创建 softs 文件夹,通过 ftp 命令 把 apache-tomcat-7 ...
- redis linux 安装及jedis连接测试
一.安装配置 1:下载redis下载地址 http://code.google.com/p/redis/downloads/list推荐下载redis-1.2.6.tar.gz,之前这个版本同事已经有 ...
- 在VM中安装Android4.4连接小米手环 之 在VM中安装Android4.4
今天刚买了个小米手环,系统须要4.4及以上,但自己手机系统版本号不匹配.故打算在VM中安装Android4.4连接小米手环. 这一节先介绍在VM中安装Android4.4(怎么安装VM就不介绍了) 1 ...
- Linux centos7下安装配置redis及Redis desktop Manager工具连接注意事项
基本工具:VMware12.CentOS-7-x86_64-Everything-1611.iso.redis-desktop-manager-0.8.0.3841 废话不多说,首先,关于什么是Red ...
- linux(kali,centos)安装vm及其提示缺少c头文件解决方法
我电脑系统是kali最新版 首先去官网下一个vm安装包,给个直达网址 http://www.vmware.com/cn/products/workstation/workstation-evaluat ...
- linux安装mysql全纪录[包括yum和rpm安装,编码,远程连接以及大小写问题]
linux安装mysql全纪录[包括yum和rpm安装,编码,远程连接以及大小写问题] 一.查看mysql是否已经安装 使用“whereis mysql”命令来查看mysql安装路径: [root@h ...
- 解决Linux环境下安装xampp之后外部无法连接MySQL的问题
在Linux系统下,开发PHP一般都是LAMP环境,对于开发环境来讲,没有必要花太大精力去单独配置LAMP环境,采用xampp一键安装包是一个很好的方式.在Linux系统上安装xampp的过程这里就不 ...
随机推荐
- 一文带你全面了解openGemini
本文分享自华为云社区<一文带你全面了解openGemini>,作者: 华为云社区精选. 7月19日,openGemini社区联合华为云DTT(技术公开直播课栏目)共同举办了一期主题为< ...
- 云图说 | Workflow:流水线工具,助您高效完成AI开发
摘要:Workflow是将ML Ops(机器学习和DevOps的组合实践)应用于ModelArts平台,可以让您更高效的完成AI开发. 本文分享自华为云社区<云图说 | 第263期 Workfl ...
- 技术实践丨Prometheus+Grafana搭建HBase监控仪表盘
摘要:Grafana+Prometheus是目前非常流行的监控方案,图形化展示非常强大. 简介 ● HBase是一个分布式的.面向列的开源数据库,开源版本默认提供了展示集群信息的UI,可以显示集群的实 ...
- 华为云GaussDB(for openGauss)推出重磅内核新特性
摘要:华为云新一代金融级分布式数据库GaussDB(for openGauss)正式推出了Ustore存储引擎.基于Paxos协议的DCF高可用组件等多个重大内核新特性. 数字化时代,技术迭代更新比以 ...
- GaussDB(for Redis)新特性发布:前缀搜索千倍提升与集群版多租隔离
摘要:GaussDB(for Redis)推出的全新特性,实现集群版多租隔离功能和增强版前缀搜索,前缀搜索时延较开源Redis降低千倍,为助力企业业务发展带来了更多可能. 近期,华为云GaussDB( ...
- 【Java爬虫】如何通过 API 递归分页爬取网页数据
前言 在最近的互联网项目开发中,需要获取用户的访问ip信息进行统计的需求,用户的访问方式可能会从微信内置浏览器.Windows浏览器等方式对产品进行访问. 当然,获取这些关于ip的信息是合法的.但是, ...
- POJ 2484博弈——对称法
题目链接:http://poj.org/problem?id=2484 题意:Alice和Bob玩游戏,从一堆圆环形排列的硬币中拿硬币,每次可以拿一个或者两个,但必须拿连续的(两个中间有空位也视为不连 ...
- SpringCloud学习 系列十、服务熔断与降级(1-简介)
系列导航 SpringCloud学习 系列一. 前言-为什么要学习微服务 SpringCloud学习 系列二. 简介 SpringCloud学习 系列三. 创建一个没有使用springCloud的服务 ...
- vue 引入echars 亲测版
网上找了很多例子,其中有修改main.js的配置的,反正我没搞成功,最后实验成功的步骤如下 1.首先创建一个Vue CLI 的工程 . 注:具体步骤查看以前的博客 https://www.cnblog ...
- 四、swift大对象--静态态大对象
系列导航 一.swift对象存储环境搭建 二.swift添加存储策略 三.swift大对象--动态大对象 四.swift大对象--静态态大对象 五.java操作swift对象存储(官网样例) 六.ja ...