Windows Live Messenger Error 8100030d

When you get this error, you may need to delete your cache of WLM.

For XP users,?delete these folders:

  • C:\Documents and Settings\Your Windows logon name\Contacts\Your Messenger e-mail address
  • C:\Documents and Settings\Your Windows logon name\Local Settings\Application Data\Microsoft\Windows Live Contacts\Your Messenger email address

For Vista/Win7 users, delete these folders:

  • C:\Users\Your Windows logon name\Contacts\Your Messenger e-mail address
  • C:\Users\Your Windows logon name\AppData\Local\Microsoft\Windows Live Contacts\Your Messenger e-mail address

You may need to shutdown your WLM completely and some services like wlcomm.exe by Task Manager.

[FW]你只有一个面孔

英国《金融时报》中文网专栏作家?程苓峰

Facebook已经在这个星球上存在了7年,并且超过Google成为最大的网站。我问过几十个中国互联网的中高层,Facebook是否会取代Google主宰互联网。有40%的人说“会”。不过,最近才发现自己对这个网站知之甚少。了解它的历史、功能和市场地位,却不一定了解它的信仰、宗教和文化象征。

换句话说,一个改变了人们生活的东西,基本也会改变他们的想法。而更恰当的说法可能是:只有更符合人们的本性的东西,才会赢得人们的喜爱。

好吧,来说一说Facebook的信仰。大部分线索来自David Kirkpatrick的新书The Facebook Effect:The Inside Story Of The Company That Is Connecting The World。

在Google的核心价值中,坚信在全球化浪潮的最后,世界会以电子计算机为中心,并且电子计算机会完成所有事情。这也是Google错过这一波社交网络潮流的原因。Google的模型认为,信息和整合来自全世界的信息是最重要的事情。而Facebook的模型从根本上是不同的:人掌握科技,而不是倒过来。Facebook公司的经济、政治、和文化价值以及其他方面的价值的根源思想是:人才是最重要的东西。让这个世界上的人们自己组织起来,才是最重要的事情。

顺便说一句,Google的创始人是斯坦福的博士,而Facebook的创始人是哈佛大学的本科生。在我印象中,斯坦福和哈佛,博士和本科生,是有很大区别的。

Facebook的俄罗斯大股东Yuri Milner如此评价Facebook Connect的价值:Facebook帐号基本上就是你的护照——线上护照。理论上只有政府才能签发护照,但突然间,有人在世界范围内给所有人签发护照,毫无疑问,这是很有竞争力的。但谁说护照只能由政府来颁发?这也许只是一定历史时期的产物,而Facebook将成为一种全球公民身份。

在其19岁时一手缔造Facebook的现年25岁的CEO扎克伯格说:你必须善良,才能得到人们的信任。

Facebook正在改变我们对社区,邻里之间和整个星球社区的概念。在这个步伐不断加快的现代生活中,个体之间的距离不断拉远,而Facebook帮助我们重拾人与人之间的亲密感。Facebook的目标是做出一个整个人类的索引,创造出任何两个个体之间直接的联系途径。

Facebook的整个贡献是其所有用户构成一个想法和感受的全球组合体。许多人预言者可能会朝着一个原始的全球性大脑的方向进化。当所有的个人信息聚集一处,这些信息就可以被复杂的软件分析,并且了解这感情与想法的聚合体中的新东西。2009年一个叫国民幸福指数的项目,分析和计算Facebook上能够反映幸福或是不幸福的词汇短语的出现次数。

Facebook将会从根本上改变市场营销,它会变成一个大公司。你可以把现在是5亿将来会是10亿用户的资料整合在一起,你不仅了解他们住哪儿、朋友是谁、对什么感兴趣、在线上做什么——它简直就是互联网的基因工程。

Facebook雇佣Google前高管桑德伯格出任COO的原因之一,是因为39岁的她有相当的从政经验。Facebook从许多方面来看更像是一个政府,而非一家传统意义上的公司。“我们拥有庞大的用户社区,远远超过其他任何一家高科技公司,我们其实是在制定政策。”

由于鼓励外部的第三方的开发者来开放应用和Facebook自有的应用竞争,扎克伯格受到相当的来自其他高管的压力。但他拥护企业进化论,他期望外部的应用程序能够帮助Facebook保持诚信,并迫使它不断的改善自身的应用来成功的与之相竞争。扎克伯格拥有谷歌所宣称的一样信仰:不做恶。

Facebook鼓励用户袒露而不是隐藏自己,鼓励分享而不是孤僻。扎克伯格相信:更彻底的透明度能成就更美好的人生。比方说,一些人声称,由于Facebook的存在,今天的年轻一代更难以欺骗他们的情侣了,他们还声称更彻底的透明度也塑造了一个更加宽容的社会,在这里人们最终接受了每个人都偶尔会做出错事和傻事的现实。

扎卡伯格认为:Facebook最好不要徒劳地抵制世界发展的潮流,否则它就会被市场所淘汰。这个“潮流”就是透明和分享。桑德伯格也说:你不能在Facebook上却不表现出你真实的自我。

“你只有一个身份,双重身份是不诚实的表现”。这是扎克伯格设计Facebook的方式,“你有不同面孔的日子——对工作上的同事表现出一副面孔而对生活上的朋友表现出另一幅面孔的日子——就要结束了”。公开承认自己和在所有朋友面前表里如一,会有助于创造一个更健康的社会。在一个越发公开透明的社会里,人们将会为他们的行动后果负责,于是就更有可能会表现的更为负责。

(注:本文作者为腾讯网科技中心总监。本文仅代表作者本人观点。作者电子邮箱:[email protected]

Install OpenVPN Server on CentOS 5.4

There are many guys asking me how to install OpenVPN on CentOS 5.2/5.4. I have a server with that system (minimal installation) exactly and I cannot find an all correct guide for this setup step. So I decide to write this post.

You cannot count on the post to explain what OpenVPN is. But if you just require a simple guide for installation, you’ve got it.

Preparation:

1 A server running with CentOS 5.2/5.4. I don’t know which services you’ve installed, so I have to install all necessary components by bash command. You can skip that command if you know that is installed.
2 A KVM, an SSH client or another way to connect to your server.
3 You must know how to use tool vi to edit file.

Setup guide:

All blue texts should be typed into bash command line, and press Enter after each command. All black texts are just commit. Read them as you wish.

Install some tools.

yum install -y wget Install a tool for downloading packages.
yum install -y iptables Install the controller for inputting firewall rules.

Configure yum to install OpenVPN

yum install -y yum-priorities Let your yum to install more packages.
cd /tmp
wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.1-1.el5.rf.i386.rpm for x86 (32bit) only
wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.1-1.el5.rf.x86_64.rpm for x64 (64bit) only
rpm -i rpmforge-release-0.5.1-1.el5.rf.*.rpm
yum check-update

Install OpenVPN

yum install -y openvpn

Configure OpenVPN Server

cd /etc/openvpn/
cp -R /usr/share/doc/openvpn-2.0.9/easy-rsa/ /etc/openvpn/
cd /etc/openvpn/easy-rsa/2.0/
. ../vars There is a space between the 1st and 2nd dot.
chmod +rwx *
source ./vars
vi ../vars Modify the last several lines of this file to match your location and org name.
vi vars Modify the last several lines of this file to match your location and org name.
./build-ca Input your location and org name.
source ./vars
./clean-all
./build-ca Always press enter directly. You can verify your infomation in this step.
./build-key-server server Answer y twice for the 2 questions in the end, press enter directly for others.

Configure OpenVPN Setting. Following this post, you will get a server running at port 1194 with UDP protocol, and the sub network for VPN clients is 10.0.0.0/24. You can modify this document with the rest commands synchronously.

vi /etc/openvpn/openvpn.conf Create setting file.

Type all green text below to the edit form of vi.

port 1194 Use port 1194.
proto udp Use udp protocol. You can change this into tcp as you wish. It seems that udp is faster. Tcp can be used when you are using a udp banned network.
dev tun Mode. You can choose tun or tap. I don’t wanna explain this.
ca ca.crt
cert server.crt
key server.key
dh dh1024.pem
server 10.0.0.0 255.255.255.0 Sub network for VPN clients
push "dhcp-option DNS 208.67.222.222" Use DNS of OpenDNS.
push "dhcp-option DNS 208.67.220.220" Use DNS of OpenDNS.
push "redirect-gateway" Let all traffic from client to go though with this VPN server. Remove this line if you don’t want it.
ifconfig-pool-persist ipp.txt Let OpenVPN server to record the last used IP for each client, which allows client to use the same IP when reconnected.
keepalive 10 120
comp-lzo Enable compression for saving bandwidth.
user nobody
group users
persist-key
persist-tun
status openvpn-status.log
verb 3
client-to-client Allow clients to communicate with each others. Remove this line if you dont’t want it.

Save this file.

cp keys/{ca.crt,ca.key,server.crt,server.key} /etc/openvpn/
./build-dh This may take a while.
cp keys/dh1024.pem /etc/openvpn/
/etc/init.d/openvpn start Service starts!
chkconfig --list | grep vpn

Create key for each client.

The working folder is /etc/openvpn/easy-rsa/2.0 and you can verify it by typing pwd if you like. If it’s not, type cd /etc/openvpn/easy-rsa/2.0 to change it. Run source ./vars if needed.

Run this command for each client.
./build-key <client name> Answer y twice for the 2 questions in the end, press enter directly for others. Change <client name> to client name.

Final steps and add some firewall rules

service iptables start Start the iptables service.
iptables -A INPUT -i eth0 -p udp --dport 1194 -j ACCEPT Allow udp datagrams to be received from port 1194 of your nic eth0. Notice that there are 2 hyphens before dport.
iptables -A OUTPUT -o eth0 -p udp --dport 1194 -j ACCEPT Allow udp datagrams to be sent from port 1194 of your nic eth0. Notice that there are 2 hyphens before dport.
iptables -A INPUT -i tun0 -j ACCEPT Allow traffic from OpenVPN nic tun0. Change it to tap0 if you use tap mode in server configuration.
iptables -A OUTPUT -o tun0 -j ACCEPT Allow traffic from OpenVPN nic tun0. Change it to tap0 if you use tap mode in server configuration.
iptables -A FORWARD -o tun0 -j ACCEPT Allow traffic from OpenVPN nic tun0. Change it to tap0 if you use tap mode in server configuration.
iptables -t nat -A POSTROUTING -s 10.0.0.0/24 -o eth0 -j MASQUERADE Enable NAT.
/etc/init.d/iptables save Save iptables’ rules.
/etc/init.d/iptables restart Restart iptables service.
chkconfig iptables on Let iptables be started automatically.
chkconfig openvpn on So is openvpn.
vi /etc/sysctl.conf

Find a line with text net.ipv4.ip_forward = 0, change it into net.ipv4.ip_forward = 1, and save this file.

You’ve finished the configuration of server. Please restart it.

shutdown -r now

All certifications and key files can be found at /etc/openvpn/easy-rsa/2.0/keys. You should download ca.crt, <client name>.key and <client name>.crt to each client computer.

I’ll go on to create an OpenVPN client in Windows for example.

Download and install OpenVPN Windows Version.

Copy ca.crt, <client name>.key and <client name>.crt to its config folder (c:\Program Files (x86)\OpenVPN\config\ or c:\Program Files\OpenVPN\config\ by default). You can create a sub folder for each server to make it possible to connect to many servers, not at the same time.

Create a text file with extension “ovpn” in the folder which contains these 3 files with all green text below.

client
dev tun
proto udp
remote
<your server name or ip address> 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert
<client name>.crt
key
<client name>.key
ns-cert-type server
comp-lzo
verb 3

Save this file.

Start OpenVPN Client, right click the icon in the system tray and connect the server. If you are running Windows Vista / 7 or Windows Server 2008 / 2008 R2, you have to run this program as administrator coz Route.exe which will be run by OpenVPN need this.

I hope you get it though.
BTW, if you are using fedora, you may wanna check this post, which contains more commands to adjust firewall.

For CentOS 6.0: iptables’ commands need to be adjust. See your iptables configuration file for detail information.

vSphere 部署及硬件选型指南

才疏学浅,若有纰漏敬请斧正。转载请保留原地址。

基本功能简介

同一台服务器中运行多个虚拟机。纯内部的高速安全网络(仅供服务器内部虚拟机通讯)与混合式内外网络(服务器内部通讯与对外通讯)支持。虚拟机保存于外置存储中。硬盘与内存快照支持。远程维护与管理支持。远程查看并控制虚拟机,无需虚拟机软件支持。

附加功能简介(需要VC及其可能的扩展包):

更新管理器:提供统一的管理界面和存储结构,更新每台服务器的ESX系统与每台虚拟机的系统补丁。

高可用性:允许将群集打开高可用性功能,当某台服务器主机发生故障时,自动于群集的其他服务器中启动受影响的虚拟机。对应的虚拟机必须使用共享式存储,例如磁盘柜系统。

vMotion(内存部分):将运行中的虚拟机动态的从一台服务器移动至另一台服务器,而在执行过程中虚拟机保持正常运行不受影响。对应的虚拟机必须使用共享式存储,例如磁盘柜系统。

vMotion(存储部分):将运行的虚拟机动态的从一个存储子系统移动至另一个存储子系统(例如更换一套硬盘),而在执行过程中虚拟机保持正常运行不受影响。

虚拟机硬件热增加:在不重启虚拟机的情况下,动态的向虚拟机增加内存或CPU。此功能需要虚拟机操作系统支持。Windows Server 2003企业版及以上版本支持动态内存增加功能。Windows Server 2008及以上版本(仅限64位版)支持动态CPU增加功能。

容错:支持将同一个虚拟机同时运行于两台服务器中,当其中任何一台服务器故障时,虚拟机自动切换并保持正常运行。切换过程用户无需干预且虚拟机用户无法察觉。虚拟机系统在切换时保持稳定执行不报错、不重启、不断线。对应的虚拟机必须使用共享式存储,例如磁盘柜系统。

分布式资源管理、分布式电源管理:根据当前启动的服务器负载,动态的规划服务器资源的使用,自动关闭暂时不需使用的服务器并在需要时自动重启,以实现低资源运行。

存储及网络负载控制:分别设置每台虚拟机的存储和网络访问优先性,以符合每个特定的虚拟机优先级要求。

分布式交换机:统一控制所有群集服务器的网络,以方便每台服务器的安装和维护。

主机概述文件:对每台或每组服务器建立主机概述文件,可迅速的应用于服务器,以应对服务器系统重新安装或群集新服务器安装后的快速部署。

单机部署

范围排除:部署不包括电力、空调、网络部分。

限制:每台服务器之间无群集,无互相协作通讯,不支持虚拟机群集功能。每台服务器最多支持256GB内存,32个CPU核心。不支持附加功能。

必选:ESX基础包、ESX扩展包1、ESX扩展包2、ESX扩展包9、软件1、环境需求1(仅需一个IP地址)

可选:

  1. 如需要增加备份硬盘,请选择ESX扩展包3。如采用外置磁盘柜存储,则此选项意义不大。
  2. 如计算负载较大,则配置ESX扩展包10。
  3. 如需要增加供电冗余,则选择ESX扩展包8。对于运行关键应用的群集,推荐采用。
  4. 当运行的虚拟机需要同时连接超过一个网络时,应对服务器增加ESX扩展包6或ESX扩展包7。
  5. 如使用外置磁盘柜启动服务器,则ESX基础包可以不包含硬盘,但必须选择一款ESX扩展包4或ESX扩展包5并支持SAN启动技术。
  6. 如需要改用光纤磁盘柜存储,则可以取消ESX扩展包2,换以ESX扩展包4。如无对应磁盘柜,则需选用群集扩展包6。
  7. 如需要改用ISCSI存储,则可以取消ESX扩展包2,换以ESX扩展包5以及环境需求2。如无对应磁盘柜,则需要选用群集扩展包4。如考虑经济效益,也可以将ESX扩展包5更换为ESX扩展包6,但性能下降明显,且不支持SAN启动技术。

群集部署

范围排除:部署不包括电力、空调、外联网络部分。

服务器功能介绍:群集部署时,ESX服务器负责运行用户的虚拟机,并可自行在群集中实现高可用性与容错功能。ESX不提供任何用户界面。VC主机提供用户管理界面,提供用户操作及服务器的高级功能,以及vMotion等跨服务器的维护功能。当VC发生故障时,用户管理受限,但运行的虚拟机不受影响。

限制:每台服务器最多可以支持320个虚拟机,每个群集最多支持32台服务器,每个群集支持最多3000个虚拟机,所有群集最多支持1000台服务器(同一个VC中),所有群集最多支持15000个虚拟机(同一个VC中),且同时最多只能有10000个处于运行状态。群集连接的管理客户端并发最多120个。在分布式交换机管理模式下,每个服务器最多可以管理32块网卡。

必选:

每台ESX服务器:ESX基础包、ESX扩展包1、ESX扩展包4或ESX扩展包5或ESX扩展包6(用于存储、强烈不推荐采用ESX扩展包6)、软件2或软件3或软件4或软件5(以实际需求考虑)、环境需求1、环境需求4(亦可安装于VC主机中,但用户管理访问不便)。

VC主机:VC基础包

机柜其他:群集基础包、群集扩展包1、群集扩展包3与群集扩展包4(当选用ESX扩展包5时)、群集扩展包5与群集扩展包6(当选用ESX扩展包4时)、群集扩展包4(当选用ESX扩展包6用于存储时)

可选:

  1. 如需要增加ESX服务器系统备份,可对所需的ESX服务器增加ESX扩展包3。由于用户虚拟机保存于外置存储中,ESX服务器并不存放任何用户数据,本可选必要性不明显。
  2. 如计算负载较大,则配置ESX扩展包10。
  3. 如需要增加供电冗余,则对每台ESX服务器选择ESX扩展包8。对于运行关键应用的群集,推荐采用。
  4. 当运行的虚拟机需要同时连接超过一个网络时,应对每台ESX服务器增加ESX扩展包6,并对群集增加群集扩展包1;或应对每台ESX服务器增加ESX扩展包7,并对群集增加群集扩展包2。
  5. 如需要增加虚拟机业务网络备份,应对每台ESX服务器增加ESX扩展包6,并对群集增加群集扩展包1;或应对每台ESX服务器增加ESX扩展包7,并对群集增加群集扩展包2。系统会在交换机或网卡发生故障时自动切换。对于运行关键应用的网络,推荐采用。
  6. 如使用外置磁盘柜启动服务器,则ESX基础包可以不包含硬盘,但必须选择一款ESX扩展包4或ESX扩展包5并支持SAN启动技术。
  7. 如需要增加服务器系统高可用性群集,首先建议将所有的ESX服务器的配置统一化,以达到效率与性能的最佳状态。并根据高可用性的备份数量,增加同种ESX服务器。即原有所有虚拟机可以在x台ESX服务器中运行,现希望当其中n台故障时,系统可以恢复受影响的服务,则需要增加n台同种的ESX服务器。软件2不支持此特性,请选择软件3或软件4或软件5。对于运行关键应用的群集,推荐采用。
  8. 如需要服务器之间移动虚拟机(vMotion),则需要对每台ESX服务器增加ESX扩展包6,并对群集增加群集扩展包1、环境需求2;或应对每台ESX服务器增加ESX扩展包7,并对群集增加群集扩展包2、环境需求2。此功能在系统维护时具有很高实用性,推荐采用。如需要提高vMotion的并发数量,则可以对每台ESX服务器再多增加ESX扩展包6,并对群集增加群集扩展包1、环境需求2;或应对每台ESX服务器再多增加ESX扩展包7,并对群集增加群集扩展包2、环境需求2。
  9. 如需要增加容错虚拟机,首先应满足高可用性群集要求(功能7),并根据需要容错的虚拟机的需求(CPU与内存),继续按需增加同种ESX服务器。并对每台服务器增加ESX扩展包7,对群集增加群集扩展包2、环境需求2。此负载对网络压力很高,必须使用独立网络设备,而不能使用现有交换机的独立VLAN应对。当容错虚拟机较多时或负载压力较大时,可以考虑倍增ESX扩展包7与群集扩展包2、环境需求2。软件2不支持此特性,请选择软件3或软件4或软件5。对于运行关键应用的虚拟机,推荐采用。
  10. 当需要增加备用存储网络时,应对每台ESX服务器增加相同型号的ESX扩展包4或ESX扩展包5(按现有型号搭配),并对应增加群集扩展包3或群集扩展包5,使用的磁盘柜亦需要增加群集扩展包7并于对应的存储交换机连接。如选型为ISCSI网络,则需要增加环境需求2。软件2与软件3不支持此特性,请选择软件4或软件5。对于运行关键应用的群集,推荐采用。
  11. 当VC管理范围超过5台ESX主机或50台虚拟机时,请选择VC扩展包1中的一款数据库,推荐SqlServer系列。当VC管理范围未达到此范围时,仅需使用免费的Sql Server Express即可。
  12. 如需要加强VC的数据保护时,则增加VC扩展包2。
  13. 如VC运行在Windows Server 2008 R2服务器系统时,可采用VC扩展包3以方便更新时的备份与回滚。
  14. 如需要将VC服务器进行热备时,可以增加一台VC服务器。如使用此功能,则需要将数据库安装此共享存储中(需要对VC主机增加HBA卡并连接至磁盘柜),且需要选择适合的数据库,以及相应网络。由于此功能用途不大且投入较高,不推荐采用。
  15. 如需要采用域账户权限管理,则需要环境需求3。

ESX功能包

ESX基础包:服务器一台,不含操作系统。CPU为64位,支持虚拟化VT-x,推荐多核;内存2G为系统内部使用;至少8G可用空间的SATA / SAS硬盘;电源系统;配套主板需要支持VT-x;DVDROM(或统一采用USB接口光驱);两块千兆双绞线或光纤网卡(或更高),必须为ESX所支持之型号。

ESX扩展包1:内存空间。根据实际使用的虚拟机内存而决定容量,每台虚拟机分配的内存*1.1 + 32M即为此虚拟机运行所需,所有虚拟机所需相加即为总量(不包含ESX基础包内的内存)。不同时运行的虚拟机则无需重复计算,结果取同时运行的虚拟机的内存需求的最大值即可。

ESX扩展包2:硬盘空间。根据实际使用的虚拟机硬盘而决定容量,每台虚拟机分配的硬盘 + 32M即为此虚拟机存储所需,所有虚拟机所需相加即为总量(不包含基础包内的硬盘)。如使用系统快照,则根据实际数据变化量递增。

ESX扩展包3:备份硬盘。根据ESX基础包与ESX扩展包2计算得出的硬盘总需求,采用RAID1或RAID5增加必要备份硬盘。RAID接口卡必须为ESX所支持之型号。

ESX扩展包4:FC-HBA卡,必须为ESX所支持之型号。

ESX扩展包5:ISCSI-HBA卡,必须为ESX所支持之型号。

ESX扩展包6:千兆双绞线网卡(或更高),必须为ESX所支持之型号。

ESX扩展包7:千兆光纤网卡(或更高),必须为ESX所支持之型号。

ESX扩展包8:备份电源系统,必须可被对应的ESX基础包支持。

ESX扩展包9:键盘、显示器,必须与ESX基础包硬件兼容。

ESX扩展包10:CPU升级。CPU必须为64位并支持虚拟化VT-x。CPU需求计算为并发的每台虚拟机最大CPU需求量1.1 + 1G,以多核心并列计算(超线程不被计算时考虑),非同时并发的CPU需求则取其最高点计算。例如:本服务器运行有3台虚拟机,A为长期占用1GHz的2个CPU核心,B在工作时间占用最多2GHz的2个CPU核心并在晚上占用500MHz的2个CPU核心,C在夜晚占用最多2GHz的1个CPU核心并在白天基本空闲(100MHz)。计算出的CPU需流量分别为2GHz、4GHz(工作时间)或1GHz(非工作时间)、100MHz(工作时间)或2GHz(非工作时间),则需求的最大CPU需求量为(2+4+0.1)1.1+1 = 7.71(GHz),以4核CPU计算,则CPU需要的最小频率为1.93GHz。通常的,当同一台服务器上运行的虚拟机不多于5个,且运行的虚拟机非CPU高负载的业务,CPU采用4核2G的CPU通常可以满足需求。另,由于ESX的授权以CPU个数计算(非核心个数),推荐采用多核心的CPU,而应谨慎使用多CPU环境。

VC功能包

VC基础包:服务器一台,含64位Windows服务器版操作系统。CPU为64位,推荐多核;内存为6G以上;至少146G的SATA / SAS硬盘;电源系统;DVDROM(或统一采用USB接口光驱);两块千兆双绞线或光纤网卡。

VC扩展包1:存储数据库。支持的数据库有Microsoft SQL Server 2005 Standard edition (SP2, SP3) 64bit、Microsoft SQL Server 2005 Enterprise edition (SP2, SP3) 64bit、Microsoft SQL Server 2008 Standard Edition 64bit、Microsoft SQL Server 2008 Enterprise Edition 64bit、Oracle 10g Enterprise edition (Release 2 [10.2.0.1.0]) x64、Oracle 11g Standard edition x64、Oracle 11g Enterprise edition x64。

VC扩展包2:备份硬盘。根据VC基础包的硬盘需求,采用RAID1或RAID5增加必要备份硬盘。RAID接口卡必须为VC基础包内操作系统所支持之型号。

VC扩展包3:备份硬盘。当VC基础包采用Windows Server 2008 R2时,可以选用此包,使用Windows Backup保存历史系统快照。

群集功能包

群集基础包:机柜及相应的电力供应系统(包括电源插排、UPS系统)、KVM交换机及其配套的键盘鼠标显示器。

群集扩展包1:千兆双绞线交换机(或更高),及网线。

群集扩展包2:千兆光纤交换机(或更高),及光纤模块、网线。

群集扩展包3:ISCSI存储专用交换机,及光纤线。

群集扩展包4:ISCSI磁盘柜及磁盘。根据实际使用的虚拟机硬盘而决定容量,每台虚拟机分配的硬盘 + 32M即为此虚拟机存储所需,所有虚拟机所需相加即为总量。如使用系统快照,则根据实际数据变化量递增。所需总量与所选磁盘备份技术(Raid1、Raid5等)结合,确定最终磁盘选型。

群集扩展包5:光纤通道存储专用交换机,及光纤模块、光纤线。

群集扩展包6:光纤通道磁盘柜及磁盘。根据实际使用的虚拟机硬盘而决定容量,每台虚拟机分配的硬盘 + 32M即为此虚拟机存储所需,所有虚拟机所需相加即为总量。如使用系统快照,则根据实际数据变化量递增。所需总量与所选磁盘备份技术(Raid1、Raid5等)结合,确定最终磁盘选型。

群集扩展包7:附加的磁盘柜控制器,必须可以与选型的磁盘柜配合工作。

软件包

软件1:ESXi。免费,支持单机应用,不支持群集应用。如选择此功能,则所需的内存(包含于ESX基础包中)仅需512MB,硬盘(包含于ESX基础包中)仅需2G。

软件2:vSphere Standard。每台服务器支持最多256GB内存,每个CPU支持最多6个核心。附加更新管理器、高可用性、vMotion(仅内存部分,不包括存储vMotion)。

软件3:vSphere Advanced。每台服务器支持最多256GB内存,每个CPU支持最多12个核心。附加更新管理器、高可用性、vMotion(仅内存部分,不包括存储vMotion)、虚拟机硬件热增加、容错。

软件4:vSphere Enterprise。每台服务器支持最多256GB内存,每个CPU支持最多6个核心。附加更新管理器、高可用性、vMotion、虚拟机硬件热增加、容错、分布式资源管理、分布式电源管理。

软件5:vSphere Enterprise Plus。每台服务器支持的内存无限制,每个CPU支持最多12个核心。附加更新管理器、高可用性、vMotion、虚拟机硬件热增加、容错、分布式资源管理、分布式电源管理、存储及网络负载控制、分布式交换机、主机概述文件。

环境需求包

环境需求1:IP段,可供环境其他主机访问。用于群集管理而不是虚拟机的IP需求。

环境需求2:IP段,不供环境其他主机访问。但此IP段应不存在于环境中,以免影响其访问服务器资源。

环境需求3:活动目录,提供用户验证功能。

环境需求4:DNS,提供域名解析服务。

Zeroshell Testing Report

I’ve used?Zeroshell (linux based router, free) for more than 1 year.

Many advanced?features are tested like vpn, load balancing, multi ppp and so on. I’ve installed it on several environment like physical pc, esx vm, vmware server vm and NET5501 hardware.

Here are somethings to share.

Good:

1 Free with web gui.

2 Powerful.

3 Multi ppp is supported.

4 OpenVPN is supported natively.

5 Net Balancer with plenty rules.

Need to?be improved:

1 Provide a way to install to harddisk / cf / usb like a installer,?instead of using dd.

2 Make it easier to control the native services in Net Balancer. For example, if you enable Net Balancer, the DDNS and VPN is not easy to config, even not possible to. Create a virtual network to running those services?may be helpful.

3 VPN Lan-to-lan seems not stable. I’ve tested to link 2 routers powered by zeroshell. One is in China Mainland, another is in USA. Link drops every 30 secs… not usable at all.

4 Yes, maybe the 2nd and 3rd are not problems but the best practices are?not documented, please make more documents.

Remove vSphere snapshot automatically

From version 7 of VMware workstation, a new function named AutoProtect is added, which makes it easier to create and remove snapshots automatically. Unfortunately, vSphere doesn’t have some function like that.

In my situation, I need to protect some crucial services, like configuration management database, by creating snapshots, which can be done by daily scheduled tasks. But I still need to delete old snapshots manually which was created 5 days ago. In another word, I need to keep only about 5 latest snapshots for each specified VM.

After some research, I find a tool named PowerCLI. I made some PowerShell scripts to delete snapshots.

Connect-VIServer localhost
$i = new-object System.Int32
$a = Get-VM "CM Database" | get-snapshot -name: 'Daily Backup'
$i = 0
while ($a.Count-$i -gt 5) {$a[$i] | remove-snapshot -confirm: $false; $i++;}
$a = Get-VM "SVN" | get-snapshot -name: 'Daily Backup'
$i = 0
while ($a.Count-$i -gt 5) {$a[$i] | remove-snapshot -confirm: $false; $i++;}
Disconnect-VIServer -confirm: $false

By running this script in PowerCLI environment, the snapshots of vm “CM Database” and “SVN” with a name “Daily Backup” will be deleted from older to newer, until only 5 left — to keep the 5 latest snapshots. All snapshots with other names will not be affected.

I saved this script to file C:\RemoveDailySnapshot.ps1. Create a batch file to run this script:

C:\WINDOWS\system32\windowspowershell\v1.0\powershell.exe -psc "C:\Program Files (x86)\VMware\Infrastructure\vSphere PowerCLI\vim.psc1" -c ". \"C:\Program Files (x86)\VMware\Infrastructure\vSphere PowerCLI\Scripts\Initialize-VIToolkitEnvironment.ps1\";C:\RemoveDailySnapshot.ps1"

Update: code above is for vSphere 4.x; below is for vSphere 5.0.

C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe -psc "C:\Program Files (x86)\VMware\Infrastructure\vSphere PowerCLI\vim.psc1" -c ". \"C:\Program Files (x86)\VMware\Infrastructure\vSphere PowerCLI\Scripts\Initialize-PowerCLIEnvironment.ps1\";C:\RemoveDailySnapshot.ps1"

(You may need to change the path string in this code above.)
Finally, by adding this batch file as a Windows schedule task, the AutoProtect for vSphere has been reached.

I still wonder that why this useful function is not included in vSphere?