2013年10月10日星期四

Windows Server 2012 R2 Hyper-V在线调整虚拟硬盘的大小

本邮件内容由第三方提供,如果您不想继续收到该邮件,可 点此退订
Windows Server 2012 R2 Hyper-V在线调整虚拟硬盘的大小  阅读原文»

Windows Server 2012 R2 Hyper-V在线调整虚拟硬盘的大小

从Windows Server 2012 R2 开始,可以在线调整虚拟硬盘的大小了,这意味着当虚拟硬盘不够用时,我们在虚拟机运行的情况下直接扩展虚拟硬盘容量了。有人说这个有什么用?当然,实验室情况下,我们完全可以停机,然后修改其大小,如果在生产环境呢?你能设想一组正在渲染3D图形的虚拟机,硬盘空间突然不够的情形么?

要实现Hyper-V在线调整虚拟硬盘的大小这个功能,至少要符合两个条件:

1、虚拟硬盘的格式一定得是VHDX。

2、这个VHDX虚拟硬盘一定得挂载到SCSI控制器上。

挂载到IDE控制器上的VHDX虚拟硬盘无法在线调整大小:

image

挂载到SCSI控制器上的VHD虚拟硬盘也无法在线调整大小,只能进行压缩:

image

只有挂载在SCSI控制器上的VHDX虚拟硬盘才可以在线调整大小。

image

收缩虚拟硬盘:在什么情况下来收缩虚拟硬盘呢?一种情况是,在物理硬盘空间不够时,我们用收缩固定大小的虚拟硬盘空间来增大物理硬盘,另一种情况是,当我们第一次创建一个新的默认大小的动态虚拟硬盘,需要转换为固定虚拟硬盘时占用物理硬盘容量大,花费时间长,一般要进行收缩操作。

1、先在虚拟机里对虚拟硬盘进行压缩:

image

输入压缩空间量:是腾出来的空间,压缩后的总计大小:是虚拟硬盘剩余的容量。

image

腾出来的空间用来收缩:

image

2、进行收缩:

image

image

如果不做第一步,就不会有收缩按钮:

image

输入收缩的大小:

image

我发现,收缩只能以GB为单位,总能剩余一小部分空间:

image

我们可以用扩展卷的方式,重新分配给虚拟硬盘:

image

扩展虚拟硬盘:

image

image

输入扩展的大小:这个容量是虚拟硬盘的总容量。下图:32+48=80,也就是扩展的容量为48G。

image

image

用扩展卷向导进行

利用saltstack的salt-ssh进行集群管理【无客户端下】  阅读原文»

利用saltstack的salt-ssh进行集群管理【无客户端下】

十一回来,很是懒散呀~

今天在群里看到 itnihao兄在聊 salt-ssh ,这是个好东西,就群里一直就跟进着。。。翻了下聊天记录,就把salt-ssh实现了下。

原本前些日子就想写一个salt ssh的文章,正好是快十一了,自己也没心思写了。。。

今天就把过程写一下,后期丰富下。。。。【嘿,又是这一套。。。。】

听兆松的意思,saltstack的epel源有问题,但是github里面的代码是无问题的。

salt-ssh 可以独立运行的,不用minion的~ 要是需要用salt-ssh的特殊参数,比如grains获取数据的话,还是需要安装minion的,不然他是不好判断你是redhat,debian的 ~ 说句废话 要是能安装minion,谁还用salt-ssh呀。。。。

提示这样出名的工具还是不少的,我这边简单分析下优缺点!

pdsh、pssh 这东西是要建立在你做好了key关联之后,他的优点才能看出来

  vi  server1.txt  192.168.1.11  192.168.1.12  192.168.1.13  192.168.1.14  pssh -h server1.txt -l root -P dir  

expect 最大的有点就是交互,但是要成高性能的话,需要自己写多线程的。

  #!/usr/bin/expect -f  set toip [lindex $argv 0 ]  set ip 10.2.20.14  set password 123123  set timeout 10  spawn ssh root@$ip  expect {  "*yes/no" { send "yes\r"; exp_continue}  "*password:" { send "$password\r" }  }  

fabric、paramiko python之利器,用过一段时间,该有的都有的,很是强大

  from fabric import env  env.hosts = ['user1@host1:port1', 'user2@host2.port2']  env.passwords = {'user1@host1:port1': 'password1', 'user2@host2.port2': 'password2'}  

但是我还是很看好 salt-ssh ,关于理由,你猜 ~

以后配置salt-api 会更好用的~

salt-ssh 可以代替expect之类的密码推送脚本,看起来功能不比expect差 。 salt-ssh 用的是sshpass进行密码交互的。

源地址:http://rfyiamcool.blog.51cto.com/1030776/1305710

120446682.png

我们先开始安装 salt-ssh ~

  git clone https://github.com/saltstack/salt.git  cd salt  ./setup.py install  

salt-ssh

我们可以把要执行的信息,也就是ip,帐号,密码等 都放到一个文件里面。当然

文件路径是可以随便定义的,官方是指定到了 /etc/salt/roster

114104312.png

我们刚才执行的结果:

113350869.png

我们测试下他的性能 ~ 结果让人很爽 ~

135821637.png

详细的参数:

指定信息文件

114927903.png

配置一个默认的密码,然后帮你推送下 ~~~ 这个功能有点怪,规范点的公司,大家的密码都是随机生成的,但是适合自己的实验环境和小公司。。。。

115122982.png

重大发现: 我在这里补充下~

salt-ssh 第一次执行是根据roster的账号密码推送密码,来实现自动交互的。

执行完了后 会在目标的服务器里面,追加master端的key

然后你就可以删除roster里面的passwd 密码条目了。

######

这是由 兆松发现的~

######

153633191.png

我给大家测试下,我把passwd删除了,还是可以运行,这里就不是用sshpass推送密码了,而是直接通过key了 !!!

153747549.png

参数不少,大家自己看吧 ~

  salt-ssh  Synopsis  salt-ssh '*' [ options ] sys.doc  salt-ssh -E '.*' [ options ] sys.doc cmd  Description  Salt ssh allows for salt routines to be executed using only ssh for transport  Options  -r, --raw, --raw-shell  Execute a raw shell command.  要执行的命令,支持管道和常用的特殊符号  --roster-file  Define which roster system to use, this defines if a database backend, scanner, or custom roster system is used. Default is the flat file roster.  指定一个信息文件  --refresh, --refresh-cache  Force a refresh of the master side data cache of the target's data. This is needed if a target's grains have been changed and the auto refresh timeframe has not been reached.  --max-procs  Set the number of concurrent minions to communicate with. This value defines how many processes are opened up at a time to manage connections, the more running process the faster communication should be, default is 25.  --passwd  Set te default password to attempt to use when authenticating.  --key-deploy  Set this flag to attempt to deploy the authorized ssh key with all minions. This combined with --passwd can make initial deployment of keys very fast and easy.  --version  Print the version of Salt that is running.  --versions-report  Show program's dependencies and version number, and then exit  -h, --help  Show the help message and exit  -c CONFIG_DIR, --config-dir=CONFIG_dir  The location of the Salt configuration directory. This directory contai

阅读更多内容

没有评论:

发表评论