PowerCLI是VMware开发的基于微软(MSFT)的PowerShell的命令行管理vSphere的实现,因此在批量化操作方面CLI会减轻很多GUI环境下的繁琐重复劳作。

现有场景中有大量的物理主机已经安装好的ESXi,并且可以被vCenter所管理,由于默认情况下可供管理的那个Manage管理网卡是不开启vMotion的,因此我们需要借用这个Manage管理网卡来开启vMotion功能,从而实现集群内的HA功能。

说明:一般情况下,VMware建议,条件允许的情况下每个网卡的功能最好能独立且分开,有专门跑iSCSI的网卡,有专门组建业务网络的业务网卡,有专门用来节点管理的Manage网卡,有专门用来实现高可用HA和迁移vMotion的网卡。

通过官方文档,我们很容易找到命令行开启vMotion的方法(link:https://www.vmware.com/support/developer/PowerCLI/PowerCLI41U1/html/Set-VMHostNetworkAdapter.html ):

Get-VMHost Host | Get-VMHostNetworkAdapter -VMKernel | Set-VMHostNetworkAdapter -VMotionEnabled $true

该命令可以实现对Get-VMHost到的所有Host主机下的具有VMkernel的网卡进行vMotion的开启

现有场景需要对特定的HOST进行操作,因此语句我们需要更改一下:

Connect-VIServer –Server 172.5.140.201

get-vmhost -name 172.5.140.160 | Get-VMHostNetworkAdapter -VMKernel | Set-VMHostNetworkAdapter -VMotionEnabled $true

该组合实现登陆一个vCenter服务器172.5.140.201 之后,对该管辖范围内的172.5.140.160主机单独进行vMotion的开启

这个场景中有大量的新加入主机需要这般操作,因此我们需要准备一个包含这些主机IP文件列表我命名为“hosts.txt”文件,因此我们对语句进行了一些修改:

Connect-VIServer –Server 172.5.140.201

Get-Content hosts.txt | Foreach-Object {get-vmhost -name $_  | Get-VMHostNetworkAdapter -VMKernel | Set-VMHostNetworkAdapter -VMotionEnabled $true}

该组合实现登陆到vCenter之后,在这个hosts.txt内逐行寻找匹配项,通过PowerShell的Foreach-Object 进行自动填入“$_”关键信息,完成批量自动化开启vMotion

Figure 1需要进一步确认的对话环节

这种输出结果我们会有多次的确认,如vCenter的SSL信息的警告内容显示、VMKernel的多个确认,这里都需要按下更多次的回车才能完成。

因此我们想让屏幕输出更简洁,对语句做了如下修改:

Connect-VIServer –Server 172.5.140.201 -WarningAction 0

Get-Content hosts.txt | Foreach-Object {get-vmhost -name $_  | Get-VMHostNetworkAdapter -VMKernel -name vmk0 | Set-VMHostNetworkAdapter -VMotionEnabled $true -Confirm:$false}

该组合实现了忽略SSL信息警告内容,只在vmk0上开启vMotion,并且忽略确认 是的返回结果更加清爽

注意:这里需要注意一下,如果您的配置环境不是将vmk0上开启vMotion的话,请使用Get-VMHostNetworkAdapter -VMKernel命令获取当前所连接的vCenter内的所有ESXi主机上的VMKernel信息。

-=EOB=-

通过VMware的PowerCLI配置集群内指定主机的vMotion功能的更多相关文章

  1. Linux基础-配置网络、集群内主机名设定、ssh登入、bash命令、通配符(元字符)

    作业一:临时配置网络(ip,网关,dns)+永久配置 设置临时网络配置: 配置IP ifcongfig ens33 192.168.16.177/24 (ifconfig 网卡 ip地址    /24 ...

  2. 基于VMware的虚拟Linux集群搭建-lvs+keepalived

    基于VMware的虚拟Linux集群搭建-lvs+keepalived 本文通过keepalived实现lvsserver的的双机热备和真实server之间的负载均衡.这方面的blog挺多,可是每一个 ...

  3. 转】Nginx+tomcat配置集群负载均衡

    原博文出自于:http://blog.csdn.net/bruce_6/article/details/38228299         感谢! 相信很多人都听过nginx,这个小巧的东西慢慢地在吞食 ...

  4. Elasticsearch从入门到精通之Elasticsearch集群内的原理

    上一章节我介绍了Elasticsearch安装与运行,本章节及后续章节将全方位介绍 Elasticsearch 的工作原理 在这个章节中,我将会再进一步介绍 cluster . node . shar ...

  5. Linux之为集群内的机器设定主机名

    作业二:为集群内的机器设定主机名,利用/etc/hosts文件来解析自己的集群中所有的主机名,相应的,集群的配置应该改成使用主机名的方式 1.主机信息配置并解析 [root@localhost ~]# ...

  6. Elasticsearch集群内的原理

        一个运行中的 Elasticsearch 实例称为一个 节点,而集群是由一个或者多个拥有相同 cluster.name 配置的节点组成, 它们共同承担数据和负载的压力.当有节点加入集群中或者从 ...

  7. Hive环境的安装部署(完美安装)(集群内或集群外都适用)(含卸载自带mysql安装指定版本)

    Hive环境的安装部署(完美安装)(集群内或集群外都适用)(含卸载自带mysql安装指定版本) Hive 安装依赖 Hadoop 的集群,它是运行在 Hadoop 的基础上. 所以在安装 Hive 之 ...

  8. Redis-3.2.1集群内网部署

    摘要: Redis-3.2.1集群内网部署 http://rubygems.org国内连不上时的一种Redis集群部署解决方案.不足之处,请广大网友指正,谢谢! 一. 关于redis cluster  ...

  9. kubernetes(K8S)快速安装与配置集群搭建图文教程

    kubernetes(K8S)快速安装与配置集群搭建图文教程 作者: admin 分类: K8S 发布时间: 2018-09-16 12:20 Kubernetes是什么? 首先,它是一个全新的基于容 ...

随机推荐

  1. 在一个空ASP.NET Web项目上创建一个ASP.NET Web API 2.0应用

    由于ASP.NET Web API具有与ASP.NET MVC类似的编程方式,再加上目前市面上专门介绍ASP.NET Web API 的书籍少之又少(我们看到的相关内容往往是某本介绍ASP.NET M ...

  2. 02.LoT.UI 前后台通用框架分解系列之——灵活的菜单栏

    LOT.UI分解系列汇总:http://www.cnblogs.com/dunitian/p/4822808.html#lotui LoT.UI开源地址如下:https://github.com/du ...

  3. Ubuntu 16.10 安装byzanz截取动态效果图工具

    1.了解byzanz截取动态效果图工具 byzanz能制作文件小,清晰的GIF动态效果图,不足就是,目前只能通过输入命令方式来录制. byzanz主要的参数选项有: -d, --duration=SE ...

  4. OpenCASCADE Job - dimue

  5. .net 分布式架构之业务消息队列

    开源QQ群: .net 开源基础服务  238543768 开源地址: http://git.oschina.net/chejiangyi/Dyd.BusinessMQ ## 业务消息队列 ##业务消 ...

  6. UWP开发之Template10实践二:拍照功能你合理使用了吗?(TempState临时目录问题)

    最近在忙Asp.Net MVC开发一直没空更新UWP这块,不过有时间的话还是需要将自己的经验和大家分享下,以求共同进步. 在上章[UWP开发之Template10实践:本地文件与照相机文件操作的MVV ...

  7. 在.NET Core之前,实现.Net跨平台之Mono+CentOS+Jexus初体验

    准备工作 本篇文章采用Mono+CentOS+Jexus的方式实现部署.Net的Web应用程序(实战,上线项目). 不懂Mono的请移步张善友大神的:国内 Mono 相关文章汇总 不懂Jexus为何物 ...

  8. 通过sails和阿里大于实现短信验证

    通过sails与阿里大于来实现注册短信验证码的发送,逻辑图如下 1.用户在客户端发送手机号给服务器,服务器接收到手机号,生成对应时间戳,随机四位数验证码 2.服务器将电话号码和验证码告诉阿里大于服务器 ...

  9. 给缺少Python项目实战经验的人

    我们在学习过程中最容易犯的一个错误就是:看的多动手的少,特别是对于一些项目的开发学习就更少了! 没有一个完整的项目开发过程,是不会对整个开发流程以及理论知识有牢固的认知的,对于怎样将所学的理论知识应用 ...

  10. Atitit.如何建立研发体系

    Atitit.如何建立研发体系 组织,流程,prj..Mana  oppm 发管理是一个完整的管理体系,从结构上来讲,它主要由四个方面的内容构架而成:组织结构与岗位设置 管理流程与工作流程..项目及管 ...