Äú¿ÉÒÔ¾èÖú£¬Ö§³ÖÎÒÃǵĹ«ÒæÊÂÒµ¡£

1Ôª 10Ôª 50Ôª





ÈÏÖ¤Â룺  ÑéÖ¤Âë,¿´²»Çå³þ?Çëµã»÷Ë¢ÐÂÑéÖ¤Âë ±ØÌî



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓƵ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Modeler   Code  
»áÔ±   
 
   
 
 
     
   
 ¶©ÔÄ
  ¾èÖú
PPTV Docker¼¯ÈºµÄÍøÂç·½°¸Ñ¡ÐÍ
 
×÷Õß:ÀîÖÜ À´Ô´;΢ÐÅ ·¢²¼ÓÚ 2016-9-13
  3218  次浏览      19
 

ÊõÓï

DCOS£º£¨DataCenterOperating System£¬Êý¾ÝÖÐÐIJÙ×÷ϵͳ£©ÊÇΪÕû¸öÊý¾ÝÖÐÐÄÌṩ·Ö²¼Ê½µ÷¶ÈÓëЭµ÷¹¦ÄÜ£¬ÊµÏÖÊý¾ÝÖÐÐļ¶µ¯ÐÔÉìËõÄÜÁ¦µÄÈí¼þ¶ÑÕ»¡£Ëü½«ËùÓÐÊý¾ÝÖÐÐĵÄ×ÊÔ´µ±×öһ̨´óÐͼÆËã»úÀ´µ÷¶È£¬¿ÉÒÔÊÓ×÷Õâ¸ö´óÐÍÖ÷»úµÄ²Ù×÷ϵͳ¡£

IPAM£ºIPµØÖ·¹ÜÀí¡£Õâ¸öIPµØÖ·¹ÜÀí²¢²»ÊÇÈÝÆ÷ËùÌØÓеģ¬´«Í³µÄÍøÂç±ÈÈç˵DHCPÆäʵҲÊÇÒ»ÖÖIPAM£¬µ½ÁËÈÝÆ÷ʱ´úÎÒÃÇ̸IPAM¡£Ö÷Á÷µÄÁ½ÖÖ·½·¨£º»ùÓÚCIDRµÄIPµØÖ·¶Î·ÖÅäµØ»òÕß¾«È·ÎªÃ¿Ò»¸öÈÝÆ÷·ÖÅäIP¡£µ«×ÜÖ®Ò»µ©ÐγÉÒ»¸öÈÝÆ÷Ö÷»ú¼¯ÈºÖ®ºó£¬ÉÏÃæµÄÈÝÆ÷¶¼Òª¸øËü·ÖÅäÒ»¸öÈ«¾ÖΨһµÄIPµØÖ·£¬Õâ¾ÍÉæ¼°µ½IPAMµÄ»°Ìâ

Overlay£ºÔÚÏÖÓжþ²ã»òÈý²ãÍøÂçÖ®ÉÏÔÙ¹¹½¨ÆðÀ´Ò»¸ö¶ÀÁ¢µÄÍøÂç¡£Õâ¸öÍøÂçͨ³£»áÓÐ×Ô¼º¶ÀÁ¢µÄIPµØÖ·¿Õ¼ä¡¢½»»»»òÕß·ÓɵÄʵÏÖ¡£

VxLAN£ºÓÉVMware¡¢Cisco¡¢RedHatµÈÁªºÏÌá³öµÄÒ»¸ö½â¾ö·½°¸¡£Õâ¸ö½â¾ö·½°¸×îÖ÷ÒªÊǽâ¾öVLANÖ§³ÖÐéÄâÍøÂçÊýÁ¿£¨4096£©¹ýÉÙµÄÎÊÌâ¡£ÒòΪÔÚ¹«ÓÐÔÆÉÏÿһ¸ö×⻧¶¼Óв»Í¬µÄVPC£¬4096Ã÷ÏÔ²»¹»Ó᣾ÍÓÐÁËVxLAN£¬Ëü¿ÉÒÔÖ§³Ö1600Íò¸öÐéÄâÍøÂ磬»ù±¾ÉϹ«ÓÐÔÆÊǹ»Óõġ£

ÍøÇÅBridge£ºÁ¬½ÓÁ½¸ö¶ÔµÈÍøÂçÖ®¼äµÄÍøÂçÉ豸£¬µ«ÔÚ±¾ÎÄÀïÖ¸µÄÊÇLinux Bridge¡£

BGP£ºÖ÷¸ÉÍø×ÔÖÎÍøÂçµÄ·ÓÉЭÒé¡£½ñÌìÓÐÁË»¥ÁªÍø£¬»¥ÁªÍøÓɺܶàСµÄ×ÔÖÎÍøÂç¹¹³ÉµÄ£¬×ÔÖÎÍøÂçÖ®¼äµÄÈý²ã·ÓÉÊÇÓÉBGPʵÏֵġ£

1. PPTV OAKÏîÄ¿½éÉÜ

ÏîÄ¿±³¾°

PPTV×÷Ϊ¹úÄÚÊÓƵÁìÓòµÄÁìÏÈÕߣ¬¶ÔÓÚ´ó¹æÄ£Á÷ýÌåµÄ´æ´¢¡¢´¦Àí¡¢·Ö·¢¼°Ó¦Óã¬ÓÐ×ÅÆÈÇеÄÒªÇó¡£ÈÝÆ÷¼¼Êõ¼°Î¢·þÎñģʽµÄ³öÏÖ£¬Ê¹´ó¹æÄ£µÄÑз¢½»¸¶Ð§ÂÊ´óΪÌá¸ß¡£±¾ÎĽéÉÜÁËPPTVOAKÏîÄ¿ÖÐDockerÍøÂç·½°¸Ñ¡ÐÍ£¬ÒÔ¼°¶Ô±ÈÁ˶àÖÖdockerÍøÂç½â¾ö·½°¸µÄÌصãºó£¬×îÖÕ½áºÏPPTVÍøÂç¼Ü¹¹µÄÌص㣬ѡ¶¨ÁËPPTVµÄDockerÍøÂç·½°¸¡£ ¸Õ²ÅÓÐÒ»¸ö¹Ø¼ü´Ê½ÐOAK£¬OAKÊÇÏðÊ÷µÄÓ¢Îĵ¥´Ê¡£PPTVµÄOAKÏîÄ¿£¬»ùÓÚDocker¼¼Êõ´òÔìÁËDCOS¡£µ×²ã»ùÓÚMesos + Marathon ΪºËÐÄ£¬½áºÏDockerºÍNginx£¬ÔÚ´Ë»ù´¡ÉÏ¿ª·¢ÁËDCOS¹ÜÀí¿ØÖÆ̨¡¢È¨ÏÞ¹ÜÀíÄ£¿é¡¢Í³Ò»ÈÕÖ¾¹ÜÀíÄ£¿é¡¢IP³Ø¹ÜÀíÄ£¿é¡¢´æ´¢¹ÜÀíÄ£¿é£¬²¢Óë³ÖÐø¼¯³Éƽ̨Jenkins¼¯³É£¬ÊµÏÖÓ¦ÓÃÈÝÆ÷µÄ´´½¨¡¢ÔËÐС£OAKÖÂÁ¦ÓÚ¿ìËÙ²¿Êð¡¢µ¯ÐÔÀ©ËõÈÝ¡¢ÖúÁ¦Ãô½Ý¿ª·¢¡¢ÊµÏÖ¹ÊÕÏ×ÔÓúÒÔ¼°Ìá¸ß×ÊÔ´ÀûÓÃÂÊ¡£

OAK½¨ÉèÀú³Ì

ͼ 1 OAK½¨ÉèÀú³Ì OAK¹¦ÄÜ¿ò¼Ü

OAK¹¦ÄÜ¿ò¼Ü

ͼ2 OAK¹¦ÄÜ¿ò¼Ü

2016Äê³õµÄʱºò£¬ÎÒÃÇ¿ªÊ¼ÔÚ²âÊÔ»·¾³ÒýÈëDocker¡£×îÔçµÄ¼Æ»®Êǽ«PPTVµÄËùÓпª·¢²âÊÔ»·¾³¶¼Ç¨ÒƵ½ÈÝÆ÷À¿¼ÂÇÓû§Èº(Ñз¢/²âÊÔÈËÔ±)¶ÔDockerµÄÃüÁîÐвÙ×÷²»ÊìϤ£¬Èç¹ûÎÒÃÇÖ±½Ó°ÑDockerµ×²ãµÄ¹ÜÀí²Ù×÷±©Â¶¸øÓû§£¬ËûÃǵÄѧϰ³É±¾»áºÜ¸ß¡£Îª´ËÎÒÃÇʹÓÃÁËMesos+ Marathon£¬¿ÉÒÔͨ¹ýMarathon¿ìËÙ´´½¨ÈÝÆ÷£¬ÊµÏÖÈÝÆ÷¹ÊÕÏ×Ô¶¯»Ö¸´¡£¶øʵ¼ÊÉÏÓû§¶ÔÓÚÈÝÆ÷µÄ²Ù×÷ºÍÔ­ÀíÍêÈ«²»¹ØÐÄ£¬ËûÃÇÖ»¹ØÐÄÈçºÎ¿ÉÒÔ¿ìËÙ¡¢¼òµ¥µÄ¹¹½¨Ò»¸ö¿ª·¢»òÕß²âÊÔ»·¾³¡£Marathon¶ÔÓÚÓû§À´Ëµ»¹ÊǹýÓÚÉúÊ衣ΪÁËÈÃÓû§ÄܸüÈÝÒ×½ÓÊÜDocker£¬ÎÒÃǽ«ÈÝÆ÷µÄ´´½¨ÓëJenkinsƽ̨½áºÏ¡£JenkinsÊÇ¿ª·¢¡¢²âÊÔÈËÔ±±È½ÏÊìϤµÄƽ̨¡£ÎÒÃÇÔÚJenkinsµÄ±àÒëjobÖУ¬°Ñ±àÒë³öÀ´µÄÓ¦Óðü±£´æµ½Ò»Ì¨¼¯ÖеķþÎñÆ÷ÉÏ£¬Í¬Ê±µ÷ÓÃMarathonµÄAPI´´½¨Ò»¸öÓëÖ®¶ÔÓ¦µÄAPP¡£Õâ¸öAPP»áͨ¹ýMarathonµÄuri²ÎÊý°Ñ±àÒëºÃµÄÓ¦Óðü¹ÒÔص½ÈÝÆ÷ÖУ¬ÊµÏÖÓ¦ÓÃ×Ô¶¯²¿Êð¡£

µ½ÁËÕâÀ»¹´æÔÚÒ»¸öÎÊÌ⣬Óû§ÒªÔõô·ÃÎÊÒѾ­²¿ÊðºÃµÄÓ¦Óã¿ÈÝÆ÷ÀïµÄÍøÂçĬÈÏÓÃÊÇÒ»¸ö˽ÍøµÄIP£¬´ËIPÓëÈÝÆ÷ËùÔÚËÞÖ÷»úÉϵÄDocker0Íø¿¨×öÁËÇŽӣ¬ÊDz»ÄܸúÍâ½çͨÐÅ¡£ËùÒÔMarathonÔÚ´´½¨ÈÝÆ÷µÄʱºò£¬Í¨¹ýNAT½«ÈÝÆ÷·þÎñ¶Ë¿ÚÓ³Éäµ½ËÞÖ÷»úµÄÒ»¸öËæ»ú¶Ë¿ÚÉÏ¡£Ò²¾ÍÊÇ˵£¬Ã¿Ò»´ÎÈÝÆ÷ÖØÆôÖ®ºó£¬¶ÔÓ¦µÄ·þÎñµØÖ·Êǻᶯ̬±ä»¯µÄ¡£Îª´Ë£¬ÎÒÃÇÒýÈëÁËconsulʵÏÖ·þÎñ×¢²áºÍ·þÎñ·¢ÏÖ¡£Ã¿´ÎÈÝÆ÷·þÎñµØÖ·±ä»¯Ê±£¬½«Æä¸üе½nginx·´Ïò´úÀíµÄ¼Ç¼ÖС£Í¬Ê±£¬£¬Ó¦ÓõÄÓòÃû½âÎöµ½nginxÉÏ¡£Óû§·ÃÎÊÓ¦ÓÃÓòÃûµÄʱºò£¬nginx»á½«ÇëÇóת·¢µ½¾ßÌåµÄÈÝÆ÷Àï¡£µ½´ËΪֹ£¬Óû§ÒѾ­¿ÉÒÔͨ¹ýJenkins¡°Ò»¼ü¡±Éú³ÉÔËÐл·¾³¡£

OAK¼Ü¹¹Í¼

ͼ3 OAK¼Ü¹¹Í¼

2016Äê6ÔµÄʱºò£¬PPTVÒѾ­ÓÐ80%ÒÔÉϵÄÓ¦Óý«²âÊÔ»·¾³Ç¨ÒƵ½ÁËdockerÖУ¬ËùÒÔÎÒÃÇÒ²¿ªÊ¼½«Ä¿±êתÒƵ½ÁËÉú²ú»·¾³ÉÏ¡£Óë²âÊÔ»·¾³²»Í¬£¬PPTVµÄÉú²ú»·¾³ÍøÂçÁ÷Á¿ºÜ´ó(ÒÔÊÓƵ²¥·ÅΪÖ÷)£¬ËùÒÔ¶ÔÍøÂçÐÔÄÜÒªÇó·Ç³£Ñϸñ¡£DockerĬÈϵÄbridgeģʽÎÞ·¨Âú×ã¡£ÁíÍ⣬Éú²ú»·¾³ÊÇÔËάÔÚ¹ÜÀí¡£ÔËάÈËԱϣÍûÏñ¹ÜÀíÐéÄâ»úÒ»Ñù¹ÜÀíÈÝÆ÷£¬Ï£ÍûÈÝÆ÷ÓÐ×Ô¼ºµÄIP£¬Í¨¹ýÕâ¸öIP SSHµÇ¼µ½Õâ¸öÈÝÆ÷ÀËû¿ÉÒÔ²éÈÕÖ¾£¬¼à¿Ø£¬Í¬²½ÅäÖ㬻ò×öһЩÆäËûµÄ²Ù×÷¡£µ½ÁËÕâÀ¾Í¶ÔÈÝÆ÷µÄÍøÂçÓÐÁ˸ü¸ßµÄÒªÇ󣬳ýÁËÐÔÄÜ£¬»¹ÐèÒª¶ÀÁ¢IP,docker¼¯ÈºÖ®¼äµÄÈÝÆ÷Òª»¥Í¨£¬ÈÝÆ÷»¹ÐèÒªºÍ´«Í³»·¾³µÄÍøÂç´òͨ£¬Äܺʹ«Í³»·¾³ÀïµÄÓ¦ÓÃIPͨѶ¡£

¶ÔDockerÁ˽â±È½ÏÔçͬѧӦ¸Ã»áÇå³þ¡£ÔÚDockerÔçÆÚ£¬»¹ÓÐMesos+Marathon¿ò¼ÜÔçÆÚ£¬ÊÇû·¨Âú×ãÈÝÆ÷¶ÀÁ¢IPµÄÐèÇóµÄ¡£Ò»Ö±µ½2015ÄêµÄ11Ô£¬Docker1.9·¢²¼£¬Õýʽ֧³ÖoverlayÍøÂ磬֧³Ö¿çÖ÷»úÍøÂçÄ£¿éµÄͨѶ¡£

2. DockerÍøÂç·½°¸¶Ô±È

ÔçÆÚµÄÈÝÆ÷ÍøÂç

ÔçÆÚµÄÈÝÆ÷ÍøÂ磬¾ÍÊÇÖ÷»úÄÚ²¿µÄÍøÂ磬ÏëÒª°Ñ·þÎñ±©Â¶³öÈ¥ÐèҪͨ¹ýiptables×ö¶Ë¿ÚÓ³Éä¡£ÕâÊÇÊôÓÚ¡°Ô¶¹Åʱ´ú¡±µÄ¶«Î÷£¬ºÜÄѱ»ÆóҵʹÓá£

ͼ4 ÔçÆÚµÄÈÝÆ÷ÍøÂç

DockerÔçÆÚµÄ4ÖÖÍøÂçģʽ:

Bridgeģʽ:ĬÈÏģʽ£¬ÎªÈÝÆ÷·ÖÅänamespace¡¢Íø¿¨ºÍIPµÈ£¬²¢Á¬½Óµ½ËÞÖ÷»úµÄÐéÄâÍøÇÅ(docker0)

HOSTģʽ:ʹÓÃËÞÖ÷»únamespace¡¢IPºÍ¶Ë¿Ú

Containerģʽ:ʹÓÃÒѾ­´æÔÚÈÝÆ÷µÄnamespace¡¢IPºÍ¶Ë¿Ú

Noneģʽ:ÈÝÆ÷ÓµÓÐ×Ô¼ºµÄnamespace,ÐèÒªÁíÍâÌí¼ÓÍø¿¨¡¢ÅäÖÃIPµÈ

Docker overlayÍøÂç

ͼ 5 Docker overlayÍøÂç

OverlayÍøÂçÊÇÖ¸ÔÚ²»¸Ä±äÏÖÓÐÍøÂç»ù´¡ÉèÊ©µÄÇ°ÌáÏ£¬Í¨¹ýijÖÖÔ¼¶¨Í¨ÐÅЭÒ飬°Ñ¶þ²ã±¨ÎÄ·â×°ÔÚIP±¨ÎÄÖ®ÉϵÄеÄÊý¾Ý¸ñʽ¡£ÕâÑù²»µ«Äܹ»³ä·ÖÀûÓóÉÊìµÄIP·ÓÉЭÒé½ø³ÌÊý¾Ý·Ö·¢£¬¶øÇÒÔÚOverlay¼¼ÊõÖвÉÓÃÀ©Õ¹µÄ¸ôÀë±êʶλÊý£¬Äܹ»Í»ÆÆVLANµÄ4000ÊýÁ¿ÏÞÖÆ£¬Ö§³Ö¸ß´ï16MµÄÓû§£¬²¢ÔÚ±ØҪʱ¿É½«¹ã²¥Á÷Á¿×ª»¯Îª×é²¥Á÷Á¿£¬±ÜÃâ¹ã²¥Êý¾Ý·ºÀÄ¡£Òò´Ë£¬OverlayÍøÂçʵ¼ÊÉÏÊÇÄ¿Ç°×îÖ÷Á÷µÄÈÝÆ÷¿ç½ÚµãÊý¾Ý´«ÊäºÍ·ÓÉ·½°¸¡£

ÔÚDockerµÄ1.9Öа汾ÖÐÕýʽ¼ÓÈëÁËOverlayÍøÂçµÄÖ§³Ö¡£

FlannelÈÝÆ÷ÍøÂç

ͼ 6 FlannelÈÝÆ÷ÍøÂç

FlannelÊÇÓÉCoreOSÖ÷µ¼µÄ½â¾ö·½°¸¡£FlannelΪÿһ¸öÖ÷»úµÄDockerdaemon·ÖÅäÒ»¸öIP¶Î£¬Í¨¹ýetcdά»¤Ò»¸ö¿çÖ÷»úµÄ·ÓÉ±í£¬ÈÝÆ÷Ö®¼äIPÊÇ¿ÉÒÔ»¥ÏàÁ¬Í¨µÄ£¬µ±Á½¸ö¿çÖ÷»úµÄÈÝÆ÷ҪͨÐŵÄʱºò¡£»áÔÚÖ÷»úÉÏÐÞ¸ÄÊý¾Ý°üµÄheader£¬ÐÞ¸ÄÄ¿µÄµØÖ·ºÍÔ´µØÖ·,¾­¹ý·ÓÉ±í·¢Ë͵½Ä¿±êÖ÷»úºó½â°ü¡£·â°üµÄ·½Ê½£¬¿ÉÒÔÖ§³Öudp¡¢vxlan¡¢host-gwµÈ£¬µ«ÊÇÈç¹ûÒ»¸öÈÝÆ÷Òª±©Â¶·þÎñ£¬»¹ÊÇÐèÒªÓ³ÉäIPµ½Ö÷»ú²àµÄ¡£

Calico ÍøÂç·½°¸


ͼ 7 calicoÍøÂç

CalicoÊǸöÄêÇáµÄÏîÄ¿£¬»ùÓÚBGPЭÒé.Íêȫͨ¹ýÈý²ã·ÓÉʵÏÖ£¬¶ÔÍøÂç²»ÊìϤµÄͬѧ¿ÉÄܶ¼Ã»ÓÐÌý˵¹ý¡£CalicoµÄÄ¿±êºÜ´ó£¬¿ÉÒÔÓ¦ÓÃÔÚÐé»ú£¬ÎïÀí»ú£¬ÈÝÆ÷»·¾³ÖС£ÔÚCalicoÔËÐеÄÖ÷»úÉÏ¿ÉÒÔ¿´µ½´óÁ¿ÓÉlinux·ÓÉ×é³ÉµÄ·ÓÉ±í£¬ÕâÊÇcalicoͨ¹ý×ÔÓÐ×é¼þ¶¯Ì¬Éú³ÉºÍ¹ÜÀíµÄ¡£ÕâÖÖʵÏÖ²¢Ã»ÓÐʹÓÃËíµÀ£¬Ã»ÓÐNAT£¬µ¼ÖÂûÓÐÐÔÄܵÄËðºÄ£¬ÐÔÄܺܺ㬴Ӽ¼ÊõÉÏÀ´¿´ÊÇÒ»ÖÖºÜÓÅÔ½µÄ·½°¸¡£ÕâÑù×öµÄºÃ´¦ÔÚÓÚ£¬ÈÝÆ÷µÄIP¿ÉÒÔÖ±½Ó¶ÔÍⲿ·ÃÎÊ£¬¿ÉÒÔÖ±½Ó·ÖÅäµ½ÒµÎñIP£¬¶øÇÒÈç¹ûÍøÂçÉ豸֧³ÖBGPµÄ»°£¬¿ÉÒÔÓÃËüʵÏÖ´ó¹æÄ£µÄÈÝÆ÷ÍøÂç¡£µ«BGP´ø¸øËüµÄºÃ´¦µÄͬʱҲ´ø¸øËûµÄÁÓÊÆ£¬BGPЭÒéÔÚÆóÒµÄÚ²¿»¹ºÜÉÙ±»½ÓÊÜ£¬ÆóÒµÍø¹Ü²»Ì«Ô¸ÒâÔÚ¿çÍøÂçµÄ·ÓÉÆ÷ÉÏ¿ªÆôBGPЭÒé

·½°¸¶Ô±ÈС½á ¼òµ¥×ܽáÒ»ÏÂÉϱßÌáµ½µÄ¼¸ÖÖÍøÂç·½°¸£¬²»Íâºõ³ö×ÔÁ½¸ö¼¼ÊõÁ÷ÅÉ,ËíµÀ·½°¸ºÍ·ÓÉ·½°¸¡£

ËíµÀ·½°¸

±ÈÈçFlannelµÄVxLan¡£ÌصãÊǶԵײãµÄÍøÂçûÓйý¸ßµÄÒªÇó£¬Ò»°ãÀ´ËµÖ»ÒªÊÇÈý²ã¿É´ï¾Í¿ÉÒÔ£¬Ö»ÒªÊÇÔÚÒ»¸öÈý²ã¿É´ïÍøÂçÀ¾ÍÄܹ¹½¨³öÒ»¸ö»ùÓÚËíµÀµÄÈÝÆ÷ÍøÂç¡£ÎÊÌâÒ²ºÜÃ÷ÏÔ£¬Ò»¸ö´ó¼Ò¹²Ê¶ÊÇËæ׎ڵã¹æÄ£µÄÔö³¤¸´ÔӶȻáÌáÉý£¬¶øÇÒ³öÁËÍøÂçÎÊÌâ¸ú×ÙÆðÀ´±È½ÏÂé·³£¬´ó¹æÄ£¼¯ÈºÇé¿öÏÂÕâÊÇÐèÒª¿¼ÂǵÄÒ»¸öµã¡£

·ÓÉ·½°¸

·Óɼ¼Êõ´ÓÈý²ãʵÏÖ¿çÖ÷»úÈÝÆ÷»¥Í¨£¬Ã»ÓÐNAT£¬Ð§ÂʱȽϸߣ¬ºÍÄ¿Ç°µÄÍøÂçÄܹ»ÈÚºÏÔÚÒ»Æð£¬Ã¿Ò»¸öÈÝÆ÷¶¼¿ÉÒÔÏñÐéÄâ»úÒ»Ñù·ÖÅäÒ»¸öÒµÎñµÄIP¡£µ«Â·ÓÉÍøÂçÒ²ÓÐÎÊÌ⣬·ÓÉÍøÂç¶ÔÏÖÓÐÍøÂçÉ豸ӰÏì±È½Ï´ó£¬Â·ÓÉÆ÷µÄ·ÓɱíÓ¦¸ÃÓпռäÏÞÖÆÒ»°ãÊÇÁ½ÈýÍòÌõ¡£¶øÈÝÆ÷µÄ´ó²¿·ÖÓ¦Óó¡¾°ÊÇÔËÐÐ΢·þÎñ£¬ÊýÁ¿¼¯ºÜ´ó¡£Èç¹û¼¸ÍòеÄÈÝÆ÷IP³å»÷µ½Â·ÓɱíÀµ¼ÖÂϲãµÄÎïÀíÉ豸û°ì·¨³ÐÊÜ£»¶øÇÒÿһ¸öÈÝÆ÷¶¼·ÖÅäÒ»¸öÒµÎñIP£¬ÒµÎñIPÏûºÄ»áºÜ¿ì¡£

3.PPTV DockerÍøÂç½â¾ö·½°¸

¶Ô±ÈÁ˼¸ÖÖ½â¾ö·½°¸Ö®ºó£¬½áºÏPPTVµÄʵ¼ÊÇé¿ö£º

1.ÍøÂç×éÈËÁ¦²»×ãÒÔά»¤Ò»¸öOverlayÍøÂ磬OverlayÍøÂç³öÎÊÌâÅŲ鸴ÔÓ£¬»á³öÏÖʧ¿ØµÄ״̬¡£

2.ËíµÀ¼¼ÊõÓ°ÏìÐÔÄÜ£¬²»ÄÜÂú×ãÉú²ú»·¾³¶ÔÍøÂçÐÔÄܵÄÒªÇó¡£

3.¿ªÆôbgp¶ÔÏÖÓÐÍøÂç¸Ä¶¯Ì«´ó£¬ÎÞ·¨½ÓÊÜ¡£

4.ÔËά×éͬѧϣÍûÄÜͨ¹ýÍøÂçÇŽӵķ½°¸½â¾öÈÝÆ÷ÍøÂç¡£

ÈÝÆ÷ÍøÂçÇŽÓ

×îÖÕ£¬ÎÒÃǵĽâ¾ö·½°¸£¬»ùÓÚdockerµÄbridgeģʽ£¬½«Ä¬ÈϵÄdocker bridgeÍøÇÅÌ滻Ϊlinuxbridge£¬°ÑlinuxbridgeÍø¶ÎµÄip¼ÓÈëµ½ÈÝÆ÷ÀʵÏÖÈÝÆ÷Ó봫ͳ»·¾³Ó¦ÓõĻ¥Í¨¡£

ʵÏÖ˼·ºÜ¼ò½àÇåÎú£¬ÏÖÔÚÓÐÒ»¸öMesosÖ÷»ú

1.Ê×ÏÈ»áÔÚ¸ÃÖ÷»úÉÏÌí¼ÓÒ»¸ölinux bridge£¬°ÑÖ÷»úÍø¿¨£¬¿ÉÒÔÊÇÎïÀí»úµÄ£¬Ò²¿ÉÒÔÊÇÐéÄâ»úµÄ£¬°ÑÕâ¸öÍø¿¨¼ÓÈëbridgeÀïÃ棬bridgeÅäÉÏÍø¿¨Ô­±¾µÄ¹ÜÀíIP¡£

2.´´½¨Ò»¸öеÄdocker bridgeÍøÂ磬ָ¶¨bridge×ÓÍø£¬²¢½«¸ÃÍøÂçµÄÍøÇŰ󶨵½ÉÏÒ»²½´´½¨µÄÍøÇÅÉÏ¡£

3.ÈÝÆ÷Æô¶¯Ê±ºò£¬Ö¸¶¨ÈÝÆ÷ÍøÂçΪµÚ¶þ²½Öд´½¨µÄbridgeÍøÂ磬ͬʱΪÈÝÆ÷Ö¸¶¨Ò»¸ö¸ÃÍøÂç×ÓÍøÄÚµÄIP¡£ÈÝÆ÷Æô¶¯ºóÍøÂçIPĬÈϼ´¿ÉÓëÍâ½ç»¥Í¨¡£

ÕâÀïҪעÒâµÄÊǵڶþ²½£¬ÎÒÃǵÄͬѧÔÚÑо¿Õâ¸ö·½°¸µÄʱºòÈÆÁËÒ»¸öºÜ´óµÄȦ×Ó£¬ÒòΪdockerÈÝÆ÷ʹÓÃdockerbridgeÍøÂçģʽµÄʱºò£¬ÔÚÈÝÆ÷Æô¶¯Ê±»áĬÈÏ°ÑÈÝÆ÷µÄÍø¹ØÖ¸Ïòµ½ËÞÖ÷»úÉϵÄÍøÇÅIP£¬¼´linux bridgeµÄIP£¬¶øÕâ¸öIP²¢²»ÊǸÃÍø¶ÎµÄÍø¹Ø¡£ËùÒÔÎÒÃÇÐèÒªÔÚÈÝÆ÷Æô¶¯µÄʱºò½«ÈÝÆ÷Íø¹ØÖ¸Ïòµ½Êµ¼ÊµÄÍø¹ØµØÖ·£¬¶ø½â¾öÕâ¸öÎÊÌâµÄ·½·¨ÔÚdocker¹Ù·½ÎĵµÖв¢Ã»ÓÐÌáµ½£¬ÎÒÃÇ×îÖÕÊÇÔÚÒ»¸öissueÀïÕÒµ½Á˽â¾ö°ì·¨¡£

Á´½ÓÔÚ´Ë https://github.com/docker/docker/issues/20758

¸ø¸ö¼òµ¥µÄÀý×Ó

docker network create --gateway10.199.45.200 --subnet 10.199.45.0/24 -o

com.docker.network.bridge.name=br-oak--aux-address "DefaultGatewayIPv4=10.199.45.1" oak-net

¹Ø¼ü²ÎÊý: --aux-address"DefaultGatewayIPv4=10.199.45.1"

ÒÔÉϱߵÄÃüÁîΪÀý£¬¸ÃÃüÁîÖд´½¨ÁËÒ»¸ödockerbridgeÍøÂ磬²¢ÓëdockerËùÔÚÖ÷»úµÄbr-oakÍøÇÅ×öÇŽӣ¬¸ÃÍøÂçµÄʹÓÃÁË10.199.45.0/24Õâ¸ö×ÓÍø£¬Í¬Ê±Í¨¹ý --aux-

address"DefaultGatewayIPv4=10.199.45.1" Õâ¸ö²ÎÊý½«ÈÝÆ÷Æô¶¯Ê±µÄÍø¹ØÖ¸Ïòµ½10.199.45.1

ͨ¹ýÍøÇŵķ½Ê½½â¾öÈÝÆ÷ÍøÂçÓÐÁ½¸öÎÊÌâ:

1.linux bridge Ö»ÄÜÌí¼Ó¸úslavehost ͬһ¸övlanµÄIP£¬Ò²¾ÍÊÇ˵ÈÝÆ÷IP±ØÐëÒªºÍËÞÖ÷»úÔÚͬһvlanÏ£¬ÕâÔÚÒ»¶¨³Ì¶ÈÉϾÍÏÞÖÆÁËÈÝÆ÷¿çËÞÖ÷»úƯÒƵķ¶Î§¡£

²»¹ýÕâ¸öÎÊÌâÔÚPPTVµÄÉú²ú»·¾³ÖÐÌìÈ»²»´æÔÚ£¬ÒòΪÎÒÃǵÄÉú²ú»·¾³ÖУ¬Ã¿¸öÊý¾ÝÖÐÐĵÄÖ÷»ú¶¼ÔÚÒ»¸öºÜ´óµÄ×ÓÍøÄÚ£¬»ù±¾ÄÜÂú×ãÈÝÆ÷ÔÚÕû¸öÊý¾ÝÖÐÐĵÄÈÎÒâ½ÚµãÏÂƯÒÆ¡£

2.ÒªÈÃÈÝÆ÷IPÔÚ²»Í¬µÄËÞÖ÷»úÉÏƯÒÆ£¬ËÞÖ÷»úµÄdockerÍøÂçÐèҪʹÓÃͬһ¸öCIDR£¬Ò²¾ÍÊǸ÷ËÞÖ÷»úµÄÈÝÆ÷ʹÓÃͬһ¸öÍø¶Î¡£¶ø²»Í¬ËÞÖ÷»úµÄʹÓÃͬһ¸öÈÝÆ÷Íø¶Î¾Í»áÉæ¼°µ½IPAMµÄÎÊÌ⣬ÒòΪËÞÖ÷»úµÄdocker daemonÖ»ÖªµÀËû±¾»úÉϵÄÈÝÆ÷ʹÓÃÁËÄÄЩIP£¬¶øÕâЩIPÔÚÆäËûËÞÖ÷»úÉÏÓÐûÓб»Ê¹Óã¬ÊDz»ÖªµÀµÄ¡£

ÔÚĬÈϵÄdocker bridgeÖУ¬ÒòΪÕâЩip²»»áÖ±½ÓÓëÍⲿͨÐÅ£¬ËùÒÔÈÝÆ÷ʹÓÃÏàͬIPÒ²²»»áÓÐÎÊÌ⣬µ«Êǵ±ÈÝÆ÷ÍøÂçͨ¹ýlinux bridge´òͨÒÔºó£¬ËùÓÐÈÝÆ÷¶¼ÊÇ2²ã»¥Í¨µÄ£¬Ò²¾ÍÊÇ»á³öÏÖIP³åÍ»µÄÎÊÌâ¡£

ΪÁ˽â¾öÉϱßÌáµ½µÄÎÊÌ⣬ʵÏÖÈ«¾ÖµÄIP¹Ü¿Ø£¬ÎÒÃÇ¿ª·¢ÁËIP³Ø¹ÜÀíƽ̨£¬ÊµÏÖ¶ÔÈÝÆ÷IPµÄ·ÖÅä¹ÜÀí¡£ÓÉÕâ¸öƽ̨¹ÜÀíµÄIPÓÐÈýÖÖ״̬:

1.δ·ÖÅä¸øÓ¦ÓÃ

2.ÒÑ·ÇÅä¸øÓ¦Óò¢ÇÒÔÚʹÓÃÖÐ

3.ÒÑ·ÖÅä¸øÓ¦Óõ«Êǵ±Ç°Î´Ê¹ÓÃ

¹ÜÀíƽ̨ÒÔmarathonÉϵÄappÐÅÏ¢×÷ΪÊý¾ÝÔ´£¬¶¨ÆÚÈ¥µ÷ÓÃmarathonµÄAPI¸üÐÂIPÁÐ±í¡£µ±ÎÒÃÇÒªÔÚmarathonÉÏ´´½¨Ò»¸öʹÓù̶¨IPµÄÈÝÆ÷ʱ£¬Ê×ÏÈ»áÇëÇóIP³Ø¹ÜÀíƽ̨µÄIP·ÖÅä½Ó¿Ú£¬ÇëÇóµÄʱºò°Ñapp id·¢¸ø·ÖÅä½Ó¿Ú£¬¹ÜÀíƽ̨¸ù¾Ýappid ÅжÏÕâ¸öÓ¦ÓÃÊÇ·ñÊÇÐÂÓ¦Óã¬Èç¹ûÊÇÐÂÓ¦ÓÃÔò´ÓIP³ØÖзµ»ØÒ»¸öδʹÓõÄIP£¬²¢½«´ËIPÓëÓ¦ÓùØÁª¡£Èç¹ûÊÇÒѾ­´æÔÚµÄÓ¦ÓÃÔò·ÖÅäÒѹØÁªµÄIP¡£IPÓëÓ¦ÓùØÁªÖ®ºó£¬´ËIP¾Í²»»áÔÙ·ÖÅä¸øÆäËûÓ¦Ó㬳ý·ÇIP³ØÒѾ­Ã»ÓпÉÓÃIP£¬ÕâÑù×öÊÇΪÁË·ÀÖ¹Ó¦ÓÃÈç¹ûÖØÆô»òÕßÖØй¹½¨µÄʱºò£¬IPÓпÉÄܻᱻÆäËûÔÚͬһʱ¼äÆô¶¯µÄʵÀýʹÓõôµÄ·çÏÕ¡£

IP³Ø¹ÜÀíÄ£¿é·ÖÅäIPµÄÁ÷³Ìͼ´óÖÂÈçÏÂ:

ͼ 8 ip·ÖÅäÁ÷³Ìͼ

ºóÐø¹¤×÷

ÍøÂç·½°¸¸ã¶¨£¬¹Ì¶¨IP¸ã¶¨¡£ÎÒÃÇÒª×öµÄ»¹Óкܶࡣ

ͨ¹ýÍøÇŵķ½Ê½¡¢½â¾öÁËÈÝÆ÷ÍøÂçµÄÎÊÌ⣬ÎÒÃǽÓÏÂÀ´»¹ÒªÃæÁÙÆäËûµÄÎÊÌâ¡£

Ê×µ±Æä³åµÄ¾ÍÊÇÔ­ÏȵķþÎñ×Ô¶¯×¢²á¡¢×Ô¶¯·¢ÏÖ£¬²»ÔÙÊÊÓ¦ÁË¡£ÒòΪԭÏȵķ½°¸ÊÇ»ùÓÚNATµÄģʽ×öµÄ£¬¶øÏÖÔÚʵÏÖÁ˶ÀÁ¢IPµÄ¹¦ÄÜ¡£ÎÒÃÇÐèÒª½«ÏÖÓеÄƽ̨ÓëPPTVÄÚ²¿µÄDNS×ö×Ô¶¯»¯¶Ô½Ó£¬Ã¿µ±ÓÐÈÝÆ÷´´½¨ºÍÉú³Éʱ£¬¶¼»á×Ô¶¯¶ÔÈÝÆ÷µÄIP×öDNS½âÎö¡£

ÁíÍâÒ»¸öÎÊÌâÊǸºÔؾùºâ£¬PPTVµÄ¸ºÔؾùºâ»ù±¾¶¼ÊÇͨ¹ýLVS + nginxʵÏֵģ¬µ«¶ÔÓÚºǫ́µÄÈÝÆ÷Ó¦ÓÃÀ´Ëµ£¬Ã¿´ÎÀ©ÈݺÍËõÈÝ¡¢»òÕß´´½¨ÐµÄÓ¦Ó㬸ºÔؾùºâµÄºó¶ËÅäÖÃÒ²ÊÇÐèÒª×Ô¶¯¸üеġ£

¶ÔÕâƪÎÄÕÂÄãÓÐʲôÏë·¨ºÍ¹Ûµã£¿»¶Ó­ÔÚºǫ́¸øÎÒÃÇÁôÑÔ

   
3218 ´Îä¯ÀÀ       19
 
Ïà¹ØÎÄÕÂ

ÔƼÆËãµÄ¼Ü¹¹
¶ÔÔƼÆËã·þÎñÄ£ÐÍ
ÔƼÆËãºËÐļ¼ÊõÆÊÎö
Á˽âÔƼÆËãµÄ©¶´
 
Ïà¹ØÎĵµ

ÔƼÆËã¼ò½é
ÔƼÆËã¼ò½éÓëÔÆ°²È«
ÏÂÒ»´úÍøÂç¼ÆËã--ÔƼÆËã
ÈídzÎöÔƼÆËã
 
Ïà¹Ø¿Î³Ì

ÔƼÆËãÔ­ÀíÓëÓ¦ÓÃ
ÔƼÆËãÓ¦ÓÃÓ뿪·¢
CMMIÌåϵÓëʵ¼ù
»ùÓÚCMMI±ê×¼µÄÈí¼þÖÊÁ¿±£Ö¤
×îл¼Æ»®
Èí¼þ¼Ü¹¹Éè¼Æ·½·¨¡¢°¸ÀýÓëʵ¼ù 8-23[ÌØ»Ý]
LinuxÄں˱à³Ì¼°É豸Çý¶¯ 8-15[±±¾©]
Python¡¢Êý¾Ý·ÖÎöÓë»úÆ÷ѧϰ 8-23[ÌØ»Ý]
ǶÈëʽÈí¼þ¼Ü¹¹Éè¼Æ 8-22[ÏßÉÏ]
QTÓ¦Óÿª·¢ 9-5[±±¾©]

ר¼ÒÊӽǿ´ITÓë¼Ü¹¹
Èí¼þ¼Ü¹¹Éè¼Æ
ÃæÏò·þÎñÌåϵ¼Ü¹¹ºÍÒµÎñ×é¼þµÄ˼¿¼
ÈËÈËÍøÒƶ¯¿ª·¢¼Ü¹¹
¼Ü¹¹¸¯»¯Ö®ÃÕ
̸ƽ̨¼´·þÎñPaaS
Ïà¹ØÅàѵ¿Î³Ì

ÔƼÆËãÔ­ÀíÓëÓ¦ÓÃ
Windows Azure ÔƼÆËãÓ¦ÓÃ

ĦÍÐÂÞÀ­ ÔÆƽ̨µÄ¹¹½¨ÓëÓ¦ÓÃ
ͨÓù«Ë¾GE DockerÔ­ÀíÓëʵ¼ù
ijÑз¢ÖÐÐÄ Openstackʵ¼ù
ÖªÃûµç×Ó¹«Ë¾ ÔÆƽ̨¼Ü¹¹ÓëÓ¦ÓÃ
ijµçÁ¦ÐÐÒµ »ùÓÚÔÆƽ̨¹¹½¨ÔÆ·þÎñ
ÔƼÆËãÓëWindows AzureÅàѵ
±±¾© ÔƼÆËãÔ­ÀíÓëÓ¦ÓÃ