Hyper- V 2008 R2ÔÚlinuxÉÏÔËÐÐʵս¡£ÎÒÈÔÈ»ÔÚLinuxÖÐÔËÐÐÒ»¸öÓ¦ÓóÌÐò£¬´«Í³ÒµÎñµÄ¼´½«±»È¡´ú£¬²¢ÔËÐÐһЩ´«Í³VPNµÄ¡£°²×°ÄêÁäÇ°£¬µ±ÎÒûÓÐ×ã¹»µÄ¾Ñ飬 ÔÀ´°²×°Ê¹ÓòâÊÔʲôÊǽ«Òª3.1Ó뼸¸ö£¨Postfix£¬Apache£¬OpenVPNµÈµÈ£©ÕâÊÇһЩ¹ýÆÚÒ»¶Îʱ¼äÁ´½ÓµØÖ·ÐÅÏ¢µÄ¹¤×÷¡£
×÷Ϊһ¸öÉùÃ÷£¬ÎÒÈÏʶµ½£¬ÔÚÖ§³ÖµÄHyper - V R2µÄ²Ù×÷ϵͳ²¢²»ÊÇÈκΰ汾DebianµÄ£¬ÎÒÖ»ÊÇÏë¸æËßÎҵľÑéÓë´Ë²»ÊÜÖ§³ÖµÄÅäÖá£ÔÚÓ²¼þ·½Ã棬IBM xϵÁзþÎñÆ÷ÀÏ»¯Óë±¼ÌÚ4´¦ÀíÆ÷ûÓеõ½ÈκÎÄêÇá306m·þÎñÆ÷Çý¶¯Æ÷·¢Éú¹ÊÕϺ󣬰ëÄêÇ°£¬Ò»¸öϵͳ±ÀÀ££¨ÎÞÊý¾Ý¶ªÊ§£¬ËüÖ»ÊÇ×¹»ÙµÄ»úÆ÷£¬¶ÔÄãÀ´ËµËûÊÇÈíRAID£©£¬ÕâÊÇ×îºóÒ»´ÎÏÖ´ú»¯¡£
¸Ã¼Æ»®ÊÇΪÁ˹®¹ÌÎÒÃÇËùÓеģ¨ISAÖУ¬OCSµÄ±ßÔµ£¬XMPPÐÒéÍø¹Ø£¬Exchange±ßÔµÉϵÄHyper - V£©2008 R2ºÍ×öµÄ×ÊֵIJ¿·ÖÊ×ÏÈÊÇÒ»¸öºÃÖ÷ÒâËƺõ·Ç¾üÊÂÇøµÄ¹¤×÷Á¿¡£ËùÒÔÎÒ´´½¨ÁËÒ»¸öеÄVMʹÓÃSCVMM 2008 R2ÖУ¬»ñѡΪ32λ¿Í»§²Ù×÷ϵͳÆäËûLinux£¬²åÈëÒ»¸öDebian 5.0ÍøÂçÆô¶¯µÄCD£¬Õâ¾ÍÊÇÎÊÌâËùÔÚÒѾ¿ªÊ¼¡£ËäÈ»°²×°¹¤×÷×ÜÌåÁ¼ºÃ£¬Ö¡»º³åÇøµÄʹÓÃÓÉDebian°²×°µÄ·Ç³£»ºÂý¡£ËùÒÔ£¬ÎÒ»¨ÁËÔ¼°ëСʱ²ÅµÃÒÔÍê³ÉµÄ°²×°ÔÚÒ»¸ö80GBµÄÐéÄâÓ²Å̵Ä5GBµÄ·ÖÇø£¨£©¡£
°²×°Íê³Éºó£¬¸ñʽ»¯´ÅÅÌ£¬È»ºóÓÃrsyncµÄ´«ÊäÄÚÈݵĻúÆ÷ÁË¡£ÖØÐÂÅäÖöÌÒ»µã£¬ÎÒ¿ÉÒÔÑ¡ÔñÆô¶¯»òתÒÆÓëËüµÄ²Ù×÷ϵͳÄںˣ¬»ò°²×°DebianµÄ5¸ö¾ÈÔ®ÌåϵµÄͬʱÎÒ¡£Òýµ¼×ªÒÆϵͳÔË×÷Á¼ºÃ£¬µ«ÒÔÓô½ðÏã˾»úûÓаѸ㨶¨ÖÆ£©ÄÚºËÄ£¿éµÄ±àÒëºÍ½¨ÉèµÄʧ°Ü¡£ËùÒÔ£¬ÎÒ¶ÁÁËÒ»µã£¬²¢ÈÏʶµ½×îеÄÄںˣ¨2.6.32.8£©ÓëʵÑéµÄHyper - V VMbus˾»úÒÑ·¢ÔË£¬ÔÊÐíºÏ³ÉÍø¿¨Ê¹Óá£
ÎÒÊÔͼ°Ñ¾ÉµÄ±àÒë°²×°ºóChroot»·¾³µÄÄںˣ¬µ«Ëüʧ°ÜÁË£¬ÒòΪº£ºÏ»áÌ«¾É¡£²»Óõ£ÐÄ£¬ÎÒ±àÒëµÄ¾ÈÔ®Ìåϵ£¬µ«ÎÞ·¨°²×°ÁËdpkgµÄÔĶÁmake - kpkg´´½¨¡£ËùÒÔÎÒ°²×°ÊÖ¶¯£¬ÕâÑù×öºÜºÃ¡£
ÖØÐÂÆô¶¯Ò»´Îºó£¬ÎÒÓֻص½Á˷dz£ÏêϸµÄÒµÎñÓëHyper - VµÄÈûÂúÁËdmesg£¬µ«×ÛºÏÍø¿¨ÏÔʾÁË×÷Ϊseth0 - seth2¡£¾¹ý¿ìËٱ仯µÄËùÓбØÒªµÄÅäÖÃÎļþ£¬Ò»Çж¼¹¤×÷¡£¾¹ý¸ü¶àµÄ²âÊÔ룬¶Ï¿ªÓëÍøÂçµÄÎïÀí»úÆ÷iºÍ²åÈëµ½Éú²úµÄVLANÐéÄâ»ú¡£ÎÒ²âÊÔµÄÒ»Çг¹µ×£¬²¢Ã»Óз¢ÏÖÈκÎÎÊÌâ¡£Óʼþ·¢³öÁËÒ»¸öÐÅÏ¢£¬²¢¼ÌÐøÔÚÎÒ¿ìÀֵķ½Ê½¡£
°ëСʱºó£¬ÎÒ¾ö¶¨×öÒ»¸ö¿ìËÙϵͳ¼ì²éÒ»´Î£¬ÎÒÈÏʶµ½Íⲿ½Ó¿Ú£¨ÔÚÕâÖÖÇé¿öÏÂseth2£©Ã»Óй¤×÷ÁË¡£ tcpdumpµÄÏÔʾûÓÐÊý¾Ý°ü±»½ÓÊÕ£¬²¢ÔÚͬһVLANµÄÆäËû»úÆ÷ûÓп´µ½ÈκÎËûÃǵÄARPÇëÇó»ò»Ø´ð¡£ËùÒÔÎÒÖØÐÂÆô¶¯ÐéÄâ»ú£¬Ò»Çй¤×÷ÁË¡£ÈκÎÖÖÀàµÄÈκδíÎóÐÅÏ¢¶¼ÔÚdmesgµÄ£¬Ò²²»ÔÚϵͳ£¬¼Ç¼»òÔÚHyper - VµÄÖ÷»ú¡£
Ï£ÍûÕâÖ»ÊÇÒ»¸ö½ÄÐÒ£¬µÈ´ý£¬Ö±µ½ËüÔٴη¢Éú - ÕâÓУ¬´óÔ¼10·ÖÖÓºó£¬ÎÒ¡£ËùÒÔ¾ö¶¨Ìø¹ýµÄºÏ³ÉÓëÄ£ÄâÉ豸ºÍÈ¥NICºÍ˾»úÎÒµÄÓô½ðÏã¡£Ò»Çж¼»ØÀ´ÁË£¬µ«ÎÒ²»ÄÜƽ°²´ÓÒ»¿ªÊ¼¾Íeth0µÄVLANµÄÈκÎÉ豸£¬µ«ÆäËûÁ½¸ö½Ó¿ÚµÄ¹¤×÷¡£
¾¹ý¼¸¸ö³¢ÊÔ£¬ÎÒÀ´µ½Ò»¸öÒѾ4Сʱ26·ÖÖÓ£¬ÕâÌýÆðÀ´²»´íÆù½ñÎȶ¨µÄ½á¹¹¡£Îª´Ë£¬ÎÒÅäÖÃÁËÒ»¸öµ¥Ò»µÄ×ÛºÏÍø¿¨£¬×÷Ϊ¶Ô·Ç¹¤×÷eth0ºÍ3Óô½ðÏãÍø¿¨£¨ÆäÖÐÒ»´ÎÊÇδʹÓõģ©Ìæ´úÆ·ÎÒ¡£
Óм£Ïó±íÃ÷ÎÒÒ²µ£ÐÄÆäËûµÄÊÂÇ飺ÿ¸öLinux»úÆ÷ÉÏÖØÐÂÆô¶¯´´½¨µÄHyper - VÖ÷»úÏÂÃæµÄʼþÈÕÖ¾ÏLinuxµÄ±»ÖØÖã¬ÒòΪһ¸ö²»¿É»Ö¸´µÄ´íÎóÔÚÒ»¸öÐéÄâ´¦ÀíÆ÷·¢Éú¹ÊÕÏÔì³ÉÈýÖØ¡£Èç¹ûÎÊÌâÈÔÈ»´æÔÚ£¬ÇëÓë²úÆ·Ö§³Ö¡£ £¨ÐéÄâ»ú±àºÅ[]£©£¬ºÏ³ÉNICÇý¶¯³ÌÐò¼ÓÔØÔÚÈÕÖ¾ÉϵÄHyper - VÖ÷»úʼþÈÕÖ¾ÈçÏ£º
ÍøÂçÉϵÄÇý¶¯LinuxµÄ¼ÓÔØ£¬µ«ÓÐÒ»¸ö´Ó·þÎñÆ÷µÄ²»Í¬°æ±¾¡£·þÎñÆ÷°æ±¾3.2¿Í»§¶Ë°æ±¾0.2£¨ÐéÄâ»ú±àºÅ[]£©¡£¸ÃÉ豸¿ÉÒÔ¹¤×÷£¬µ«ÕâÊÇÒ»¸ö²»ÊÜÖ§³ÖµÄÅäÖá£ÕâÒâζ×Å£¬¼¼ÊõÖ§³Ö£¬½«ÒªµÈµ½ÎÊÌâ½â¾öºóÌṩ¡£Òª½â¾öÕâ¸öÎÊÌ⣬Éý¼¶µÄ¼¯³É·þÎñ¡£ÒªÉý¼¶£¬Á¬½Óµ½ÐéÄâ»ú£¬²¢Ñ¡Ôñ²åÈ뼯³É·þÎñ°²×°´ÅÅÌ´Ó²Ù×÷²Ëµ¥¡£NICÇý¶¯³ÌÐò¼ÓÔغϳÉÒ²µÇ¼ÁËLinuxµÄÕâÒ»ÇÐÊÂÇ飺
VMBUS_DRV: Vmbus initializing.... current log level 0x1f1f0006 (1f1f,6)
VMBUS: +++++++ Build Date=Feb 17 2010 12:37:00 +++++++
VMBUS: +++++++ Build Description=Version 2.0 +++++++
VMBUS: +++++++ Vmbus supported version = 13 +++++++
VMBUS: +++++++ Vmbus using SINT 2 +++++++
VMBUS: Windows hypervisor detected! Retrieving more info...
VMBUS: Vendor ID: Microsoft Hv
VMBUS: Interface ID: Hv#1
VMBUS: OS Build:7600-6.1-16-0.16485
VMBUS: Hypercall page VA=f80c9000, PA=0x36afe000
VMBUS_DRV: irq 0x5 vector 0x35
VMBUS: SynIC version: 1
VMBUS: Vmbus connected!!
VMBUS_DRV: generating uevent - VMBUS_DEVICE_CLASS_GUID={c5295816-f63a-4d5f-8d1a4daf999ca185}
VMBUS: Channel offer notification - child relid 1 monitor id 0 allocated 1, type {32412632-86cb-44a2-9b5c50d1417354f5} instance {00000000-0000-8899-0000000000000000}
hv_netvsc: module is from the staging directory, the quality is unknown, you have been warned.
NETVSC_DRV: Netvsc initializing....
VMBUS_DRV: child driver (f80dc570) registering - name netvsc
VMBUS: Channel offer notification - child relid 2 monitor id 255 allocated 0, type {cfa8b69e-5b4a-4cc0-b98b8ba1a1f3f95a} instance {58f75a6d-d949-4320-99e1a2a2576d581c}
VMBUS_DRV: generating uevent - VMBUS_DEVICE_CLASS_GUID={32412632-86cb-44a2-9b5c50d1417354f5}
VMBUS_DRV: child device (f73a8634) registered
VMBUS: Channel offer notification - child relid 9 monitor id 1 allocated 1, type {f8615163-df3e-46c5-913ff2d2f965ed0e} instance {9d44a66e-4b09-41d5-80d807ae24bf537d}
VMBUS_DRV: generating uevent - VMBUS_DEVICE_CLASS_GUID={cfa8b69e-5b4a-4cc0-b98b8ba1a1f3f95a}
VMBUS_DRV: child device (f73a5a34) registered
VMBUS: Channel offer notification - child relid 1 monitor id 0 allocated 1, type {32412632-86cb-44a2-9b5c50d1417354f5} instance {00000000-0000-8899-0000000000000000}
VMBUS_DRV: generating uevent - VMBUS_DEVICE_CLASS_GUID={f8615163-df3e-46c5-913ff2d2f965ed0e}
VMBUS_DRV: device object (f73a5ee4) set to driver object (f80dc5c0)
VMBUS: Channel offer notification - child relid 2 monitor id 255 allocated 0, type {cfa8b69e-5b4a-4cc0-b98b8ba1a1f3f95a} instance {58f75a6d-d949-4320-99e1a2a2576d581c}
VMBUS: Channel offer notification - child relid 9 monitor id 1 allocated 1, type {f8615163-df3e-46c5-913ff2d2f965ed0e} instance {9d44a66e-4b09-41d5-80d807ae24bf537d}
VMBUS: channel f73aac00 open success!!
NETVSC: *** NetVSC channel opened successfully! ***
NETVSC: Sending NvspMessageTypeInit...
NETVSC: NvspMessageTypeInit status(1) max mdl chain (34)
NETVSC: Sending NvspMessage1TypeSendNdisVersion...
NETVSC: Establishing receive buffer's GPADL...
NETVSC: Sending NvspMessage1TypeSendReceiveBuffer...
NETVSC: Receive sections info (count 1, offset 0, endoffset 1048000, suballoc size 1600, num suballocs 655)
NETVSC: Establishing send buffer's GPADL...
NETVSC: Sending NvspMessage1TypeSendSendBuffer...
NETVSC: *** NetVSC channel handshake result - 0 ***
NETVSC: Device 0xf6552e80 mac addr 00155d031a09
NETVSC: Device 0xf6552e80 link state up
VMBUS_DRV: child device (f73a5e34) registered
ÕâЩÎÊÌâµÄÔÒò£¬ÎÒ¾ö¶¨°ÑÎҵĸöÈË·þÎñÆ÷²¿Êð¶øʹÓÃHyper - VµÄESXiµÄ£¬ÒòΪÎÒÒª³ÉΪLinuxºÍWindowsÁ½ÕߵĿÍÈË¡£±¾ÈËÔ´´×ª×Ôhttp://www.itshanghai.net/technology/2010/0625/article_823.html