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

1Ôª 10Ôª 50Ôª





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



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Model Center   Code  
»áÔ±   
   
 
     
   
 ¶©ÔÄ
  ¾èÖú
OpenStackÓëKubernetesÈںϼܹ¹ÏµÄÓÅ»¯Êµ¼ù

 
À´Ô´£ºÖÐÎÄÉçÇø ·¢²¼ÓÚ£º 2017-7-12
  3055  次浏览      32
 

Èç¹ûÄãÏëʹÓÃKubernetesÀ´¹¹½¨ÄãµÄÓ¦ÓóÌÐò»·¾³£¬Í¨¹ýOpenStackÀ´²¿ÊðKubernetesÆä¼Ü¹¹ÊÇÒ»ÖÖÍÆ¼öµÄ·½Ê½£¬±¾ÎĽ«Óë´ó¼Ò·ÖÏíKubernetesÔÚOpenStackÉϵıàÅÅ·½Ê½ÓëÆäÓÅ»¯·½·¨¡£

ÒÔϽéÉÜ5ÖÖÕë¶ÔKubernetesµÄµ÷ÓÅ·½Ê½£¬Ï£Íû¶Ô´ó¼ÒÓÐËù°ïÖú¡£

½ÓÏÂÀ´ÈÃÎÒÃǴӼܹ¹·ÖÎö¿ªÊ¼£¬Á˽âΪʲôÐèÒªÕâÑùµÄ¼Ü¹¹´æÔÚ£¬½â¾öʲôÑùµÄÎÊÌâ¡£½Ó×ÅÁ˽âÓÅ»¯µÄÄ¿µÄ£¬ÎÒÃÇÉîÈë̽ÌÖ¼¸¸öÓÅ»¯·½Ê½ÓëÑ¡Ïî¡£½áºÏ²¿·Öʵ¼Ê°¸Àý»ò²âÊÔÀ´ÓÅ»¯ºóµÄ¸ÄÉÆ¡£×îºó̽ÌÖºóÐø·¢Õ¹Óë¼Æ»®¡£

¼Ü¹¹·ÖÎö

ÈÝÆ÷µÄ´æÔÚÊÇΪÁ˽â¾öÎÞ״̬(stateless)µÄ·þÎñÕ¼ÓÃϵͳ×ÊÔ´µÄÎÊÌâ¡£Õë¶ÔÍøÂçÓ¦ÓóÌÐòÀ´Ëµ£¬¼´ÄܼõÉÙÐéÄ⻯Ëù´øÀ´µÄÏûºÄ£¬³ÉΪЧÄÜÓÅ»¯µÄÒ»´óÁÁµã¡£ÔÚÈÝÆ÷Ö®ÉÏÓ¦ÓóÌÐòÈÔÐèÓë¶à¸öÈÝÆ÷¹²´æ£¬ÉõÖÁ»¥ÏàͨÐÅ¡£

Òò´ËKubernetes¡¢Mesos¡¢SwarmµÈÈÝÆ÷±àÅÅ·þÎñ¾Í³ÉΪÐÂÊÀ´ú¼Ü¹¹µÄ³è¶ù¡£ Kubernetes¸ÅÄî¼Ü¹¹ÈçÏÂͼËùʾ£º

ÔÚKubernetes¼Ü¹¹ÏÂ,ÌṩdockerÈÝÆ÷ÍøÂçÓëÖÜÆÚ¹ÜÀí¡£Í¨¹ýCOE£¨Container Orchestration Engine£©¹ÜÀíµÄÈÝÆ÷Ⱥ£¬²»µ«ÏíÊܱãÀû£¬Ò²ÓµÓпìËÙ±àÅÅÓ¦ÓóÌÐò¼Ü¹¹µÄÓÅÊÆ¡£

µ«Í¨¹ýÏÂͼ£¨Cloud Native Landscape by Cloud Native Computing Foundation£©¿ÉÒÔÈÏʶµ½£ºKubernetes»¹ÐèÒª½¨Á¢ÔÚÒ»¸ö¿ÉÒÔÁ¼ºÃµØ³ÐÔØÈç´Ë¶àÑùÐÔ·þÎñµÄ»ù´¦½¨É裨¼´IaaS£©£¬¶øÔÚͼÖÐ×îµ×ϵĻù´¡¼Ü¹¹£¨Infrastructure£©Äã»áÑ¡ÔñÄǸöƽ̨£¿

ÒÔÏÖ½ñµÄÔÆÓ¦Óã¬ÏàÐŶàÊý˽ÓÐÔÆ»áÑ¡ÔñÒÔOpenStack×÷Ϊ»ù´¡¿ò¼Ü£¬¹«ÓÐÔÆÒ²Óв»ÉÙ°¸ÀýʹÓÃOpenStack¡£¶øÔÚÑ¡ºÃµÄ¿ò¼ÜÉϳÐÔØÏàÓ¦µÄÓ¦ÓóÌÐò¡£

ͨ¹ýÉÏÃæÒ»Æð˼¿¼³öµÄ×éºÏ£¬Èô¸÷λÒѾ­ÊìϤMagnum¿ªÔ´ÏîÄ¿»òÊÇÆóÒµKubernetes²úÆ·£¨ÀýÈçESContainer£©£¬ÆäÌṩÄãÔÚOpenStack¼Ü¹¹ÉÏÏëÒªµÄKubernetes¿ò¼ÜµÄ·½Ê½¡£

ÁíÍâ´Ë¼Ü¹¹Ò²»¹Óм¸¸öÓŵ㹩´ó¼Ò²Î¿¼£ºÍ¨¹ý´Ë¼Ü¹¹¿ÉÒÔ´ï³ÉKubernetesÈ«×Ô¶¯»¯¹ÜÀí£¬Í¨¹ý´Ë¼Ü¹¹¿ÉÒÔÌṩÍêÕû¶à×â»§¿ò¼Ü¡£

ÔÚÕâÑùµÄÕûÌå¼Ü¹¹¹æ»®Ï£¬¿ÉÒÔÉîÈëÌÖÂÛÒÔϼ¸´óÖØµã£ºÍøÂç¡¢ÔËËã¡¢´¢´æÓë±àÅÅ¡£Ïë±Ø´ó¼Òͨ¹ýÖ®Ç°ÍøÂçµ÷Óŵĸɻõ£¨http://www.easystack.cn/en/technical_share/748/ £©ÓëNUMAÏà¹Ø´¦ÀíÆ÷¼¼Êõ¸É»õ£¨http://www.easystack.cn/en/ technical_share/700/ )ÒѾ­¶Ô×Ô¼ºµÄ»·¾³µÄ»ù´¡¼Ü¹¹ÓÐÏ൱µÄÁ˽⣬ÉõÖÁÒѾ­×ÅÊÖ½øÐÐÓÅ»¯¡£

½ÓÏÂÀ´ÕýÊÇÎÄÕÂÏëҪͻÏÔµÄÖØµã£¬ÈçºÎ´Ó±àÅÅÏÂÊÖÈÃOpenStackÉϵÄKubernetes¼ÓËÙ£¿ÈçºÎµ÷ÓÅ£¿µ±ÄãÒѾ­Ç§·½°Ù¼ÆÓÅ»¯ÁËÄãµÄÓ¦ÓóÌÐòʱ£¬»¹ÓÐÄÇЩ·½Ê½¿ÉÒÔÈÃЧÄܸüÉÏÒ»²ãÂ¥£¿

ÓÅ»¯ÏîÄ¿-µ÷ÓűàÅÅ

±àÅÅÏîÄ¿¶ÔÓÚÔÚOpenStack¹¹½¨ÈκÎÓ¦ÓóÌÐò¶¼¾ßÓÐÖØÒª½ÇÉ«£¬ÔÚÏÂͼ£¨MagnumµÄ¼Ü¹¹Í¼£©ÖпÉÒÔ¿´¼ûHeat (±àÅÅ·þÎñ£©¶ÔÓÚÕûÌåÁ÷³ÌµÄÖØÒªÐÔ¡£Í¨¹ýHeat½Å±¾¿ÉÒÔ²¼Êð¼¯ÈºÓë°²×°ÈκÎÓ¦ÓóÌÐòÓÚ¼¯ÈºÉÏ¡£Òò´ËÑ¡Ôñµ÷ÓÅHeat¾ø¶ÔÊÇÖµµÃ²Î¿¼µÄÑ¡Ïî¡£

µ÷ÓÅ1:¿ªÆôconvergenceģʽ

ÈôÄãµÄOpenStack»·¾³ÒѾ­µ½ÁËMitaka»òÊÇÒÔÉϰ汾¡£Ôò½¨ÒéÄ㽫convergenceģʽ´ò¿ª£¨Èô°æ±¾ÎªNewtonÒÔÉϰ汾£¬Ô¤ÉèÒѾ­ÊÇ¿ªÆô£©¡£´ò¿ª·½Ê½ÎªÔÚ`/etc/heat/heat.conf`µµ°¸Ï¼ÓÈë`convergence_engine = True`µÄÑ¡Ïî¡£

¿ªÆôºó¶ÔÓÚ²Ù×÷²»»áÓÐÈκθı䣬ʹÓÃÕßÈÔ¿ÉÒÔÓÃÔ­ÏȵIJÙ×÷ģʽÓë½Å±¾½¨Á¢±àÅÅ×ÊÔ´¡£Ô­ÏÈÒѾ­½¨Á¢µÄ±àÅÅ×ÊÔ´Ôò»áά³ÖÔÚ·ÇConvergenceģʽϼÌÐøÔËÐС£¶øÐ½¨Á¢µÄ±àÅÅ×ÊÔ´Ôò»áÒÔConvergenceģʽάÔË¡£

ÏÂͼΪ±È½Ï½¨Á¢100¸ö¼òµ¥µÄ×ÊÔ´£¬200¸ö¼òµ¥µÄ×ÊÔ´£¬Óë100¸ö¸´ÔÓ×ÊԴʱÔÚConvergenceģʽ»òÊÇ·ÇConvergenceģʽϵÄЧÄÜ¡£¿ÉÒԹ۲쵽£¬Ô½¸´ÔÓµÄ×ÊÔ´Ô½ÐèÒª¸ü¶àµÄʱ¼äÀ´Íê³É£¬Ô½ÈÝÒ×ÔÚConvergenceģʽÏ»ñµÃ´ó·ùµÄ¸ÄÉÆ¡£

ÓÈÆäÊÇÕë¶ÔÏñÊÇKubernetesµÈÐèÒª½¨Á¢¶ą̀Nova Instance (ÐéÄâ»ú»òÂã»ú)µÄ×´¿öÏ£¬Í¨¹ýģʽת»»¶ø»ñµÃµÄЧÂʸÄÉÆÀíÓ¦¸üÏÔÖø(KubernetesÒ»°ã¼Ü¹¹ÊôÓÚ¸´ÔӶȽϸߵÄ×ÊÔ´£¬Òò´Ë¿ÉÒԲο¼Í¼Öи´ÔӶȸߵÄ×´¿ö±È½Ï±í)¡£

ʲôÊÇConvergenceģʽ£¿

̸µ½ÕâÀӦ¸ÃÓв»ÉÙ¿ª·¢Õß¶ÔConvergenceÏ൱İÉú¡£ Convergence±ÈÆð¾É¼Ü¹¹ÔÚ·þÎñÖ®¼äµÄ²îÒìÖ»ÓÐÐÂÔöÁËÒ»¸öworker·þÎñ¡£µ«ÊÇʵ¼ÊÉϳÌÐòÁ÷³ÌÍêÈ«²»Í¬¡£Èç¹ûÎÒÃÇÈçÏÂÖ¸ÁÁ¢Ò»¸öKubernetes Ⱥ¼¯¡£

Èç¹ûÊǾÉÓеļܹ¹Ö¸Áî»á±»×ªÎªAPI call,ÔÙͨ¹ýRPC½»ÓÉÆäÖеÄÒ»¸öºó¶ËEngine·þÎñÓÉÍ·µ½Î²´¦ÀíÕû¸öKubernetes×ÊÔ´½¨¹¹¡£

µ«ÈçÏÂͼÔÚConvergenceģʽÏ£¬Kubernetes½Å±¾µÖ´ïºó¶Ë·þÎñ£¨Engine£©Ê±£¬»áÒÀÕÕ×ÊÔ´Á¢¿Ì±»·Ö³Éµ¥Ò»¹¤×÷£¬½»¸¶¸øÆäËûºó¶Ë·þÎñ²¢ÐÐÖ´ÐС£

Ò²¾ÍÊÇ˵£¬Èôºó¶Ë·þÎñÊýÁ¿ÔÊÐí£¬ËùÓеÄKubernetes masterÓëminion¶¼¿ÉÒÔ²¢ÐÐÔËÐÐÔÚ¶ÀÁ¢µÄºó¶Ë·þÎñ£¬²¢ÇÒÖ»ÐèÒªÄ㻨·Ñ²¿Êðһ̨½ÚµãµÄʱ¼ä£¬¾Í¿ÉÒÔ½«Õû¸ö¼¯Èº¶¼½¨ÖÃÍê±Ï¡£

¹ý³ÌÖÐHeat·þÎñ»áÔÚÊý¾Ý¿âÖн¨Á¢Ò»ÕŽÐ×öSyncpointµÄ±í£¬ÓÃÀ´È·ÈÏÓëÈ¡µÃ²Ù×÷µÄȨÏÞ¡£²¢ÇÒ´æÈë×ÊÔ´ÏàÒÀÐÔµÄÁ¬½áÊý¾ÝÒÔ±£Ö¤ÓÐ×ÊÔ´´´½¨Á÷³Ì£¨ÏñÊÇÈ·±£Cinder Volume¹ÒÔØ²Ù×÷£¬±ØÐëÔÚNova½«Kubernetes½ÚµãÓëCinder Volume´´½¨³öÀ´ºó²ÅÄÜÖ´ÐУ©¡£

µ÷ÓÅ2:µ÷Õû`num_engine_workers`

Engine workerÊýÁ¿µ÷Õû£¬Ö¸µÄ¾ÍÊÇÎÒÃÇÔÚµ÷ÓÅ1ʱÌá¼°µÄºó¶Ë·þÎñÊýÁ¿¡£Í¨¹ýÏÂͼ¼Ü¹¹¿ÉÒÔ¿´µ½£¬µ±API·þÎñÊÕµ½ÇëÇ󣬲¢Í¨¹ýRPCÍùºó·½´«ËÍʱ£¬ÊÇÔÚ¶à¸öEngine workerÖУ¬ÓÉÇÀÏȽÓÊÕµ½Õߣ¬×÷Ϊ´¦Àí¸ÃÇëÇóµÄºó¶Ë¡£

 

¶øÕâ¸öµ÷ÓÅÉ趨¿ÉÒÔÓÃÀ´¾ö¶¨Ã¿Ò»¸öʵÌåµÄHeatºó¶Ë½ÚµãÉÏÒªÅܼ¸¸öºó¶Ë·þÎñ³ÌÐò¡£ÈçÈô»·¾³£¨ÔÚ`/etc/heat/heat.conf`Îļþ£©ÉÐδÉ趨´Ë²ÎÊý£¬Ô¤ÉèÊǰ´ÕÕCPUÊýÁ¿À´µ÷Õûµ¥Ò»½ÚµãÉÏHeatµÄ·þÎñ³ÌÐòÊýÁ¿¡£

µ«ÊÇ×¢Òâµ½£¬ÈôÄãµÄµçÄÔΪHPCʱ½¨Ò齫ÊýÁ¿µ÷¸ß£¬ÒòΪÄãÓµÓнÏΪǿ´óµÄÍøÂç¡¢ÔËËã¡¢Óë´¢´æ×ÊÔ´£¬¿ÉÒÔ³¢ÊÔÓÉ1:1.5£¨cpu:num_engine_workers£©¿ªÊ¼²âÊÔЧÄÜ£¬ÔÚÍùÉϵ÷Õû£¬Ö±µ½ÄãµÄKubernetes¼¯ÈºµÄ²¼ÊðЧÄÜ´ïµ½¶¥·å¡£

Ïà¶ÔµØ£¬ÈôÄãµÄCPUÊýÁ¿¹ý¶à£¬ÆäËû²¿·ÖµÄ×ÊÔ´²¢Î´¹æ»®Îª¸ßЧÄÜ×´¿ö£¨¿ÉÄÜ·¢ÉúÔÚÓÃÀ´ÌṩÔËËãµÄ½ÚµãÉÏ£©£¬½¨Òé³¢ÊÔ1.25:1£¨cpu:num_engine_workers£©¿ªÊ¼²âÊÔЧÄÜ£¬²¢Íùϵ÷Õû£¨num_engine_workersÊýÁ¿£©£¬Ö±µ½ÄãµÄ»·¾³È¡µÃ¸üºÃµÄÕûÌåЧÄÜ¡£

×¢Òâµ½µ¥Ò»½ÚµãÉϵıàÅÅ·þÎñ³ÌÐòÊýÁ¿£¬²¢²»µÈÓÚ¶à½ÚµãÉϵÄÕûºÏ¡£Òò´Ëµ÷Õûµ½Êʵ±µÄÊýÁ¿£¬Ò²µÈͬÓÚÌṩÆäËû³ÌÐò£¨RPC¡¢Êý¾Ý¿â¡¢ÆäËû·þÎñ³ÌÐò£©¸ü¶à×ÊÔ´µÄʹÓÿռ䡣

ÓÈÆäÊÇÏñ²¼ÊðKubernetes»·¾³£¬½«»áͬʱµ÷ÓÃCinder¹ÜÀí´¢´æ£¬ Neutron¹ÜÀíÍøÂçNova¹ÜÀíÐé»ú»òÂã»ú¡£Òò´Ë×ÊÔ´·ÖÅä¸üÓ¦¸Ã΢µ÷ÒÔ»ñÈ¡¸üºÃµÄÕûÌåЧÄÜ¡£

µ÷ÓÅ3:¿ªÆô¸ßËÙ»º´æ

¶àÊýµÄOpenStack·þÎñ¶¼¾ßÓÐÒ»¶¨ÊýÁ¿µÄ»º´æ»úÖÆ£¬ÈôÄÚ´æ¿Õ¼äÔÊÐí½¨ÒéÌôÑ¡²¿·Ö·þÎñ£¨±ÈÈç±àÅÅ·þÎñ£©¿ªÆô»º´æ»úÖÆ£¬¿ªÆô·½Ê½Îª½«»º´æÉ趨дÈëheat.confÄÚ¡£

ÖÁÓÚдÈëÑ¡Ïî¿É²Î¿¼ÍøÕ¾£ºhttps:// docs .openstack.org/developer/oslo.cache/opts.html ¡£ÈôÎÞÌØ±ðÏëÉ趨µÄ²ÎÊý£¬¿ÉÒÔÖ±½ÓÔÚ[cache]ÏÂÐÂÔöenabled=True¼´¿É¡£

ÖÁÓÚΪʲôÔÚ´ËÌØ±ðÌá¼°´ËÉ趨£¬ÒòΪµ±ÄãÒª²¼Êð»òÊÇÀ©Õ¹ÄãµÄKubernetes¼¯ÈºÊ±£¬ÔÚ×ÊÔ´±àÅÅÉ϶¼»áÊÇÒÔ×ÊԴȺ×éΪµ¥Î»£¬±ÈÈç˵ҪÔÙÀ©Õ¹³öеÄ50̨Kubernetes minion½Úµã¡£

ÔÚ×ÊÔ´±àÅÅʱ£¬Õâ50̨ÊôÓÚͬһKubernetes´Ô¼¯µÄminion½Úµã½«»á±»ÊÓΪͬһ¸ö×ÊԴȺ¼¯£¬²¢ÔÚ±àÅÅʱһͬ´¦Àí¡£Òò´ËÈôÄܽ«¸ßËÙ»º´æ¿ªÆô£¬ÔÚÕâ°¸ÀýÉϾͿÉÒÔÖ±½Ó½ÚÊ¡49´ÎµÈͬÓÚ98%µÄ²¿·Ö²Ù×÷¡£

ĿǰÔÚ±àÅÅ·þÎñÄÚ£¬ÒÔϼ¸¸öÖ÷Òª»·½ÚÒѾ­ÉèÓпìÈ¡»úÖÆ£¬°üº¬StackÐÅÏ¢Êý¾Ý£¬ResourceÐÅÏ¢Êý¾Ý£¬ConstraintÊý¾Ý£¨Í¨¹ýºô½ÐÆäËûÏîÄ¿CLIÒÔÈÏÖ¤²¿·Ö²ÎÊý¡£ÀýÈçµ±K8S master²ÎÊýÓÐFloating ipʱ£¬Constraint¾Í»áͨ¹ýNeutron CLIÕÒѰFloating ipÊý¾Ý×÷Ϊ²ÎÊýÈÏÖ¤ÒÀ¾Ý£©µÈ¡£

µ÷ÓÅ4:ÔÊÐíOpenStackÖ±½Ó²Ù×÷Kubernetes

ÔÚʵ¼ÊʹÓÃKubernetesʱ£¬Ðí¶àʱºòÐèÒªÁÙʱ»òÒ»´ÎÐÔ±ä¸ü¶à¸ö Kubernetes¼¯Èº£¬»òÊǶԵ¥Ò»¸ö´óÐ͵ÄKubernetes¼¯Èº½øÐжà´Î²Ù×÷»ò¸´ÔÓ²Ù×÷£¬ÆäʵҲ¿ÉÒÔÄÉÈëOpenStack¹ÜÀí·¶Î§×÷Ò»´ÎÐÔ²Ù×÷£¬½ø¶øÍê³ÉËùÓÐÈÎÎñ¡£

ÔÚ±àÅÅ·þÎñÖÐÓÐÄܰ²×°Óë¹ÜÀíÓ¦ÓóÌÐòµÄÄÜÁ¦£¬ÔÚÌṩ¾µÏñʱ£¬Ö»ÐèÒªÔÚÀïÃæ¶à¼ÓÈëkubelet hook¾Í¿ÉÒÔÁË¡£ºóÐøÖ»Ðèͨ¹ý¸ü¸Ä±àÅŽű¾¼´¿É½øÐвÙ×÷¡£

¶ÔÓÚ²»ÖªµÀhookÊÇʲôµÄ¶ÁÕߣ¬¿ÉÒÔÀí½â»ù±¾ÉÏËü¾ÍÊÇÒ»¸öÔÚos-collect-configЭÖú½«Îļþ(ÀýÈçyamlÎļþ)תÈëKubernetes½ÚµãÉÏÖ®ºó£¬Í¨¹ý½ÚµãÉÏkubeletÖ¸ÁîÖ´ÐвÙ×÷¡£Á÷³ÌÈçÏÂͼËùʾ£º

µ±Äã¼Æ»®¿ª·¢Kubernetes×Ô¶¯»¯¹ÜÀíʱ£¬³ýÁ˽«kubelet hook¼ÓÈë¾µÏñÄÚ£¬Ò²Òª×¢Òâµ½kubeletÖ´Ðк󣬱ØÐëÒªÄܹ»·¢ËÍÏûÏ¢¸øHeat»òZaqarµÈµÈ£¨¿´ÄãÔÚ±àÅŽű¾×«Ð´Ê±µÄÉ趨£©£¬Òò´ËÇëÎñ±Ø´ò¿ª²¿·Ö·À»ðǽÉ趨£¨ÏñÊÇ80»ò8080µÈµÈ£©ÔÊÐíÏûÏ¢·¢ËÍ¡£

HeatµÄ×Ô¶¯»¯Èí¼þ²¼ÊðÓëÉ趨£¬Í¨¹ýͬһ¸öÓÃÀ´É趨K8SµÄ½Å±¾¼´¿ÉÉ趨Ïà¹Ø×ÊÔ´¡£Èç¹ûÄãÏëÒª½«Èí¼þ²¼Êð¼ÓÈëÄãµÄK8S½Å±¾ÖУ¬¿ÉÒԲο¼ÒÔϽű¾Æ¬¶Î¡£

µ±ÖÐ`configure_master_deployment`¾ÍÊÇ¿ÉÒÔ½«µ¥Ò»²¼Êð½Å±¾Ó¦ÓÃÓÚ¶à¸ö½ÚµãÉϵÄ`OS::Heat::SoftwareDeploymentGroup`×ÊÔ´¡£

Æä¹¤×÷»á½«`OS::Heat::SoftwareConfig`ÖÐÉ趨µÄ½Å±¾Óë½Å±¾ÐÎ̬£¨Ansible, script, Puppet, Kubelet, etc.£©Í¨¹ýK8S½Úµã£¨ÄãµÄOS::Nova::Server×ÊÔ´£©ÖеÄos -collect-config½«½Å±¾ÐÅÏ¢À­½ø½ÚµãÖУ¨´ËÎªËæÊ±¼àÌý¶¯×÷£¬¿ÉÒÔµ÷Õû¼àÌýÇø¼ä£¬Ô¤ÉèΪ30Ã룩£¬ÔÙͨ¹ýKubelet hookºô½ÐKubeletÖ¸ÁִÐнű¾¡£

ÈκÎÖ´Ðнá¹û»òÊÇ´íÎó×´¿ö¡£¶¼»áͨ¹ýÏûÏ¢»Ø´«¸øHeat·þÎñ¡£ÁíÍâÓйØÓÚÏêϸkubelet hookÐÅÏ¢¿ÉÒԲο¼£ºhttps : // github . com / openstack / heat-agents / tree / master / heat - config - kubelet ¡£

ÔÚ±àÅŽű¾ÉϼÓÈ룺

...¼´¿ÉÒÔ²Ù×÷kubelet £¬ÄãÒ²¿ÉÒÔ½«cofig²¿·Ö»»³ÉyamlÎļþÊäÈë¡£ÖÁÓÚÔÚ±àÅŽű¾ÉÏÍêÕûµÄʹÓ÷½Ê½£¬¿ÉÒԲο¼https : // github . com / openstack / heat - templates / blob / master / hot / software - config / example - templates / example - kubele - template . yaml

µ÷ÓÅ5 :µ÷ÓžµÏñ

¶ÔÓÚKubernetesµÄÓÅÊÆÖ®Ò»¼´½«·þÎñ¶¼×ª½øÈÝÆ÷ÄÚÖ´ÐУ¬È»¶øÄ¿Ç°Ðí¶à´óÐÍ»·¾³ÒÅÍüÁËÓ¦¸Ã½¨ÖÆ Kubernetes µÄ¾µÏñÓÅ»¯¡£Ä¿Ç°Óм¸¼ÒÖªÃûµÄÅ·ÖÞ´óÐÍÑо¿»ú¹¹£¬¾ÍÔÚ¶ÔËûÃÇ OpenStack ÔÆÉ쵀 Kubernetes £¬½øÐÐÕâÏîÓÅ»¯¡£

ÓÅ»¯·½ÏòÓÐ2£º

1. Ìæ´úÔ­ÏÈʹÓõľµÏñ£¬½«¸üÊʺÏÈÝÆ÷µÄСÐ;µÏñ×÷ΪÕûÌ彨ÖÃÑ¡Ôñ¡£

2.½«ÉÏÃæÌá¼°±àÅÅʱËùÐèÒªµÄhooks¼ÓÈëÓ³Ïñµµ¡£ÔÚ´ËÌṩÏà¹ØµÄ Dockerfile ×÷Ϊ²Î¿¼¡£

(https : // github . com / openstack / tripleo - common / blob / master / heat _ docker _ agent / Dockerfile )

×ܽá

ͨ¹ý½«ÉÏÃæ5Ïîµ÷ÓÅ£¨µ÷ÓÅ1:¿ªÆôconvergenceģʽ£»µ÷ÓÅ2:µ÷Õû`num_engine_workers`£»µ÷ÓÅ3:¿ªÆô¸ßËÙ»º´æ£»µ÷ÓÅ4:ÔÊÐíOpenStackÖ±½Ó²Ù×÷Kubernetes£»µ÷ÓÅ5:µ÷ÓžµÏñ£©Ó¦Óõ½ÄãµÄK8S»·¾³ÖУ¬ÔÚÖ´Ðв¼Êð»òÀ©Õ¹£¨»òËõ±à£©Ê±£¬»á²úÉúÃ÷ÏÔµÄЧÄܸÄÉÆ¡£

µ±K8S²¼ÊðÏÂÈ¥ºó£¬ÊµÌåÍøÂçµ÷Õû±äµÃ·Ç³£À§ÄÑ¡£ÈôÄãÑ¡ÔñÔËÓÃOpenStack±àÅŹÜÀí£¬ÔÚÈκλ·¾³Öиıä½ÚµãÐÅÏ¢£¬°üº¬ÍøÂ磬Ⱥ¼¯ÊµÌåÅäÖ㬴¢´æµÈµÈ¾Í»á±ä³É¸üΪ¼òµ¥µÄ²Ù×÷¡£

ÄãÒ²¿ÉÒÔͨ¹ýרߺÔð×ÊÔ´¹ÜÀíµÄ±àÅÅ·þÎñ£¬Ç¿»¯×ÊÔ´²¼ÊðЧÄÜ¡£ÒòΪÄã¾ø¶Ô²»¿ÉÄܽ«ÄãµÄÔËÓªÖеÄÈÝÆ÷»¯Ó¦ÓóÌÐò²¼ÊðÔÚÖ»ÓÐÒ»¸öµ¥Ò»½ÚµãµÄK8S£¬Äã¸ü²»Ï£ÍûÒòΪÈκÎÈËÔ±²Ù×÷ʱÐÞ¸ÄÒÅ©£¬µ¼ÖÂÕû¸öȺ¼¯Í£Ö¹·þÎñ¡£Í¨¹ý±àÅžͱä³ÉÊǸö½ÏΪ·ûºÏ×Ô¶¯»¯Ä¿±êµÄÑ¡Ïî¡£

³ýÁËÉÏÃæ5ÏÒéÍ⣬Ҳ¹ÄÀøÄ㽫ÄãµÄÎÊÌâ¡¢Ïë·¨¡¢½â·¨¡¢»òÊÇÆäËûÈκΰïÖú·¢µ½ÉçÇøÉÏ»òÊÇÁªÏµÎÒÃÇ£¬ÓÉÉçÇø×÷ΪԴͷ£¬ÎÒÃÇÓÐÄÜÁ¦Ö±½Ó¸Ä±äÔ´Í·ÒÔ¼ÌÐøÇ¿»¯KubernetesÓëOpenStackµÄÕûºÏÓëÓÅ»¯£¬ÎÒÃÇŬÁ¦½«Ô´Í·¼¼ÊõÓÅ»¯ÁË£¬²»¾ÃÒ»¶¨²úÉú¸ü¶àµÄÓÅ»¯Ñ¡Ïî¡£×îºóÊܻݵģ¬ÏàОÍÊÇÄãÕýÔÚÔËÓªµÄ»·¾³¡£

 

   
3055 ´Îä¯ÀÀ       32
Ïà¹ØÎÄÕÂ

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

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

ÔÆ¼ÆËãÔ­ÀíÓëÓ¦ÓÃ
ÔÆ¼ÆËãÓ¦ÓÃÓ뿪·¢
CMMIÌåϵÓëʵ¼ù
»ùÓÚCMMI±ê×¼µÄÈí¼þÖÊÁ¿±£Ö¤