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

1Ôª 10Ôª 50Ôª





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



  ÇóÖª ÎÄÕ ÎÄ¿â Lib ÊÓÆµ iPerson ¿Î³Ì ÈÏÖ¤ ×Éѯ ¹¤¾ß ½²×ù Model Center   Code  
»áÔ±   
   
 
     
   
 ¶©ÔÄ
  ¾èÖú
ͨË×Ò×¶® k8s (2)£ºÈÏʶ kubernetes ºËÐÄ×é¼þÔ­Àí
 
 
  1217  次浏览      27
 2021-9-3
 
±à¼­ÍƼö:
±¾±¾½éÉÜÁ˺ËÐÄ×é¼þÔ­Àí ¡ª¡ª pod ºËÐÄÔ­Àí¡¢ReplicaSet ¸±±¾¿ØÖÆÆ÷¡¢Deployment ²¿Êð¶ÔÏó¼°StatefulSet ²¿ÊðÓÐ״̬·þÎñ¡£
±¾ÎÄÀ´×ÔÓÚCSDN £¬ÓÉ»ðÁú¹ûÈí¼þLinda±à¼­¡¢ÍƼö¡£

1. ºËÐÄ×é¼þÔ­Àí ¡ª¡ª pod ºËÐÄÔ­Àí

1.1 pod ÊÇʲô

pod Ò²¿ÉÒÔÀí½âÊÇÒ»¸öÈÝÆ÷£¬×°µÄÊÇ docker ´´½¨µÄÈÝÆ÷£¬Ò²¾ÍÊÇÓÃÀ´·â×°ÈÝÆ÷µÄÒ»¸öÈÝÆ÷£»

pod ÊÇÒ»¸öÐéÄ⻯·Ö×飬 ÓÐ×Ô¼ºµÄ IP µØÖ·ºÍÖ÷»úÃû hostname£¬ÀûÓà namespace ½øÐÐ×ÊÔ´¸ôÀ룬Ï൱ÓÚһ̨¶ÀÁ¢É³Ïä»·¾³£»

pod Ï൱ÓÚһ̨¶ÀÁ¢Ö÷»ú£¬ÄÚ²¿¿ÉÒÔ·â×°Ò»¸ö»ò¶à¸öÈÝÆ÷(ͨ³£ÊÇÒ»×éÏà¹ØµÄÈÝÆ÷)£¬ÄÚ²¿ÈÝÆ÷Ö®¼ä·ÃÎʲÉÓà localhost¡£

1.2 pod ÓÃÀ´¸Éʲô

ͨ³£Çé¿öÏ£¬ÔÚ·þÎñ²¿ÊðµÄʱºò£¬Ê¹Óà pod À´¹ÜÀíÒ»×éÏà¹ØµÄ·þÎñ(Ò»¸ö pod ÖÐҪô²¿ÊðÒ»¸ö·þÎñ£¬ÒªÃ´²¿ÊðÒ»×éÓйØÏµµÄ·þÎñ)¡£ÈçÏÂͼÊDz¿ÊðÁËÒ»×éÓйØÏµµÄ·þÎñµÄ½á¹¹Í¼£¬ÆäÖÐ C ±íʾÈÝÆ÷(container)£¬ÏÂÃæµÄ pod Àï¾ÍÓкܶà¸öÈÝÆ÷¡£

ÈçºÎÀí½âÒ»×éÏà¹ØµÄ·þÎñ£¿

ÈçÏÂͼ£ºÓÐÒ»¸öÇëÇóÊÇ·ÃÎÊ Nginx£¬È»ºó²¿ÊðÁË Nginx µÄÈÝÆ÷¾Í°ÑÇëÇóת·¢¸ø²¿ÊðÁË web ·þÎñµÄÈÝÆ÷£¬web ÔÙ·ÃÎÊÊý¾Ý¿â£¬È»ºóÇëÇó»áÒÀ´Î·µ»ØÀ´Êý¾Ý£¬×îºóÔÙ·µ»Ø¸øÓû§¡£

Òò´ËÔÚ Á´Ê½µ÷Óõĵ÷ÓÃÁ´Â·ÉϵķþÎñ ½Ð×öÒ»×éÏà¹ØµÄ·þÎñ¡£

1.3 ʵÏÖ web ·þÎñ¼¯Èº

Ö»ÐèÒª¸´Öƶà¸ö pod µÄ¸±±¾¼´¿É£¬ÕâÒ²ÊÇ k8s ¹ÜÀíµÄÏȽøÖ®´¦¡£k8s Èç¹ûÒª½øÐÐÀ©ÈÝ»òËõÈÝ£¬Ö»ÐèÒª¿ØÖÆ pod µÄÊýÁ¿¼´¿É¡£±ÈÈçÉÏÃæÄǸö²¿Êðģʽ£¬·þÎñ¼¯Èº¾ÍÊǸ´Öƶà¸öÕâÑùµÄ pod¡£

1.4 pod µ×²ãÍøÂçºÍÊý¾Ý´æ´¢ÊÇÈçºÎ½øÐеÄ

Ç°ÃæËµ¹ý pod ÄÚ²¿µÄÈÝÆ÷Ò²ÊÇÒ»¸ö¶ÀÁ¢µÄɳÏä»·¾³£¬Òò´ËÒ²ÓÐ×Ô¼ºµÄ ip ºÍ ¶Ë¿Ú¡£Èç¹ûÄÚ²¿ÈÝÆ÷»¹ÊÇͨ¹ý ip:port À´Í¨ÐÅ£¬Ï൱ÓÚ»¹ÊÇÔ¶³Ì·ÃÎÊ£¬ÕâÑùµÄ»°ÐÔÄÜ»áÊܵ½Ò»¶¨µÄÓ°Ïì¡£ÈçºÎÌá¸ßÄÚ²¿ÈÝÆ÷Ö®¼ä·ÃÎʵÄÐÔÄÜÄØ£¿

pod²ã

pod ÄÚ²¿ÈÝÆ÷´´½¨Ö®Ç°£¬±ØÐëÏÈ´´½¨ pause ÈÝÆ÷¡£pause ÓÐÁ½¸ö×÷Ó㺹²ÏíÍøÂçºÍ¹²Ïí´æ´¢¡£

ÿ¸ö·þÎñÈÝÆ÷¹²Ïí pause ´æ´¢£¬²»ÐèÒª×Ô¼º´æ´¢Êý¾Ý£¬¶¼½»¸ø pauseά»¤¡£

pause Ò²Ï൱ÓÚÕâÈý¸öÈÝÆ÷µÄÍø¿¨£¬Òò´ËËûÃÇÖ®¼äµÄ·ÃÎÊ¿ÉÒÔͨ¹ý localhost ·½Ê½·ÃÎÊ£¬Ï൱ÓÚ·ÃÎʱ¾µØ·þÎñÒ»Ñù£¬ÐÔÄܷdz£¸ß£¨¾ÍÏñ±¾µØ¼¸Ì¨ÐéÄâ»úÖ®¼ä¿ÉÒÔ ping ͨ£©¡£

2. ReplicaSet ¸±±¾¿ØÖÆÆ÷

2.1 ¸±±¾¿ØÖÆÆ÷»ù±¾Àí½â

×÷Ó㺹ÜÀí¿ØÖÆ pod ¸±±¾£¨·þÎñ¼¯Èº£©µÄÊýÁ¿£¬ÒÔʹÆäÓÀÔ¶ÓëÔ¤ÆÚÉ趨µÄÊýÁ¿±£³ÖÒ»Ö¡£

ÀýÈ磺replicas = 3 £¨´´½¨ 3 ¸ö¸±±¾£¬ÕâÊÇÌáǰÉèÖúõģ©

µ±¸±±¾ÉèÖÃΪ 3 ʱ£¬¸±±¾¿ØÖÆÆ÷½«»áÓÀÔ¶±£Ö¤¸±±¾ÊýÁ¿Îª 3¡£Òò´Ëµ±ÓÐ pod ·þÎñå´»úʱ£¨ÈçÉÏÃæµÚ 3 ¸ö pod£©£¬ÄǸ±±¾¿ØÖÆÆ÷»áÁ¢ÂíÖØÐ´´½¨Ò»¸öÐ嵀 pod£¬¾ÍÄܹ»±£Ö¤¸±±¾ÊýÁ¿Ò»Ö±ÎªÔ¤ÏÈÉ趨ºÃµÄ 3 ¸ö¡£

2.2 ReplicaSet ºÍ ReplicationController µÄÇø±ð

ReplicaSet ºÍ ReplicationController ¶¼ÊǸ±±¾¿ØÖÆÆ÷£¬ÆäÖУº

Ïàͬµã£º¶¼ÓÐÇ°Ãæ 2.1 ½ÚËùÃèÊöµÄ¹¦ÄÜ

²»Í¬µã£º±êǩѡÔñÆ÷µÄ¹¦Äܲ»Í¬

ReplicaSet ¿ÉÒÔʹÓñêǩѡÔñÆ÷½øÐÐ µ¥Ñ¡ ºÍ ¸´ºÏÑ¡Ôñ£»¶ø ReplicationController Ö»Ö§³Ö µ¥Ñ¡²Ù×÷¡£

ʲôÒâË¼ÄØ£¿

¼ÙÉèÏÂÃæÓÐÏÂÃæÁ½¸ö²»Í¬»úÆ÷É쵀 Node ½áµã£¬ÈçºÎÖªµÀËüÃÇµÄ pod Æäʵ¶¼ÊÇÏàͬµÄÄØ£¿´ð°¸ÊÇͨ¹ý±êÇ©¡£

¸øÃ¿¸ö pod ´òÉϱêÇ© ( key=value ¸ñʽ£¬ÈçÏÂͼÖÐµÄ app=web, release=stable£¬ÕâÓÐÁ½¸öÑ¡ÏÏàͬµÄpod¸±±¾µÄ±êÇ©ÊÇÒ»ÑùµÄ)£¬ÓÚÊǸ±±¾¿ØÖÆÆ÷¿ÉÒÔͨ¹ý±êǩѡÔñÆ÷ seletor ȥѡÔñÒ»×éÏà¹ØµÄ·þÎñ¡£

Ò»µ© selector ºÍ pod µÄ±êǩƥÅäÉÏÁË£¬¾Í±íÃ÷Õâ¸ö pod Êǵ±Ç°Õâ¸ö¸±±¾¿ØÖÆÆ÷¿ØÖƵ쬱íÃ÷Á˸±±¾¿ØÖÆÆ÷ºÍ pod µÄËùÊô¹ØÏµ¡£ÈçÏÂͼÖÐ seletor Ö¸¶¨ÁË app = web ºÍ release=stable ÊǸ´ºÏÑ¡Ôñ£¬ÒªÓà ReplicaSet ²ÅÄÜʵÏÖÈôÓà ReplicationController µÄ»°Ö»ÄÜÑ¡ÔñÒ»¸ö£¬ÈçֻѡÔñÆ¥Åäapp=web±êÇ©¡£ÕâÑùÏÂÃæµÄ 3 ¸ö pod ¾Í¹éÕâ¸ö¸±±¾¿ØÖÆÆ÷¹Ü¡£

¿É¼û ReplicaSet ¹¦ÄܸüÆëÈ«£¬ËùÒÔÔÚаæµÄ k8s ÖУ¬½¨ÒéʹÓà ReplicaSet ×÷Ϊ¸±±¾¿ØÖÆÆ÷£¬²»ÔÙʹÓà ReplicationController¡£

3. Deployment ²¿Êð¶ÔÏó

3.1 ¹ö¶¯¸üÐÂ

ReplicaSet ¸±±¾¿ØÖÆÆ÷¿ÉÒÔÓÀ¾Ã±£³Ö pod ¸±±¾µÄÊýÁ¿¡£µ«ÊÇÏîÄ¿µÄÐèÇóÔÚ²»¶ÏµÄµü´ú¡¢¸üУ¬ÏîÄ¿ÔÚ²»¶Ï·¢°æ¡£ÄÇÈçºÎ×öµ½·þÎñ¸üУ¿ÄѵÀ°Ñ·þÎñÍ£µôÔÙ°Ñа汾²¿ÊðÉÏÈ¥Â𣿵±È»²»ÊÇ£¬´ð°¸ÊÇÓùö¶¯¸üС£¾ÍÊÇÖØÐ´´½¨Ò»¸ö pod (v2°æ±¾) À´´úÌæ ֮ǰµÄ pod (v1°æ±¾)¡£

ÄÇÊÇÈçºÎ¹ö¶¯¸üеÄÄØ£¿Éæ¼°µ½ÏÂÃæÒª½²µ½µÄ²¿ÊðÄ£ÐÍ¡£

3.2 ²¿ÊðÄ£ÐÍ

µ¥¶ÀµÄ ReplicaSet ÊDz»Ö§³Ö¹ö¶¯¸üеģ¬Deployment ¶ÔÏóÖ§³Ö¹ö¶¯¸üУ¬Í¨³£ºÍ ReplicaSet Ò»ÆðʹÓá£

ÐèÒª¹ö¶¯¸üÐÂʱµÄ²½Ö裺

Deployment ½¨Á¢Ð嵀 Replicaset

Replicaset ÖØÐ½¨Á¢Ð嵀 pod

ËùÒÔËüÃÇÖ®¼äÊÇÓвã´Î¹ØÏµµÄ£¬Deployment ¹Ü Replicaset£¬Replicaset ά»¤ pod¡£ÔÚ¸üÐÂʱɾ³ýµÄÊÇ¾ÉµÄ pod£¬Àϰ汾µÄ ReplicaSet ÊDz»»áɾ³ýµÄ£¬ËùÒÔÔÚÐèҪʱ»¹¿ÉÒÔ»ØÍËÒÔǰµÄ״̬¡£

4. StatefulSet ²¿ÊðÓÐ״̬·þÎñ

4.1 ÒýÈ붨Òå

˼¿¼£ºÈç¹û MySQL(ÓÐ״̬·þÎñ) ʹÓÃÈÝÆ÷»¯²¿Êð£¬»á´æÔÚʲôÎÊÌ⣿

ÈÝÆ÷¶¼ÊÇÓÐÉúÃüÖÜÆÚµÄ£¬Ò»µ©å´»úÊý¾Ý¾ÍºÜ¿ÉÄܶªÊ§

pod Ò²ÓÐÉúÃüÖÜÆÚµÄ£¬Óà pod ²¿Êðʱ°Ñ pod ¼¯Èº¸±±¾ÖØÆôÒÔºóÒ²¿ÉÄÜ»á³öÏÖÊý¾Ý¶ªÊ§

Òò´Ë¶Ô k8s À´Ëµ£¬²»ÄÜʹÓà Deployment ²¿ÊðÓÐ״̬µÄ·þÎñ¡£Í¨³£Çé¿öÏ£¬Deployment ±»ÓÃÀ´²¿ÊðÎÞ״̬·þÎñ¡£

È»ºó StatefulSet ¾ÍÊÇΪÁ˽â¾öÓÐ״̬·þÎñʹÓÃÈÝÆ÷»¯²¿ÊðµÄÒ»¸öÎÊÌâ¡£

4.2 ÈçºÎÀí½â״̬·þÎñ

ÓÐ״̬·þÎñ

ÓÐʵʱµÄÊý¾ÝÐèÒª´æ´¢

ÔÚÓÐ״̬·þÎñ¼¯ÈºÖУ¬Èç¹û°Ñijһ¸ö·þÎñ³éÀë³öÀ´£¬Ò»¶Îʱ¼äºóÔÙ¼ÓÈë»Ø¼¯ÈºÍøÂ磬´Ëºó¼¯ÈºÍøÂç»áÎÞ·¨Ê¹ÓÃ

ÎÞ״̬·þÎñ

ûÓÐʵʱµÄÊý¾ÝÐèÒª´æ´¢

ÔÚÎÞ״̬·þÎñ¼¯ÈºÖУ¬Èç¹û°Ñijһ¸ö·þÎñ³éÀë³öÈ¥£¬Ò»¶Îʱ¼äºóÔÙ¼ÓÈë»Ø¼¯ÈºÍøÂ磬¶Ô¼¯Èº·þÎñÎÞÈκÎÓ°Ï죬ÒòΪËüÃDz»ÐèÒª×ö½»»¥£¬²»ÐèÒªÊý¾Ýͬ²½µÈµÈ¡£

4.3 ²¿ÊðÄ£ÐÍ

StatefulSet µÄ²¿ÊðÄ£ÐÍºÍ Deployment µÄºÜÏàËÆ¡£

±ÈÈçÏÂͼ£¬½èÖú PVC(Óë´æ´¢ÓйØ) ÎļþϵͳÀ´´æ´¢µÄʵʱÊý¾Ý£¬Òò´ËÏÂͼ¾ÍÊÇÒ»¸öÓÐ״̬·þÎñµÄ²¿Êð¡£

ÔÚ pod å´»úÖ®ºóÖØÐ½¨Á¢ pod ʱ£¬StatefulSet ͨ¹ý±£Ö¤ hostname ²»·¢Éú±ä»¯À´±£Ö¤Êý¾Ý²»¶ªÊ§¡£Òò´Ë pod ¾Í¿ÉÒÔͨ¹ý hostname À´¹ØÁª(ÕÒµ½) ֮ǰ´æ´¢µÄÊý¾Ý¡£

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

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

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

ÔÆ¼ÆËãÔ­ÀíÓëÓ¦ÓÃ
ÔÆ¼ÆËãÓ¦ÓÃÓ뿪·¢
CMMIÌåϵÓëʵ¼ù
»ùÓÚCMMI±ê×¼µÄÈí¼þÖÊÁ¿±£Ö¤
×îл¼Æ»®
DeepSeekÔÚÈí¼þ²âÊÔÓ¦ÓÃʵ¼ù 4-12[ÔÚÏß]
DeepSeek´óÄ£ÐÍÓ¦Óÿª·¢Êµ¼ù 4-19[ÔÚÏß]
UAF¼Ü¹¹ÌåϵÓëʵ¼ù 4-11[±±¾©]
AIÖÇÄÜ»¯Èí¼þ²âÊÔ·½·¨Óëʵ¼ù 5-23[ÉϺ£]
»ùÓÚ UML ºÍEA½øÐзÖÎöÉè¼Æ 4-26[±±¾©]
ÒµÎñ¼Ü¹¹Éè¼ÆÓ뽨ģ 4-18[±±¾©]
 
×îÐÂÎÄÕÂ
ÔÆÔ­Éú¼Ü¹¹¸ÅÊö
K8S¸ß¿ÉÓü¯Èº¼Ü¹¹ÊµÏÖ
ÈÝÆ÷ÔÆ¹ÜÀíÖ®K8S¼¯Èº¸ÅÊö
k8s-ÕûÌå¸ÅÊöºÍ¼Ü¹¹
Ê®·ÖÖÓѧ»áÓÃdocker²¿Êð΢·þÎñ
×îпγÌ
ÔÆ¼ÆË㡢΢·þÎñÓë·Ö²¼Ê½¼Ü¹¹
Æóҵ˽ÓÐÔÆÔ­ÀíÓë¹¹½¨
»ùÓÚKubernetesµÄDevOpsʵ¼ù
ÔÆÆ½Ì¨¼Ü¹¹ÓëÓ¦Ó㨰¢ÀïÔÆ£©
Docker²¿Êð±»²âϵͳÓë×Ô¶¯»¯¿ò¼Üʵ¼ù
³É¹¦°¸Àý
±±¾© ÔÆÆ½Ì¨Óë΢·þÎñ¼Ü¹¹Éè¼Æ
ͨÓù«Ë¾GE DockerÔ­ÀíÓëʵ¼ùÅàѵ
ij¾ü¹¤Ñо¿µ¥Î» MDA£¨Ä£ÐÍÇý¶¯¼Ü¹¹£©
ÖªÃûÏû·Ñ½ðÈÚ¹«Ë¾ ÁìÓòÇý¶¯Éè¼Æ
ÉîÛÚijÆû³µÆóÒµ Ä£ÐÍÇý¶¯µÄ·ÖÎöÉè¼Æ