CRI-O αž‡αžΆαž€αžΆαžšαž‡αŸ†αž“αž½αžŸ Docker αž‡αžΆαž”αžšαž·αž™αžΆαž€αžΆαžŸαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹ KubernetesαŸ– αž€αžΆαžšαžŠαŸ†αž‘αžΎαž„αž“αŸ…αž›αžΎ CentOS 8

αžŸαž½αžŸαŸ’αžαžΈ! αžαŸ’αž‰αž»αŸ†αžˆαŸ’αž˜αŸ„αŸ‡ Sergey αžαŸ’αž‰αž»αŸ†αž‡αžΆ DevOps αž“αŸ… Surf αŸ” αž“αžΆαž™αž€αžŠαŸ’αž‹αžΆαž“ DevOps αž“αŸ… Surf αž˜αžΆαž“αž‚αŸ„αž›αž”αŸ†αžŽαž„αž˜αž·αž“αžαŸ’αžšαžΉαž˜αžαŸ‚αž”αž„αŸ’αž€αžΎαžαž’αž“αŸ’αžαžšαž€αž˜αŸ’αž˜αžšαžœαžΆαž„αž’αŸ’αž“αž€αž―αž€αž‘αŸαžŸ αž“αž·αž„αžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž€αžΆαžšαž„αžΆαžšαž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡αž‘αŸ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžαŸ‚αž˜αž‘αžΆαŸ†αž„αžŸαŸ’αžšαžΆαžœαž‡αŸ’αžšαžΆαžœ αž“αž·αž„αž’αž“αž»αžœαžαŸ’αžαž”αž…αŸ’αž…αŸαž€αžœαž·αž‘αŸ’αž™αžΆαž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž™αŸ‰αžΆαž„αžŸαž€αž˜αŸ’αž˜αž‘αžΆαŸ†αž„αž“αŸ…αž€αŸ’αž“αž»αž„αž αŸαžŠαŸ’αž‹αžΆαžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž•αŸ’αž‘αžΆαž›αŸ‹αžαŸ’αž›αž½αž“ αž“αž·αž„αž αŸαžŠαŸ’αž‹αžΆαžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αžšαž”αžŸαŸ‹αž’αžαž·αžαž·αž‡αž“αž•αž„αžŠαŸ‚αžšαŸ”

αžαžΆαž„αž€αŸ’αžšαŸ„αž˜αž“αŸαŸ‡αžαŸ’αž‰αž»αŸ†αž“αžΉαž„αž“αž·αž™αžΆαž™αž”αž“αŸ’αžαž·αž…αž’αŸ†αž–αžΈαž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž“αŸ…αž€αŸ’αž“αž»αž„αž‡αž„αŸ‹αž”αž…αŸ’αž…αŸαž€αžœαž·αž‘αŸ’αž™αžΆαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αž»αž„αžαžΊαž“αŸαžšαžŠαŸ‚αž›αž™αžΎαž„αž‡αž½αž”αž”αŸ’αžšαž‘αŸ‡αž“αŸ…αž–αŸαž›αžŸαž·αž€αŸ’αžŸαžΆαž€αžΆαžšαž…αŸ‚αž€αž…αžΆαž™ CentOS 8 αž“αž·αž„αž’αŸ†αž–αžΈαž’αŸ’αžœαžΈαžŠαŸ‚αž›αžœαžΆαž‚αžΊαž‡αžΆ CRI-O αž“αž·αž„αžšαž”αŸ€αž”αžšαŸ€αž”αž…αŸ†αž”αžšαž·αžŸαŸ’αžαžΆαž“αžŠαŸ‚αž›αž’αžΆαž…αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž”αžΆαž“αž™αŸ‰αžΆαž„αž†αžΆαž”αŸ‹αžšαž αŸαžŸ Kubernetes.

CRI-O αž‡αžΆαž€αžΆαžšαž‡αŸ†αž“αž½αžŸ Docker αž‡αžΆαž”αžšαž·αž™αžΆαž€αžΆαžŸαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹ KubernetesαŸ– αž€αžΆαžšαžŠαŸ†αž‘αžΎαž„αž“αŸ…αž›αžΎ CentOS 8

αž αŸαžαž»αž’αŸ’αžœαžΈαž”αžΆαž“αž‡αžΆ Docker αž˜αž·αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŠαžΆαž€αŸ‹αž”αž‰αŸ’αž…αžΌαž›αž€αŸ’αž“αž»αž„ CentOS 8?

αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαžŠαŸ†αž‘αžΎαž„αž€αŸ†αžŽαŸ‚αžŸαŸ†αžαžΆαž“αŸ‹αŸ—αž…αž»αž„αž€αŸ’αžšαŸ„αž™αž”αž„αŸ’αž’αžŸαŸ‹ RHEL ៧ ឬ CentOS 8 αž‚αŸαž˜αž·αž“αž’αžΆαž…αž‡αž½αž™αž€αžαŸ‹αžŸαž˜αŸ’αž‚αžΆαž›αŸ‹αž”αžΆαž“αž‘αŸαŸ– αž€αžΆαžšαž…αŸ‚αž€αž…αžΆαž™ αž“αž·αž„αžƒαŸ’αž›αžΆαŸ†αž„αž•αŸ’αž›αžΌαžœαž€αžΆαžšαž‘αžΆαŸ†αž„αž“αŸαŸ‡αž˜αž·αž“αž˜αžΆαž“αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž‘αŸαŸ” DockersαžŠαŸ‚αž›αž‡αŸ†αž“αž½αžŸαž€αž‰αŸ’αž…αž”αŸ‹αžŠαŸ„αž™αž˜αž“αŸ„αž‚αž˜αžœαž·αž‡αŸ’αž‡αžΆ αž“αž·αž„αž˜αž»αžαž„αžΆαžš αž•αžΌαž˜αŸαž“, Buildah (αž˜αžΆαž“αžœαžαŸ’αžαž˜αžΆαž“αž“αŸ…αž€αŸ’αž“αž»αž„αž€αžΆαžšαž…αŸ‚αž€αž…αžΆαž™αžαžΆαž˜αž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜) αž“αž·αž„ CRI-O. αž“αŸαŸ‡αž‚αžΊαžŠαŸ„αž™αžŸαžΆαžšαžαŸ‚αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαž‡αžΆαž€αŸ‹αžŸαŸ’αžαŸ‚αž„αž“αŸƒαžŸαŸ’αžαž„αŸ‹αžŠαžΆαžšαžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž‘αžΎαž„αžŠαŸ„αž™ Red Hat αžŠαŸ‚αž›αž‡αžΆαž•αŸ’αž“αŸ‚αž€αž˜αž½αž™αž“αŸƒαž‚αž˜αŸ’αžšαŸ„αž„ Open Container Initiative (OCI)αŸ”

αž‚αŸ„αž›αžŠαŸ…αžšαž”αžŸαŸ‹ OCI αžŠαŸ‚αž›αž‡αžΆαž•αŸ’αž“αŸ‚αž€αž˜αž½αž™αž“αŸƒαž˜αžΌαž›αž“αž·αž’αž·αž›αžΈαž“αž»αž… αž‚αžΊαžŠαžΎαž˜αŸ’αž”αžΈαž”αž„αŸ’αž€αžΎαžαžŸαŸ’αžαž„αŸ‹αžŠαžΆαžšαž§αžŸαŸ’αžŸαžΆαž αž€αž˜αŸ’αž˜αž”αžΎαž€αž…αŸ†αž αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž‘αž˜αŸ’αžšαž„αŸ‹αž€αž»αž„αžαžΊαž“αŸαžš αž“αž·αž„αžšαž™αŸˆαž–αŸαž›αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŠαŸ‚αž›αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αž‰αŸ’αž αžΆαž‡αžΆαž…αŸ’αžšαžΎαž“αž€αŸ’αž“αž»αž„αž–αŸαž›αžαŸ‚αž˜αž½αž™αŸ” αž‘αžΈαž˜αž½αž™ αž–αž½αž€αž‚αŸαž˜αž·αž“αž•αŸ’αž‘αž»αž™αž“αžΉαž„αž‘αžŸαŸ’αžŸαž“αžœαž·αž‡αŸ’αž‡αžΆαž“αŸƒαž›αžΈαž“αž»αž…αž‘αŸ (αž§αž‘αžΆαž αžšαžŽαŸ αž“αŸ…αž€αŸ’αž“αž»αž„αž•αŸ’αž“αŸ‚αž€αžŠαŸ‚αž›αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž“αžΈαž˜αž½αž™αŸ—αž‚αž½αžšαž’αž“αž»αžœαžαŸ’αžαžŸαž€αž˜αŸ’αž˜αž—αžΆαž–αž˜αž½αž™ αž“αž·αž„ Dockers αž‚αžΊβ€‹αž‡αžΆβ€‹αž”αŸ’αžšαž—αŸαž‘β€‹αž“αŸƒβ€‹αž€αžΆαžšβ€‹αžšαž½αž˜β€‹αž”αž‰αŸ’αž…αžΌαž›β€‹αž‚αŸ’αž“αžΆβ€‹αž‘αžΆαŸ†αž„β€‹αž’αžŸαŸ‹β€‹αž€αŸ’αž“αž»αž„β€‹αž˜αž½αž™)αŸ” αž‘αžΈαž–αžΈαžš αž–αž½αž€αž‚αŸαž’αžΆαž…αž›αž»αž”αž”αŸ†αž”αžΆαžαŸ‹αžšαžΆαž›αŸ‹αž€αžΆαžšαžαŸ’αžœαŸ‡αžαžΆαžαžŠαŸ‚αž›αž˜αžΆαž“αžŸαŸ’αžšαžΆαž”αŸ‹αž“αŸ…αž€αŸ’αž“αž»αž„αž€αž˜αŸ’αž˜αžœαž·αž’αžΈ Dockers. αž‘αžΈαž”αžΈ αž–αž½αž€αž‚αŸαž“αžΉαž„αž˜αžΆαž“αž—αžΆαž–αž†αž”αž‚αŸ’αž“αžΆαž™αŸ‰αžΆαž„αž–αŸαž‰αž›αŸαž‰αž‡αžΆαž˜αž½αž™αž“αžΉαž„αžαž˜αŸ’αžšαžΌαžœαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž“αŸƒαžœαŸαž‘αž·αž€αžΆαž–αžΆαžŽαž·αž‡αŸ’αž‡αž€αž˜αŸ’αž˜αžˆαžΆαž“αž˜αž»αžαž‚αŸαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαžŠαžΆαž€αŸ‹αž–αž„αŸ’αžšαžΆαž™ αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„ αž“αž·αž„αž”αž˜αŸ’αžšαžΎαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαžŠαŸ‚αž›αž˜αžΆαž“αž€αž»αž„αžαžΊαž“αŸαžš (αž§αž‘αžΆαž αžšαžŽαŸ Red Hat OpenShift) αŸ”

αž€αŸ†αž αž»αžŸ Dockers αž αžΎαž™αž’αžαŸ’αžαž”αŸ’αžšαž™αŸ„αž‡αž“αŸαž“αŸƒαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαžαŸ’αž˜αžΈαžαŸ’αžšαžΌαžœαž”αžΆαž“αž–αž·αž–αžŽαŸŒαž“αžΆαžšαž½αž…αž αžΎαž™αž“αŸ…αž€αŸ’αž“αž»αž„αž›αž˜αŸ’αž’αž·αžαž˜αž½αž™αž…αŸ†αž“αž½αž“αž“αŸ…αž€αŸ’αž“αž»αž„ αž’αžαŸ’αžαž”αž‘αž“αŸαŸ‡αž“αž·αž„αž€αžΆαžšαž–αž·αž–αžŽαŸŒαž“αžΆαž›αž˜αŸ’αž’αž·αžαž“αŸƒαž‡αž„αŸ‹αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž‘αžΆαŸ†αž„αž˜αžΌαž›αžŠαŸ‚αž›αž•αŸ’αžαž›αŸ‹αž‡αžΌαž“αž“αŸ…αž€αŸ’αž“αž»αž„αž‚αž˜αŸ’αžšαŸ„αž„ OCI αž“αž·αž„αž›αž€αŸ’αžαžŽαŸˆαžŸαŸ’αžαžΆαž”αžαŸ’αž™αž€αž˜αŸ’αž˜αžšαž”αžŸαŸ‹αžœαžΆαž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αžšαž€αžƒαžΎαž‰αž“αŸ…αž€αŸ’αž“αž»αž„αž―αž€αžŸαžΆαžšαž•αŸ’αž›αžΌαžœαž€αžΆαžš αž“αž·αž„αž’αžαŸ’αžαž”αž‘αž–αžΈ Red Hat αžαŸ’αž›αž½αž“αžœαžΆ (αž˜αž·αž“αž’αžΆαž€αŸ’αžšαž€αŸ‹αž‘αŸ αž’αžαŸ’αžαž”αž‘ αž“αŸ…αž€αŸ’αž“αž»αž„αž”αŸ’αž›αž»αž€ Red Hat) αž“αž·αž„αž“αŸ…αž€αŸ’αž“αž»αž„αž—αžΆαž‚αžΈαž‘αžΈαž”αžΈ αž–αž·αž“αž·αžαŸ’αž™.

αžœαžΆαž‡αžΆαž€αžΆαžšαžŸαŸ†αžαžΆαž“αŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαž€αžαŸ‹αžŸαž˜αŸ’αž‚αžΆαž›αŸ‹αžαžΆαž˜αž»αžαž„αžΆαžšαž’αŸ’αžœαžΈαžŠαŸ‚αž›αžŸαž˜αžΆαžŸαž’αžΆαžαž»αž“αŸƒαž‡αž„αŸ‹αžŠαŸ‚αž›αž”αžΆαž“αžŸαŸ’αž“αžΎαž˜αžΆαž“:

  • αž•αžΌαž˜αŸαž“ - αž’αž“αŸ’αžαžšαž€αž˜αŸ’αž˜αžŠαŸ„αž™αž•αŸ’αž‘αžΆαž›αŸ‹αž‡αžΆαž˜αž½αž™αž€αž»αž„αžαžΊαž“αŸαžš αž“αž·αž„αž€αžΆαžšαž•αŸ’αž‘αž»αž€αžšαžΌαž”αž—αžΆαž–αžαžΆαž˜αžšαž™αŸˆαžŠαŸ†αžŽαžΎαžšαž€αžΆαžš runC;
  • Buildah - αž€αžΆαžšαž‡αž½αž”αž”αŸ’αžšαž‡αž»αŸ†αž‚αŸ’αž“αžΆ αž“αž·αž„αž€αžΆαžšαž”αž„αŸ’αž αŸ„αŸ‡αžšαžΌαž”αž—αžΆαž–αž‘αŸ…αž€αŸ’αž“αž»αž„αž”αž‰αŸ’αž‡αžΈαžˆαŸ’αž˜αŸ„αŸ‡
  • CRI-O - αž”αžšαž·αž™αžΆαž€αžΆαžŸαžŠαŸ‚αž›αž’αžΆαž…αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž”αžΆαž“αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αŸ’αžšαž–αŸαž“αŸ’αž’αžšαŸ€αž”αž…αŸ†αž€αž»αž„αžαžΊαž“αŸαžš (αž§αž‘αžΆαž αžšαžŽαŸ Kubernetes) αŸ”

αžαŸ’αž‰αž»αŸ†αž‚αž·αžαžαžΆ αžŠαžΎαž˜αŸ’αž”αžΈαž™αž›αŸ‹αž–αžΈαž‚αŸ’αžšαŸ„αž„αž€αžΆαžšαžŽαŸαž‘αžΌαž‘αŸ…αž“αŸƒαž’αž“αŸ’αžαžšαž€αž˜αŸ’αž˜αžšαžœαžΆαž„αž’αžΆαžαž»αž•αŸ’αžŸαŸ†αž“αŸƒαž‡αž„αŸ‹ αžœαžΆαžαŸ’αžšαžΌαžœαž”αžΆαž“αžŽαŸ‚αž“αžΆαŸ†αž±αŸ’αž™αž•αŸ’αžαž›αŸ‹αžŠαŸ’αž™αžΆαž€αŸ’αžšαžΆαž˜αžαž—αŸ’αž‡αžΆαž”αŸ‹αž“αŸ…αž‘αžΈαž“αŸαŸ‡ Kubernetes c αžšαžαŸ‹C αž“αž·αž„αž”αžŽαŸ’αžŽαžΆαž›αŸαž™αž€αž˜αŸ’αžšαž·αžαž‘αžΆαž”αžŠαŸ„αž™αž”αŸ’αžšαžΎ CRI-O:

CRI-O αž‡αžΆαž€αžΆαžšαž‡αŸ†αž“αž½αžŸ Docker αž‡αžΆαž”αžšαž·αž™αžΆαž€αžΆαžŸαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹ KubernetesαŸ– αž€αžΆαžšαžŠαŸ†αž‘αžΎαž„αž“αŸ…αž›αžΎ CentOS 8

CRI-O ΠΈ Kubernetes αž”αŸ’αžšαž€αžΆαž“αŸ‹αžαŸ’αž‡αžΆαž”αŸ‹αž“αžΌαžœαžœαžŠαŸ’αžαž“αŸƒαž€αžΆαžšαž…αŸαž‰αž•αŸ’αžŸαžΆαž™ αž“αž·αž„αž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžšαžŠαžΌαž…αž‚αŸ’αž“αžΆ (αž˜αŸ‰αžΆαž‘αŸ’αžšαžΈαžŸαž—αžΆαž–αž†αž”αž‚αŸ’αž“αžΆαž‚αžΊαžŸαžΆαž˜αž‰αŸ’αž‰αžŽαžΆαžŸαŸ‹αŸ– αž€αŸ†αžŽαŸ‚αžŸαŸ†αžαžΆαž“αŸ‹αŸ— Kubernetes ΠΈ CRI-O αžŸαŸ’αžšαž”αž‚αŸ’αž“αžΆ) αž αžΎαž™αž“αŸαŸ‡αžŠαŸ„αž™αž–αž·αž…αžΆαžšαžŽαžΆαž›αžΎαž€αžΆαžšαž•αŸ’αžαŸ„αžαž›αžΎαž€αžΆαžšαž’αŸ’αžœαžΎαžαŸαžŸαŸ’αžαž–αŸαž‰αž›αŸαž‰ αž“αž·αž„αž‘αžΌαž›αŸ†αž‘αžΌαž›αžΆαž™αž“αŸƒαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž“αŸƒαž‡αž„αŸ‹αž“αŸαŸ‡αžŠαŸ„αž™αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸ αž•αŸ’αžαž›αŸ‹αž±αŸ’αž™αž™αžΎαž„αž“αžΌαžœαžŸαž·αž‘αŸ’αž’αž·αž€αŸ’αž“αž»αž„αž€αžΆαžšαžšαŸ†αž–αžΉαž„αžαžΆαž“αžΉαž„αž˜αžΆαž“αžŸαŸ’αžαŸαžšαž—αžΆαž–αž’αžαž·αž”αžšαž˜αžΆαžŠαŸ‚αž›αž’αžΆαž…αžŸαž˜αŸ’αžšαŸαž…αž”αžΆαž“αž€αŸ’αž“αž»αž„αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž€αŸ’αžšαŸ„αž˜αžŸαŸαžŽαžΆαžšαžΈαž™αŸ‰αžΌαž“αŸƒαž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžŽαžΆαž˜αž½αž™ (αž–αž“αŸ’αž›αžΊαžŠαŸ‚αž›αž‘αžΆαž€αŸ‹αž‘αž„αž‚αŸ’αž“αžΆαž€αŸαž˜αžΆαž“αž”αŸ’αžšαž™αŸ„αž‡αž“αŸαž“αŸ…αž‘αžΈαž“αŸαŸ‡αž•αž„αžŠαŸ‚αžšαŸ” CRI-O αž”αŸ’αžšαŸ€αž”αž’αŸ€αž”β€‹αž‡αžΆαž˜αž½αž™ Dockers αžŠαŸ„αž™αžŸαžΆαžšαžαŸ‚αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αž‚αŸ„αž›αž”αŸ†αžŽαž„αž“αŸƒαž˜αž»αžαž„αžΆαžš) αŸ”

αž“αŸ…αž–αŸαž›αžŠαŸ†αž‘αžΎαž„ Kubernetes αžœαž·αž’αžΈ "αžαŸ’αžšαžΉαž˜αžαŸ’αžšαžΌαžœ" (αž™αŸ„αž„αž‘αŸ…αžαžΆαž˜ OCI αž‡αžΆαž€αžΆαžšαž–αž·αžαžŽαžΆαžŸαŸ‹) αžŠαŸ„αž™αž”αŸ’αžšαžΎ CRI-O αž“αŸ…αž›αžΎ CentOS 8 αž™αžΎαž„αž”αžΆαž“αž‡αž½αž”αž”αŸ’αžšαž‘αŸ‡αž€αžΆαžšαž›αŸ†αž”αžΆαž€αžαž·αž…αžαž½αž…αž˜αž½αž™αž…αŸ†αž“αž½αž“ αžŠαŸ‚αž›αž‘αŸ„αŸ‡αž‡αžΆαž™αŸ‰αžΆαž„αžŽαžΆαž€αŸαžŠαŸ„αž™ αž™αžΎαž„αž”αžΆαž“αž™αž€αžˆαŸ’αž“αŸ‡αžŠαŸ„αž™αž‡αŸ„αž‚αž‡αŸαž™αŸ” αžαŸ’αž‰αž»αŸ†αž“αžΉαž„αžšαžΈαž€αžšαžΆαž™αž€αŸ’αž“αž»αž„αž€αžΆαžšαž…αŸ‚αž€αžšαŸ†αž›αŸ‚αž€αž‡αžΆαž˜αž½αž™αž’αŸ’αž“αž€αž“αžΌαžœαž€αžΆαžšαžŽαŸ‚αž“αžΆαŸ†αž’αŸ†αž–αžΈαž€αžΆαžšαžŠαŸ†αž‘αžΎαž„ αž“αž·αž„αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’ αžŠαŸ‚αž›αžŸαžšαž»αž”αž“αžΉαž„αž…αŸ†αžŽαžΆαž™αž–αŸαž›αž”αŸ’αžšαž αŸ‚αž› 10 αž“αžΆαž‘αžΈαŸ”

αžšαž”αŸ€αž”αžŠαžΆαž€αŸ‹αž±αŸ’αž™ Kubernetes αž“αŸ…αž›αžΎ CentOS 8 αžŠαŸ„αž™αž”αŸ’αžšαžΎαž€αŸ’αžšαž”αžαŸαžŽαŸ’αžŒ CRI-O

αžαž˜αŸ’αžšαžΌαžœαž€αžΆαžšαž‡αžΆαž˜αž»αž“αŸ– αžœαžαŸ’αžαž˜αžΆαž“αžšαž”αžŸαŸ‹αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž™αŸ‰αžΆαž„αž αŸ„αž…αžŽαžΆαžŸαŸ‹αž˜αž½αž™ (αžŸαŸ’αž“αžΌαž› 2, RAM 4 GB, αž™αŸ‰αžΆαž„αž αŸ„αž…αžŽαžΆαžŸαŸ‹ 15 GB storage) αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž€αžΆαžšαžŠαŸ†αž‘αžΎαž„ CentOS 8 (αž‘αž˜αŸ’αžšαž„αŸ‹αžŠαŸ†αž‘αžΎαž„ "αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž˜αŸ" αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŽαŸ‚αž“αžΆαŸ†) αž€αŸαžŠαžΌαž…αž‡αžΆαž’αžΆαžαž»αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžœαžΆαž“αŸ…αž€αŸ’αž“αž»αž„ DNS αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“ (αž‡αžΆαž˜αž’αŸ’αž™αŸ„αž”αžΆαž™αž…αž»αž„αž€αŸ’αžšαŸ„αž™ αž’αŸ’αž“αž€αž’αžΆαž…αž‘αž‘αž½αž›αž”αžΆαž“αžŠαŸ„αž™αž’αžΆαžαž»αž“αŸ…αž€αŸ’αž“αž»αž„ /etc/hosts) αŸ” αž αžΎαž™αž€αž»αŸ†αž—αŸ’αž›αŸαž… αž”αž·αž‘αž€αžΆαžšαž”αŸ’αžαžΌαžš.

αž™αžΎαž„αž’αŸ’αžœαžΎαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž“αŸ…αž›αžΎαž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž‡αžΆαž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ root αžŸαžΌαž˜αž”αŸ’αžšαž™αŸαžαŸ’αž“αŸ”

  1. αž“αŸ…αž€αŸ’αž“αž»αž„αž‡αŸ†αž αžΆαž“αžŠαŸ†αž”αžΌαž„ αž™αžΎαž„αž“αžΉαž„αž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’ OS αžŠαŸ†αž‘αžΎαž„ αž“αž·αž„αž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž—αžΆαž–αž’αžΆαžŸαŸ’αžšαŸαž™αž”αž‹αž˜αžŸαž˜αŸ’αžšαžΆαž”αŸ‹ CRI-O αŸ”
    • αžαŸ„αŸ‡αž’αŸ’αžœαžΎαž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž—αžΆαž– OSαŸ–
      dnf -y update
      

    • αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’ Firewall αž“αž·αž„ SELinux αŸ” αž“αŸ…αž‘αžΈαž“αŸαŸ‡αž’αŸ’αžœαžΈαž‚αŸ’αžšαž”αŸ‹αž™αŸ‰αžΆαž„αž’αžΆαžŸαŸ’αžšαŸαž™αž›αžΎαž”αžšαž·αž™αžΆαž€αžΆαžŸαžŠαŸ‚αž›αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž¬αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αžšαž”αžŸαŸ‹αž™αžΎαž„αž“αžΉαž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαŸ” αž’αŸ’αž“αž€αž’αžΆαž…αžŠαŸ†αž‘αžΎαž„αž‡αž‰αŸ’αž‡αžΆαŸ†αž„αž—αŸ’αž›αžΎαž„αžαžΆαž˜αž€αžΆαžšαžŽαŸ‚αž“αžΆαŸ†αž–αžΈ αž―αž€αžŸαžΆαžšαž¬αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αžŸαŸ’αžαž·αžαž“αŸ…αž›αžΎαž”αžŽαŸ’αžαžΆαž‰αžŠαŸ‚αž›αž’αžΆαž…αž‘αž»αž€αž…αž·αžαŸ’αžαž”αžΆαž“ αž¬αž”αŸ’αžšαžΎαž‡αž‰αŸ’αž‡αžΆαŸ†αž„αž—αŸ’αž›αžΎαž„αž—αžΆαž‚αžΈαž‘αžΈαž”αžΈ αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαžαŸ†αž”αž“αŸ‹αž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜αž‘αŸ…αž‡αžΆαžŠαŸ‚αž›αž’αžΆαž…αž‘αž»αž€αž…αž·αžαŸ’αžαž”αžΆαž“ αž¬αž”αž·αž‘αž‡αž‰αŸ’αž‡αžΆαŸ†αž„αž—αŸ’αž›αžΎαž„αŸ–
      firewall-cmd --set-default-zone trusted
      
      firewall-cmd --reload

      αžŠαžΎαž˜αŸ’αž”αžΈαž”αž·αž‘ Firewall αž’αŸ’αž“αž€αž’αžΆαž…αž”αŸ’αžšαžΎαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαžαžΆαž„αž€αŸ’αžšαŸ„αž˜αŸ–

      systemctl disable --now firewalld
      

      SELinux αž…αžΆαŸ†αž”αžΆαž…αŸ‹αžαŸ’αžšαžΌαžœαž”αž·αž‘ αž¬αž”αŸ’αžαžΌαžšαž‘αŸ…αžšαž”αŸ€αž” "αž’αž“αž»αž‰αŸ’αž‰αžΆαž"αŸ–

      setenforce 0
      
      sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config

    • αž•αŸ’αž‘αž»αž€αž˜αŸ‰αžΌαžŒαž»αž› αž“αž·αž„αž€αž‰αŸ’αž…αž”αŸ‹αžαžΊαžŽαŸ‚αž›αž…αžΆαŸ†αž”αžΆαž…αŸ‹ αž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž€αžΆαžšαž•αŸ’αž‘αž»αž€αžŠαŸ„αž™αžŸαŸ’αžœαŸαž™αž”αŸ’αžšαžœαžαŸ’αžαž·αž“αŸƒαž˜αŸ‰αžΌαžŒαž»αž› "br_netfilter" αž“αŸ…αž–αŸαž›αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž”αŸ’αžšαž–αŸαž“αŸ’αž’αŸ–
      modprobe overlay
      
      modprobe br_netfilter
      
      echo "br_netfilter" >> /etc/modules-load.d/br_netfilter.conf
      
      dnf -y install iproute-tc
      

    • αžŠαžΎαž˜αŸ’αž”αžΈαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž€αžΆαžšαž”αž‰αŸ’αž‡αžΌαž“αž”αž“αŸ’αžαž€αž‰αŸ’αž…αž”αŸ‹αž–αŸαžαŸŒαž˜αžΆαž“ αž“αž·αž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž…αžšαžΆαž…αžšαžŽαŸαžαŸ’αžšαžΉαž˜αžαŸ’αžšαžΌαžœ αž™αžΎαž„αž“αžΉαž„αž’αŸ’αžœαžΎαž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžŸαž˜αžŸαŸ’αžšαž”αŸ–
      cat > /etc/sysctl.d/99-kubernetes-cri.conf <<EOF
      net.bridge.bridge-nf-call-iptables = 1
      net.ipv4.ip_forward = 1
      net.bridge.bridge-nf-call-ip6tables = 1
      EOF
      

      αž’αž“αž»αžœαžαŸ’αžαž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžŠαŸ‚αž›αž”αžΆαž“αž’αŸ’αžœαžΎαŸ–

      sysctl --system

    • αž€αŸ†αžŽαžαŸ‹αž€αŸ†αžŽαŸ‚αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž€αžΆαžš CRI-O (αž€αŸ†αžŽαŸ‚αžŸαŸ†αžαžΆαž“αŸ‹ CRI-OαžŠαžΌαž…αžŠαŸ‚αž›αž”αžΆαž“αž”αž‰αŸ’αž‡αžΆαž€αŸ‹αžšαž½αž…αž˜αž€αž αžΎαž™ αžαŸ’αžšαžΌαžœαž‚αŸ’αž“αžΆαž“αžΉαž„αž€αŸ†αžŽαŸ‚αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž€αžΆαžš Kubernetes) αž…αžΆαž”αŸ‹αžαžΆαŸ†αž„αž–αžΈαž€αŸ†αžŽαŸ‚αžŸαŸ’αžαŸαžšαž—αžΆαž–αž…αž»αž„αž€αŸ’αžšαŸ„αž™αž”αŸ†αž•αž»αžαŸ” Kubernetes αž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“ 1.18:
      export REQUIRED_VERSION=1.18
      

      αž”αž“αŸ’αžαŸ‚αž˜αžƒαŸ’αž›αžΆαŸ†αž„αž…αžΆαŸ†αž”αžΆαž…αŸ‹αŸ–

      dnf -y install 'dnf-command(copr)'
      
      dnf -y copr enable rhcontainerbot/container-selinux
      
      curl -L -o /etc/yum.repos.d/devel:kubic:libcontainers:stable.repo https://download.opensuse.org/repositories/devel:kubic:libcontainers:stable/CentOS_8/devel:kubic:libcontainers:stable.repo
      
      curl -L -o /etc/yum.repos.d/devel:kubic:libcontainers:stable:cri-o:$REQUIRED_VERSION.repo https://download.opensuse.org/repositories/devel:kubic:libcontainers:stable:cri-o:$REQUIRED_VERSION/CentOS_8/devel:kubic:libcontainers:stable:cri-o:$REQUIRED_VERSION.repo

    • αž₯αž‘αžΌαžœαž“αŸαŸ‡αž™αžΎαž„αž’αžΆαž…αžŠαŸ†αž‘αžΎαž„αž”αžΆαž“αŸ” CRI-O:
      dnf -y install cri-o
      

      αž™αž€αž…αž·αžαŸ’αžαž‘αž»αž€αžŠαžΆαž€αŸ‹αž…αŸ†αž–αŸ„αŸ‡αž—αžΆαž–αžαž»αžŸαž”αŸ’αž›αŸ‚αž€αž‚αŸ’αž“αžΆαžŠαŸ†αž”αžΌαž„αžŠαŸ‚αž›αž™αžΎαž„αž‡αž½αž”αž”αŸ’αžšαž‘αŸ‡αž€αŸ’αž“αž»αž„αž’αŸ†αž‘αž»αž„αž–αŸαž›αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŠαŸ†αž‘αžΎαž„: αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž€αŸ‚αžŸαž˜αŸ’αžšαž½αž›αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹ CRI-O αž˜αž»αž“αž–αŸαž›αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜ αž…αžΆαž”αŸ‹αžαžΆαŸ†αž„αž–αžΈαžŸαž˜αžΆαžŸαž’αžΆαžαž» conmon αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž€αžΆαžšαž˜αžΆαž“αž‘αžΈαžαžΆαŸ†αž„αžαž»αžŸαž–αžΈαž’αŸ’αžœαžΈαžŠαŸ‚αž›αž”αžΆαž“αž”αž‰αŸ’αž‡αžΆαž€αŸ‹αŸ–

      sed -i 's//usr/libexec/crio/conmon//usr/bin/conmon/' /etc/crio/crio.conf

      αž₯αž‘αžΌαžœαž“αŸαŸ‡αž’αŸ’αž“αž€αž’αžΆαž…αž’αŸ’αžœαžΎαž±αŸ’αž™αžŸαž€αž˜αŸ’αž˜ αž“αž·αž„αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αžŠαŸαž˜αž·αž“ CRI-O:

      systemctl enable --now crio
      

      αž’αŸ’αž“αž€αž’αžΆαž…αž–αž·αž“αž·αžαŸ’αž™αž˜αžΎαž›αžŸαŸ’αžαžΆαž“αž—αžΆαž–αžŠαŸαž˜αž·αž“αŸ–

      systemctl status crio
      

  2. αž€αžΆαžšαžŠαŸ†αž‘αžΎαž„αž“αž·αž„αž€αžΆαžšαž’αŸ’αžœαžΎαž±αŸ’αž™αžŸαž€αž˜αŸ’αž˜ Kubernetes.
    • αžαŸ„αŸ‡αž”αž“αŸ’αžαŸ‚αž˜αžƒαŸ’αž›αžΆαŸ†αž„αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž€αžΆαžšαŸ–
      cat <<EOF > /etc/yum.repos.d/kubernetes.repo
      [kubernetes]
      name=Kubernetes
      baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-$basearch
      enabled=1
      gpgcheck=1
      repo_gpgcheck=1
      gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
      exclude=kubelet kubeadm kubectl
      EOF
      

      αž₯αž‘αžΌαžœαž“αŸαŸ‡αž™αžΎαž„αž’αžΆαž…αžŠαŸ†αž‘αžΎαž„αž”αžΆαž“αŸ” Kubernetes (αž€αŸ†αžŽαŸ‚ 1.18 αžŠαžΌαž…αžŠαŸ‚αž›αž”αžΆαž“αžšαŸ€αž”αžšαžΆαž”αŸ‹αžαžΆαž„αž›αžΎ)αŸ–

      dnf install -y kubelet-1.18* kubeadm-1.18* kubectl-1.18* --disableexcludes=kubernetes

    • nuance αžŸαŸ†αžαžΆαž“αŸ‹αž‘αžΈαž–αžΈαžšαŸ– αžŠαŸ„αž™αžŸαžΆαžšαž™αžΎαž„αž˜αž·αž“αž”αŸ’αžšαžΎαžŠαŸαž˜αž·αž“ Dockersαž”αŸ‰αž»αž“αŸ’αžαŸ‚αž™αžΎαž„αž”αŸ’αžšαžΎαžŠαŸαž˜αž·αž“ CRI-Oαž˜αž»αž“αž–αŸαž›αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜ αž“αž·αž„αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜ Kubernetes αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž’αŸ’αžœαžΎαž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžŸαž˜αžŸαŸ’αžšαž”αž“αŸ…αž€αŸ’αž“αž»αž„αž―αž€αžŸαžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’ /var/lib/kubelet/config.yaml αžŠαŸ„αž™αž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαžαžαžŠαŸ‚αž›αž…αž„αŸ‹αž”αžΆαž“αž‡αžΆαž˜αž»αž“αžŸαž·αž“αŸ–
      mkdir /var/lib/kubelet
      
      cat <<EOF > /var/lib/kubelet/config.yaml
      apiVersion: kubelet.config.k8s.io/v1beta1
      kind: KubeletConfiguration
      cgroupDriver: systemd
      EOF

    • αž…αŸ†αžŽαž»αž…αžŸαŸ†αžαžΆαž“αŸ‹αž‘αžΈ XNUMX αžŠαŸ‚αž›αž™αžΎαž„αž‡αž½αž”αž”αŸ’αžšαž‘αŸ‡αž€αŸ†αž‘αž»αž„αž–αŸαž›αžŠαŸ†αž‘αžΎαž„αŸ– αž‘αŸ„αŸ‡αž”αžΈαž‡αžΆαž™αžΎαž„αž”αžΆαž“αž”αž„αŸ’αž αžΆαž‰αž’αŸ’αž“αž€αž”αžΎαž€αž”αžšαž”αžΆαž“αž”αŸ’αžšαžΎαž€αŸαžŠαŸ„αž™αŸ” cgroupαž αžΎαž™αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαž”αžŸαŸ‹αžœαžΆαžαžΆαž˜αžšαž™αŸˆαž’αžΆαž‚αž»αž™αž˜αŸ‰αž„αŸ‹αž”αžΆαž“αž†αŸ’αž›αž„αž€αžΆαžαŸ‹ αž‚αžΌαž” αž αž½αžŸαžŸαž˜αŸαž™ (αžŠαžΌαž…αžŠαŸ‚αž›αž”αžΆαž“αž”αž‰αŸ’αž‡αžΆαž€αŸ‹αž™αŸ‰αžΆαž„αž…αŸ’αž”αžΆαžŸαŸ‹αž“αŸ…αž€αŸ’αž“αž»αž„αž―αž€αžŸαžΆαžš) αž™αžΎαž„αžαŸ’αžšαžΌαžœαž”αž“αŸ’αžαŸ‚αž˜αž’αžΆαž‚αž»αž™αž˜αŸ‰αž„αŸ‹αž‘αŸ…αž€αŸ’αž“αž»αž„αž―αž€αžŸαžΆαžš αž”αžΎαž˜αž·αž“αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž‘αŸ αž…αž„αŸ’αž€αŸ„αž˜αžšαž”αžŸαŸ‹αž™αžΎαž„αž“αžΉαž„αž˜αž·αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž‘αŸαŸ–
      cat /dev/null > /etc/sysconfig/kubelet
      
      cat <<EOF > /etc/sysconfig/kubelet
      KUBELET_EXTRA_ARGS=--container-runtime=remote --cgroup-driver=systemd --container-runtime-endpoint='unix:///var/run/crio/crio.sock'
      EOF

    • αž₯αž‘αžΌαžœαž“αŸαŸ‡αž™αžΎαž„αž’αžΆαž…αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŠαŸαž˜αž·αž“ αž‚αžΌαž”:
      sudo systemctl enable --now kubelet
      

      αžŠαžΎαž˜αŸ’αž”αžΈαž”αŸ’αžŠαžΌαžšαžαžΆαž˜αž”αŸ†αžŽαž„ αž™αž“αŸ’αžαž αŸ„αŸ‡αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„ ឬ αž€αž˜αŸ’αž˜αž€αžš αžαŸ’αž“αžΆαŸ†αž„αž€αŸ’αž“αž»αž„αžšαž™αŸˆαž–αŸαž›αž”αŸ‰αž»αž“αŸ’αž˜αžΆαž“αž“αžΆαž‘αžΈαž’αŸ’αž“αž€αž’αžΆαž…αž”αŸ’αžšαžΎ αž‡αžΆαž˜αž½αž™αžŸαŸ’αž‚αŸ’αžšαžΈαž”αž“αŸαŸ‡αŸ”.

  3. αžŠαž›αŸ‹αž–αŸαž›αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž…αž„αŸ’αž€αŸ„αž˜αžšαž”αžŸαŸ‹αž™αžΎαž„αŸ”
    • αžŠαžΎαž˜αŸ’αž”αžΈαž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž…αž„αŸ’αž€αŸ„αž˜ αžŸαžΌαž˜αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαŸ–
      kubeadm init --pod-network-cidr=10.244.0.0/16
      

      αžαŸ’αžšαžΌαžœαž”αŸ’αžšαžΆαž€αžŠαžαžΆαžŸαžšαžŸαŸαžšαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαžŠαžΎαž˜αŸ’αž”αžΈαž…αžΌαž›αžšαž½αž˜αž…αž„αŸ’αž€αŸ„αž˜ β€œkubeadm join …” αžŠαŸ‚αž›αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŸαŸ’αž“αžΎαž±αŸ’αž™αž”αŸ’αžšαžΎαž“αŸ…αž…αž»αž„αž”αž‰αŸ’αž…αž”αŸ‹αž“αŸƒαž›αž‘αŸ’αž’αž•αž› αž¬αž™αŸ‰αžΆαž„αž αŸ„αž…αžŽαžΆαžŸαŸ‹αž“αž·αž˜αž·αžαŸ’αžαžŸαž‰αŸ’αž‰αžΆαžŠαŸ‚αž›αž”αžΆαž“αž”αž‰αŸ’αž‡αžΆαž€αŸ‹αŸ”

    • αžαŸ„αŸ‡αžŠαŸ†αž‘αžΎαž„αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž‡αŸ†αž“αž½αž™ (CNI) αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αžŽαŸ’αžαžΆαž‰αž•αžαŸ” αžαŸ’αž‰αž»αŸ†αžŸαžΌαž˜αžŽαŸ‚αž“αžΆαŸ†αž±αŸ’αž™αž”αŸ’αžšαžΎ αž€αžΆαž›αžΈαž€αžΌαŸ”. αž”αŸ’αžšαž αŸ‚αž›αž‡αžΆαž–αŸαž‰αž“αž·αž™αž˜αž‡αžΆαž„ Flannel αž˜αžΆαž“αž”αž‰αŸ’αž αžΆαž—αžΆαž–αž†αž”αž‚αŸ’αž“αžΆαž‡αžΆαž˜αž½αž™ nftablesαž”αžΆαž‘ αž“αž·αž„ αž€αžΆαž›αžΈαž€αžΌαŸ” - αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αž CNI αžαŸ‚αž˜αž½αž™αž‚αžαŸ‹αžŠαŸ‚αž›αž”αžΆαž“αžŽαŸ‚αž“αžΆαŸ† αž“αž·αž„αžŸαžΆαž€αž›αŸ’αž”αž„αž™αŸ‰αžΆαž„αž–αŸαž‰αž›αŸαž‰αžŠαŸ„αž™αž‚αž˜αŸ’αžšαŸ„αž„ Kubernetes:
      kubectl --kubeconfig /etc/kubernetes/admin.conf apply -f https://docs.projectcalico.org/v3.15/manifests/calico.yaml 

    • αžŠαžΎαž˜αŸ’αž”αžΈαž—αŸ’αž‡αžΆαž”αŸ‹αžαŸ’αž“αžΆαŸ†αž„αž€αž˜αŸ’αž˜αž€αžšαž‘αŸ…αž“αžΉαž„αž…αž„αŸ’αž€αŸ„αž˜αžšαž”αžŸαŸ‹αž™αžΎαž„ αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αžœαžΆαžαžΆαž˜αž€αžΆαžšαžŽαŸ‚αž“αžΆαŸ†αž‘αžΈ 1 αž“αž·αž„ 2 αž¬αž”αŸ’αžšαžΎ αžŸαŸ’αž‚αŸ’αžšαžΈαž”αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαž–αžΈαž›αž‘αŸ’αž’αž•αž› "kubeadm init..." αžŠαŸ‚αž›αž™αžΎαž„αž”αžΆαž“αžŸαžšαžŸαŸαžšαž…αž»αŸ‡αž€αŸ’αž“αž»αž„αž‡αŸ†αž αžΆαž“αž˜αž»αž“αŸ–
      kubeadm join $CONTROL_PLANE_ADDRESS:6443 --token $TOKEN 
          --discovery-token-ca-cert-hash $TOKEN_HASH

    • αžŸαžΌαž˜αž–αž·αž“αž·αžαŸ’αž™αž˜αžΎαž›αžαžΆαž…αž„αŸ’αž€αŸ„αž˜αžšαž”αžŸαŸ‹αž™αžΎαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜ αž“αž·αž„αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαŸ–
      kubectl --kubeconfig=/etc/kubernetes/admin.conf get pods -A
      

    αžšαž½αž…αžšαžΆαž›αŸ‹αž αžΎαž™! αž’αŸ’αž“αž€αž’αžΆαž…αž”αž„αŸ’αž αŸ„αŸ‡ payloads αž“αŸ…αž›αžΎ cluster K8s αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αŸ”

αž’αŸ’αžœαžΈαžŠαŸ‚αž›αž€αŸ†αž–αž»αž„αžšαž„αŸ‹αž…αžΆαŸ†αž™αžΎαž„αž“αŸ…αžαžΆαž„αž˜αž»αž

αžαŸ’αž‰αž»αŸ†αžŸαž„αŸ’αžƒαžΉαž˜αžαžΆαž€αžΆαžšαžŽαŸ‚αž“αžΆαŸ†αžαžΆαž„αž›αžΎαž”αžΆαž“αž‡αž½αž™αž’αŸ’αž“αž€αžŸαž“αŸ’αžŸαŸ†αž–αŸαž›αžœαŸαž›αžΆ αž“αž·αž„αž—αŸαž™αžαŸ’αž›αŸ‡αŸ”
αž›αž‘αŸ’αž’αž•αž›αž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŠαŸ‚αž›αž€αžΎαžαž‘αžΎαž„αž“αŸ…αž€αŸ’αž“αž»αž„αž§αžŸαŸ’αžŸαžΆαž αž€αž˜αŸ’αž˜αž“αŸαŸ‡αž‡αžΆαžšαžΏαž™αŸ—αž’αžΆαžŸαŸ’αžšαŸαž™αž›αžΎαžšαž”αŸ€αž”αžŠαŸ‚αž›αž–αž½αž€αž‚αŸαžαŸ’αžšαžΌαžœαž”αžΆαž“αž‘αž‘αž½αž›αž™αž€αžŠαŸ„αž™αž—αžΆαž‚αž…αŸ’αžšαžΎαž“αž“αŸƒαž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž…αž»αž„αž€αŸ’αžšαŸ„αž™ αž“αž·αž„αž’αŸ’αž“αž€αž”αž„αŸ’αž€αžΎαžαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž•αŸ’αžŸαŸαž„αž‘αŸ€αžαž“αŸ…αž€αŸ’αž“αž»αž„αž‘αžΈαž•αŸ’αžŸαžΆαžšαž–αž·αžŸαŸαžŸαžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž‚αŸ’αž“αžΆαŸ” αžœαžΆαž˜αž·αž“αž‘αžΆαž“αŸ‹αž…αŸ’αž”αžΆαžŸαŸ‹αž“αŸ…αž‘αžΎαž™αž‘αŸαžαžΆαžαžΎαž‚αŸ†αž“αž·αžαž•αŸ’αžαž½αž…αž•αŸ’αžαžΎαž˜ OCI αž“αžΉαž„αž“αžΆαŸ†αž‘αŸ…αžšαž€αž’αŸ’αžœαžΈαž€αŸ’αž“αž»αž„αžšαž™αŸˆαž–αŸαž›αž–αžΈαžšαž”αžΈαž†αŸ’αž“αžΆαŸ†αž‘αŸ€αž αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž™αžΎαž„αž“αžΉαž„αž˜αžΎαž›αžŠαŸ„αž™αž€αŸ’αžαžΈαžšαžΈαž€αžšαžΆαž™αŸ” αž’αŸ’αž“αž€αž’αžΆαž…αž…αŸ‚αž€αžšαŸ†αž›αŸ‚αž€αž‚αŸ†αž“αž·αžαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž₯αž‘αžΌαžœαž“αŸαŸ‡αž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžαž·αž™αŸ„αž”αž›αŸ‹αŸ”

αž…αžΆαŸ†αž˜αžΎαž›!

αž’αžαŸ’αžαž”αž‘αž“αŸαŸ‡αž”αžΆαž“αž›αŸαž…αž…αŸαž‰αžŠαŸ„αž™αžŸαžΆαžšαž”αŸ’αžšαž—αž–αžαžΆαž„αž€αŸ’αžšαŸ„αž˜αŸ–

  • αž•αŸ’αž“αŸ‚αž€αž’αŸ†αž–αžΈαž€αž»αž„αžαžΊαž“αŸαžšαžŠαŸ†αžŽαžΎαžšαž€αžΆαžš αž―αž€αžŸαžΆαžš Kubernetes
  • αž‘αŸ†αž–αŸαžš αž‚αž˜αŸ’αžšαŸ„αž„ CRI-O αž“αŸ…αž›αžΎαž’αŸŠαžΈαž“αž’αžΊαžŽαž·αž
  • αž’αžαŸ’αžαž”αž‘αž”αŸ’αž›αž€αŸ‹αž˜αž½αž€αž€αŸ’αžšαž αž˜αŸ– αž˜αž½αž™β€‹αž“αŸαŸ‡, αž“αŸαŸ‡ αž“αž·αž„αž’αŸ’αž“αž€αž•αŸ’αžŸαŸαž„αž‘αŸ€αžαž‡αžΆαž…αŸ’αžšαžΎαž“αŸ”



αž”αŸ’αžšαž—αž–: www.habr.com

αž”αž“αŸ’αžαŸ‚αž˜αž˜αžαž·αž™αŸ„αž”αž›αŸ‹