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

1Ôª 10Ôª 50Ôª





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



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Modeler   Code  
»áÔ±   
 
   
 
 
     
   
 ¶©ÔÄ
  ¾èÖú
ÔÚDocker SwarmÉϲ¿ÊðApache Storm
 
À´Ô´£ºCSDN ·¢²¼ÓÚ   2016-6-3
  2418  次浏览      27
 

¡¶±¾ÎÄÀ´×ÔBaqend Tech Blog£¬ÃèÊöÁËÈçºÎÔÚDocker Swarm£¬¶ø²»ÊÇÔÚÐéÄâ»úÉϲ¿ÊðºÍµ÷ÅäApache Storm¼¯Èº¡£Õâ¸öÌâÄ¿ºÜÓÐÒâ˼£¬Wolfram Wingerath½«Ö®ÃèÊöΪ¡°ÕæÕýÓÐȤ¡±µÄÌåÑ飬ÔÚTechÉÏÄãºÜÉÙÄÜÌý¼ûÕâÖÖ»°¡£ÎÒºÃÆæµØÎÊËûÊÇʲôÈÃʹÓÃÈÝÆ÷±ÈʹÓÃÐéÄâ»ú¸ü°ô£¿Ëû»Ø´ð˵£º

×÷ΪһÃûDockerºÍDocker SwarmµÄÐÂÊÖ£¬Îҿ϶¨»¹Óкܶ಻֪µÀµÄÊ¡£²»¹ý£¬ÔÚÎÒ¿´À´£¬ÔÚDockerÉϲ¿Ê𣨼°Ò»°ã²Ù×÷£©±ÈÔÚÐéÄâ»úÉõÖÁÂã»úÉϸüÓÐȤ£¬ÒòΪDocker°þÀëÁËÒì¹¹ÐÔºÍÐí¶àÎÊÌâ¡£Ò»µ©ÔËÐÐÁËDocker£¬Äã¾Í¿ÉÒÔÓÃÒ»ÐÐÉùÃ÷Óï¾äÀ´Æô¶¯MongoDB»òÕßRedisµÄ·þÎñÆ÷µÈ¶«Î÷¡£Docker Swarm¼¯Èº¿ÉÒÔ°ïÄã×öͬÑùµÄÊ£¬¶øÇÒDocker»¹»á°ïÄã°ÑÆô¶¯µÄ¶«Î÷·Ö·¢¸ø¼¯ÈºÖеÄij¸ö·þÎñÆ÷¡£DockerÉõÖÁ»á°ïÄãÏÂÔØÕýÈ·µÄ¾µÏñ£¬Èç¹ûÄã±¾µØÃ»Óеϰ¡£ÄãÒ²²»Óýâ¾öÁ¬½ÓÎÊÌ⣬ÒòΪֻҪÔÚͬһDockerÍøÂçÖУ¬ÈÎһ̨»úÆ÷¶¼ÓëËùÓÐÆäËûµÄ»úÆ÷»¥Áª»¥Í¨¡£ÕýÈçÔÚ±¾½Ì³ÌÖÐËùÌáµ½µÄ£¬Ö»ÒªÄãʹÓÃÁËoverlayÍøÂ磬·Ö²¼Ê½°²×°Ò²ÄÜʵÏÖ¡£

ÄãÔÚÓʼþÖÐÒýÓõ½ÁËÎÒµÄһЩ»°£¬µ±ÎÒÔÚдËüÃǵÄʱºò£¬ÎÒµÄÄÔº£Éî´¦ÏëÆðÁ˼¸¸öÔÂǰ£¬ÎÒÐèÒª°²×°ºÍÔËÐÐÒ»¸öÓµÓг¬¹ý16¸ö½ÚµãµÄApache Storm¼¯ÈºµÄÊ¡£µ±Ê±Óкü¸¸öÎÊÌ⣬±ÈÈ磬ÎÒ¶ÔAWS²¢²»Ì«ÊìϤ£¨ÒÔǰÊÇÓÃOpenStackµÄ£©£¬»¹ÓÐÓ루StormʹÓõģ©NettyµÄÁ¬½ÓÐÔÎÊÌ⣬ÒÔ¼°AWSµÄÖ÷»úÃû½âÎöÎÊÌâ¡£ÕâЩÎÊÌâÔÚÎÒÉèÖÃOpenStackµÄʱºò´Óû³öÏÖ¹ý¡£×îÖÕÎÒÃÇ»¨·ÑÁËÊýÌì¼°Êý°ÙÃÀԪȥ½â¾öËüÃÇ¡£ÎÒÕæÐÄÈÏΪ£¬Èç¹ûÄãʹÓÃDocker£¬Äã¾Í²»»áÓöµ½ÕâЩÂé·³£¬ÒòΪÄãµÄ»·¾³Ê¼ÖÕÈçÒ»£º¼´Docker¡£
»Øµ½½Ì³ÌÉÏÀ´

Bagend Cloud¼´½«Ö§³Ö²éѯ»º´æºÍÁ¬Ðø²éѯµÄ¹¦ÄÜ£¬ÎÒÃǽ«ÒÀ¿¿Apache StormÀ´´¦ÀíµÍÑÓ³ÙµÄÊý¾Ý¡£ÒѾ­Óкü¸¸öÏîÄ¿¶¼ÖÂÁ¦ÓÚʵÏÖÔÚDockerÉϲ¿Êð¶à·þÎñÆ÷Storm £¨ÀýÈçwurstmeister/storm-docker»òviki-org/storm-docker£©£¬µ«ÊÇÔ½¹ý·þÎñÆ÷ÊýÁ¿µÄÏÞÖÆËÆºõ»áʹÊÂÇé±äµÃ¸´ÔÓ¡£¼ÈÈ»¿ÉÀ©Õ¹ÐÔºÍÒײÙ×÷ÐÔÊÇÎÒÃDz¿ÊðµÄ¹Ø¼ü£¬ÎÒÃÇ´ÓÒ»¿ªÊ¼¾ÍʹÓÃDock Swarm£¬Ò²ºÜ¸ßÐ˵ؿ´µ½ÊÂÇé½øÕ¹µÄÈç´Ë˳Àû¡£ÎÒÃÇÏ£Íûͨ¹ýÕâÆª½Ì³ÌÀ´·ÖÏíÎÒÃǵľ­Àú£¬ÌáÉýÄã¶Ô¼´½«·¢²¼µÄBaqendʵʱAPIµÄÐËȤ£¬×îÖÕÐû´«Ò»ÏÂDock Swarm£¨ÒòΪËüÕæµÄºÜÅ££¡£©:-)

Èç¹ûÄãÊÇSwarmÐÂÊÖ£¬Çë¿´ÎÒÃǵÄAWS Meetup Docker»ÃµÆÆ¬£¡

½ÓÏÂÀ´µÄ¼Æ»®

¸ÅÊö

Ê×ÏÈ£¬ÎÒÃǽ«½éÉÜÒ»¸ö¼òµ¥µÄ²¿Êð·¶Àý£¬²¢½âÊÍÆäÖеÄÿһ²¿·Ö¡£½Ó×Å£¬ÎÒÃÇ»á¸æËßÄãÔÚTL;DRÖÐËùÐè×öµÄ×î¼òµ¥µÄ×¼±¸¹¤×÷£¨Ê¹ÓÃÊÂÏÈ×¼±¸ºÃµÄʵÓýű¾³ÌÐò£©¡£È»ºó£¬ÎÒÃÇ»áÀ´µ½±¾½Ì³ÌµÄºËÐIJ¿·Ö£¬Ò»²½²½ÏòÄãչʾDocker Swarm¼¯Èº¼°¶à½ÚµãApache Storm¼¯ÈºµÄ²¿Êð¹ý³Ì¡£µ±È»£¬ÎÒÃÇÒ²»á×öһЩÓëStorm£¨ÌرðÊDz¿ÊðºÍÖÕÖ¹Ô¶³Ì·þÎñÆ÷ÉϵÄÍØÆË£©ÒÔ¼°Swarm£¨ÀýÈçÖØÆômanager½ÚµãºÍÖÕÖ¹Õû¸öStorm¼¯Èº£©¶¼Éæ¼°µ½µÄ³£¹æ¹¤×÷¡£

¸ÅÊö£º²¿Êð

ÏÂͼÊDz¿ÊðµÄ¼Ü¹¹Í¼£º

ÓÐÈý̨ÔËÐÐUbuntu Server 14.04µÄ»úÆ÷£¬Ã¿Ì¨¶¼»áÔËÐÐÒ»¸öDockerÊØ»¤½ø³Ì£¬Í¬Ê±Ã¿Ì¨¶¼×°Óм¸¸öÈÝÆ÷¡£¾­¹ý³õʼÉèÖã¬ÄãÖ»ÄÜ·ÃÎÊÆäÖÐһ̨»úÆ÷£¨Ubuntu 1£©£¬ºÜ´ó³Ì¶ÈÉÏÀ´Ëµ£¬»á¾õµÃÖ»ÓÐÒ»¸öDockerÊØ»¤½ø³Ì¡£

°²×°SwarmÖ®ºó£¬Äã»á´´½¨Ò»¸ö¸²¸ÇÍøÂ磨stormnet£©£¬ÕâÑù²»Í¬Swarm½Úµã¼äµÄDockerÈÝÆ÷¾Í¿ÉÒÔÏ໥ͨÐÅÁË¡£×îÖÕ£¬Ä㽫½¨Á¢ÆðÒ»¸ö³ÉÊìµÄStorm¼¯Èº£¬Õâ¸ö¼¯ÈºÊ¹ÓÃÏÖÓÐµÄ ZooKeeper ¹²Í¬Ð­µ÷£¬²¢Í¨¹ýstormnetʵÏÖ½Úµã¼äµÄͨÐÅ¡£ËäÈ»¼à¹ÜÈÝÆ÷½«Ã¿Ò»Ì¨·þÎñÆ÷²ßÂÔ·Ö·¢£¬NimbusºÍUIÈÝÆ÷Ôò»á°²×°ÔÚmanager½ÚµãÉÏ£¨Ubuntu 1£©¡£

±ØÐëÔÊÐí¶ÔUbuntu 1»úÆ÷µÄ¹«¹²·ÃÎÊ£¨¼´·ÖÅäÒ»¸ö¹«¹²IPºÍ¿ª·Å¶Ë¿Ú8080!£©¡£·ñÔò£¬Äã¾Í¿´²»µ½StormÃÀÀöµÄUIÁË¡£

Ïêϸ½Ì³Ì

ÎÒÃǸøÈý¸öUbuntu»úÆ÷µÄÓòÃû·Ö±ðÊÇzk1.cloud¡¢zk2.cloudºÍzk3.cloud¡£ÓÉÓÚZooKeeper·þÎñÆ÷ºÍmanager½Úµã´Ó¸ÅÄîÉÏ˵ÊÇÁ½¸ö²»Í¬µÄ½ÇÉ«£¬ÎÒÃÇʹÓÃmanager.swarmºÍmanager.swarm.baqend.com×÷Ϊmanager½ÚµãµÄ˽ÓÐIPµØÖ·ºÍ¹«¹²IPµØÖ·¡£¾¡¹Ü±¾½Ì³ÌÖУ¬Ubuntu 1ʵ¼ÊÉÏÊǰçÑÝÁËZooKeeper 1ºÍ¹ÜÀíÕßÁ½¸ö½ÇÉ«£¬µ«Äã¿ÉÒÔÔÚ×Ô¼º²¿ÊðµÄʱºòʹÓò»Í¬Á½¸ö·þÎñÆ÷À´Íê³É¡£ÔÚGithubÉÏcheck outÕâ¸ö½Ì³Ì£¬ÔÚreadme.meÖУ¬¸ù¾ÝÄã×Ô¼ºµÄÓòÃû£¬²éÕÒ²¢Ìæ»»ÎÒÃǵÄÔ­ÓÐÓòÃû£¬È»ºóÄã¾Í¿ÉÒÔ°ÑÎÒÃǵĴ󲿷ÖÓï¾ä¸´ÖÆÕ³Ìùµ½ÎÒÃǽ«ÒªÊ¹ÓõÄÍâ¿Ç³ÌÐòÖÐÁË¡£

Ì«³¤²»¿´£¿

¶ÔÓÚÄÇЩ¼±×Å¿´½á¹ûµÄÈËÀ´Ëµ£¬ÎÒÃÇÒ²×¼±¸ÁËһЩ½Å±¾£¡ÕâЩÊDz¿ÊðSwarmºÍStormËùÐèµÄÈ«²¿½Å±¾ÁË¡£µ«ÊÇ£¬ÎªÁ˱ãÓÚÀí½â£¬ºóÃæ»¹ÊÇ»áÓÐÒ»¸öÏêϸµÄ²½ÖèÃèÊöµÄ¡£

ËùÒÔ£¬ÔÚÌÖÂÛϸ½Ú֮ǰ£¬ÕâÓÐÒ»·Ý¿ìËÙÖ¸ÄÏ£º

1.´´½¨Ò»¸öUbuntu 14.04·þÎñÆ÷ ¨C ÎÒÃdzÆÖ®ÎªUbuntu 1 ¨C È»ºóͨ¹ýSSHÁ¬½ÓËü¡£È»ºóÖ´ÐÐÒÔÏÂÓï¾ächeck outÖ¸ÄÏÖеĽű¾À´°²×°Docker£º

 sudo apt-get install git -y && \
cd /home/ubuntu/ && \
git clone https://github.com/Baqend/tutorial-swarm-storm.git && \
chmod +x tutorial-swarm-storm/scripts/* && \
cd tutorial-swarm-storm/scripts/ && \
sudo bash installDocker.sh && \
sudo usermod -aG docker ubuntu && \
sudo shutdown -h now

2.»úÆ÷»á×Ô¶¯¹Ø»ú¡£¹Ø»úµÄʱºò£¬Éú³É¿ìÕÕ¡£

3.Æô¶¯Á½Ì¨Äã¸Õ¸Õ¿ìÕÕ¹ýµÄ»úÆ÷£¨Ubuntu 2ºÍUbuntu 3£©£¬Ê¹ÓÃÒ»ÏÂ×Ô¶¨Òå½Å±¾°ÑËüÃÇ×ö³ÉSwarm worker½Úµã£º

 #!/bin/bash
cd /home/ubuntu/ && rm -rf tutorial-swarm-storm && \
git clone https://github.com/Baqend/tutorial-swarm-storm.git && \
cd tutorial-swarm-storm/scripts/ && \
chmod +x ./* && \
./init.sh zk1.cloud,zk2.cloud,zk3.cloud


×¢Ò⣺ÄãÐèÒª°Ñ¶ººÅ·Ö¸ô¿ªµÄÖ÷»úÃûÌæ»»³ÉÄã×Ô¼ºµÄÖ÷»úÃû¡£

4.¶ÔÓòÃû·þÎñÆ÷×öÈçÏÂÉèÖ㺰ÑÁбíÖеĵÚһ̨Ö÷»úzk1.cloudÖ¸ÏòUbuntu1£¬Ê£ÏµÄzk2.cloudºÍzk3.cloud·Ö±ðÖ¸ÏòUbuntu 2ºÍUbuntu 3¡£ÁíÍâҪȷ±£manager.swarm.baqend.comºÍmanager.swarm·Ö±ð±»½âÎöΪUbuntu 1µÄ¹«¿ªIPµØÖ·ºÍ˽ÓÐIPµØÖ·¡£

5.È·±£Ö÷»úÖ®¼ä¿ÉÒÔ»¥Ïà·ÃÎÊ£ºÐèÒª´ò¿ª¶Ë¿Ú2181¡¢2888¡¢3888 £¨ZooKeeper£©¡¢2375 £¨Docker Swarm£©ºÍ6627 (Storm£¬Ô¶³ÌÍØÆË²¿Ê𣩡£ÎªÁ˱£Ö¤ÄÜ´ÓÍⲿ·ÃÎÊStorm UI£¬»¹±ØÐ빫¿ªmanager.swarm.baqend.com:8080¡£

6.×îºó£¬Æô¶¯Ubuntu 1ͬʱÔËÐÐÏÂÁдúÂ룬ÅäÖÃZooKeeper ensemble¡¢SwarmºÍStorm£º

cd /home/ubuntu/tutorial-swarm-storm/scripts/ && \
ZOOKEEPER=zk1.cloud,zk2.cloud,zk3.cloud && \
sudo bash init.sh $ZOOKEEPER manager && \
. swarm.sh $ZOOKEEPER && \
. storm.sh $ZOOKEEPER 3


ÔÙ´ÎÌáÐÑ£º¼ÇµÃ°ÑÆäÖеÄÖ÷»úÃûÌæ»»ÎªÄã×Ô¼ºµÄ¡£

ÄãÏÖÔÚÓ¦¸Ã¿ÉÒÔ·ÃÎÊhttp://manager.swarm.baqend.com:8080ϵÄStorm UIÁË¡£

ÁíÍ⣬µ±ÄãÔÚmanager½ÚµãÉÏÊäÈë

docker info


ʱ£¬Ä㽫»á¿´¼ûUIºÍNimbusÈÝÆ÷ÔÚͬһ̨»úÆ÷ÉÏÔËÐУ¬¶øSwarm¹ÜÀíÆ÷ºÍ¼à¿ØÈÝÆ÷ÔòÔÚ²»Í¬µÄ»úÆ÷ÉÏÔËÐС£

ÔÙ×öÒ»´Î£º×¼±¸Ò»¸ö¾µÏñ

ºÃ£¬ÏÖÔÚÈÃÎÒÃÇÀ´¿´Ò»±éÏêϸµÄ²½Ö衣ΪÁ˱ÜÃâÖØ¸´µÄ²½Ö裬ÎÒÃÇÖ»ÔÚһ̨»úÆ÷ÉϽøÐÐÕâЩ׼±¸¹¤×÷£¬È»ºó¹Ø»ú²¢¿ìÕÕ¡£½Ó×ÅÎÒÃÇͨ¹ýÕâ¸ö¿ìÕÕ´´½¨ÆäËü»úÆ÷¡£

ÈÃÎÒÃÇ¿ªÊ¼°É£º

1.´´½¨Ubuntu 1£¬×÷ΪUbuntu 14.04·þÎñÆ÷£¬È»ºóͨ¹ýSSHÁ¬½ÓËü£¬Ö´ÐÐÏÂÁÐÓï¾ä°²×°Docker£º

sudo apt-get update && 
sudo apt-get install apt-transport-https ca-certificates 
&& sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 
--recv-keys 58118E89F3A912897C070ADBF76221572C52609D \
&& echo "deb https://apt.dockerproject.org/repo ubuntu-trusty main" | sudo tee -a /etc/apt/sources.list.d/docker.list \
&& sudo apt-get update && sudo apt-get purge lxc-docker && sudo apt-cache policy docker-engine \
&& sudo apt-get update -y && sudo apt-get install -y linux-image-extra-$(uname -r) apparmor docker-engine git make \
&& sudo usermod -aG docker $(whoami)


£¨¹ØÓÚDocker°²×°µÄϸÔò¿ÉÒÔ¿´ÕâÀ

ÓÉÓÚDockerÊÇͨ¹ýÒ»¸ökeyÎļþȥʶ±ð²»Í¬µÄdockerÊØ»¤½ø³ÌµÄ£¬Òò´ËÔÚ¿ìÕÕ֮ǰ£¬ÎÒÃÇҪֹͣdockerÊØ»¤½ø³Ì£¬É¾µôÕâ¸ökeyÎļþ£¨ÖØÆôDockerºó»áÉú³ÉÒ»¸öеÄKeyÎļþ£©£¬¹Ø»ú֮ǰ¼ÇµÃ¿ìÕÕ¡£

sudo service docker stop \
&& sudo rm /etc/docker/key.json


×¢Ò⣺Èç¹ûÄã²»ÔÚ¿ìÕÕ֮ǰɾµôÕâ¸öKeyÎļþ£¬ÔòËùÓиù¾ÝÕâ¸ö¾µÏñÉú³ÉµÄ»úÆ÷¶¼»áÓµÓÐͬÑùµÄʶ±ð·û£¬×îÖÕÄãµÄSwarm¼¯ÈºÒ»Æ¬Àǽ塣

3.×îºó£¬ÎÒÃÇÖ» ÐèÒªÓÃͬһ¸ö·½·¨×¼±¸Ò»¸ö»úÆ÷£¬Õâ¸ö»úÆ÷ÔÚÏ´ÎbootµÄʱºò»á³ÉΪSwarm worker¡£Îª´Ë£¬ÎÒÃÇÓÃÎı¾±à¼­Æ÷£¬ÀýÈçnano£¬´´½¨Ò»¸öÎļþ /etc/init.sh¡£

sudo nano /etc/init.sh

½Ó×Å£¬ÎÒÃǸ´ÖÆÏÂÁдúÂ룬²¢±£´æ£º

#!/bin/bash<br>
# first script argument: the servers in the ZooKeeper
ensemble:<br>
ZOOKEEPER_SERVERS=$1</p>
<p class="artcon"> # second script argument: the role of this node:<br>
# (&quot;manager&quot; for the Swarm manager node; leave
empty else)<br>
ROLE=$2</p>
<p class="artcon"> # the IP address of this machine:<br>
PRIVATE_IP=$(/sbin/ifconfig eth0 | grep 'inet addr:'
| cut -d: -f2 | awk '{ print $1}')</p>
<p class="artcon"> # define label for the manager node:<br>
if [[ $ROLE == &quot;manager&quot; ]];then LABELS=&quot;--label
server=manager&quot;;else LABELS=&quot;&quot;;fi<br>
# define default options for Docker Swarm:<br>
echo &quot;DOCKER_OPTS=\&quot;-H tcp://0.0.0.0:2375
\<br>
-H unix:///var/run/docker.sock \<br>
--cluster-advertise eth0:2375 \<br>
$LABELS \<br>
--cluster-store \<br>
zk://$ZOOKEEPER_SERVERS\&quot;&quot; \<br>
| sudo tee /etc/default/docker</p>
<p class="artcon"> # restart the service to apply new options:</p>
<p class="artcon"> sudo service docker restart</p>
<p class="artcon"> echo &quot;let's wait a little...&quot;<br>
sleep 30</p>
<p class="artcon"> # make this machine join the Docker Swarm cluster:<br>
docker run -d --restart=always swarm join --advertise=$PRIVATE_IP:2375
zk://$ZOOKEEPER_SERVERS<br>


4.ÏÖÔÚ£¬ÎÒÃÇÒª¹Ø»úÁË¡£

sudo shutdown -h now

½Ó×Å¿ìÕÕһϡ£

5.ÏÖÔÚ£¬Í¨¹ý¿ìÕյľµÏñ£¬Æô¶¯ÁíÍâÁ½Ì¨»úÆ÷£¨Ubuntu 2ºÍUbuntu 3£©¡£Ê¹ÓÃÏÂÃæµÄÓï¾ä×÷Ϊ³õʼ/×Ô¶¨Òå½Å±¾£º

#!/bin/bash<br>
/bin/bash /etc/init.sh \<br>
zk1.cloud,zk2.cloud,zk3.cloud<br>

×¢Ò⣺Èç¹ûÄãʹÓõÄÊÇOpenStack£¬ÉÏÊö½Å±¾¿ÉÒÔ¼ÓΪ×Ô¶¨Òå½Å±¾¡£µ«Èç¹ûÊÇAWS£¬ÔòÓ¦¼ÓΪÓû§Êý¾Ý¡£

6.ÖØÆôÒѾ­¿ìÕÕ¹ýµÄ»úÆ÷£¨Ubuntu 1£©£¬Á¬½Ó»úÆ÷£¬½Ó×ÅÖ´ÐÐÒÔÏ´úÂ룺

/bin/bash /etc/init.sh \<br>
zk1.cloud,zk2.cloud,zk3.cloud \<br>
manager<br>

Õâ»áÔÚ»úÆ÷ÉϽ¨Á¢Ò»¸öSwarm worker£¬²¢±ê֮ΪSwarm¹ÜÀíÆ÷¡£

7.¶ÔÓòÃû·þÎñÆ÷×öÈçÏÂÉèÖ㺽«ÁбíÖеĵÚÒ»¸öÓòÃû£¨zk1¡­£©Ö¸ÏòUbuntu1ÉϵĹÜÀíÆ÷£¬Ê£ÏµÄÁ½¸öÓòÃû£¨zk2¡­ºÍzk3¡­£©Ö¸ÏòÁíÍâÁ½Ì¨¸Õ¸ÕÆô¶¯µÄ»úÆ÷£¬¼´Ubuntu 2ºÍUbuntu 3¡£ÁíÍâҪȷ±£manager.swarm.baqend.comºÍmanager.swarm·Ö±ð±»½âÎöΪUbuntuµÄ¹«¿ªIPµØÖ·ºÍ˽ÓÐIPµØÖ·¡£

8.×îºó£¬Íê³É°²È«ÉèÖã¬Ê¹¶Ë¿Ú2181¡¢2888¡¢3888 £¨ZooKeeper£©¡¢2375 £¨Docker Swarm£©ºÍ6627 (Storm, Ô¶³ÌÍØÆË²¿Êð£©ÉϵĻúÆ÷¿ÉÒÔ»¥Ïà·ÃÎÊ¡£Èç¹ûÄãÏ£Íû¿ÉÒÔʵÏÖ´ÓÍⲿ·ÃÎÊStorm UI£¬ÄÇô»¹ÐèÒª¹«¿ªmanager.swarm.baqend.com:8080¡£

¼ûÖ¤Ææ¼£µÄʱ¿Ìµ½ÁË£¡

´´½¨Swarm¼¯Èº
Èç¹ûÒ»ÇÐ˳Àû£¬ÄÇôÄãÏÖÔÚÒѾ­ÓÐÁËÈý̨Ubuntu·þÎñÆ÷£¬Ã¿¸öÉÏÃæ¶¼ÔËÐÐÁËÒ»¸öDockerÊØ»¤½ø³Ì¡£¿ÉÒÔͨ¹ý˽ÓÐÍøÂçÖеÄzk1.cloudºÍmanager.swarm·ÃÎÊUbuntu 1£¬»òÕßÒ²¿ÉÒÔ´ÓÍⲿͨ¹ýmanager.swarm.baqend.com£¨ÖÁÉÙÔÚ8080¶Ë¿Ú£©·ÃÎÊ¡£ÎÒÃÇÒ»Ö±ÔÚÕą̂»úÆ÷ÉÏÕÛÌÚ£¬²¢ÇÒ£¬´ÓÏÖÔÚ¿ªÊ¼£¬ÕâÊÇÎÒÃÇΨһÐèÒª·ÃÎʵĻúÆ÷¡£ÎªÁ˱£Ö¤Swarm½ÚµãÖ®¼äµÄЭµ÷ͨ³©£¬ÎÒÃÇÐèÒªÅäÖÃZooKeeper ensembleºÍSwarm¹ÜÀíÆ÷¡£

1.ͨ¹ýSSHÁ¬½ÓUbuntu1£¬½Ó×Å¿ìËÙ¼ì²éÒ»±é¡£Èç¹ûDocker°²×°ÕýÈ·£¬ÔËÐÐÏÂÁдúÂë¿ÉÒÔÏÔʾ³öÒ»¸öËùÓÐÔËÐÐÖеÄDockerÈÝÆ÷µÄÁÐ±í£¨Ö»ÓÐÕë¶ÔSwarmµÄ£©£º

docker ps

2.ÏÖÔÚÎÒÃÇ¿ÉÒÔ°´ÏÂÃæµÄ·½·¨ÔÚÿ̨»úÆ÷ÉÏÆô¶¯Ò»¸öZooKeeper½Úµã£º

docker -H tcp://zk1.cloud:2375 run -d --restart=always 
                          \
-p 2181:2181 \
-p 2888:2888 \
-p 3888:3888 \
-v /var/lib/zookeeper:/var/lib/zookeeper \
-v /var/log/zookeeper:/var/log/zookeeper \
--name zk1 \
baqend/zookeeper zk1.cloud,zk2.cloud,zk3.cloud 1
docker -H tcp://zk2.cloud:2375 run -d --restart=always \
-p 2181:2181 \
-p 2888:2888 \
-p 3888:3888 \
-v /var/lib/zookeeper:/var/lib/zookeeper \
-v /var/log/zookeeper:/var/log/zookeeper \
--name zk2 \
baqend/zookeeper zk1.cloud,zk2.cloud,zk3.cloud 2
docker -H tcp://zk3.cloud:2375 run -d --restart=always \
-p 2181:2181 \
-p 2888:2888 \
-p 3888:3888 \
-v /var/lib/zookeeper:/var/lib/zookeeper \
-v /var/log/zookeeper:/var/log/zookeeper \
--name zk3 \
baqend/zookeeper zk1.cloud,zk2.cloud,zk3.cloud 3

ͨ¹ýÃ÷ȷ˵Ã÷-H¡­¡­²ÎÊý£¬ÎÒÃÇ¿ÉÒÔÔÚ²»Í¬µÄÖ÷»úÉÏÆô¶¯ZooKeeperÈÝÆ÷¡£-pÃüÁî´ò¿ªZooKeeperĬÈÏÐèÒªµÄÄÇЩ¶Ë¿Ú¡£Á½¸ö-vÃüÁîͨ¹ý½«ZooKeeperʹÓõÄÎļþ¼ÐÓ³Éäµ½¶ÔÓ¦µÄÖ÷»úÎļþ¼Ð£¬¿ÉÒÔÔÚ·¢ÉúÈÝÆ÷´íÎóµÄÇé¿öÈÔÈ»±£³ÖÁ¬¹áÐÔ¡£ÒÔ¶ººÅ·Ö¸ôµÄÖ÷»úÃûÁбí֪ͨZooKeeperÕâÒ»¼¯ºÏÖÐÓÐÄÄЩ·þÎñÆ÷¡£¼¯ºÏÖеÄÿ¸ö½Úµã¶¼²»ÀýÍ⡣ΨһµÄ±äÁ¿¾ÍÊÇZooKeeperµÄID£¨µÚ¶þ¸ö²ÎÊý£©£¬ÒòΪËü¶Ôÿ¸öÈÝÆ÷¶¼ÊDz»Ò»ÑùµÄ¡£

Äã¿ÉÒÔʹÓÃÒÔÏÂÃüÁîÐÐÀ´¼ì²éZooKeeperÊÇ·ñÒ»ÇÐÕý³££º

docker -H tcp://zk1.cloud:2375 exec -it zk1 bin/zkServer.sh 
                          status && \
docker -H tcp://zk2.cloud:2375 exec -it zk2 bin/zkServer.sh status && \
docker -H tcp://zk3.cloud:2375 exec -it zk3 bin/zkServer.sh status

Èç¹ûÄãµÄ¼¯ÈºÒ»ÇÐÕý³££¬Ã¿¸ö½Úµã¶¼»á»ã±¨ËüÃÇÊÇÖ÷½Úµã»¹ÊǴӽڵ㡣

Now it¡¯s time to start the Swarm manager:

 

ÏÖÔÚÊÇ¿ªÆôSwarm¹ÜÀíÆ÷µÄʱºòÁË£º

docker run -d --restart=always \
--label role=manager \
-p 2376:2375 \
swarm manage zk://zk1.cloud,zk2.cloud,zk3.cloud


ÏÖÔÚSwarm¼¯ÈºÕýÔÚÔËÐС£µ«ÊÇÎÒÃDZØÐë°ÑÕâÒ»µã¸æËßDocker¿Í»§¶Ë¡£×îºóÄãÖ»Ðë±£Ö¤Ö®ºóËùÓеÄDockerÔËÐÐÓï¾ä¶¼Ö¸ÏòSwarm¹ÜÀíÆ÷µÄÈÝÆ÷£¨Ëü»á¸ºÔðÅų̣©£¬²¢ÇÒ²»Î¥·´±¾µØDockerÊØ»¤½ø³Ì¡£

cat << EOF | tee -a ~/.bash_profile
# this node is the master and therefore should be able to talk to the Swarm cluster:
export DOCKER_HOST=tcp://127.0.0.1:2376
EOF
``` export DOCKER_HOST=tcp://127.0.0.1:2376

 


ÉÏÃæÕâ¶Î»áÁ¢¼´Ö´ÐУ¬²¢ÇÒ±£Ö¤Ï´ÎÎÒÃǵǼ»úÆ÷µÄʱºò±»ÔÙ´ÎÖ´ÐС£


<div class="se-preview-section-delimiter"></div>

##½¡¿µ¶È¼ì²é

ÏÖÔÚÒ»Çж¼±»Æô¶¯ÔËÐÐÁË¡£¼üÈë

<div class="se-preview-section-delimiter"></div>
docker info


¼ì²éÒ»ÏÂmanager½ÚµãÉϵļ¯Èº×´Ì¬¡£Äã»á¿´µ½3¸öÔËÐÐÖеÄworker£¬ÀàËÆÕâÑù£º

<div class="se-preview-section-delimiter"></div>
Nodes: 3
docker1: zk1.cloud:2375
©¸ Status: Healthy
©¸ Containers: 3
©¸ Reserved CPUs: 0 / 1
©¸ Reserved Memory: 0 B / 2.053 GiB
©¸ Labels: executiondriver=native-0.2, kernelversion=3.13.0-40-generic, operatingsystem=Ubuntu 14.04.1 LTS, server=manager, storagedriver=devicemapper
©¸ Error: (none)
©¸ UpdatedAt: 2016-04-03T15:39:59Z
docker2: zk2.cloud:2375
©¸ Status: Healthy
©¸ Containers: 2
©¸ Reserved CPUs: 0 / 1
©¸ Reserved Memory: 0 B / 2.053 GiB
©¸ Labels: executiondriver=native-0.2, kernelversion=3.13.0-40-generic, operatingsystem=Ubuntu 14.04.1 LTS, storagedriver=devicemapper
©¸ Error: (none)
©¸ UpdatedAt: 2016-04-03T15:39:45Z
docker3: zk3.cloud:2375
©¸ Status: Healthy
©¸ Containers: 2
©¸ Reserved CPUs: 0 / 1
©¸ Reserved Memory: 0 B / 2.053 GiB
©¸ Labels: executiondriver=native-0.2, kernelversion=3.13.0-40-generic, operatingsystem=Ubuntu 14.04.1 LTS, storagedriver=devicemapper
©¸ Error: (none)
©¸ UpdatedAt: 2016-04-03T15:40:15Z



×îÖØÒªµÄÊÇÿ¸ö½ÚµãµÄStatus: HealthyÄÇÒ»ÐС£Èç¹ûÄã·¢ÏÖ³öÏÖÁËÆäËüµÄ״̬£¬ÀýÈçStatus: Pending£¬»òÕßÓеĽڵãûÓÐÏÔʾ³öÀ´£¬ÄÇô¼´Ê¹ÆäËüµØ·½»¹Ã»Óб¨´í£¬Ò²Ó¦¸ÃÓÃÒÔÏÂÃüÁîÊÔ×ÅÖØÆô¹ÜÀíÈÝÆ÷£¬

<div class="se-preview-section-delimiter"></div>
docker restart $(docker ps -a --no-trunc --filter "label=role=manager" | awk '{if(NR>1)print $1;}')


È»ºóÔÙ¼ì²éÒ»´Î£¨Õâ¸ö²Ù×÷¿ÉÄÜ»áÒý·¢Ò»¸ö´íÎóÐÅÏ¢£»ÎÞÊÓËü£©¡£

<div class="se-preview-section-delimiter"></div>


##´´½¨Storm¼¯Èº


ÏÖÔÚSwarmÒѾ­ÔËÐÐÆðÀ´ÁË£¬Ä㽫Ҫ´´½¨Ò»¸ö¸²¸ÇÍøÂçÀ´¿çÔ½ËùÓеÄSwarm½Úµã£¬Îªµ¥¶ÀµÄStorm×齨ÔËת¶à¸öÈÝÆ÷¡£¾¡¹ÜSupervisor½Úµã£¨¼´Storm workers£©É¢²¼ÓÚSwarm¼¯ÈºÖеÄËùÓнڵ㣬NimbusºÍUI»áÔÚmanager½ÚµãÉÏ£¬Ã¿Ì¨·þÎñÆ÷ÉÏÒ»¸ö¡£


1.ÏÈ´´½¨¸²¸ÇÍøÂçstormnet£º

<div class="se-preview-section-delimiter"></div>
docker network create --driver overlay stormnet


È»ºóͨ¹ýDockerÀ´¼ì²éstormnetÊÇ·ñ´æÔÚ£º


<div class="se-preview-section-delimiter"></div>
docker network ls

2.ÏÖÔÚÒ»¸öÒ»¸öµØÆô¶¯Storm×é¼þ¡£Ã¿¸öStormÏà¹ØµÄÈÝÆ÷»áÓÐÒ»¸öcluster=storm±ê¼Ç£¬ÕâÑùÄãÔÚºóÃæÉ±ËÀÕû¸öStorm¼¯ÈºÊ±£¬²»»á´íɱÆäËüÈÝÆ÷¡£


Ê×ÏÈ£¬Æô¶¯UI

<div class="se-preview-section-delimiter"></div>
docker run \
-d \
--label cluster=storm \
--label role=ui \
-e constraint:server==manager \
-e STORM_ZOOKEEPER_SERVERS=zk1.cloud,zk2.cloud,zk3.cloud \
--net stormnet \
--restart=always \
--name ui \
-p 8080:8080 \
baqend/storm ui \
-c nimbus.host=nimbus


½ÓÏÂÀ´ÊÇNimbus£º

<div class="se-preview-section-delimiter"></div>
docker run \
-d \
--label cluster=storm \
--label role=nimbus \
-e constraint:server==manager \
-e STORM_ZOOKEEPER_SERVERS=zk1.cloud,zk2.cloud,zk3.cloud \
--net stormnet \
--restart=always \
--name nimbus \
-p 6627:6627 \
baqend/storm nimbus \
-c nimbus.host=nimbus


ΪÁËÈ·±£ÕâЩÔÚmanager½ÚµãÉÏÔËÐУ¬ÎÒÃǼÓÈëÒ»¸öÏÞÖÆÌõ¼þ£ºconstraint:server==manager¡£


3.ÄãÏÖÔÚ¿ÉÒÔ·ÃÎÊStorm UIÁË£¬¾ÍºÃÏñËüÊÇÔÚmanager½ÚµãÉÏÔËÐÐÒ»Ñù£º¼ÙÈçÄãµÄmanager½ÚµãÓиö¹«¿ªIP²¢ÇÒÆä¶Ë¿Ú8080¿ª·Å£¬Äã¾Í¿ÉÒÔÓÃÁ´½Ó[http://manager.swarm.baqend.com:8080](http://t.umblr.com/redirect?z=http://manager.swarm.baqend.com:8080&t=YWFkOTgxYWRjYzIwYTllYTJkNjA0NTcxYjU4MWZmMWY4NzExMGNmMSxoVEVjU3FkZA==)ͨ¹ýä¯ÀÀÆ÷À´·ÃÎÊStorm¼¯Èº¡£µ«ÊÇĿǰ»¹Ã»ÓÐÔËÐÐÈκÎsupervisor½Úµã¡£


4.ÔËÐÐÒÔÏÂÓï¾äÈý´Î£¬À´Æô¶¯Èý¸ösupervisor£º

<div class="se-preview-section-delimiter"></div>
docker run \
-d \
--label cluster=storm \
--label role=supervisor \
-e affinity:role!=supervisor \
-e STORM_ZOOKEEPER_SERVERS=zk1.cloud,zk2.cloud,zk3.cloud \
--net stormnet \
--restart=always \
baqend/storm supervisor \
-c nimbus.host=nimbus \
-c supervisor.slots.ports=[6700,6701,6702,6703]


ÒòΪÎÒÃÇÎÞËùν¾ßÌåÆô¶¯ÄÄÀïµÄsupervisor½Úµã£¬ÕâÀïÎÒÃDz»ÓüÓÈëÈκÎÏÞÖÆÌõ¼þ»òÈÝÆ÷Ãû¡£µ«ÊÇ£¬ÎªÁË·Àֹͬһ̨»úÆ÷ÉϵÄÓÐÁ½¸ösupervisor±»Æô¶¯£¬ÎÒÃÇÓÃÁËÒ»¸ö**affinity±ê¼Ç**£ºaffinity:role!=supervisor¡£Èç¹ûÄãÒªÓøü¶àµÄsuperviorÈÝÆ÷£¬¾ÍµÃÌí¼Ó¸ü¶àµÄSwarm worker½Úµã£¨Ubuntu 4¡¢Ubuntu 5µÈµÈ£©¡£


5.¿´Ò»ÑÛStorm UI£¬È·±£ÓÐÈý¸öSupervisorÔÚÔËÐС£

<div class="se-preview-section-delimiter"></div>


##£¨Ô¶³Ì£©ÍØÆË²¿Êð


¿ÉÒÔͨ¹ýÓëmanagerÖ÷»úÔÚÍ¬Ò»ÍøÂçÖеÄÈÎÒâһ̨װÓÐDockerÊØ»¤½ø³ÌµÄ·þÎñÆ÷À´²¿ÊðÍØÆËÍøÂç¡£ÔÚÏÂÃæµÄ´úÂëÖУ¬¼ÙÉèÄãĿǰʹÓõÄĿ¼ÖУ¬ÍØÆËfatjarÊÇÒ»¸öÃûΪtopology.jarµÄÎļþ¡£

<div class="se-preview-section-delimiter"></div>
docker -H tcp://127.0.0.1:2375 run \
-it \
--rm \
-v $(readlink -m topology.jar):/topology.jar \
baqend/storm \
-c nimbus.host=manager.swarm \
jar /topology.jar \
main.class \
topologyArgument1 \
topologyArgument2


**×¢Ò⣺**Õâ¸öÃüÁî»áÉú³öÒ»¸öDockerÈÝÆ÷£¬²¿ÊðÍØÆË£¬½Ó×Åɾ³ýÈÝÆ÷¡£ÎÒÃÇÓÃ-H tcp://127.0.0.1:2375²ÎÊýÀ´È·±£ÈÝÆ÷ÊÇÔÚÄ㵱ǰʹÓõĻúÆ÷ÉÏÆô¶¯µÄ¡£Èç¹ûÈÃDocker Swarm×Ô¼ºÀ´±àÅÅ£¬²¿Êð¾Í¿ÉÄÜ»áʧ°Ü£¬ÒòΪÔÚÉú³ÉÈÝÆ÷µÄÖ÷»úÉÏ¿ÉÄÜÕÒ²»µ½±ØÒªµÄÍØÆËÎļþ¡£

ÁíÍ⣬readlink -m topology.jar»áΪtopology.jarÉú³ÉÒ»¸ö¾ø¶Ô·¾¶£¬ÒòΪ²¢²»Ö§³ÖÏà¶Ô·¾¶¡£µ«ÊÇÄãÒ²¿ÉÒÔÖ±½ÓÌṩһ¸ö¾ø¶Ô·¾¶¡£

<div class="se-preview-section-delimiter"></div>

##Killing A Topology

<div class="se-preview-section-delimiter"></div>

 

 

##ÖÕÖ¹Ò»¸öÍØÆË


¿ÉÒÔͨ¹ýÓëStorm web UI½»»¥´Ó¶øÖÕÖ¹Ò»¸öÍØÆË£¬»òÕßÒ²¿ÉÒÔͨ¹ýÏÂÃæµÄ·½Ê½£¬¼ÙÉèÕýÔÚÔËÐеÄÍØÆË½Ð×örunningTopology£º

<div class="se-preview-section-delimiter"></div>
docker run \
-it \
--rm \
baqend/storm \
-c nimbus.host=manager.swarm \
kill runningTopology



´Ë´¦²¢²»ÐèÒªÖ÷»ú²ÎÊý-H ...£¬ÒòΪÉÏÊöÃüÁîÊǶÀÁ¢µÄ£¬²¢²»ÒÀÀµÈκÎÎļþ¡£

<div class="se-preview-section-delimiter"></div>

 

##¹ØµôStorm¼¯Èº

ÓÉÓÚÿ¸öÓëStormÏà¹ØµÄÈÝÆ÷¶¼ÓÐÒ»¸öcluster=storm±êÇ©£¬Äã¿ÉÒÔÓÃÏÂÊöÓï¾äÖÕÖ¹ËùÓеÄÈÝÆ÷£º

div class="se-preview-section-delimiter"></div>
docker rm -f $(docker ps -a --no-trunc --filter "label=cluster=storm" | awk '{if(NR>1)print $1;}')
¡°`

²»ÒªÍü¼Ç°²È«ÐÔ£¡

ÎÒÃÇÔڴ˽̳ÌÖÐʾ·¶ÁËÈçºÎÔÚDockerÉÏÓöà½ÚµãµÄZooKeeper¼¯ÎªÁ˸߿ÉÓÃÐÔºÍÈÝ´íÐÔÔËÐÐÒ»¸ö·Ö²¼Ê½Storm¼¯Èº¡£ÎªÁ˲»ÈÃÕâ¸ö½Ì³Ì¹ý·Ö¸´ÔÓ£¬ÎÒÃÇÌø¹ýÁËÕë¶ÔTLSÅäÖÃDocker SwarmµÄ²¿·Ö¡£Èç¹ûÄã´òËã°ÑDocker SwarmÓÃÓڹؼüµÄÒµÎñÓ¦ÓÃÖУ¬Äã±ØÐëÔÚÕâ¸ö·½Ãæ¶àÏÂЩ¹¦·ò¡£

BaqendÊÇÔõÑùʹÓÃApache StormµÄ£¿

ÎÒÃÇÀûÓÃStormµÄÄÜÁ¦À´ÌṩµÍÑÓ³ÙµÄÁ÷²éѯºÍ²éѯ»º´æ£º

Á¬Ðø²éѯ

Èç¹ûÄãµÄAPPÔÊÐíÁ¬Ðø²éѯ£¬Apache StormÄܽÓÊÜÄãµÄÁ¬Ðø²éѯºÍËùÓÐÄãµÄдÈë²Ù×÷£¬²¢ÇÒ½«ËüÃÇÏà±È¶Ô£ºÃ¿µ±Ð´Ò»¸ö¶ÔÏóʱ£¬ËùÓÐ×¢²áµÄÁ¬Ðø²éѯ¶¼ÓëÖ®±È¶Ô¡£¼ÈÈ»StormÒ»Ö±ÔÚ¸ú×ÙËùÓвéѯµÄ½á¹û£¬Ëü¾ÍÄÜ·¢ÏÖеÄÖ÷»ú»òÕßÐÂµÄÆ¥Åä»ò²»Æ¥ÅäµÄÇé¿ö£¬²¢ÇÒÔÚ±ä¸ü¸Õ·¢ÉúµÄʱºò֪ͨÄã¡£

²éѯ»º´æ

¶ÔÓÚ²éѯ»º´æÀ´Ëµ£¬ÎÒÃÇÓÃÕâЩ֪ͨÀ´Ö÷¶¯Èûº´æÊ§Ð§£ºBaqend CloudÓÃÒ»¶ÎºÏÀí³¤¶ÈµÄTTLÀ´»º´æÒ»¸ö²éѯ½á¹û£¬Ò»µ©·¢Éú±ä¸ü¾Í×Ô¶¯Èûº´æµÄ²éѯ½á¹ûÎÞЧ¡£µÃÒæÓÚStorm£¬ÎÒÃÇµÄÆ¥ÅäÍøÂçÑÓ³Ù½öΪ¼¸ºÁÃ룬Ïà½ÏÒÔÍù£¬Êý¾ÝµÄ»ñÈ¡ËÙ¶ÈÏÔÖøÌá¸ß¡£

   
2418 ´Îä¯ÀÀ       27
Ïà¹ØÎÄÕÂ

»ùÓÚEAµÄÊý¾Ý¿â½¨Ä£
Êý¾ÝÁ÷½¨Ä££¨EAÖ¸ÄÏ£©
¡°Êý¾Ýºþ¡±£º¸ÅÄî¡¢ÌØÕ÷¡¢¼Ü¹¹Óë°¸Àý
ÔÚÏßÉ̳ÇÊý¾Ý¿âϵͳÉè¼Æ ˼·+Ч¹û
 
Ïà¹ØÎĵµ

GreenplumÊý¾Ý¿â»ù´¡Åàѵ
MySQL5.1ÐÔÄÜÓÅ»¯·½°¸
ijµçÉÌÊý¾ÝÖÐ̨¼Ü¹¹Êµ¼ù
MySQL¸ßÀ©Õ¹¼Ü¹¹Éè¼Æ
Ïà¹Ø¿Î³Ì

Êý¾ÝÖÎÀí¡¢Êý¾Ý¼Ü¹¹¼°Êý¾Ý±ê×¼
MongoDBʵս¿Î³Ì
²¢·¢¡¢´óÈÝÁ¿¡¢¸ßÐÔÄÜÊý¾Ý¿âÉè¼ÆÓëÓÅ»¯
PostgreSQLÊý¾Ý¿âʵսÅàѵ
×îл¼Æ»®
DeepSeekÔÚÈí¼þ²âÊÔÓ¦ÓÃʵ¼ù 4-12[ÔÚÏß]
DeepSeek´óÄ£ÐÍÓ¦Óÿª·¢Êµ¼ù 4-19[ÔÚÏß]
UAF¼Ü¹¹ÌåϵÓëʵ¼ù 4-11[±±¾©]
AIÖÇÄÜ»¯Èí¼þ²âÊÔ·½·¨Óëʵ¼ù 5-23[ÉϺ£]
»ùÓÚ UML ºÍEA½øÐзÖÎöÉè¼Æ 4-26[±±¾©]
ÒµÎñ¼Ü¹¹Éè¼ÆÓ뽨ģ 4-18[±±¾©]

APPÍÆ¹ãÖ®ÇÉÓù¤¾ß½øÐÐÊý¾Ý·ÖÎö
Hadoop Hive»ù´¡sqlÓï·¨
Ó¦Óö༶»º´æÄ£Ê½Ö§³Åº£Á¿¶Á·þÎñ
HBase ³¬Ïêϸ½éÉÜ
HBase¼¼ÊõÏêϸ½éÉÜ
Spark¶¯Ì¬×ÊÔ´·ÖÅä

HadoopÓëSpark´óÊý¾Ý¼Ü¹¹
HadoopÔ­ÀíÓë¸ß¼¶Êµ¼ù
HadoopÔ­Àí¡¢Ó¦ÓÃÓëÓÅ»¯
´óÊý¾ÝÌåϵ¿ò¼ÜÓëÓ¦ÓÃ
´óÊý¾ÝµÄ¼¼ÊõÓëʵ¼ù
Spark´óÊý¾Ý´¦Àí¼¼Êõ

GE Çø¿éÁ´¼¼ÊõÓëʵÏÖÅàѵ
º½Ìì¿Æ¹¤Ä³×Ó¹«Ë¾ Nodejs¸ß¼¶Ó¦Óÿª·¢
ÖÐÊ¢Òæ»ª ׿Խ¹ÜÀíÕß±ØÐë¾ß±¸µÄÎåÏîÄÜÁ¦
ijÐÅÏ¢¼¼Êõ¹«Ë¾ PythonÅàѵ
ij²©²ÊITϵͳ³§ÉÌ Ò×ÓÃÐÔ²âÊÔÓëÆÀ¹À
ÖйúÓÊ´¢ÒøÐÐ ²âÊÔ³ÉÊì¶ÈÄ£Ðͼ¯³É(TMMI)
ÖÐÎïÔº ²úÆ·¾­ÀíÓë²úÆ·¹ÜÀí