±à¼ÍƼö: |
±¾ÎÄÖ÷Òª½éÉÜͨ¹ýÀûÓÃ
Kubernetes ×÷Ϊ vSphereµÄ¿ØÖÆÆ½Ã棬Project Pacific
ÔÊÐíÆóÒµÀûÓÃÒ»¸öÈÚºÏµÄÆ½Ì¨Í¬Ê±ÔËÐд«Í³Ó¦ÓúÍÏÖ´ú»¯Ó¦Óá£
±¾ÎÄÀ´×ÔÓÚËѺüÍø£¬ÓÉ»ðÁú¹ûÈí¼þAlice±à¼¡¢ÍƼö¡£ |
|
VMware TanzuµÄÈý´ó×é¼þ
Project Pacific¸øvSphereÔö¼ÓÁËÒ»¸öеĿØÖÆÆ½Ã棬ʹÓû§¿ÉÒÔÓÃKubernetes¹ÜÀívSphere¡£¶ÔÓÚ¿ª·¢ÈËÔ±À´Ëµ£¬Project
Pacific¾ÍÏñÊÇÒ»¸öÔöÇ¿µÄKubernetes¼¯Èº£¬¿ÉÒÔʹÓÃKubernetesÉùÃ÷ʽÓï·¨À´¹ÜÀíÐéÄâ»ú¡¢´ÅÅ̺ÍÍøÂçµÈ×ÊÔ´¡£¶ÔÓÚIT¹ÜÀíÔ±À´Ëµ£¬Project
PacificÈÔ¾ÉÊÇvSphere£¬µ«ÊÇÌí¼ÓÁËÒÔÓ¦ÓÃΪ±ß½çµÄÕûÌå¹ÜÀíµÄÄÜÁ¦£¬¶ø²»Êǵ¥¶À¹ÜÀíÐí¶à¸ö¶ÀÁ¢µÄ×é³ÉÓ¦ÓõÄÐéÄâ»ú»òÕßÈÝÆ÷¡£
Project Pacific¿ÉÒÔÀûÓÃÆóÒµÏÖÓÐµÄ SDDC Ͷ×Ê¡¢ÈËÔ±¼¼Äܺ͹¤¾ß£¬¼ÓËÙvSphere
ƽ̨ÉÏÏÖ´ú»¯Ó¦ÓõĿª·¢ºÍÔËÓª¡£
ÏÖ´ú»¯Ó¦ÓõÄÌôÕ½
ÔÚÆóÒµ»·¾³ÖУ¬ÏÖ´ú»¯Ó¦ÓÃͨ³£ÊÇÓɺܶàÖÖ²»Í¬µÄ¼¼Êõ×é¼þ×é³ÉµÄ£¬ÓÐЩ×é¼þÔËÐÐÔÚÈÝÆ÷ÖУ¬ÓÐЩ×é¼þÔËÐÐÔÚÐéÄâ»úÖУ¨ÈçÊý¾Ý¿â£©£¬ÓÐʱÐèÒª·ÃÎÊÒÅÁôϵͳ£¬ÉõÖÁÓÐЩÐèÒª·ÃÎÊFaaS¡£ÕâЩ×é¼þ·Ö²¼Ê½µÄ²¿ÊðÔÚ²»Í¬µÄÔËÐл·¾³ÖУ¬Í¨³£Óɲ»Í¬µÄÍŶӿª·¢ºÍά»¤¡£
ÆóÒµ»·¾³ÏÖ´ú»¯Ó¦ÓÃ
ÕâÑùµÄÓ¦Óüܹ¹¸ø¿ª·¢ÈËÔ±´øÀ´ÁËÀ§ÈÅ£¬Äã²»ÄÜÖ»¹Ø×¢Kubernetes£¬ÒòΪºÜ¶à×é¼þ²¢Ã»ÓÐÔËÐÐÔÚÈÝÆ÷ÖС£Ò»µ©²¿ÊðÁËÕâÑùµÄÓ¦ÓóÌÐò£¬ÈçºÎά»¤²¢¸üÐÂËü£¿¿ÉÒÔʹÓÃÄÄЩ¹¤¾ßÀ´¼à¿Ø¡¢Õï¶ÏºÍµ÷ÊÔ²¿Êð£¿
ͬÑù£¬»ù´¡ÉèÊ©²¿ÃÅÒ²ÃæÁÙÁËеÄÎÊÌ⡣ΪÁËÖ§³ÖÈÝÆ÷ºÍÐéÄâ»ú¹²´æµÄÓ¦Óã¬ÓÐЩÆóÒµ²»µÃ²»ÔÚvSphere¼¯ÈºÍâ´î½¨Ò»Ì×еÄÈÝÆ÷¼¯Èº£¬ÕâÖÖ×ö·¨ÒýÈëÁËÐµĹµº£¬²¢ÇÒ¶à¸ö¼¯ÈºµÄÔËά¹ÜÀí¹¤¾ßºÍ·½·¨ÊÇÍêÈ«²»Í¬µÄ£¬Ó¦ÓÃÖÎÀíµÄ²ßÂÔÒ²ÎÞ·¨Í¬²½µ½Á½ÖÖÀàÐ͵ļ¯ÈºÖС£
Kubernetes ×÷Ϊƽ̨µÄƽ̨
Kubernetes µÄÁªºÏ´´Ê¼ÈË Joe Beda ˵¹ý£¬¡°KubernetesÊÇÒ»¸öƽ̨µÄƽ̨£¬¿ÉÒÔÓÃÀ´¹¹½¨ÐÂµÄÆ½Ì¨¡±¡£Êǵģ¬Kubernetes
ÊÇÒ»¸öÈÝÆ÷±àÅÅÆ½Ì¨£¬µ«ÊÇÒÀÀµKubernetes µÄºËÐÄÔÔòÎÒÃÇÄܹ»±àÅÅÈκζ«Î÷£¡Èç¹ûÎÒÃÇÓÃKubernetesµÄ·½Ê½ÖØÐ¼ܹ¹vSphere£¬ÈÃ
vSphere ÔËÐÐÔÚ Kubernetes Ö®ÉÏ»áÊÇʲôЧ¹ûÄØ£¿ÄÇô£¬¿ª·¢ÈËÔ±ÏëÒª´´½¨ÐéÄâ»ú¡¢ÈÝÆ÷»ò
Kubernetes ¼¯Èº£¬ËûÃÇÖ»ÐèÒª±àдһ¸öKubernetes YAML Îļþ²¢Ê¹Óà kubectl
²¿ÊðËü£¬¾ÍÏñʹÓÃÈÎºÎÆäËû Kubernetes ¶ÔÏó£¨Pod£¬service£¬ingress£©Ò»Ñù¡£
ʹÓÃKubernetes×÷ΪvSphere API
ͨ¹ýÕâ¸öÀíÄ¿ª·¢ÈËÔ±¿ÉÒÔ½«KubernetesÁ¼ºÃµÄʹÓøÐÊÜ´ÓÔÆÔÉúÓ¦ÓÃÀ©Õ¹µ½Êý¾ÝÖÐÐÄÖеÄÈκÎÀàÐ͵ÄÓ¦Óá£Ê¹ËûÃÇ¿ÉÒÔÇáËɵز¿ÊðºÍ¹ÜÀí¿ç¶à¸ö¼¼Êõ¶ÑÕ»µÄÏÖ´ú»¯Ó¦Óá£
ÒÔÓ¦ÓÃΪÖÐÐĵĹÜÀí
vSphere ÌṩÁ˺ܶàÕë¶ÔÐéÄâ»úµÄ¹ÜÀí¹¦ÄÜ£¬vMotion¡¢HA¡¢snapshot¡¢¼ÓÃÜ¡¢Åä¶î¹ÜÀí¡¢´æ´¢²ßÂԵȡ£µ«ÏÖ´ú»¯Ó¦ÓÃÒ»°ãÀ´Ëµ²»ÊÇÒ»¸öÐéÄâ»ú£¬Ëü¿ÉÄÜÊǼ¸Ê®¸öÐéÄâ»ú¼ÓÉϸü¶àµÄÈÝÆ÷¡£¶ÔÓÚÏÖ´ú»¯Ó¦ÓÃÀ´Ëµ£¬´ÓÕû¸öÓ¦ÓòãÃæÊµÏÖÒÔÉϵŦÄܾͱȽÏÀ§ÄÑÁË¡£
ÐÒÔ˵ÄÊÇ£¬Kubernetes ´øÀ´ÁËÁíÒ»¸ö¿ÉÒÔ½â¾öÕâ¸öÎÊÌâµÄ¸ÅÄNamespace¡£Kubernetes
ÖÐµÄ Namespace ÊÇ×ÊÔ´¶ÔÏó£¨ÈÝÆ÷¡¢VM¡¢´ÅÅ̵ȣ©µÄ¼¯ºÏ¡£Èç¹ûÎÒÃÇʹÓà Kubernetes
Namespace À´Ä£ÄâÏÖ´úÓ¦Óã¬È»ºó½«Õë¶ÔÐéÄâ»úµÄ¹ÜÀí¹¦ÄÜÔÚ Namespace ÉÏʵÏÖ£¬ÄÇô¾Í¿ÉÒÔÒ»´Î¿ØÖÆÕû¸öÓ¦ÓõÄ×ÊÔ´·ÖÅä¡¢vMotion¡¢¼ÓÃÜ¡¢HAºÍ¿ìÕÕ£¬¶ø²»±Øµ¥¶ÀÅäÖÃÿ¸öÐéÄâ»ú»òÕßÈÝÆ÷¡£
Namespace×÷Ϊ¹ÜÀíµ¥Ôª
Õâ¶ÔIT¹ÜÀíÔ±ÓÐÁ½¸öÕæÕýµÄ±ä¸ïÐÔÓ°Ïì¡£
Ê×ÏÈ£¬ÎÒÃÇÈÏΪÕâΪIT¹ÜÀíÔ±ÌṩÁ˾޴óµÄÉú²úÁ¦ÌáÉý¡£¹ýÈ¥£¬Äú¿ÉÄÜÔÚvCenterÇåµ¥ÖÐÓÐÊýǧ¸öÐéÄâ»úÐèÒª´¦Àí¡£µ«ÊÇ£¬Ò»µ©½«ÕâЩÐéÄâ»ú·Ö×éµ½ÆäÂß¼ËùÊôµÄÓ¦ÓÃÖУ¬Äú¿ÉÄÜÖ»ÐèÒª´¦Àí¼¸Ê®¸öNamespace¡£¹ýÈ¥£¬Èç¹ûÄúÏë¼ÓÃÜÓ¦ÓóÌÐò£¬Ôò±ØÐëÏÈÕÒµ½ÊôÓÚ¸ÃÓ¦ÓóÌÐòµÄËùÓÐÐéÄâ»ú£¬È»ºóÔÚÿ¸öÐéÄâ»úÉÏÆôÓüÓÃÜ¡£ÏÖÔÚ£¬ÄúÖ»Ðèµ¥»÷vCenterÖÐNamespaceÉϵİ´Å¥¼´¿ÉÍê³ÉËùÓвÙ×÷¡£Äú¿ÉÒÔ»ñµÃ¾Þ´óµÄÉú²úÁ¦ÌáÉý£¬ÒòΪÄú¿ÉÒÔ´¦ÀíÓ¦Óöø²»Êǵ¥¸öÐéÄâ»ú¡£
Æä´Î£¬ÎÒÃÇÈÏΪNamespaceΪ¿ª·¢ÈËÔ±ÌṩÁ˸üºÃµÄ×ÔÖú·þÎñÄ£ÐÍ¡£Ê¹ÓÃNamespace£¬IT¹ÜÀíÔ±¿ÉÒÔÔÚNamespaceÉÏÉèÖÃÒ»´Î²ßÂÔ£¬È»ºó½«NamespaceȨÏÞ·ÖÅ䏸¿ª·¢ÈËÔ±£¬NamespaceÖеÄÿ¸ö¶ÔÏó¶¼½«¼Ì³ÐͳһÉèÖõIJßÂÔ¡£¿ª·¢ÈËÔ±¿ÉÒÔ¿ìËÙ¡¢×ÔÖúµÄ´´½¨ÈκÎËûÐèÒªµÄ×ÊÔ´£¬ÐéÄâ»ú¡¢ÈÝÆ÷¡¢Kubernetes¼¯ÈºµÈ£¬¶øITÖ»ÐèÒª´ÓÓ¦ÓõÄÕûÌåά¶ÈÀ´È·±£×ÊÔ´µÄʹÓ÷ûºÏ¹«Ë¾µÄ²ßÂÔ¡£
Kubernetes ÔÉúµÄ vSphere ƽ̨
Project Pacific½«Kubernetes¿ØÖÆÆ½ÃæÖ±½Ó¼¯³Éµ½ESXiºÍvCenterÖÐ
- ʹÆä³ÉΪESXiµÄ¿ØÖÆÆ½Ã棬²¢Í¨¹ývCenterÌṩÒÔÓ¦ÓÃΪÖÐÐĵĹÜÀí¹¦ÄÜ¡£
KubernetesÔÉúµÄvSphereƽ̨
Supervisor clusters
Supervisor clusterÊÇÒ»ÖÖÌØÊâµÄKubernetes¼¯Èº£¬Ëü½«ESXi½Úµã±ä³ÉKubernetesµÄworker
node¡£ÕâÊÇͨ¹ý½«ÀàËÆkubeletµÄagent£¨Spherelet£©Ö±½Ó¼¯³Éµ½ESXiÖÐʵÏֵġ£Spherelet²»ÊÇÐéÄâ»ú£¬ËüÊÇESXiÉϵÄÒ»¸ö½ø³Ì¡£
°ÑvSphere Cluster±ä³ÉKubernetes Cluster
ESXi Native Pods
²¿ÊðÔÚSupervisorÉϵÄPod£¬Ã¿¸öPod¶¼ÔÚÒ»¸ö¸ôÀëµÄÇáÁ¿¼¶ÐéÄâ»úÖÐÔËÐС£Õâ¸öÇáÁ¿¼¶µÄÐéÄâ»ú¾ÍÊÇCRX£¬°üº¬Ò»¸öLinuxÄں˺Í×îСÈÝÆ÷ÔËÐÐʱ¡£
¾¹ý²âÊÔ£¬ESXi¿ÉÒÔÔÚ100ºÁÃëÄÚÆô¶¯native pod£¬ÔÚµ¥¸öESXiÖ÷»úÉÏÖ§³Ö³¬¹ý1000¸öpod¡£ÔÚÎÒÃǵÄÄÚ²¿²âÊÔÖУ¬ÎÒÃÇÒѾ֤Ã÷ÁËESXi
Native PodsÔÚSPECjbb2015»ù×¼²âÊÔÖеÄÍÌÍÂÁ¿±ÈÐéÄâ»úÖеij£¹æPod¸ß³ö30£¥£¬±ÈÂã»úLinuxÉϵÄPod¿ì8£¥£¡
ÐéÄâ»ú
Supervisor clusterÌṩVM operator£¬ÔÊÐíÓû§ÒÔKubernetesµÄ·½Ê½¹ÜÀíÐéÄâ»ú¡£Óû§¿ÉÒÔÔÚÒ»¸öyamlÎļþÖÐÃèÊöÐéÄâ»úµÄ²¿Êð¹æ·¶ºÍÆäËùÐèµÄÍøÂçºÍ´æ´¢×ÊÔ´¡£
VM Operator ¶ÔÓÚ˽ÓÐÔÆ½¨ÉèÓÐ×ÅÖØ´óµÄÒµÎñ¼ÛÖµ£¬Çë²Î¿¼ÁíһƪÎÄÕ£¨¿Éµã»÷£©£º ÐÂÒ»´úÆóҵ˽ÓÐÔÆ½¨ÉèµÄ¡°µ××ù¡±¡£
VM OperatorÖ»ÊÇ×÷ΪvSphere¹ÜÀíÐéÄâ»úµÄ²¹³ä£¬ÕâÒâζ×ÅÓû§¿ÉÒÔ¼ÌÐøÊ¹ÓÃvSphereµÄËùÓй¦ÄÜ£¬À´¹ÜÀíKubernetesÖñ¸³öµÄÐéÄâ»úʵÀý¡£
Guest cluster
ËäÈ»Supervisor clusterÒѾÊÇÒ»¸öKubernetes¼¯Èº£¬µ«ÊÇËüµÄÉè¼ÆÄ¿±êÊÇÓÃÀ´¹ÜÀívSphere£¬¶ø²»ÊÇͨÓõÄÒµÎñ²¿Êðƽ̨¡£ÕâÑùÉè¼ÆµÄÔÒòÓÐÒÔϼ¸¸ö£¬
KubernetesµÄ×î¼Ñʵ¼ùÊǶ༯Ⱥ£¬²»Í¬µÄ×⻧ʹÓò»Í¬¹æ¸ñ£¨°æ±¾¡¢¹æÄ££©µÄ¼¯Èº¡£¶øÒ»¸övSphereµÄcluster¾ÍÊÇÒ»¸öSupervisor
cluster£¬ÕâÖÖ·½Ê½²»·ûºÏ×î¼Ñʵ¼ù¡£µ±×â»§ÐèÒª²»Í¬°æ±¾µÄKubernetesµÄʱºò£¬Supervisor
cluster²»Äܹ»Âú×ãÒªÇó¡£
Supervisor clusterÄÚÖÃÔÚvSphereÖУ¬Ö»ÄÜËæ×ÅvSphere°æ±¾µÄÉý¼¶¶øÉý¼¶¡£Ò»°ãÀ´½²£¬Óû§ÒªÇóKubernetesµÄ°æ±¾¿ÉÒÔËæÊ±Éý¼¶£¬¶ø²»Ï£ÍûƵ·±µÄÉý¼¶µ×²ãµÄvSphere¡£
ΪÁ˰²È«ÔÒò£¬Supervisor cluster½ûÖ¹ÁËprivilegeµÈÒ»Ð©ÌØÊâģʽ¡£¶øÓÐЩʱºòÓû§ÐèÒªÕâЩģʽµÄ¼¯Èº¡£
Guest Clusters ºÜºÃµÄ½â¾öÁËÒÔÉϵÄÎÊÌ⣬Guest Clusters¿ÉÒÔÌṩͨÓõÄKubernetes¸øÓû§¡£Guest
ClusterÊÇÒ»¸öKubernetes¼¯Èº£¬ËüÔÚSupervisor ClusterÉϵÄÐéÄâ»úÄÚÔËÐС£Guest
ClusterÊÇÍêÈ«·ûºÏCNCFÈÏÖ¤µÄKubernetes£¬Òò´Ë¿ÉÒÔ±£Ö¤¼æÈÝÈκÎÔËÐÐÔÚKubernetesÉϵÄÓ¦Óá£
vSphere ÖÐµÄ Guest Clusters ʹÓÿªÔ´Cluster APIÏîÄ¿À´ÉúÃüÖÜÆÚ¹ÜÀíKubernetes¼¯Èº¡£
Guest Cluster
¾µÏñ²Ö¿â
ΪÁËÔËÐÐÈÝÆ÷£¬Óû§ÐèÒªÒ»¸ö¾µÏñ²Ö¿â¡£Òò´Ë£¬Project Pacific ½« Harbor ¼¯³Éµ½vSphere
ÖУ¬Äú¿ÉÒÔ´Ó vCenter Ö±½Ó´ò¿ª Harbor ¡£Ã¿¸öNamespace¶¼ÊÇ Harbor ÖеÄÒ»¸ö
project ¡£
×ܽá
Project Pacific ÊÇ VMware ÔÚKubernetes
ÁìÓòÒ»¸öÀï³Ì±®µÄ·¢²¼¡£
|