αž‡αž½αžŸαž‡αž»αž›αžšαž“αŸ’αž’αž“αŸ…αž€αŸ’αž“αž»αž„αž…αž„αŸ’αž€αŸ„αž˜ Kubernetes αŸ” αžšαžΆαž™αž€αžΆαžšαžŽαŸ αž“αž·αž„αž”αŸ’αžšαžαž·αž…αžΆαžšαžΉαž€αž–αžΈ DevOpsConf

Pavel Selivanov αžŸαŸ’αžαžΆαž”αžαŸ’αž™αž€αžšαžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™ Southbridge αž“αž·αž„αž‡αžΆαž‚αŸ’αžšαžΌαž”αž„αŸ’αžšαŸ€αž“ Slurm αž”αžΆαž“αž’αŸ’αžœαžΎαž”αž‘αž”αž„αŸ’αž αžΆαž‰αž“αŸ… DevOpsConf 2019αŸ” αž€αžΆαžšαž–αž·αž—αžΆαž€αŸ’αžŸαžΆαž“αŸαŸ‡αž‚αžΊαž‡αžΆαž•αŸ’αž“αŸ‚αž€αž˜αž½αž™αž“αŸƒαž”αŸ’αžšαž’αžΆαž“αž”αž‘αž“αŸƒαžœαž‚αŸ’αž‚αžŸαž·αž€αŸ’αžŸαžΆαžŸαŸŠαžΈαž‡αž˜αŸ’αžšαŸ…αž›αžΎ Kubernetes "Slurm Mega" αŸ”

Slurm BasicαŸ– αž€αžΆαžšαžŽαŸ‚αž“αžΆαŸ†αž’αŸ†αž–αžΈ Kubernetes αž”αŸ’αžšαž–αŸ’αžšαžΉαžαŸ’αžαž‘αŸ…αž“αŸ…αž‘αžΈαž€αŸ’αžšαž»αž„αž˜αŸ‰αžΌαžŸαŸ’αž‚αžΌ αžαŸ’αž„αŸƒαž‘αžΈ 18-20 αžαŸ‚αžœαž·αž…αŸ’αž†αž·αž€αžΆαŸ”
Slurm Mega: αžŸαž˜αŸ’αž›αžΉαž„αž˜αžΎαž›αž€αŸ’αžšαŸ„αž˜αž€αŸ’αžšαžŽαžΆαžαŸ‹αžšαž”αžŸαŸ‹ Kubernetes β€” αž‘αžΈαž€αŸ’αžšαž»αž„αž˜αŸ‰αžΌαžŸαŸ’αž‚αžΌ αžαŸ’αž„αŸƒαž‘αžΈ ្្-្ៀ αžαŸ‚αžœαž·αž…αŸ’αž†αž·αž€αžΆαŸ”
Slurm OnlineαŸ– αžœαž‚αŸ’αž‚αžŸαž·αž€αŸ’αžŸαžΆ Kubernetes αž‘αžΆαŸ†αž„αž–αžΈαžš αžαŸ‚αž„αžαŸ‚αž˜αžΆαž“αŸ”

αžαžΆαž„αž€αŸ’αžšαŸ„αž˜αž€αžΆαžšαž€αžΆαžαŸ‹αž‚αžΊαž‡αžΆαž”αŸ’αžšαžαž·αž…αžΆαžšαž·αž€αž“αŸƒαžšαž”αžΆαž™αž€αžΆαžšαžŽαŸαŸ”

αž’αžšαž»αžŽαžŸαž½αžŸαŸ’αžαžΈαž˜αž·αžαŸ’αžαžšαž½αž˜αž€αžΆαžšαž„αžΆαžš αž“αž·αž„αž’αŸ’αž“αž€αžŠαŸ‚αž›αž’αžΆαžŽαž·αžαž–αž½αž€αž‚αŸαŸ” αžαŸ’αž„αŸƒαž“αŸαŸ‡αžαŸ’αž‰αž»αŸ†αž“αžΉαž„αž“αž·αž™αžΆαž™αž’αŸ†αž–αžΈαžŸαž»αžœαžαŸ’αžαž·αž—αžΆαž–αŸ”

αžαŸ’αž‰αž»αŸ†β€‹αžƒαžΎαž‰β€‹αžαžΆβ€‹αž˜αžΆαž“β€‹αžŸαž“αŸ’αžαž·αžŸαž»αžβ€‹αž…αŸ’αžšαžΎαž“β€‹αž“αŸ…β€‹αž€αŸ’αž“αž»αž„β€‹αžŸαžΆαž›β€‹αžŸαž–αŸ’αžœβ€‹αžαŸ’αž„αŸƒαŸ” αžαŸ’αž‰αž»αŸ†αžŸαž»αŸ†αž‘αŸ„αžŸαž’αŸ’αž“αž€αž‡αžΆαž˜αž»αž“ αž”αŸ’αžšαžŸαž·αž“αž”αžΎαžαŸ’αž‰αž»αŸ†αž”αŸ’αžšαžΎαž–αžΆαž€αŸ’αž™αž–αžΈαž–αž·αž—αž–αžŸαž»αžœαžαŸ’αžαž·αž—αžΆαž–αž˜αž·αž“αž–αž·αžαž”αŸ’αžšαžΆαž€αžŠαžŠαžΌαž…αž‘αž˜αŸ’αž›αžΆαž”αŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€αŸ”

αžœαžΆαž”αžΆαž“αž€αžΎαžαž‘αžΎαž„αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž”αŸ’αžšαž αŸ‚αž›αž”αŸ’αžšαžΆαŸ†αž˜αž½αž™αžαŸ‚αž˜αž»αž“αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αž†αŸ’αž›αž„αž€αžΆαžαŸ‹αž…αž„αŸ’αž€αŸ„αž˜ Kubernetes αžŸαžΆαž’αžΆαžšαžŽαŸˆαž˜αž½αž™αŸ” αžŸαžΆαž’αžΆαžšαžŽαŸˆαž˜αžΆαž“αž“αŸαž™αžαžΆαž˜αžΆαž“αž…αŸ†αž“αž½αž“ nth αž“αŸƒ namespaces; αž“αŸ…αž€αŸ’αž“αž»αž„ namespaces αž‘αžΆαŸ†αž„αž“αŸαŸ‡αž˜αžΆαž“αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžŠαžΆαž…αŸ‹αžŠαŸ„αž™αž‘αŸ‚αž€αž“αŸ…αž€αŸ’αž“αž»αž„ namespace αžšαž”αžŸαŸ‹αž–αž½αž€αž‚αŸαŸ” αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž“αŸαŸ‡αž‡αžΆαž€αž˜αŸ’αž˜αžŸαž·αž‘αŸ’αž’αž·αžšαž”αžŸαŸ‹αž€αŸ’αžšαž»αž˜αž αŸŠαž»αž“αž•αŸ’αžŸαŸαž„αŸ—αž‚αŸ’αž“αžΆαŸ” αž‡αžΆαž€αžΆαžšαž”αŸ’αžšαžŸαžΎαžšαžŽαžΆαžŸαŸ‹, αžœαžΆαžαŸ’αžšαžΌαžœαž”αžΆαž“αž‚αŸαžŸαž“αŸ’αž˜αžαŸ‹αžαžΆαž…αž„αŸ’αž€αŸ„αž˜αž“αŸαŸ‡αž‚αž½αžšαžαŸ‚αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαžΎαž‡αžΆ CDN αŸ” αž“αŸ„αŸ‡αž‚αžΊαž–αž½αž€αž‚αŸαž•αŸ’αžαž›αŸ‹αž±αŸ’αž™αž’αŸ’αž“αž€αž“αžΌαžœαž…αž„αŸ’αž€αŸ„αž˜αž˜αž½αž™ αž–αž½αž€αž‚αŸαž•αŸ’αžαž›αŸ‹αž±αŸ’αž™αž’αŸ’αž“αž€αž“αžΌαžœαž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž“αŸ…αž‘αžΈαž“αŸ„αŸ‡ αž’αŸ’αž“αž€αž‘αŸ…αž‘αžΈαž“αŸ„αŸ‡αž‘αŸ…αž€αžΆαž“αŸ‹ namespace αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€ αžŠαžΆαž€αŸ‹αž–αž„αŸ’αžšαžΆαž™αž•αŸ’αž“αŸ‚αž€αžαžΆαž„αž˜αž»αžαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αŸ”

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

αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αž˜αž€αž€αŸ’αžšαž»αž˜αž“αŸαŸ‡αŸ” αžαŸ’αž‰αž»αŸ†β€‹αžαŸ’αžšαžΌαžœβ€‹αž”αžΆαž“β€‹αž•αŸ’αžαž›αŸ‹β€‹αžŸαž·αž‘αŸ’αž’αž·β€‹αž˜αžΆαž“β€‹αž€αŸ†αžŽαžαŸ‹ αž…αž“αŸ’αž›αŸ„αŸ‡β€‹αžˆαŸ’αž˜αŸ„αŸ‡β€‹αž˜αžΆαž“β€‹αž€αŸ†αžŽαžαŸ‹αŸ” αž”αž»αžšαžŸαž“αŸ…αž‘αžΈαž“αŸ„αŸ‡αž™αž›αŸ‹αžαžΆαžŸαž»αžœαžαŸ’αžαž·αž—αžΆαž–αž‡αžΆαž’αŸ’αžœαžΈαŸ” αž–αž½αž€αž‚αŸαž”αžΆαž“αž’αžΆαž“αž’αŸ†αž–αžΈαž€αžΆαžšαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž€αžΆαžšαž…αžΌαž›αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžŠαŸ„αž™αž•αŸ’αž’αŸ‚αž€αž›αžΎαžαž½αž“αžΆαž‘αžΈ (RBAC) αž“αŸ…αž€αŸ’αž“αž»αž„ Kubernetes αž αžΎαž™αž–αž½αž€αž‚αŸαž”αžΆαž“αž”αž„αŸ’αžœαž·αž›αžœαžΆ αžŠαžΌαž…αŸ’αž“αŸαŸ‡αžαŸ’αž‰αž»αŸ†αž˜αž·αž“αž’αžΆαž…αž”αžΎαž€αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš pods αžŠαžΆαž…αŸ‹αžŠαŸ„αž™αž‘αŸ‚αž€αž–αžΈαž€αžΆαžšαžŠαžΆαž€αŸ‹αž–αž„αŸ’αžšαžΆαž™αž”αžΆαž“αž‘αŸαŸ” αžαŸ’αž‰αž»αŸ†β€‹αž˜αž·αž“β€‹αž…αžΆαŸ†β€‹αžαžΆβ€‹αž”αž‰αŸ’αž αžΆβ€‹αžŠαŸ‚αž›β€‹αžαŸ’αž‰αž»αŸ†β€‹αž€αŸ†αž–αž»αž„β€‹αž–αŸ’αž™αžΆαž™αžΆαž˜β€‹αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™β€‹αžŠαŸ„αž™β€‹αž€αžΆαžšβ€‹αž”αžΎαž€β€‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšβ€‹ pod αž˜αž½αž™β€‹αžŠαŸ„αž™β€‹αž˜αž·αž“β€‹αž˜αžΆαž“β€‹αž€αžΆαžšβ€‹αžŠαžΆαž€αŸ‹β€‹αž–αž„αŸ’αžšαžΆαž™β€‹αž“αŸ„αŸ‡β€‹αž‘αŸ αž”αŸ‰αž»αž“αŸ’αžαŸ‚β€‹αžαŸ’αž‰αž»αŸ†β€‹αž–αž·αžβ€‹αž‡αžΆβ€‹αž…αž„αŸ‹β€‹αž”αžΎαž€β€‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšβ€‹αž‚αŸ’αžšαžΆαž“αŸ‹β€‹αžαŸ‚β€‹ pod αž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡αŸ” αžŠαžΎαž˜αŸ’αž”αžΈαžŸαŸ†αžŽαžΆαž„αž›αŸ’αž’ αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αžŸαž˜αŸ’αžšαŸαž…αž…αž·αžαŸ’αžαž˜αžΎαž›αžαžΆαžαžΎαžαŸ’αž‰αž»αŸ†αž˜αžΆαž“αžŸαž·αž‘αŸ’αž’αž·αž’αŸ’αžœαžΈαžαŸ’αž›αŸ‡αž“αŸ…αž€αŸ’αž“αž»αž„αž…αž„αŸ’αž€αŸ„αž˜ αž’αŸ’αžœαžΈαžŠαŸ‚αž›αžαŸ’αž‰αž»αŸ†αž’αžΆαž…αž’αŸ’αžœαžΎαž”αžΆαž“ αž’αŸ’αžœαžΈαžŠαŸ‚αž›αžαŸ’αž‰αž»αŸ†αž˜αž·αž“αž’αžΆαž…αž’αŸ’αžœαžΎαž”αžΆαž“ αž“αž·αž„αž’αŸ’αžœαžΈαžŠαŸ‚αž›αž–αž½αž€αž‚αŸαž”αžΆαž“αž’αŸ’αžœαžΎαž“αŸ…αž‘αžΈαž“αŸ„αŸ‡αŸ” αž€αŸ’αž“αž»αž„αž–αŸαž›αž‡αžΆαž˜αž½αž™αž‚αŸ’αž“αžΆαž“αŸαŸ‡ αžαŸ’αž‰αž»αŸ†αž“αžΉαž„αž”αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€αž–αžΈαž’αŸ’αžœαžΈαžŠαŸ‚αž›αž–αž½αž€αž‚αŸαž”αžΆαž“αž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž˜αž·αž“αžαŸ’αžšαžΉαž˜αžαŸ’αžšαžΌαžœαž“αŸ…αž€αŸ’αž“αž»αž„ RBACαŸ”

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

αžαŸ’αž‰αž»αŸ†αž“αžΉαž„αž”αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž§αž‘αžΆαž αžšαžŽαŸαž’αŸ†αž–αžΈαžšαž”αŸ€αž”αžŠαŸ‚αž›αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αž’αŸ’αžœαžΎαžšαžΏαž„αž“αŸαŸ‡ αž“αž·αž„αžšαž”αŸ€αž”αž€αžΆαžšαž–αžΆαžšαžαŸ’αž›αž½αž“αž’αŸ’αž“αž€αž–αžΈαžšαžΏαž„αž“αŸαŸ‡αŸ”

αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž‡αžΆαžŠαŸ†αž”αžΌαž„αžαŸ’αž‰αž»αŸ†αžŸαžΌαž˜αžŽαŸ‚αž“αžΆαŸ†αžαŸ’αž›αž½αž“αžαŸ’αž‰αž»αŸ†αŸ” αžˆαŸ’αž˜αŸ„αŸ‡αžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ†αž‚αžΊ Pavel Selivanov αŸ” αžαŸ’αž‰αž»αŸ†αž‡αžΆαžŸαŸ’αžαžΆαž”αžαŸ’αž™αž€αžšαž“αŸ… Southbridge αŸ” αžαŸ’αž‰αž»αŸ†αž™αž›αŸ‹αž’αŸ†αž–αžΈ Kubernetes, DevOps αž“αž·αž„αž”αŸ’αžšαž—αŸαž‘αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž“αŸƒαžšαžΏαž„αž”αŸ’αžšαžŒαž·αžαŸ” αžœαž·αžŸαŸ’αžœαž€αžš Southbridge αž“αž·αž„αžαŸ’αž‰αž»αŸ†αž€αŸ†αž–αž»αž„αžŸαžΆαž„αžŸαž„αŸ‹αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž“αŸαŸ‡ αž αžΎαž™αžαŸ’αž‰αž»αŸ†αž€αŸ†αž–αž»αž„αž”αŸ’αžšαžΉαž€αŸ’αžŸαžΆαŸ”

αž”αž“αŸ’αžαŸ‚αž˜αž–αžΈαž›αžΎαžŸαž€αž˜αŸ’αž˜αž—αžΆαž–αžŸαŸ†αžαžΆαž“αŸ‹αŸ—αžšαž”αžŸαŸ‹αž™αžΎαž„ αžαŸ’αž˜αžΈαŸ—αž“αŸαŸ‡αž™αžΎαž„αž”αžΆαž“αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž‚αž˜αŸ’αžšαŸ„αž„αžŠαŸ‚αž›αž αŸ…αžαžΆ SlurmsαŸ” αž™αžΎαž„αž€αŸ†αž–αž»αž„αž–αŸ’αž™αžΆαž™αžΆαž˜αž“αžΆαŸ†αž™αž€αžŸαž˜αžαŸ’αžαž—αžΆαž–αžšαž”αžŸαŸ‹αž™αžΎαž„αž€αŸ’αž“αž»αž„αž€αžΆαžšαž’αŸ’αžœαžΎαž€αžΆαžšαž‡αžΆαž˜αž½αž™ Kubernetes αž”αž“αŸ’αžαž·αž…αž‘αŸ…αž€αžΆαž“αŸ‹αž˜αž αžΆαž‡αž“ αžŠαžΎαž˜αŸ’αž”αžΈαž”αž„αŸ’αžšαŸ€αž“αž˜αž“αž»αžŸαŸ’αžŸαž•αŸ’αžŸαŸαž„αž‘αŸ€αžαž±αŸ’αž™αž’αŸ’αžœαžΎαž€αžΆαžšαž‡αžΆαž˜αž½αž™ K8s αž•αž„αžŠαŸ‚αžšαŸ”

αžαžΎαžαŸ’αž„αŸƒαž“αŸαŸ‡αžαŸ’αž‰αž»αŸ†αž“αžΉαž„αž“αž·αž™αžΆαž™αž’αŸ†αž–αžΈαž’αŸ’αžœαžΈ? αž”αŸ’αžšαž’αžΆαž“αž”αž‘αž“αŸƒαžšαž”αžΆαž™αž€αžΆαžšαžŽαŸαž‚αžΊαž‡αžΆαž€αŸ‹αžŸαŸ’αžαŸ‚αž„ - αž’αŸ†αž–αžΈαžŸαž»αžœαžαŸ’αžαž·αž—αžΆαž–αž“αŸƒαž…αž„αŸ’αž€αŸ„αž˜ Kubernetes αŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžαŸ’αž‰αž»αŸ†αž…αž„αŸ‹αž“αž·αž™αžΆαž™αž—αŸ’αž›αžΆαž˜αŸ—αžαžΆαž”αŸ’αžšαž’αžΆαž“αž”αž‘αž“αŸαŸ‡αž˜αžΆαž“αž‘αŸ†αž αŸ†αž’αŸ†αžŽαžΆαžŸαŸ‹ - αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž αžΎαž™αžαŸ’αž‰αž»αŸ†αž…αž„αŸ‹αž”αž‰αŸ’αž‡αžΆαž€αŸ‹αž—αŸ’αž›αžΆαž˜αŸ—αž“αžΌαžœαž’αŸ’αžœαžΈαžŠαŸ‚αž›αžαŸ’αž‰αž»αŸ†αž“αžΉαž„αž˜αž·αž“αž“αž·αž™αžΆαž™αž’αŸ†αž–αžΈαŸ” αžαŸ’αž‰αž»αŸ†αž“αžΉαž„αž˜αž·αž“αž“αž·αž™αžΆαž™αž’αŸ†αž–αžΈαž–αžΆαž€αŸ’αž™ hackneyed αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž˜αž½αž™αžšαž™αžŠαž„αž“αŸ…αž›αžΎαž’αŸŠαžΈαž“αž’αžΊαžŽαž·αžαž‘αŸαŸ” αž‚αŸ’αžšαž”αŸ‹αž”αŸ’αžšαž—αŸαž‘αž“αŸƒ RBAC αž“αž·αž„αžœαž·αž‰αŸ’αž‰αžΆαž”αž“αž”αžαŸ’αžšαŸ”

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

αž˜αžΆαž“αž”αžΈαž…αŸ†αžŽαž»αž…αžŠαŸ‚αž›αžαŸ’αž‰αž»αŸ†αž“αžΉαž„αž“αž·αž™αžΆαž™αž“αŸ…αžαŸ’αž„αŸƒαž“αŸαŸ‡αŸ–

  1. αžŸαž·αž‘αŸ’αž’αž·αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž‘αž›αŸ‹αž“αžΉαž„αžŸαž·αž‘αŸ’αž’αž·αž•αžαŸ” αžŸαž·αž‘αŸ’αž’αž·αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ αž“αž·αž„αžŸαž·αž‘αŸ’αž’αž·αž•αž αž‚αžΊαž˜αž·αž“αžŠαžΌαž…αž‚αŸ’αž“αžΆαž‘αŸαŸ”
  2. αž€αžΆαžšαž”αŸ’αžšαž˜αžΌαž›αž–αŸαžαŸŒαž˜αžΆαž“αž’αŸ†αž–αžΈαž…αž„αŸ’αž€αŸ„αž˜αŸ” αžαŸ’αž‰αž»αŸ†αž“αžΉαž„αž”αž„αŸ’αž αžΆαž‰αžαžΆαž’αŸ’αž“αž€αž’αžΆαž…αž”αŸ’αžšαž˜αžΌαž›αž–αŸαžαŸŒαž˜αžΆαž“αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αžŠαŸ‚αž›αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž€αžΆαžšαž–αžΈαž…αž„αŸ’αž€αŸ„αž˜αžŠαŸ„αž™αž˜αž·αž“αž˜αžΆαž“αžŸαž·αž‘αŸ’αž’αž·αž–αž·αžŸαŸαžŸαž“αŸ…αž€αŸ’αž“αž»αž„αž…αž„αŸ’αž€αŸ„αž˜αž“αŸαŸ‡αŸ”
  3. αž€αžΆαžšαžœαžΆαž™αž”αŸ’αžšαž αžΆαžš DoS αž›αžΎαž…αž„αŸ’αž€αŸ„αž˜αŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž™αžΎαž„αž˜αž·αž“αž’αžΆαž…αž”αŸ’αžšαž˜αžΌαž›αž–αŸαžαŸŒαž˜αžΆαž“αž”αžΆαž“αž‘αŸ αž™αžΎαž„αž“αžΉαž„αž’αžΆαž…αžŠαžΆαž€αŸ‹αž…αž„αŸ’αž€αŸ„αž˜αž“αŸ…αž€αŸ’αž“αž»αž„αž€αžšαžŽαžΈαžŽαžΆαž˜αž½αž™αŸ” αžαŸ’αž‰αž»αŸ†αž“αžΉαž„αž“αž·αž™αžΆαž™αž’αŸ†αž–αžΈαž€αžΆαžšαžœαžΆαž™αž”αŸ’αžšαž αžΆαžš DoS αž›αžΎαž’αžΆαžαž»αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž…αž„αŸ’αž€αŸ„αž˜αŸ”

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

αž™αžΎαž„αž™αž€αž‡αžΆαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž“αŸƒαž€αžΆαžšαžŠαŸ†αž‘αžΎαž„αž…αž„αŸ’αž€αŸ„αž˜ Kubernetes αžŠαŸ„αž™αž”αŸ’αžšαžΎ Kubespray αŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž“αžšαžŽαžΆαž˜αŸ’αž“αžΆαž€αŸ‹αž˜αž·αž“αžŠαžΉαž„ αž“αŸαŸ‡αž–αž·αžαž‡αžΆαžŸαŸ†αžŽαž»αŸ†αž“αŸƒαžαž½αž“αžΆαž‘αžΈαžŸαž˜αŸ’αžšαžΆαž”αŸ‹ Ansible αŸ” αž™αžΎαž„αž”αŸ’αžšαžΎαžœαžΆαž‡αžΆαž“αž·αž…αŸ’αž…αž“αŸ…αž€αŸ’αž“αž»αž„αž€αžΆαžšαž„αžΆαžšαžšαž”αžŸαŸ‹αž™αžΎαž„αŸ” αžšαžΏαž„αž›αŸ’αž’αž‚αžΊαžαžΆαž’αŸ’αž“αž€αž’αžΆαž…αžšαž˜αŸ€αž›αžœαžΆαž‚αŸ’αžšαž”αŸ‹αž‘αžΈαž€αž“αŸ’αž›αŸ‚αž„ - αž’αŸ’αž“αž€αž’αžΆαž…αžšαž˜αŸ€αž›αžœαžΆαž“αŸ…αž›αžΎαž”αŸ†αžŽαŸ‚αž€αžŠαŸ‚αž€αž¬αž…αžΌαž›αž‘αŸ…αž€αŸ’αž“αž»αž„αž–αž–αž€αž“αŸ…αž€αž“αŸ’αž›αŸ‚αž„αžŽαžΆαž˜αž½αž™αŸ” αžœαž·αž’αžΈαžŸαžΆαžŸαŸ’αžšαŸ’αžαžŠαŸ†αž‘αžΎαž„αž˜αž½αž™αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‡αžΆαž‚αŸ„αž›αž€αžΆαžšαžŽαŸαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αžœαžΈαž‚αŸ’αžšαž”αŸ‹αž™αŸ‰αžΆαž„αŸ”

αž“αŸ…αž€αŸ’αž“αž»αž„αž…αž„αŸ’αž€αŸ„αž˜αž“αŸαŸ‡ αžαŸ’αž‰αž»αŸ†αž“αžΉαž„αž˜αžΆαž“ Kubernetes v1.14.5 αŸ” αž…αž„αŸ’αž€αŸ„αž˜ Cube αž‘αžΆαŸ†αž„αž˜αžΌαž›αžŠαŸ‚αž›αž™αžΎαž„αž“αžΉαž„αž–αž·αž…αžΆαžšαžŽαžΆαžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ‚αž„αž…αŸ‚αž€αž‘αŸ…αž‡αžΆ namespaces αž“αžΈαž˜αž½αž™αŸ— namespace αž‡αžΆαž€αž˜αŸ’αž˜αžŸαž·αž‘αŸ’αž’αž·αžšαž”αžŸαŸ‹αž€αŸ’αžšαž»αž˜αžŠαžΆαž…αŸ‹αžŠαŸ„αž™αž‘αŸ‚αž€ αž αžΎαž™αžŸαž˜αžΆαž‡αž·αž€αž“αŸƒαž€αŸ’αžšαž»αž˜αž“αŸαŸ‡αž˜αžΆαž“αžŸαž·αž‘αŸ’αž’αž·αž…αžΌαž›αž‘αŸ…αž€αžΆαž“αŸ‹ namespace αž“αžΈαž˜αž½αž™αŸ—αŸ” αž–αž½αž€αž‚αŸαž˜αž·αž“αž’αžΆαž…αž‘αŸ…αž€αž“αŸ’αž›αŸ‚αž„αžŠαžΆαž€αŸ‹αžˆαŸ’αž˜αŸ„αŸ‡αž•αŸ’αžŸαŸαž„αž‚αŸ’αž“αžΆαž”αžΆαž“αž‘αžΎαž™ αž˜αžΆαž“αžαŸ‚αž–αž½αž€αž‚αŸαž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡αŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž˜αžΆαž“αž‚αžŽαž“αžΈαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹αž˜αž½αž™αžŠαŸ‚αž›αž˜αžΆαž“αžŸαž·αž‘αŸ’αž’αž·αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž…αž„αŸ’αž€αŸ„αž˜αž‘αžΆαŸ†αž„αž˜αžΌαž›αŸ”

αž‡αž½αžŸαž‡αž»αž›αžšαž“αŸ’αž’αž“αŸ…αž€αŸ’αž“αž»αž„αž…αž„αŸ’αž€αŸ„αž˜ Kubernetes αŸ” αžšαžΆαž™αž€αžΆαžšαžŽαŸ αž“αž·αž„αž”αŸ’αžšαžαž·αž…αžΆαžšαžΉαž€αž–αžΈ DevOpsConf

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

kubectl apply -f pod.yaml

αž•αžαž“αŸαŸ‡αž“αžΉαž„αž‘αŸ…αžŠαž›αŸ‹αž…αŸ…αž αŸ’αžœαžΆαž™αž“αžΆαž™αž˜αŸ’αž“αžΆαž€αŸ‹αž“αŸƒαž€αŸ’αžšαž»αž˜ Kubernetes αŸ” αž αžΎαž™αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαž“αŸαŸ‡ αž…αž„αŸ’αž€αŸ„αž˜αž“αžΉαž„αžαŸ’αžšαž›αž”αŸ‹αž˜αž€αž™αžΎαž„αžœαž·αž‰αžŠαŸ„αž™αžšαžΈαž€αžšαžΆαž™αž“αžΌαžœαž―αž€αžŸαžΆαžšαž˜αž½αž™αžŠαŸ‚αž›αž˜αžΆαž“αžˆαŸ’αž˜αŸ„αŸ‡αžαžΆ admin.conf αŸ” αž“αŸ…αž€αŸ’αž“αž»αž„ Cube αž―αž€αžŸαžΆαžšαž“αŸαŸ‡αžšαž€αŸ’αžŸαžΆαž‘αž»αž€αžœαž·αž‰αŸ’αž‰αžΆαž”αž“αž”αžαŸ’αžšαž’αŸ’αž“αž€αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž‘αžΆαŸ†αž„αž’αžŸαŸ‹ αž αžΎαž™αž€αŸ’αž“αž»αž„αž–αŸαž›αžαŸ‚αž˜αž½αž™αž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’ API αžšαž”αžŸαŸ‹αž…αž„αŸ’αž€αŸ„αž˜αŸ” αž“αŸαŸ‡β€‹αž‡αžΆβ€‹αžœαž·αž’αžΈβ€‹αž„αžΆαž™β€‹αžŸαŸ’αžšαž½αž›β€‹αž€αŸ’αž“αž»αž„β€‹αž€αžΆαžšβ€‹αž‘αž‘αž½αž›β€‹αž”αžΆαž“β€‹αž€αžΆαžšβ€‹αž…αžΌαž›β€‹αž”αŸ’αžšαžΎβ€‹αž‡αžΆβ€‹αž’αŸ’αž“αž€β€‹αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„β€‹ αžαŸ’αž‰αž»αŸ†β€‹αž‚αž·αžβ€‹αžαžΆ 98% αž“αŸƒβ€‹αž€αŸ’αžšαž»αž˜ Kubernetes αŸ”

αžαŸ’αž‰αž»αŸ†αž“αž·αž™αžΆαž™αž˜αŸ’αžαž„αž‘αŸ€αž αž•αžαž“αŸαŸ‡αžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αŸ’αžœαžΎαž‘αžΎαž„αžŠαŸ„αž™αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαž˜αŸ’αž“αžΆαž€αŸ‹αž“αŸ…αž€αŸ’αž“αž»αž„αž…αž„αŸ’αž€αŸ„αž˜αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αžŠαŸ‚αž›αž˜αžΆαž“αžŸαž·αž‘αŸ’αž’αž·αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžŠαžΎαž˜αŸ’αž”αžΈαžŠαžΆαž€αŸ‹αž–αž„αŸ’αžšαžΆαž™αžŸαŸ†αžŽαžΎαžšαž”αžŸαŸ‹αž‚αžΆαžαŸ‹αž‘αŸ…αž€αŸ’αž“αž»αž„αž›αŸ†αž αžˆαŸ’αž˜αŸ„αŸ‡αžαžΌαž…αž˜αž½αž™ αžœαžΆαžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž·αž‘αžŠαŸ„αž™ RBAC αŸ” αž‚αžΆαžαŸ‹αž‚αŸ’αž˜αžΆαž“αžŸαž·αž‘αŸ’αž’αž·αž‘αŸαŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž™αŸ‰αžΆαž„αžŽαžΆαž€αŸαžŠαŸ„αž™ αžœαž·αž‰αŸ’αž‰αžΆαž”αž“αž”αžαŸ’αžšαžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαž‚αž›αŸ‹αž˜αž€αžœαž·αž‰αŸ”

αž αžΎαž™αž₯αž‘αžΌαžœαž“αŸαŸ‡αž’αŸ†αž–αžΈ pod αž”αžΆαž“αžšαŸ€αž”αž…αŸ†αž–αž·αžŸαŸαžŸαŸ” αž™αžΎαž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžœαžΆαž“αŸ…αž›αžΎαžšαžΌαž”αž—αžΆαž–αžŽαžΆαž˜αž½αž™αŸ” αž…αžΌαžšαž™αž€ debian:jessie αž‡αžΆαž§αž‘αžΆαž αžšαžŽαŸαŸ”

αž™αžΎαž„αž˜αžΆαž“αžšαž”αžŸαŸ‹αž“αŸαŸ‡αŸ–

tolerations:
-   effect: NoSchedule 
    operator: Exists 
nodeSelector: 
    node-role.kubernetes.io/master: "" 

αžαžΎαž€αžΆαžšαž’αžαŸ‹αž±αž“αž‡αžΆαž’αŸ’αžœαžΈ? αžαŸ’αž“αžΆαž€αŸ‹αž’αž“αž»αž”αžŽαŸ’αžŒαž·αžαž“αŸ…αž€αŸ’αž“αž»αž„αž…αž„αŸ’αž€αŸ„αž˜ Kubernetes αž‡αžΆαž’αž˜αŸ’αž˜αžαžΆαžαŸ’αžšαžΌαžœαž”αžΆαž“αžŸαž˜αŸ’αž‚αžΆαž›αŸ‹αžŠαŸ„αž™αž’αŸ’αžœαžΈαžŠαŸ‚αž›αž αŸ…αžαžΆ taint αŸ” αž αžΎαž™αžαŸ’αž›αžΉαž˜αžŸαžΆαžšαž“αŸƒ "αž€αžΆαžšαž†αŸ’αž›αž„αž˜αŸαžšαŸ„αž‚" αž“αŸαŸ‡αž‚αžΊαžαžΆαžœαžΆαž“αž·αž™αžΆαž™αžαžΆ pods αž˜αž·αž“αž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αž€αŸ†αžŽαžαŸ‹αž‘αŸ…αžαŸ’αž“αžΆαŸ†αž„αž˜αŸαŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž‚αŸ’αž˜αžΆαž“αž“αžšαžŽαžΆαž˜αŸ’αž“αžΆαž€αŸ‹αžšαŸ†αžαžΆαž“αž€αŸ’αž“αž»αž„αž€αžΆαžšαž…αž„αŸ’αž’αž»αž›αž”αž„αŸ’αž αžΆαž‰αž“αŸ…αž€αŸ’αž“αž»αž„αž•αžΎαž„αžŽαžΆαž˜αž½αž™αžαžΆαžœαžΆαž’αžαŸ‹αž’αŸ’αž˜αžαŸ‹αž…αŸ†αž–αŸ„αŸ‡ "αž€αžΆαžšαž†αŸ’αž›αž„αž˜αŸαžšαŸ„αž‚" αž“αŸ„αŸ‡αž‘αŸαŸ” αž•αŸ’αž“αŸ‚αž€αž’αžαŸ‹αž±αž“αž‚αŸ’αžšαžΆαž“αŸ‹αžαŸ‚αž“αž·αž™αžΆαž™αžαžΆαž”αŸ’αžšαžŸαž·αž“αž”αžΎαžαŸ’αž“αžΆαŸ†αž„αž˜αž½αž™αž…αŸ†αž“αž½αž“αž˜αžΆαž“ NoSchedule αž“αŸ„αŸ‡αžαŸ’αž“αžΆαŸ†αž„αžšαž”αžŸαŸ‹αž™αžΎαž„αž‚αžΊαž’αžαŸ‹αž±αž“αž…αŸ†αž–αŸ„αŸ‡αž€αžΆαžšαž†αŸ’αž›αž„αž˜αŸαžšαŸ„αž‚αž”αŸ‚αž”αž“αŸαŸ‡ - αž αžΎαž™αžœαžΆαž˜αž·αž“αž˜αžΆαž“αž”αž‰αŸ’αž αžΆαž’αŸ’αžœαžΈαž‘αŸαŸ”

αž›αžΎαžŸαž–αžΈαž“αŸαŸ‡ αž™αžΎαž„αž“αž·αž™αžΆαž™αžαžΆ αž€αŸ’αžšαŸ„αž˜αžšαž”αžŸαŸ‹αž™αžΎαž„αž˜αž·αž“αžαŸ’αžšαžΉαž˜αžαŸ‚αž’αžαŸ‹αž’αŸ„αž“αž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡αž‘αŸ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž€αŸαž…αž„αŸ‹αž€αŸ†αžŽαžαŸ‹αž‚αŸ„αž›αžŠαŸ…αž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹αž…αŸ†αž–αŸ„αŸ‡αž˜αŸαž•αž„αžŠαŸ‚αžšαŸ” αžŠαŸ„αž™αžŸαžΆαžšαžαŸ‚αž…αŸ…αž αŸ’αžœαžΆαž™αž“αžΆαž™αž˜αžΆαž“αž’αŸ’αžœαžΈαžŠαŸ‚αž›αž†αŸ’αž„αžΆαž‰αŸ‹αž”αŸ†αž•αž»αžαžŠαŸ‚αž›αž™αžΎαž„αžαŸ’αžšαžΌαžœαž€αžΆαžš - αžœαž·αž‰αŸ’αž‰αžΆαž”αž“αž”αžαŸ’αžšαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αŸ” αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž αžΎαž™ αž™αžΎαž„αž“αž·αž™αžΆαž™αžαžΆ nodeSelector - αž αžΎαž™αž™αžΎαž„αž˜αžΆαž“αžŸαŸ’αž›αžΆαž€αžŸαŸ’αžŠαž„αŸ‹αžŠαžΆαžšαž“αŸ…αž›αžΎαž…αŸ…αž αŸ’αžœαžΆαž™αž“αžΆαž™ αžŠαŸ‚αž›αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž’αŸ’αž“αž€αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž–αžΈαžαŸ’αž“αžΆαŸ†αž„αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž“αŸ…αž€αŸ’αž“αž»αž„αž…αž„αŸ’αž€αŸ„αž˜αž™αŸ‰αžΆαž„αž–αž·αžαž”αŸ’αžšαžΆαž€αžŠαžαŸ’αž“αžΆαŸ†αž„αž‘αžΆαŸ†αž„αž“αŸ„αŸ‡αžŠαŸ‚αž›αž‡αžΆαž…αŸ…αž αŸ’αžœαžΆαž™αž“αžΆαž™αŸ”

αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž•αŸ’αž“αŸ‚αž€αž‘αžΆαŸ†αž„αž–αžΈαžšαž“αŸαŸ‡ αž‚αžΆαžαŸ‹αž”αŸ’αžšαžΆαž€αžŠαž‡αžΆαž“αžΉαž„αž˜αž€αžšαž€αž˜αŸαŸ” αž αžΎαž™αž‚αžΆαžαŸ‹αž“αžΉαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αžšαžŸαŸ‹αž“αŸ…αž‘αžΈαž“αŸ„αŸ‡αŸ”

αž”αŸ‰αž»αž“αŸ’αžαŸ‚β€‹αž‚αŸ’αžšαžΆαž“αŸ‹β€‹αžαŸ‚β€‹αž˜αž€β€‹αžšαž€β€‹αž˜αŸβ€‹αž˜αž·αž“β€‹αž‚αŸ’αžšαž”αŸ‹β€‹αž‚αŸ’αžšαžΆαž“αŸ‹β€‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹β€‹αž™αžΎαž„β€‹αž‘αŸαŸ” αž“αŸαŸ‡αž“αžΉαž„αž˜αž·αž“αž•αŸ’αžαž›αŸ‹αž±αŸ’αž™αž™αžΎαž„αž“αžΌαžœαž’αŸ’αžœαžΈαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αŸ” αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž”αž“αŸ’αž‘αžΆαž”αŸ‹ αž™αžΎαž„αž˜αžΆαž“αžšαžΏαž„αž–αžΈαžšαž“αŸαŸ‡αŸ–

hostNetwork: true 
hostPID: true 

αž™αžΎαž„β€‹αž”αž‰αŸ’αž‡αžΆαž€αŸ‹β€‹αžαžΆβ€‹αž•αžβ€‹αžšαž”αžŸαŸ‹β€‹αž™αžΎαž„β€‹αžŠαŸ‚αž›β€‹αž™αžΎαž„β€‹αž”αžΎαž€β€‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšβ€‹αž“αžΉαž„β€‹αžšαžŸαŸ‹β€‹αž“αŸ…β€‹αž€αŸ’αž“αž»αž„β€‹αž…αž“αŸ’αž›αŸ„αŸ‡β€‹αžˆαŸ’αž˜αŸ„αŸ‡β€‹αžαžΊαžŽαŸ‚αž› αž€αŸ’αž“αž»αž„β€‹αž…αž“αŸ’αž›αŸ„αŸ‡β€‹αžˆαŸ’αž˜αŸ„αŸ‡β€‹αž”αžŽαŸ’αžŠαžΆαž‰ αž“αž·αž„β€‹αž€αŸ’αž“αž»αž„β€‹αž…αž“αŸ’αž›αŸ„αŸ‡β€‹αžˆαŸ’αž˜αŸ„αŸ‡ PID αŸ” αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž•αžαžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αžΎαž€αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž“αŸ…αž›αžΎαž˜αŸ αžœαžΆαž“αžΉαž„αž’αžΆαž…αž˜αžΎαž›αžƒαžΎαž‰αž…αŸ†αžŽαž»αž…αž”αŸ’αžšαž‘αžΆαž€αŸ‹αž‡αžΆαž€αŸ‹αžŸαŸ’αžαŸ‚αž„αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αžšαž”αžŸαŸ‹αžαŸ’αž“αžΆαŸ†αž„αž“αŸαŸ‡ αžŸαŸ’αžαžΆαž”αŸ‹αž…αžšαžΆαž…αžšαžŽαŸαž‘αžΆαŸ†αž„αž’αžŸαŸ‹ αž“αž·αž„αž˜αžΎαž› PID αž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αŸ”

αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αžœαžΆαž‡αžΆαžšαžΏαž„αžαžΌαž…αžαžΆαž…αŸ” αž™αž€ etcd αž αžΎαž™αž’αžΆαž“αž’αŸ’αžœαžΈαžŠαŸ‚αž›αž’αŸ’αž“αž€αž…αž„αŸ‹αž”αžΆαž“αŸ”

αž’αŸ’αžœαžΈαžŠαŸ‚αž›αž‚αž½αžšαž±αŸ’αž™αž…αžΆαž”αŸ‹αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸαž”αŸ†αž•αž»αžαž‚αžΊαž›αž€αŸ’αžαžŽαŸˆαž–αž·αžŸαŸαžŸ Kubernetes αžŠαŸ‚αž›αž˜αžΆαž“αžœαžαŸ’αžαž˜αžΆαž“αž“αŸ…αž‘αžΈαž“αŸ„αŸ‡αžαžΆαž˜αž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜αŸ”

volumeMounts:
- mountPath: /host 
  name: host 
volumes:
- hostPath: 
    path: / 
    type: Directory 
  name: host 

αž αžΎαž™αžαŸ’αž›αžΉαž˜αžŸαžΆαžšαžšαž”αžŸαŸ‹αžœαžΆαž‚αžΊαžαžΆαž™αžΎαž„αž’αžΆαž…αž“αž·αž™αžΆαž™αž”αžΆαž“αž“αŸ…αž€αŸ’αž“αž»αž„αž•αžαžαžΆ αž™αžΎαž„αž”αžΎαž€αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš αž‘αŸ„αŸ‡αž”αžΈαž‡αžΆαž‚αŸ’αž˜αžΆαž“αžŸαž·αž‘αŸ’αž’αž·αž…αŸ†αž–αŸ„αŸ‡αž…αž„αŸ’αž€αŸ„αž˜αž“αŸαŸ‡αž€αŸαžŠαŸ„αž™ αžŠαŸ‚αž›αž™αžΎαž„αž…αž„αŸ‹αž”αž„αŸ’αž€αžΎαžαž”αžšαž·αž˜αžΆαžŽαž“αŸƒαž”αŸ’αžšαž—αŸαž‘ hostPath αŸ” αž“αŸαŸ‡αž˜αžΆαž“αž“αŸαž™αžαžΆαž™αž€αž•αŸ’αž›αžΌαžœαž–αžΈαž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αžŠαŸ‚αž›αž™αžΎαž„αž“αžΉαž„αž”αžΎαž€αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš αž αžΎαž™αž™αž€αžœαžΆαž‡αžΆαž€αž˜αŸ’αžšαž·αžαžŸαŸ†αž‘αŸαž„αŸ” αž αžΎαž™αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αž™αžΎαž„αž αŸ…αžœαžΆαžαžΆαž‡αžΆαž˜αŸ’αž…αžΆαžŸαŸ‹αž•αŸ’αž‘αŸ‡αŸ” αž™αžΎαž„αž—αŸ’αž‡αžΆαž”αŸ‹ hostPath αž‘αžΆαŸ†αž„αž˜αžΌαž›αž“αŸαŸ‡αž“αŸ…αžαžΆαž„αž€αŸ’αž“αž»αž„αž•αžαŸ” αž€αŸ’αž“αž»αž„αž§αž‘αžΆαž αžšαžŽαŸαž“αŸαŸ‡αž‘αŸ…αž€αžΆαž“αŸ‹ /host directory.

αžαŸ’αž‰αž»αŸ†αž“αžΉαž„αž“αž·αž™αžΆαž™αž˜αŸ’αžαž„αž‘αŸ€αžαŸ” αž™αžΎαž„αž”αžΆαž“αž”αŸ’αžšαžΆαž”αŸ‹ pod αž±αŸ’αž™αž˜αž€αž˜αŸ αž™αž€ hostNetwork αž“αž·αž„ hostPID αž“αŸ…αž‘αžΈαž“αŸ„αŸ‡ αž αžΎαž™αž—αŸ’αž‡αžΆαž”αŸ‹ root αž‘αžΆαŸ†αž„αž˜αžΌαž›αžšαž”αžŸαŸ‹ master αž“αŸ…αžαžΆαž„αž€αŸ’αž“αž»αž„ pod αž“αŸαŸ‡αŸ”

αž’αŸ’αž“αž€αž™αž›αŸ‹αžαžΆαž“αŸ…αž€αŸ’αž“αž»αž„ Debian αž™αžΎαž„αž˜αžΆαž“ bash αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš αž αžΎαž™ bash αž“αŸαŸ‡αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž“αŸ…αž€αŸ’αžšαŸ„αž˜ root αŸ” αž“αŸ„αŸ‡β€‹αž‚αžΊβ€‹αž™αžΎαž„β€‹αž‘αžΎαž”β€‹αžαŸ‚β€‹αž‘αž‘αž½αž›β€‹αž”αžΆαž“β€‹αž«αžŸαž‚αž›αŸ‹β€‹αž›αžΎβ€‹αž˜αŸ αžŠαŸ„αž™β€‹αž˜αž·αž“β€‹αž˜αžΆαž“β€‹αžŸαž·αž‘αŸ’αž’αž·β€‹αž€αŸ’αž“αž»αž„β€‹αž…αž„αŸ’αž€αŸ„αž˜ Kubernetes αž‘αŸαŸ”

αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αž—αžΆαžšαž€αž·αž…αŸ’αž…αž‘αžΆαŸ†αž„αž˜αžΌαž›αž‚αžΊαžαŸ’αžšαžΌαžœαž…αžΌαž›αž‘αŸ…αž€αžΆαž“αŸ‹αžαžαžšαž„ /host /etc/kubernetes/pki αž”αŸ’αžšαžŸαž·αž“αž”αžΎαžαŸ’αž‰αž»αŸ†αž˜αž·αž“αž…αŸ’αžšαž‘αŸ†αž‘αŸ αž™αž€αžœαž·αž‰αŸ’αž‰αžΆαž”αž“αž”αžαŸ’αžšαž˜αŸαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž“αŸƒαž…αž„αŸ’αž€αŸ„αž˜αž“αŸ…αž‘αžΈαž“αŸ„αŸ‡ αž αžΎαž™αžαžΆαž˜αž“αŸ„αŸ‡ αž€αŸ’αž›αžΆαž™αž‡αžΆαž’αŸ’αž“αž€αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž…αž„αŸ’αž€αŸ„αž˜αŸ”

αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αž€αŸ’αžšαž‘αŸαž€αž˜αžΎαž›αžœαžΆαžαžΆαž˜αžœαž·αž’αžΈαž“αŸαŸ‡ αž‘αžΆαŸ†αž„αž“αŸαŸ‡αž‚αžΊαž‡αžΆαžŸαž·αž‘αŸ’αž’αž·αžŠαŸαž‚αŸ’αžšαŸ„αŸ‡αžαŸ’αž“αžΆαž€αŸ‹αž”αŸ†αž•αž»αžαž˜αž½αž™αž…αŸ†αž“αž½αž“αž“αŸ…αž€αŸ’αž“αž»αž„αž•αž - αž˜αž·αž“αžαžΆαž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž˜αžΆαž“αžŸαž·αž‘αŸ’αž’αž·αž’αŸ’αžœαžΈαž“αŸ„αŸ‡αž‘αŸαŸ–
αž‡αž½αžŸαž‡αž»αž›αžšαž“αŸ’αž’αž“αŸ…αž€αŸ’αž“αž»αž„αž…αž„αŸ’αž€αŸ„αž˜ Kubernetes αŸ” αžšαžΆαž™αž€αžΆαžšαžŽαŸ αž“αž·αž„αž”αŸ’αžšαžαž·αž…αžΆαžšαžΉαž€αž–αžΈ DevOpsConf

αž”αŸ’αžšαžŸαž·αž“αž”αžΎαžαŸ’αž‰αž»αŸ†αž˜αžΆαž“αžŸαž·αž‘αŸ’αž’αž·αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš pod αž€αŸ’αž“αž»αž„ namespace αž˜αž½αž™αž…αŸ†αž“αž½αž“αž“αŸƒ cluster αž“αŸ„αŸ‡ pod αž“αŸαŸ‡αž˜αžΆαž“αžŸαž·αž‘αŸ’αž’αž·αž‘αžΆαŸ†αž„αž“αŸαŸ‡αžαžΆαž˜αž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜αŸ” αžαŸ’αž‰αž»αŸ†αž’αžΆαž…αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš pods αžŠαŸ‚αž›αž˜αžΆαž“αžŸαž·αž‘αŸ’αž’αž· αž αžΎαž™αž‡αžΆαž‘αžΌαž‘αŸ…αž‘αžΆαŸ†αž„αž“αŸαŸ‡αž‚αžΊαž‡αžΆαžŸαž·αž‘αŸ’αž’αž·αž‘αžΆαŸ†αž„αž’αžŸαŸ‹ αž’αž“αž»αžœαžαŸ’αžαž‡αžΆ root αž“αŸ…αž›αžΎαžαŸ’αž“αžΆαŸ†αž„αŸ”

αžŸαŸ†αžŽαž–αŸ’αžœαžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ†αž‚αžΊαž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ Root αŸ” αž αžΎαž™ Kubernetes αž˜αžΆαž“αž‡αž˜αŸ’αžšαžΎαžŸ Run As Non-Root αŸ” αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž”αŸ’αžšαž—αŸαž‘αž“αŸƒαž€αžΆαžšαž€αžΆαžšαž–αžΆαžšαž–αžΈαž–αž½αž€ Hacker αŸ” αžαžΎαž’αŸ’αž“αž€αžŠαžΉαž„αž‘αŸαžαžΆ "αž˜αŸαžšαŸ„αž‚αž˜αŸ‰αž»αž›αžŠαžΆαžœαžΈ" αž‡αžΆαž’αŸ’αžœαžΈ? αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž—αŸ’αž›αžΆαž˜αŸ—αž“αŸ„αŸ‡ αž’αŸ’αž“αž€αž‚αžΊαž‡αžΆαž’αŸ’αž“αž€αž›αž½αž…αžŸαŸ’αžαžΆαž”αŸ‹ αž αžΎαž™αž…αžΌαž›αž˜αž€αž…αž„αŸ’αž€αŸ„αž˜ Kubernetes αžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ† αž“αŸ„αŸ‡αž™αžΎαž„αžŠαŸ‚αž›αž‡αžΆαž’αŸ’αž“αž€αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž€αŸ’αžšαžΈαž€αŸ’αžš សួរថអ β€œαžŸαžΌαž˜αž…αž„αŸ’αž’αž»αž›αž”αž„αŸ’αž αžΆαž‰αž“αŸ…αž€αŸ’αž“αž»αž„αž•αžαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αžŠαŸ‚αž›αž’αŸ’αž“αž€αž“αžΉαž„ hack αž…αž„αŸ’αž€αŸ„αž˜αžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ† αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŠαŸ„αž™αž˜αž·αž“αž˜αŸ‚αž“αž‡αžΆ root αŸ” αž”αžΎαž˜αž·αž“αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž‘αŸ αžœαžΆαž“αžΉαž„αž€αžΎαžαž‘αžΎαž„αžŠαŸ‚αž›αž’αŸ’αž“αž€αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž“αŸ…αž€αŸ’αž“αž»αž„ pod αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž“αŸ…αž€αŸ’αžšαŸ„αž˜ root αž αžΎαž™αžœαžΆαž“αžΉαž„αž˜αžΆαž“αž—αžΆαž–αž„αžΆαž™αžŸαŸ’αžšαž½αž›αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€αž€αŸ’αž“αž»αž„αž€αžΆαžš hack αžαŸ’αž‰αž»αŸ†αŸ” αžŸαžΌαž˜β€‹αž€αžΆαžšαž–αžΆαžšβ€‹αžαŸ’αž›αž½αž“β€‹αž–αžΈβ€‹αžαŸ’αž›αž½αž“β€‹αž―αž„Β»αŸ”

αžαžΆαž˜αž‚αŸ†αž“αž·αžαžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ† αž”αžšαž·αž˜αžΆαžŽαž•αŸ’αž›αžΌαžœαž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž‚αžΊαž‡αžΆαžœαž·αž’αžΈαž›αžΏαž“αž”αŸ†αž•αž»αžαžŠαžΎαž˜αŸ’αž”αžΈαž‘αž‘αž½αž›αž”αžΆαž“αž›αž‘αŸ’αž’αž•αž›αžŠαŸ‚αž›αž…αž„αŸ‹αž”αžΆαž“αž–αžΈαž€αŸ’αžšαž»αž˜ Kubernetes αŸ”

αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž’αŸ’αžœαžΈαžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž’αŸ’αžœαžΎαž‡αžΆαž˜αž½αž™αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž“αŸαŸ‡?

αž‚αŸ†αž“αž·αžαžŠαŸ‚αž›αž‚αž½αžšαž€αžΎαžαž˜αžΆαž“αž…αŸ†αž–αŸ„αŸ‡αž’αŸ’αž“αž€αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž’αž˜αŸ’αž˜αžαžΆαžŠαŸ‚αž›αž‡αž½αž” Kubernetes αž‚αžΊαŸ– β€œαž”αžΆαž‘ αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αž”αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€αžαžΆ Kubernetes αž˜αž·αž“αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‘αŸαŸ” αž˜αžΆαž“αžšαž“αŸ’αž’αž“αŸ…αž€αŸ’αž“αž»αž„αžœαžΆαŸ” αž αžΎαž™ Cube αž‘αžΆαŸ†αž„αž˜αžΌαž›αž‚αžΊαž†αŸ’αž€αž½αžαŸ” αžαžΆαž˜β€‹αž–αž·αžβ€‹αžœαžΆβ€‹αž˜αžΆαž“β€‹αž―αž€αžŸαžΆαžšβ€‹αž’αŸŠαžΈαž…αžΉαž„β€‹αž αžΎαž™ αž”αžΎβ€‹αž˜αžΎαž›β€‹αž‘αŸ…β€‹αž˜αžΆαž“β€‹αž•αŸ’αž“αŸ‚αž€ αž‚αŸ„αž›αž€αžΆαžšαžŽαŸαžŸαž»αžœαžαŸ’αžαž·αž—αžΆαž–αž•αž.

αž“αŸαŸ‡αž‚αžΊαž‡αžΆαžœαžαŸ’αžαž» yaml - αž™αžΎαž„αž’αžΆαž…αž”αž„αŸ’αž€αžΎαžαžœαžΆαž“αŸ…αž€αŸ’αž“αž»αž„αž…αž„αŸ’αž€αŸ„αž˜ Kubernetes - αžŠαŸ‚αž›αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž‘αž·αžŠαŸ’αž‹αž—αžΆαž–αžŸαž»αžœαžαŸ’αžαž·αž—αžΆαž–αž‡αžΆαž–αž·αžŸαŸαžŸαž“αŸ…αž€αŸ’αž“αž»αž„αž€αžΆαžšαž–αž·αž–αžŽαŸŒαž“αžΆαžšαž”αžŸαŸ‹ pods αŸ” αž“αŸ„αŸ‡αž‡αžΆαž€αžΆαžšαž–αž·αž αžœαžΆαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αžŸαž·αž‘αŸ’αž’αž·αž€αŸ’αž“αž»αž„αž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ hostNetwork αžŽαžΆαž˜αž½αž™ hostPID αž”αŸ’αžšαž—αŸαž‘αž”αžšαž·αž˜αžΆαžŽαž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹αžŠαŸ‚αž›αž˜αžΆαž“αž“αŸ…αž€αŸ’αž“αž»αž„ pods αž“αŸ…αž–αŸαž›αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αŸ” αžŠαŸ„αž™αž˜αžΆαž“αž‡αŸ†αž“αž½αž™αž–αžΈ Pod Security Policy αž’αŸ’αžœαžΈαŸ—αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž“αŸαŸ‡αž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αž–αž·αž–αžŽαŸŒαž“αžΆαŸ”

αž’αŸ’αžœαžΈαžŠαŸ‚αž›αž‚αž½αžšαž±αŸ’αž™αž…αžΆαž”αŸ‹αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸαž”αŸ†αž•αž»αžαž’αŸ†αž–αžΈαž‚αŸ„αž›αž€αžΆαžšαžŽαŸαžŸαž»αžœαžαŸ’αžαž·αž—αžΆαž– Pod αž‚αžΊαžαžΆαž“αŸ…αž€αŸ’αž“αž»αž„αž…αž„αŸ’αž€αŸ„αž˜ Kubernetes αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαžŠαŸ†αž‘αžΎαž„ PSP αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž˜αž·αž“αž‚αŸ’αžšαžΆαž“αŸ‹αžαŸ‚αž˜αž·αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž–αž·αž–αžŽαŸŒαž“αžΆαžαžΆαž˜αžœαž·αž’αžΈαžŽαžΆαž˜αž½αž™αž“αŸ„αŸ‡αž‘αŸ αž–αž½αž€αž‚αŸαžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž·αž‘αž‡αžΆαž’αž˜αŸ’αž˜αžαžΆαžαžΆαž˜αž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜αŸ” αž‚αŸ„αž›αž€αžΆαžšαžŽαŸαžŸαž»αžœαžαŸ’αžαž·αž—αžΆαž– Pod αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αžΎαž€αžŠαŸ„αž™αž”αŸ’αžšαžΎαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž‡αŸ†αž“αž½αž™αž€αžΆαžšαž…αžΌαž›αŸ”

αž˜αž·αž“αž’αžΈαž‘αŸ αž…αžΌαžšαž™αžΎαž„αžŠαžΆαž€αŸ‹αž–αž„αŸ’αžšαžΆαž™αž‚αŸ„αž›αž€αžΆαžšαžŽαŸαžŸαž»αžœαžαŸ’αžαž·αž—αžΆαž– Pod αž‘αŸ…αž€αŸ’αž“αž»αž„αž…αž„αŸ’αž€αŸ„αž˜ αž§αž”αž˜αžΆαžαžΆαž™αžΎαž„αž˜αžΆαž“αž•αŸ’αž“αŸ‚αž€αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αž˜αž½αž™αž…αŸ†αž“αž½αž“αž“αŸ…αž€αŸ’αž“αž»αž„ namespace αžŠαŸ‚αž›αž˜αžΆαž“αžαŸ‚αž’αŸ’αž“αž€αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡αžŠαŸ‚αž›αž’αžΆαž…αž…αžΌαž›αž”αŸ’αžšαžΎαž”αžΆαž“αŸ” αž…αžΌαžšαž“αž·αž™αžΆαž™αžαžΆαž“αŸ…αž€αŸ’αž“αž»αž„αž€αžšαžŽαžΈαž•αŸ’αžŸαŸαž„αž‘αŸ€αžαž‘αžΆαŸ†αž„αž’αžŸαŸ‹ pods αž˜αžΆαž“αžŸαž·αž‘αŸ’αž’αž·αž˜αžΆαž“αž€αž˜αŸ’αžšαž·αžαŸ” αžŠαŸ„αž™αžŸαžΆαžšαžαŸ‚αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαž—αžΆαž‚αž…αŸ’αžšαžΎαž“αž˜αž·αž“αž…αžΆαŸ†αž”αžΆαž…αŸ‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž•αžαžƒαŸ‚αžšαžŠαŸ‚αž›αž˜αžΆαž“αžŸαž·αž‘αŸ’αž’αž·αž“αŸ…αž€αŸ’αž“αž»αž„αž…αž„αŸ’αž€αŸ„αž˜αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž‘αŸαŸ”

αž αžΎαž™αž’αŸ’αžœαžΈαŸ—αž αžΆαž€αŸ‹αžŠαžΌαž…αž‡αžΆαž›αŸ’αž’αž‡αžΆαž˜αž½αž™αž™αžΎαž„αŸ” αž αžΎαž™αž…αž„αŸ’αž€αŸ„αž˜ Kubernetes αžšαž”αžŸαŸ‹αž™αžΎαž„αž˜αž·αž“αž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“ hack αž€αŸ’αž“αž»αž„αžšαž™αŸˆαž–αŸαž›αž–αžΈαžšαž“αžΆαž‘αžΈαŸ”

αž˜αžΆαž“β€‹αž”αž‰αŸ’αž αžΆβ€‹αž˜αž½αž™αŸ” αž—αžΆαž‚αž…αŸ’αžšαžΎαž“αž‘αŸ†αž“αž„αž‡αžΆαž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αž˜αžΆαž“αž…αž„αŸ’αž€αŸ„αž˜ Kubernetes αž“αŸ„αŸ‡αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŠαŸ†αž‘αžΎαž„αž“αŸ…αž›αžΎαž…αž„αŸ’αž€αŸ„αž˜αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αŸ” αžαŸ’αž‰αž»αŸ†αžαŸ‚αž˜αž‘αžΆαŸ†αž„αž’αžΆαž…αž‘αžŸαŸ’αžŸαž“αŸαž‘αžΆαž™αž”αžΆαž“αžαžΆ αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž…αž„αŸ’αž€αŸ„αž˜αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž˜αžΆαž“αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ αžœαžΆαž“αžΉαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αž‚αŸαž αŸ…αžαžΆ Prometheus αŸ”

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

αž”αŸ’αžšαž αŸ‚αž›αž‡αžΆαž’αŸ’αž“αž€αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αž“αžΆαž”αžΆαž“αž’αžΆαž“αž’αžαŸ’αžαž”αž‘αžŠαžΌαž…αž‚αŸ’αž“αžΆαž“αŸ…αž›αžΎ Habre αž αžΎαž™αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž˜αžΆαž“αž‘αžΈαžαžΆαŸ†αž„αž“αŸ…αž€αŸ’αž“αž»αž„αž…αž“αŸ’αž›αŸ„αŸ‡αžˆαŸ’αž˜αŸ„αŸ‡αžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αŸ” αž‚αŸ†αž“αžΌαžŸαžαžΆαž„ Helm αžαŸ’αžšαžΌαžœαž”αžΆαž“αž‚αŸαž αŸ…αžαžΆαžŠαžΌαž…αž‚αŸ’αž“αžΆαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž˜αž“αž»αžŸαŸ’αžŸαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αž“αžΆαŸ” αžαŸ’αž‰αž»αŸ†αžŸαŸ’αž˜αžΆαž“αžαžΆαž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αžŠαŸ†αž‘αžΎαž„ helm αžŸαŸ’αžαŸαžšαž—αžΆαž– / prometheus αž’αŸ’αž“αž€αž“αžΉαž„αž”αž‰αŸ’αž…αž”αŸ‹αžŠαŸ„αž™αžˆαŸ’αž˜αŸ„αŸ‡αžŠαžΌαž…αž‚αŸ’αž“αžΆαŸ” αž αžΎαž™αž—αžΆαž‚αž…αŸ’αžšαžΎαž“αžαŸ’αž‰αž»αŸ†αž”αŸ’αžšαž αŸ‚αž›αž‡αžΆαž˜αž·αž“αž…αžΆαŸ†αž”αžΆαž…αŸ‹αž‘αžΆαž™αžˆαŸ’αž˜αŸ„αŸ‡ DNS αž“αŸ…αž€αŸ’αž“αž»αž„αž…αž„αŸ’αž€αŸ„αž˜αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž‘αŸαŸ” αž–αŸ’αžšαŸ„αŸ‡αžœαžΆαž‡αžΆαžŸαŸ’αžαž„αŸ‹αžŠαžΆαžšαŸ”

αž‡αž½αžŸαž‡αž»αž›αžšαž“αŸ’αž’αž“αŸ…αž€αŸ’αž“αž»αž„αž…αž„αŸ’αž€αŸ„αž˜ Kubernetes αŸ” αžšαžΆαž™αž€αžΆαžšαžŽαŸ αž“αž·αž„αž”αŸ’αžšαžαž·αž…αžΆαžšαžΉαž€αž–αžΈ DevOpsConf

αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αž™αžΎαž„αž˜αžΆαž“ dev ns αž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹αž˜αž½αž™ αžŠαŸ‚αž›αž’αŸ’αž“αž€αž’αžΆαž…αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš pod αž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹αž˜αž½αž™αŸ” αž αžΎαž™αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αž–αžΈ pod αž“αŸαŸ‡αžœαžΆαž„αžΆαž™αžŸαŸ’αžšαž½αž›αžŽαžΆαžŸαŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαž’αŸ’αžœαžΎαž’αŸ’αžœαžΈαž˜αž½αž™αžŠαžΌαž…αž“αŸαŸ‡:

$ curl http://prometheus-kube-state-metrics.monitoring 

prometheus-kube-state-metrics αž‚αžΊαž‡αžΆαž’αŸ’αž“αž€αž“αžΆαŸ†αž…αŸαž‰ Prometheus αžŠαŸ‚αž›αž”αŸ’αžšαž˜αžΌαž›αž˜αŸ‰αŸ‚αžαŸ’αžšαž–αžΈ Kubernetes API αžαŸ’αž›αž½αž“αžœαžΆαž•αŸ’αž‘αžΆαž›αŸ‹αŸ” αž˜αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž‡αžΆαž…αŸ’αžšαžΎαž“αž“αŸ…αž‘αžΈαž“αŸ„αŸ‡ αž’αŸ’αžœαžΈαžŠαŸ‚αž›αž€αŸ†αž–αž»αž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž“αŸ…αž€αŸ’αž“αž»αž„αž…αž„αŸ’αž€αŸ„αž˜αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€ αžαžΎαžœαžΆαž‡αžΆαž’αŸ’αžœαžΈ αž’αŸ’αžœαžΈαžŠαŸ‚αž›αž’αŸ’αž“αž€αž˜αžΆαž“αž”αž‰αŸ’αž αžΆαž‡αžΆαž˜αž½αž™αžœαžΆαŸ”

αž‡αžΆαž§αž‘αžΆαž αžšαžŽαŸαžŸαžΆαž˜αž‰αŸ’αž‰αŸ–

kube_pod_container_info{namespace=β€œkube-system”,pod=”kube-apiserver-k8s- 1β€³,container=”kube-apiserver”,αžšαžΌαž”αž—αžΆαž–=

"gcr.io/google-containers/kube-apiserver:v1.14.5"

,image_id=Β»docker-pullable://gcr.io/google-containers/kube- apiserver@sha256:e29561119a52adad9edc72bfe0e7fcab308501313b09bf99df4a96 38ee634989β€³,container_id=Β»docker://7cbe7b1fea33f811fdd8f7e0e079191110268f2 853397d7daf08e72c22d3cf8bΒ»} 1

αžŠαŸ„αž™αž’αŸ’αžœαžΎαž€αžΆαžšαžŸαŸ’αž“αžΎαžŸαž»αŸ† curl αžŸαžΆαž˜αž‰αŸ’αž‰αž–αžΈ pod αžŠαŸ‚αž›αž˜αž·αž“αž˜αžΆαž“αžŸαž·αž‘αŸ’αž’αž· αž’αŸ’αž“αž€αž’αžΆαž…αž‘αž‘αž½αž›αž”αžΆαž“αž–αŸαžαŸŒαž˜αžΆαž“αžαžΆαž„αž€αŸ’αžšαŸ„αž˜αŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αž˜αž·αž“αžŠαžΉαž„αžαžΆαžαžΎ Kubernetes αž‡αŸ†αž“αžΆαž“αŸ‹αžŽαžΆαžŠαŸ‚αž›αž’αŸ’αž“αž€αž€αŸ†αž–αž»αž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš αžœαžΆαž“αžΉαž„αž”αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€αž™αŸ‰αžΆαž„αž„αžΆαž™αžŸαŸ’αžšαž½αž›αŸ”

αž αžΎαž™αž’αŸ’αžœαžΈαžŠαŸ‚αž›αž‚αž½αžšαž±αŸ’αž™αž…αžΆαž”αŸ‹αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸαž”αŸ†αž•αž»αžαž“αŸ„αŸ‡αž‚αžΊαžαžΆ αž”αž“αŸ’αžαŸ‚αž˜αž–αžΈαž›αžΎαž€αžΆαžšαž…αžΌαž›αž‘αŸ…αž€αžΆαž“αŸ‹ kube-state-metrics αž’αŸ’αž“αž€αž’αžΆαž…αž…αžΌαž›αž‘αŸ…αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ Prometheus αžŠαŸ„αž™αž•αŸ’αž‘αžΆαž›αŸ‹αž”αžΆαž“αž™αŸ‰αžΆαž„αž„αžΆαž™αžŸαŸ’αžšαž½αž›αŸ” αž’αŸ’αž“αž€αž’αžΆαž…αž”αŸ’αžšαž˜αžΌαž›αž˜αŸ‰αŸ‚αžαŸ’αžšαž–αžΈαž‘αžΈαž“αŸ„αŸ‡αŸ” αž’αŸ’αž“αž€αž’αžΆαž…αž”αž„αŸ’αž€αžΎαžαž˜αŸ‰αŸ‚αžαŸ’αžšαž–αžΈαž‘αžΈαž“αŸ„αŸ‡αŸ” αžŸαžΌαž˜αŸ’αž”αžΈαžαŸ‚αž‘αŸ’αžšαžΉαžŸαŸ’αžαžΈαž€αŸαžŠαŸ„αž™ αž’αŸ’αž“αž€αž’αžΆαž…αž”αž„αŸ’αž€αžΎαžαžŸαŸ†αžŽαž½αžšαž”αŸ‚αž”αž“αŸαŸ‡αž–αžΈαž…αž„αŸ’αž€αŸ„αž˜αž“αŸ…αž€αŸ’αž“αž»αž„ Prometheus αžŠαŸ‚αž›αž“αžΉαž„αž”αž·αž‘αžœαžΆαž™αŸ‰αžΆαž„αžŸαžΆαž˜αž‰αŸ’αž‰αŸ” αž αžΎαž™αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž“αžΉαž„αžˆαž”αŸ‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž–αžΈαž…αž„αŸ’αž€αŸ„αž˜αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž‚αŸ’αž“αžΆαŸ”

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

αžŠαžΌαž…αž‘αŸ…αž“αžΉαž„ PSP αžŠαŸ‚αžš αžœαžΆαž˜αžΆαž“αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸαžŠαžΌαž…αž‡αžΆαž”αž‰αŸ’αž αžΆαž‚αžΊαžαžΆ αž”αž…αŸ’αž…αŸαž€αžœαž·αž‘αŸ’αž™αžΆαžŠαŸαž”αŸ’αžšαžŽαž·αžαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž“αŸαŸ‡ - Kubernetes, Prometheus - αž–αž½αž€αž‚αŸαž‚αŸ’αžšαžΆαž“αŸ‹αžαŸ‚αž˜αž·αž“αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš αž“αž·αž„αž–αŸ„αžšαž–αŸαž‰αžŠαŸ„αž™αžšαž“αŸ’αž’αŸ” αž˜αž·αž“β€‹αž”αŸ’αžšαžΆαž€αžŠβ€‹αž‘αŸαŸ”

αž˜αžΆαž“αžšαžΏαž„αž”αŸ‚αž”αž“αŸαŸ‡ - αž‚αŸ„αž›αž€αžΆαžšαžŽαŸαž”αžŽαŸ’αžαžΆαž‰.

αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αž‡αžΆαž’αŸ’αž“αž€αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž’αž˜αŸ’αž˜αžαžΆ αž“αŸ„αŸ‡αž‘αŸ†αž“αž„αž‡αžΆαž’αŸ’αž“αž€αžŠαžΉαž„αž’αŸ†αž–αžΈαž‚αŸ„αž›αž€αžΆαžšαžŽαŸαž”αžŽαŸ’αžαžΆαž‰ αžŠαŸ‚αž›αž“αŸαŸ‡αž‚αŸ’αžšαžΆαž“αŸ‹αžαŸ‚αž‡αžΆ yaml αž˜αž½αž™αž•αŸ’αžŸαŸαž„αž‘αŸ€αž αžŠαŸ‚αž›αž˜αžΆαž“αž–αž½αž€αžœαžΆαž‡αžΆαž…αŸ’αžšαžΎαž“αž“αŸ…αž€αŸ’αž“αž»αž„αž…αž„αŸ’αž€αŸ„αž˜αŸ” αž αžΎαž™αž‚αŸ„αž›αž€αžΆαžšαžŽαŸαž”αžŽαŸ’αžαžΆαž‰αž˜αž½αž™αž…αŸ†αž“αž½αž“αž–αž·αžαž‡αžΆαž˜αž·αž“αžαŸ’αžšαžΌαžœαž€αžΆαžšαž‘αŸαŸ” αž αžΎαž™αž‘αŸ„αŸ‡αž”αžΈαž‡αžΆαž’αŸ’αž“αž€αž’αžΆαž“αž‚αŸ„αž›αž€αžΆαžšαžŽαŸαž”αžŽαŸ’αžαžΆαž‰αž’αŸ’αžœαžΈαž€αŸαžŠαŸ„αž™ αžαžΆαžœαžΆαž‡αžΆαž‡αž‰αŸ’αž‡αžΆαŸ†αž„αž—αŸ’αž›αžΎαž„ yaml αžšαž”αžŸαŸ‹ Kubernetes αžœαžΆαž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž’αŸ’αž“αž€αž€αŸ†αžŽαžαŸ‹αžŸαž·αž‘αŸ’αž’αž·αž…αžΌαž›αž”αŸ’αžšαžΎαžšαžœαžΆαž„ namespaces αžšαžœαžΆαž„ pods αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αž’αŸ’αž“αž€αž”αŸ’αžšαžΆαž€αžŠαž‡αžΆαžŸαž˜αŸ’αžšαŸαž…αž…αž·αžαŸ’αžαžαžΆ firewall αž‡αžΆαž‘αž˜αŸ’αžšαž„αŸ‹ yaml αž“αŸ…αž€αŸ’αž“αž»αž„ Kubernetes αž‚αžΊαž•αŸ’αž’αŸ‚αž€αž›αžΎαž€αžΆαžšαžŸαž„αŸ’αžαŸαž”αž”αž“αŸ’αž‘αžΆαž”αŸ‹αŸ” ... αž‘αŸβ€‹αž‘αŸ αŸ” αž“αŸαŸ‡αž–αž·αžαž‡αžΆαž˜αž·αž“αž…αžΆαŸ†αž”αžΆαž…αŸ‹αž‘αŸαŸ”

αž‘αŸ„αŸ‡αž”αžΈαž‡αžΆαž’αŸ’αž“αž€αž˜αž·αž“αž”αžΆαž“αž”αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€αž―αž€αž‘αŸαžŸαž•αŸ’αž“αŸ‚αž€αžŸαž»αžœαžαŸ’αžαž·αž—αžΆαž–αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αžαžΆ αž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ Kubernetes αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž€αŸαžŠαŸ„αž™ αž’αŸ’αž“αž€αž’αžΆαž…αž”αž„αŸ’αž€αžΎαžαž‡αž‰αŸ’αž‡αžΆαŸ†αž„αž—αŸ’αž›αžΎαž„αžŠαŸαž„αžΆαž™αžŸαŸ’αžšαž½αž› αž“αž·αž„αžŸαžΆαž˜αž‰αŸ’αž‰αž”αŸ†αž•αž»αž αž αžΎαž™αžαŸ‚αž˜αž‘αžΆαŸ†αž„αž˜αžΆαž“αž›αž€αŸ’αžαžŽαŸˆαž›αž˜αŸ’αž’αž·αžαž•αž„αžŠαŸ‚αžšαŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž–αž½αž€αž‚αŸαž˜αž·αž“αž‘αžΆαž“αŸ‹αžŠαžΉαž„αžšαžΏαž„αž“αŸαŸ‡ αž αžΎαž™αž˜αž·αž“αžšαŸ†αžαžΆαž“αž’αŸ’αž“αž€αž‘αŸαŸ– "αž˜αŸ‚αž“αž αžΎαž™ αž•αŸ’αžαž›αŸ‹αž±αŸ’αž™αžαŸ’αž‰αž»αŸ† αž•αŸ’αžαž›αŸ‹αž±αŸ’αž™αžαŸ’αž‰αž»αŸ† ... αžŠαŸ„αž™αž‚αŸ’αž˜αžΆαž“αž€αžΆαžšαž’αž“αž»αž‰αŸ’αž‰αžΆαžαŸ”

αžŠαžΌαž…αž“αŸ…αž€αŸ’αž“αž»αž„αž§αž‘αžΆαž αžšαžŽαŸαžŠαŸ‚αž›αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αž•αŸ’αžŠαž›αŸ‹αž±αŸ’αž™ αž’αŸ’αž“αž€αž’αžΆαž…αž‘αžΆαž‰αž™αž€αž˜αŸ‰αŸ‚αžαŸ’αžšαžšαžŠαŸ’αž‹ kube αž–αžΈαž‘αŸ†αž αŸ†αžˆαŸ’αž˜αŸ„αŸ‡αžŽαžΆαž˜αž½αž™αž“αŸ…αž€αŸ’αž“αž»αž„αž…αž„αŸ’αž€αŸ„αž˜ Kubernetes αžŠαŸ„αž™αž˜αž·αž“αž˜αžΆαž“αžŸαž·αž‘αŸ’αž’αž·αž’αŸ’αžœαžΎαžŠαžΌαž…αŸ’αž“αŸαŸ‡αž‘αŸαŸ” αž‚αŸ„αž›αž€αžΆαžšαžŽαŸαž”αžŽαŸ’αžαžΆαž‰αž”αžΆαž“αž”αž·αž‘αž€αžΆαžšαž…αžΌαž›αž”αŸ’αžšαžΎαž–αžΈ namespaces αž•αŸ’αžŸαŸαž„αž‘αŸ€αžαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž‘αŸ…αž€αžΆαž“αŸ‹ namespace αžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ αž αžΎαž™αž“αŸ„αŸ‡αž αžΎαž™αž‡αžΆαžœαžΆαŸ– αž‚αŸ’αž˜αžΆαž“αž€αžΆαžšαž…αžΌαž›αž”αŸ’αžšαžΎ αž‚αŸ’αž˜αžΆαž“αž”αž‰αŸ’αž αžΆαž‘αŸαŸ” αž“αŸ…αž€αŸ’αž“αž»αž„αž‚αŸ†αž“αžΌαžŸαžαžΆαž„αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αžŠαŸ‚αž›αž˜αžΆαž“ αž‘αžΆαŸ†αž„ Prometheus αžŸαŸ’αžαž„αŸ‹αžŠαžΆαžš αž“αž·αž„ Prometheus αžŠαŸ‚αž›αž˜αžΆαž“αž“αŸ…αž€αŸ’αž“αž»αž„αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžš αž˜αžΆαž“αž‡αž˜αŸ’αžšαžΎαžŸαž˜αž½αž™αž“αŸ…αž€αŸ’αž“αž»αž„αžαž˜αŸ’αž›αŸƒαž˜αž½αž€ αžŠαžΎαž˜αŸ’αž”αžΈαž”αžΎαž€αž‚αŸ„αž›αž€αžΆαžšαžŽαŸαž”αžŽαŸ’αžαžΆαž‰αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž–αž½αž€αž‚αŸαŸ” αž’αŸ’αž“αž€αž‚αŸ’αžšαžΆαž“αŸ‹αžαŸ‚αžαŸ’αžšαžΌαžœαž”αžΎαž€αžœαžΆ αž αžΎαž™αž–αž½αž€αž‚αŸαž“αžΉαž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαŸ”

αž–αž·αžαž‡αžΆαž˜αžΆαž“αž”αž‰αŸ’αž αžΆαž˜αž½αž™αž“αŸ…αž‘αžΈαž“αŸαŸ‡αŸ” αž€αŸ’αž“αž»αž„αž“αžΆαž˜αž‡αžΆαž’αŸ’αž“αž€αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αžŠαŸ‚αž›αž˜αžΆαž“αž–αž»αž€αž…αž„αŸ’αž€αžΆαžšαž’αž˜αŸ’αž˜αžαžΆ αž’αŸ’αž“αž€αž‘αŸ†αž“αž„αž‡αžΆαž”αžΆαž“αžŸαž˜αŸ’αžšαŸαž…αž…αž·αžαŸ’αžαžαžΆαž˜αž·αž“αžαŸ’αžšαžΌαžœαž€αžΆαžšαž‚αŸ„αž›αž€αžΆαžšαžŽαŸαž”αžŽαŸ’αžαžΆαž‰αž‘αŸαŸ” αž αžΎαž™αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαž’αžΆαž“αž’αžαŸ’αžαž”αž‘αž‚αŸ’αžšαž”αŸ‹αž”αŸ’αžšαž—αŸαž‘αž’αŸ†αž–αžΈαž’αž“αž’αžΆαž“αžŠαžΌαž…αž‡αžΆ Habr αž’αŸ’αž“αž€αž”αžΆαž“αžŸαž˜αŸ’αžšαŸαž…αž…αž·αžαŸ’αžαžαžΆ flannel αž‡αžΆαž–αž·αžŸαŸαžŸαž‡αžΆαž˜αž½αž™ host-gateway mode αž‚αžΊαž‡αžΆαžšαžΏαž„αžŠαŸαž›αŸ’αž’αž”αŸ†αž•αž»αžαžŠαŸ‚αž›αž’αŸ’αž“αž€αž’αžΆαž…αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž”αžΆαž“αŸ”

αžαžΎαžαŸ’αž‰αž»αŸ†αž‚αž½αžšαž’αŸ’αžœαžΎαž’αŸ’αžœαžΈ?

αž’αŸ’αž“αž€αž’αžΆαž…αž–αŸ’αž™αžΆαž™αžΆαž˜αž”αŸ’αžšαžΎαž‘αžΎαž„αžœαž·αž‰αž“αžΌαžœαžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αžŽαŸ’αžαžΆαž‰αžŠαŸ‚αž›αž’αŸ’αž“αž€αž˜αžΆαž“αž“αŸ…αž€αŸ’αž“αž»αž„αž…αž„αŸ’αž€αŸ„αž˜ Kubernetes αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€ αž–αŸ’αž™αžΆαž™αžΆαž˜αž‡αŸ†αž“αž½αžŸαžœαžΆαžŠαŸ„αž™αž’αŸ’αžœαžΈαžŠαŸ‚αž›αž€αžΆαž“αŸ‹αžαŸ‚αž˜αžΆαž“αž˜αž»αžαž„αžΆαžšαŸ” αž§αž‘αžΆαž αžšαžŽαŸαžŸαž˜αŸ’αžšαžΆαž”αŸ‹ Calico αžŠαžΌαž…αž‚αŸ’αž“αžΆαŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžαŸ’αž‰αž»αŸ†αž…αž„αŸ‹αž“αž·αž™αžΆαž™αž—αŸ’αž›αžΆαž˜αŸ—αžαžΆ αž—αžΆαžšαž€αž·αž…αŸ’αž…αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αžŽαŸ’αžαžΆαž‰αž“αŸ…αž€αŸ’αž“αž»αž„αž…αž„αŸ’αž€αŸ„αž˜αž€αžΆαžšαž„αžΆαžš Kubernetes αž‚αžΊαž–αž·αžαž‡αžΆαž˜αž·αž“αžŸαŸ†αžαžΆαž“αŸ‹αž‘αŸαŸ” αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αžœαžΆαž–αžΈαžšαžŠαž„ (αž‘αŸ„αŸ‡αž‡αžΆαž™αŸ‰αžΆαž„αžŽαžΆ αž‘αŸ’αžšαžΉαžŸαŸ’αžαžΈαž‘αžΆαŸ†αž„αž–αžΈαžš) αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž™αžΎαž„αžαŸ‚αž˜αž‘αžΆαŸ†αž„αž”αž„αŸ’αž αžΆαž‰αž–αžΈαžšαž”αŸ€αž”αž’αŸ’αžœαžΎαžœαžΆαž“αŸ… Slurms αž‘αŸ€αžαž•αž„αŸ” αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŸαž·αžŸαŸ’αžŸαžšαž”αžŸαŸ‹αž™αžΎαž„ αž™αžΎαž„αž”αžΆαž“αž”αž„αŸ’αž αžΆαž‰αž–αžΈαžšαž”αŸ€αž”αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αžŽαŸ’αžαžΆαž‰αž“αŸ…αž€αŸ’αž“αž»αž„αž…αž„αŸ’αž€αŸ„αž˜ Kubernetes αŸ” αž‡αžΆαž‚αŸ„αž›αž€αžΆαžšαžŽαŸαž’αŸ’αž“αž€αž’αžΆαž…αž–αŸ’αž™αžΆαž™αžΆαž˜αž’αŸ’αžœαžΎαž±αŸ’αž™αž”αŸ’αžšαžΆαž€αžŠαžαžΆαž˜αž·αž“αž˜αžΆαž“αž–αŸαž›αžœαŸαž›αžΆαžšαž„αž…αžΆαŸ†αž“αŸ…αž›αžΎαž…αž„αŸ’αž€αŸ„αž˜αž•αž›αž·αžαž€αž˜αŸ’αž˜αž‘αŸαŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž’αŸ’αž“αž€αž”αŸ’αžšαž αŸ‚αž›αž‡αžΆαž˜αž·αž“αž‡αŸ„αž‚αž‡αŸαž™αž‘αŸαŸ”

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

αž“αŸ…αž–αŸαž›αž’αŸ’αž“αž€αž›αžΎαž€αž…αž„αŸ’αž€αŸ„αž˜αžαŸ’αž˜αžΈ αž€αŸ’αž“αž»αž„αž–αŸαž›αž‡αžΆαž˜αž½αž™αž‚αŸ’αž“αžΆαž”αž‰αŸ’αž…αžΌαž› Calico αž‡αŸ†αž“αž½αžŸαž±αŸ’αž™ flannel αŸ”

αž’αŸ’αžœαžΈαžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž’αŸ’αžœαžΎαž”αŸ’αžšαžŸαž·αž“αž”αžΎαžœαž·αž‰αŸ’αž‰αžΆαž”αž“αž”αžαŸ’αžšαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž”αžΆαž“αž…αŸαž‰αž€αŸ’αž“αž»αž„αžšαž™αŸˆαž–αŸαž›αž˜αž½αž™αžšαž™αž†αŸ’αž“αžΆαŸ†αž αžΎαž™αž’αŸ’αž“αž€αž“αžΉαž„αž˜αž·αž“αž”αŸ’αžšαžΎαž…αž„αŸ’αž€αŸ„αž˜αž‘αžΎαž„αžœαž·αž‰αž‘αŸ? αž˜αžΆαž“αžšαžΏαž„αžŠαžΌαž…αž‡αžΆ Kube-RBAC-Proxy αŸ” αž“αŸαŸ‡β€‹αž‡αžΆβ€‹αž€αžΆαžšβ€‹αž’αž—αž·αžœαžŒαŸ’αžβ€‹αžŠαŸβ€‹αžαŸ’αžšαž‡αžΆαž€αŸ‹β€‹αžαŸ’αž›αžΆαŸ†αž„ αžœαžΆβ€‹αž’αž“αž»αž‰αŸ’αž‰αžΆαžβ€‹αž±αŸ’αž™β€‹αž’αŸ’αž“αž€β€‹αž”αž„αŸ’αž€αž”αŸ‹β€‹αžαŸ’αž›αž½αž“β€‹αžœαžΆβ€‹αž‡αžΆβ€‹αž’αž»αž„β€‹αž…αŸ†αž αŸ€αž„β€‹αž‘αŸ…β€‹αž€αžΆαž“αŸ‹β€‹αž•αžβ€‹αž€αŸ’αž“αž»αž„β€‹αž…αž„αŸ’αž€αŸ„αž˜ KubernetesαŸ” αž αžΎαž™αžœαžΆαž–αž·αžαž‡αžΆαž”αž“αŸ’αžαŸ‚αž˜αž€αžΆαžšαž’αž“αž»αž‰αŸ’αž‰αžΆαžαž‘αŸ… pod αž“αŸαŸ‡αžαžΆαž˜αžšαž™αŸˆ RBAC αž“αŸƒ Kubernetes αžαŸ’αž›αž½αž“αžœαžΆαž•αŸ’αž‘αžΆαž›αŸ‹αŸ”

αž˜αžΆαž“αž”αž‰αŸ’αž αžΆαž˜αž½αž™αŸ” αž€αžΆαž›αž–αžΈαž˜αž»αž“ αžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™ Kube-RBAC-Proxy αž“αŸαŸ‡αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž‘αžΎαž„αž“αŸ…αž€αŸ’αž“αž»αž„ Prometheus αžšαž”αžŸαŸ‹αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžšαŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αž‚αžΆαžαŸ‹αž”αžΆαž“αž‘αŸ…αŸ” αž₯αž‘αžΌαžœαž“αŸαŸ‡αž€αŸ†αžŽαŸ‚αž‘αŸ†αž“αžΎαž”αž–αžΉαž„αž•αŸ’αž’αŸ‚αž€αž›αžΎαž€αžΆαžšαž–αž·αžαžŠαŸ‚αž›αžαžΆαž’αŸ’αž“αž€αž˜αžΆαž“αž‚αŸ„αž›αž€αžΆαžšαžŽαŸαž”αžŽαŸ’αžαžΆαž‰αž αžΎαž™αž”αž·αž‘αžœαžΆαžŠαŸ„αž™αž”αŸ’αžšαžΎαž–αž½αž€αžœαžΆαŸ” αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž αžΎαž™ αž™αžΎαž„αž“αžΉαž„αžαŸ’αžšαžΌαžœαžŸαžšαžŸαŸαžšαžαžΆαžšαžΆαž„αž‘αžΎαž„αžœαž·αž‰αž”αž“αŸ’αžαž·αž…αŸ” αžαžΆαž˜αž–αž·αžαž‘αŸ… αž”αžΎαž’αŸ’αž“αž€αž‘αŸ… αžƒαŸ’αž›αžΆαŸ†αž„αž“αŸαŸ‡αŸ”αž˜αžΆαž“αž§αž‘αžΆαž αžšαžŽαŸαž“αŸƒαžšαž”αŸ€αž”αž”αŸ’αžšαžΎαžœαžΆαž‡αžΆ sidecars αž αžΎαž™αž‚αŸ†αž“αžΌαžŸαžαžΆαž„αž“αžΉαž„αžαŸ’αžšαžΌαžœαžŸαžšαžŸαŸαžšαž‘αžΎαž„αžœαž·αž‰αž™αŸ‰αžΆαž„αžαž·αž…αž”αŸ†αž•αž»αžαŸ”

αž˜αžΆαž“αž”αž‰αŸ’αž αžΆαžαžΌαž…αž˜αž½αž™αž‘αŸ€αžαŸ” Prometheus αž˜αž·αž“β€‹αž˜αŸ‚αž“β€‹αž‡αžΆβ€‹αž˜αž“αž»αžŸαŸ’αžŸβ€‹αžαŸ‚β€‹αž˜αŸ’αž“αžΆαž€αŸ‹β€‹αžŠαŸ‚αž›β€‹αž”αŸ’αžšαž‚αž›αŸ‹β€‹αž˜αŸ‰αŸ‚αžαŸ’αžšβ€‹αžšαž”αžŸαŸ‹β€‹αžœαžΆβ€‹αž‘αŸ…β€‹αž²αŸ’αž™β€‹αž’αŸ’αž“αž€β€‹αžŽαžΆβ€‹αž˜αŸ’αž“αžΆαž€αŸ‹β€‹αžαŸ‚β€‹αž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡αŸ” αžŸαž˜αžΆαžŸαž’αžΆαžαž»αž…αž„αŸ’αž€αŸ„αž˜ Kubernetes αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αžšαž”αžŸαŸ‹αž™αžΎαž„αž€αŸαž’αžΆαž…αžαŸ’αžšαž›αž”αŸ‹αž˜αž€αžœαž·αž‰αž“αžΌαžœαž˜αŸ‰αŸ‚αžαŸ’αžšαžšαž”αžŸαŸ‹αž–αž½αž€αž‚αŸαž•αž„αžŠαŸ‚αžšαŸ”

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

αžŠαžΌαž…αŸ’αž“αŸαŸ‡αžαŸ’αž‰αž»αŸ†αž“αžΉαž„αž”αž„αŸ’αž αžΆαž‰αžœαž·αž’αžΈαž–αžΈαžšαž™αŸ‰αžΆαž„αž™αŸ‰αžΆαž„αž†αžΆαž”αŸ‹αžšαž αŸαžŸαž’αŸ†αž–αžΈαžšαž”αŸ€αž”αžŠαŸ‚αž›αž€αŸ’αžšαž»αž˜ Kubernetes αž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ†αž•αŸ’αž›αžΆαž‰αŸ”

αž’αŸ’αž“αž€αž“αžΉαž„αžŸαžΎαž…αž“αŸ…αž–αŸαž›αžαŸ’αž‰αž»αŸ†αž”αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€ αž“αŸαŸ‡αž‡αžΆαž€αžšαžŽαžΈαž‡αžΈαžœαž·αžαž–αž·αžαž–αžΈαžšαŸ”

αžœαž·αž’αžΈαžŸαžΆαžŸαŸ’αžšαŸ’αžαž˜αž½αž™αŸ” αž€αžΆαžšαžαž™αž…αž»αŸ‡αž’αž“αž’αžΆαž“αŸ”

αžαŸ„αŸ‡αž”αžΎαž€αž•αŸαž€αž–αž·αžŸαŸαžŸαž˜αž½αž™αž‘αŸ€αžαŸ” αžœαžΆαž“αžΉαž„αž˜αžΆαž“αž•αŸ’αž“αŸ‚αž€αžŠαžΌαž…αž“αŸαŸ‡αŸ”

resources: 
    requests: 
        cpu: 4 
        memory: 4Gi 

αžŠαžΌαž…αžŠαŸ‚αž›αž’αŸ’αž“αž€αžŠαžΉαž„ αžŸαŸ†αžŽαžΎαž‚αžΊαž‡αžΆαž…αŸ†αž“αž½αž“αž“αŸƒ CPU αž“αž·αž„αž’αž„αŸ’αž‚αž…αž„αž…αžΆαŸ†αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž˜αŸ’αžšαž»αž„αž‘αž»αž€αž“αŸ…αž›αžΎαž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αžŸαž˜αŸ’αžšαžΆαž”αŸ‹ pods αž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹αž‡αžΆαž˜αž½αž™αž“αžΉαž„αžŸαŸ†αžŽαžΎαŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž™αžΎαž„αž˜αžΆαž“αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“ XNUMX-core αž“αŸ…αž€αŸ’αž“αž»αž„αž…αž„αŸ’αž€αŸ„αž˜ Kubernetes αž αžΎαž™αž•αžαžŸαŸŠαžΈαž—αžΈαž™αžΌ XNUMX αž˜αž€αžŠαž›αŸ‹αž‘αžΈαž“αŸ„αŸ‡αž‡αžΆαž˜αž½αž™αž“αžΉαž„αžŸαŸ†αžŽαžΎ αžœαžΆαž˜αžΆαž“αž“αŸαž™αžαžΆαž›αŸ‚αž„αž˜αžΆαž“αž•αžαžŠαŸ‚αž›αž˜αžΆαž“αžŸαŸ†αžŽαžΎαž“αžΉαž„αž’αžΆαž…αž˜αž€αžŠαž›αŸ‹αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž“αŸαŸ‡αž‘αŸ€αžαž αžΎαž™αŸ”

αž”αŸ’αžšαžŸαž·αž“αž”αžΎαžαŸ’αž‰αž»αŸ†αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš pod αž”αŸ‚αž”αž“αŸαŸ‡ αžαŸ’αž‰αž»αŸ†αž“αžΉαž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαŸ–

$ kubectl scale special-pod --replicas=...

αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αž‚αŸ’αž˜αžΆαž“αž“αžšαžŽαžΆαž˜αŸ’αž“αžΆαž€αŸ‹αž“αžΉαž„αž’αžΆαž…αžŠαžΆαž€αŸ‹αž–αž„αŸ’αžšαžΆαž™αž‘αŸ…αž€αžΆαž“αŸ‹αž€αŸ’αžšαž»αž˜ Kubernetes αž”αžΆαž“αž‘αŸαŸ” αžŠαŸ„αž™αžŸαžΆαžšαžαŸ‚αžαŸ’αž“αžΆαŸ†αž„αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž“αžΉαž„αž’αžŸαŸ‹αžŸαŸ†αžŽαžΎαŸ” αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž αžΎαž™ αžαŸ’αž‰αž»αŸ†αž“αžΉαž„αž”αž‰αŸ’αžˆαž”αŸ‹αž…αž„αŸ’αž€αŸ„αž˜ Kubernetes αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαžαŸ’αž‰αž»αŸ†αž’αŸ’αžœαžΎαž”αŸ‚αž”αž“αŸαŸ‡αž“αŸ…αž–αŸαž›αž›αŸ’αž„αžΆαž… αžαŸ’αž‰αž»αŸ†αž’αžΆαž…αž”αž‰αŸ’αžˆαž”αŸ‹αž€αžΆαžšαžŠαžΆαž€αŸ‹αž–αž„αŸ’αžšαžΆαž™αžšαž™αŸˆαž–αŸαž›αž™αžΌαžšαŸ”

αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž™αžΎαž„αž€αŸ’αžšαž‘αŸαž€αž˜αžΎαž›αž―αž€αžŸαžΆαžš Kubernetes αž˜αŸ’αžαž„αž‘αŸ€αž αž™αžΎαž„αž“αžΉαž„αžƒαžΎαž‰αžœαžαŸ’αžαž»αž“αŸαŸ‡αž αŸ…αžαžΆ Limit RangeαŸ” αžœαžΆαž€αŸ†αžŽαžαŸ‹αž’αž“αž’αžΆαž“αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžœαžαŸ’αžαž»αž…αž„αŸ’αž€αŸ„αž˜αŸ” αž’αŸ’αž“αž€αž’αžΆαž…αžŸαžšαžŸαŸαžšαžœαžαŸ’αžαž» Limit Range αž€αŸ’αž“αž»αž„ yaml αž’αž“αž»αžœαžαŸ’αžαžœαžΆαž‘αŸ… namespaces αž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹ - αž αžΎαž™αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αž“αŸ…αž€αŸ’αž“αž»αž„ namespace αž“αŸαŸ‡ αž’αŸ’αž“αž€αž’αžΆαž…αž“αž·αž™αžΆαž™αžαžΆαž’αŸ’αž“αž€αž˜αžΆαž“αž’αž“αž’αžΆαž“αž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜ αž’αžαž·αž”αžšαž˜αžΆ αž“αž·αž„αž’αž”αŸ’αž”αž”αžšαž˜αžΆαžŸαž˜αŸ’αžšαžΆαž”αŸ‹ pods αŸ”

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

αž αžΎαž™αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž€αž“αŸ’αž›αŸ‚αž„αžŠαŸ‚αž›αžœαž·αž’αžΈαžŸαžΆαžŸαŸ’αžαŸ’αžšαž›αŸαž 11 αž˜αž€αž–αžΈαŸ” αž™αžΎαž„αž”αžΎαž€αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš 111 pods αŸ” αž“αŸ„αŸ‡αž‡αžΆαžŠαž”αŸ‹αž˜αž½αž™αž–αžΆαž“αŸ‹αž›αžΆαž“αŸ” αž“αŸαŸ‡β€‹αž˜αž·αž“αž˜αŸ‚αž“β€‹αž˜αž€β€‹αž–αžΈβ€‹αžαŸ’αž‰αž»αŸ†β€‹αž‘αžΎαž„β€‹αž›αŸαžβ€‹αž”αŸ‚αž”β€‹αž“αŸαŸ‡β€‹αž‘αŸ αž”αŸ‰αž»αž“αŸ’αžαŸ‚β€‹αž˜αž€β€‹αž–αžΈβ€‹αžαŸ’αž‰αž»αŸ†β€‹αžƒαžΎαž‰β€‹αžœαžΆβ€‹αžŠαŸ„αž™β€‹αžαŸ’αž›αž½αž“β€‹αž―αž„αŸ”

αžšαžΏαž„αž–αž·αžαŸ” αž–αŸαž›αž›αŸ’αž„αžΆαž…αžαŸ’αž‰αž»αŸ†αž αŸ€αž”αž“αžΉαž„αž…αŸαž‰αž–αžΈαž€αžΆαžšαž·αž™αžΆαž›αŸαž™αŸ” αžαŸ’αž‰αž»αŸ†αžƒαžΎαž‰αž€αŸ’αžšαž»αž˜αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαž€αŸ†αž–αž»αž„αž’αž„αŸ’αž‚αž»αž™αž“αŸ…αž‡αŸ’αžšαž»αž„αž˜αŸ’αžαžΆαž„ αž€αŸ†αž–αž»αž„αž’αŸ’αžœαžΎαž’αŸ’αžœαžΈαž˜αž½αž™αž‡αžΆαž˜αž½αž™αž€αž»αŸ†αž–αŸ’αž™αžΌαž‘αŸαžšαž™αž½αžšαžŠαŸƒαžšαž”αžŸαŸ‹αž–αž½αž€αž‚αŸαŸ” αžαŸ’αž‰αž»αŸ†β€‹αžŠαžΎαžšβ€‹αž‘αŸ…β€‹αžšαž€β€‹αž”αž»αžšαžŸβ€‹αž‘αžΆαŸ†αž„β€‹αž“αŸ„αŸ‡β€‹αžŸαž½αžšβ€‹αžαžΆ β€œαžαžΎβ€‹αž’αŸ’αž“αž€β€‹αž˜αžΆαž“β€‹αžšαžΏαž„β€‹αž’αŸ’αžœαžΈβ€‹αž€αžΎαžβ€‹αž‘αžΎαž„?”

αž˜αž»αž“αž“αŸαŸ‡αž”αž“αŸ’αžαž·αž… αž”αŸ’αžšαž αŸ‚αž›αž˜αŸ‰αŸ„αž„αž”αŸ’αžšαžΆαŸ†αž”αž½αž“αž›αŸ’αž„αžΆαž… αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαž˜αŸ’αž“αžΆαž€αŸ‹αž€αŸ†αž–αž»αž„αžšαŸ€αž”αž…αŸ†αžαŸ’αž›αž½αž“αž‘αŸ…αž•αŸ’αž‘αŸ‡αŸ” αž αžΎαž™β€‹αžαŸ’αž‰αž»αŸ†β€‹αž”αžΆαž“β€‹αžŸαž˜αŸ’αžšαŸαž…β€‹αž…αž·αžαŸ’αžβ€‹αžαžΆβ€‹αŸ– «​αž₯αž‘αžΌαžœβ€‹αž“αŸαŸ‡β€‹αžαŸ’αž‰αž»αŸ†β€‹αž“αžΉαž„β€‹αž’αŸ’αžœαžΎβ€‹αž˜αžΆαžαŸ’αžšαžŠαŸ’αž‹αžΆαž“β€‹αž–αžΆαž€αŸ’αž™β€‹αžŸαž»αŸ†β€‹αžšαž”αžŸαŸ‹β€‹αžαŸ’αž‰αž»αŸ†β€‹αž…αž»αŸ‡β€‹αžŠαž›αŸ‹β€‹αž˜αž½αž™β€‹Β»αŸ” αžαŸ’αž‰αž»αŸ†β€‹αž…αž»αž…β€‹αž˜αž½αž™ αž”αŸ‰αž»αž“αŸ’αžαŸ‚β€‹αž’αŸŠαžΈαž“αž’αžΊαžŽαž·αžβ€‹αž™αžΊαžβ€‹αž”αž“αŸ’αžαž·αž…αŸ” αž‚αžΆαžαŸ‹αž”αžΆαž“αž…αž»αž…αž˜αž½αž™αž˜αŸ’αžαž„αž‘αŸ€αž αž‚αžΆαžαŸ‹αž…αž»αž…αž˜αž½αž™ αž αžΎαž™αž…αž»αž… Enter αŸ” αžαŸ’αž‰αž»αŸ†β€‹αž‰αžΆαž”αŸ‹β€‹αž‰αŸαžšβ€‹αž‚αŸ’αžšαž”αŸ‹β€‹αž™αŸ‰αžΆαž„β€‹αžŠαŸ‚αž›β€‹αžαŸ’αž‰αž»αŸ†β€‹αž’αžΆαž…β€‹αž’αŸ’αžœαžΎβ€‹αž”αžΆαž“αŸ” αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αž’αŸŠαž·αž“αž’αžΊαžŽαž·αžαž˜αžΆαž“αž‡αžΈαžœαž·αž - αž αžΎαž™αž’αŸ’αžœαžΈαž‚αŸ’αžšαž”αŸ‹αž™αŸ‰αžΆαž„αž”αžΆαž“αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž’αŸ’αž›αžΆαž€αŸ‹αž…αž»αŸ‡αžŠαž›αŸ‹αž›αŸαžαž“αŸαŸ‡αŸ”

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

αžαžΆαž˜αž’αž˜αŸ’αž˜αž‡αžΆαžαž· αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αž–αŸ’αž™αžΆαž™αžΆαž˜αž’αŸ’αžœαžΎαžŠαžΌαž…αž‚αŸ’αž“αžΆαž“αŸ…αž›αžΎ KubernetesαŸ” Kubernetes αž˜αž·αž“αžŸαž”αŸ’αž”αžΆαž™αž…αž·αžαŸ’αžαž‡αžΆαž˜αž½αž™αž“αžΉαž„αžŠαž”αŸ‹αž˜αž½αž™αž–αžΆαž“αŸ‹αž›αžΆαž“ pods αž‚αžΆαžαŸ‹αž”αžΆαž“αž“αž·αž™αžΆαž™αžαžΆ: "αžαŸ’αž‰αž»αŸ†αž˜αž·αž“αž’αžΆαž…αŸ” αž›αžΎαžŸαž–αžΈαž€αžΆαžšαž€αžΆαžšαž–αžΆαžšαž˜αžΆαžαŸ‹αžαžΆαž„αž€αŸ’αž“αž»αž„β€ αŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚ 1 pods αž’αžΆαž…αŸ”

αž‡αžΆαž€αžΆαžšαž†αŸ’αž›αžΎαž™αžαž”αž‘αŸ…αž“αžΉαž„αž˜αž½αž™αž–αžΆαž“αŸ‹αž›αžΆαž“ Cube αž˜αž·αž“αž”αžΆαž“αžŠαž€αžαŸ’αž›αž½αž“αž…αŸαž‰αž‘αŸαŸ” αž‚αžΆαžαŸ‹αž–αž·αžαž‡αžΆαž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž’αŸ’αžœαžΎαž˜αžΆαžαŸ’αžšαžŠαŸ’αž‹αžΆαž“αŸ” αžŠαŸ†αžŽαžΎαžšβ€‹αž€αžΆαžšβ€‹αž€αžΆαž“αŸ‹β€‹αžαŸ‚β€‹αž”αž“αŸ’αžβ€‹αž‘αŸ…β€‹αž‘αŸ€αž αžœαžΆβ€‹αžαŸ’αžšαžΌαžœβ€‹αž…αŸ†αžŽαžΆαž™β€‹αž–αŸαž›β€‹αž€αžΆαž“αŸ‹β€‹αžαŸ‚β€‹αž…αŸ’αžšαžΎαž“β€‹αž€αŸ’αž“αž»αž„β€‹αž€αžΆαžšβ€‹αž”αž„αŸ’αž€αžΎαžβ€‹αž•αžαžαž›β€‹αžαŸ’αž˜αžΈαŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž“αŸ…αžαŸ‚αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž”αž“αŸ’αžαŸ” αž”αž‰αŸ’αž αžΆαžαŸ‚αž˜αž½αž™αž‚αžαŸ‹αž‚αžΊαžαžΆ αž”αŸ’αžšαžŸαž·αž“αž”αžΎαžαŸ’αž‰αž»αŸ†αž’αžΆαž…αž”αžΎαž€αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš pods αžŠαŸ„αž™αž‚αŸ’αž˜αžΆαž“αžŠαŸ‚αž“αž€αŸ†αžŽαžαŸ‹αž€αŸ’αž“αž»αž„ namespace αžšαž”αžŸαŸ‹αžαŸ’αž‰αž»αŸ† αž“αŸ„αŸ‡αž‘αŸ„αŸ‡αž”αžΈαž‡αžΆαž‚αŸ’αž˜αžΆαž“αžŸαŸ†αžŽαžΎ αž“αž·αž„αžŠαŸ‚αž“αž€αŸ†αžŽαžαŸ‹αž€αŸαžŠαŸ„αž™ αžαŸ’αž‰αž»αŸ†αž’αžΆαž…αž”αžΎαž€αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš pods αž‡αžΆαž…αŸ’αžšαžΎαž“αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž€αž·αž…αŸ’αž…αž€αžΆαžšαž˜αž½αž™αž…αŸ†αž“αž½αž“ αžŠαŸ‚αž›αžŠαŸ„αž™αž˜αžΆαž“αž‡αŸ†αž“αž½αž™αž–αžΈαž€αž·αž…αŸ’αž…αž€αžΆαžšαž‘αžΆαŸ†αž„αž“αŸαŸ‡ αžαŸ’αž“αžΆαŸ†αž„αž“αžΉαž„αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž”αž“αŸ’αžαŸ‚αž˜αž“αŸ…αž€αŸ’αž“αž»αž„ memory αž“αŸ…αž€αŸ’αž“αž»αž„ CPU αŸ” αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αžαŸ’αž‰αž»αŸ†αž”αžΎαž€αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš pods αž‡αžΆαž…αŸ’αžšαžΎαž“ αž–αŸαžαŸŒαž˜αžΆαž“αž–αžΈαž–αž½αž€αžœαžΆαž‚αž½αžšαžαŸ‚αž…αžΌαž›αž‘αŸ…αž€αŸ’αž“αž»αž„αž€αž“αŸ’αž›αŸ‚αž„αž•αŸ’αž‘αž»αž€ αž–αŸ„αž›αž‚αžΊαž‡αžΆαžŠαžΎαž˜αŸ” αž αžΎαž™αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž–αŸαžαŸŒαž˜αžΆαž“αž…αŸ’αžšαžΎαž“αž–αŸαž€αž˜αž€αžŠαž›αŸ‹αž‘αžΈαž“αŸ„αŸ‡ αž€αžΆαžšαž•αŸ’αž‘αž»αž€αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αžαŸ’αžšαž‘αž”αŸ‹αž˜αž€αžœαž·αž‰αž™αžΊαžαž–αŸαž€ αž αžΎαž™ Kubernetes αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αžšαž·αž›αŸ”

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

αž”αŸ‰αž»αž“αŸ’αžαŸ‚β€‹αžαŸ’αž‰αž»αŸ†β€‹αž”αžΆαž“β€‹αžŸαž˜αŸ’αžšαŸαž…β€‹αž…αž·αžαŸ’αžβ€‹αž‘αŸ…β€‹αž€αžΆαž“αŸ‹β€‹αžαŸ‚β€‹αž†αŸ’αž„αžΆαž™αŸ” αžŠαžΌαž…αžŠαŸ‚αž›αž’αŸ’αž“αž€αž”αžΆαž“αžŠαžΉαž„αž αžΎαž™αžαžΆαž“αŸ…αž€αŸ’αž“αž»αž„ Kubernetes αž˜αžΆαž“αžšαž”αžŸαŸ‹αž”αŸ‚αž”αž“αŸαŸ‡αž αŸ…αžαžΆαžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αŸ” αž‡αžΆαž€αžΆαžšαž”αŸ’αžšαžŸαžΎαžšαžŽαžΆαžŸαŸ‹ αžαžΆαž˜αž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜αž“αŸ…αž€αŸ’αž“αž»αž„αž…αž„αŸ’αž€αŸ„αž˜αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€ αž—αžΆαž‚αž…αŸ’αžšαžΎαž“αž‘αŸ†αž“αž„αž‡αžΆαžŸαŸαžœαžΆαž“αŸαŸ‡αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŠαŸ„αž™αž”αŸ’αžšαžΎαžαžΆαžšαžΆαž„ IP αŸ”

αž§αž‘αžΆαž αžšαžŽαŸ αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž˜αž½αž™αž–αžΆαž“αŸ‹αž›αžΆαž“αž•αž αž αžΎαž™αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αž”αŸ’αžšαžΎαžŸαŸ’αž‚αŸ’αžšαžΈαž”αžŠαžΎαž˜αŸ’αž”αžΈαž”αž„αŸ’αžαŸ†αž±αŸ’αž™ Kubernetis αž”αž„αŸ’αž€αžΎαžαžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αžαŸ’αž˜αžΈαŸ–

for i in {1..1111111}; do
    kubectl expose deployment test --port 80  
        --overrides="{"apiVersion": "v1", 
           "metadata": {"name": "nginx$i"}}"; 
done 

αž“αŸ…αž›αžΎαžαŸ’αž“αžΆαŸ†αž„αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž“αŸƒαž…αž„αŸ’αž€αŸ„αž˜ αž…αŸ’αž”αžΆαž”αŸ‹ iptables αžαŸ’αž˜αžΈαž€αžΆαž“αŸ‹αžαŸ‚αž…αŸ’αžšαžΎαž“αž“αžΉαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž”αŸ’αžšαž αŸ‚αž›αž€αŸ’αž“αž»αž„αž–αŸαž›αžŠαŸ†αžŽαžΆαž›αž‚αŸ’αž“αžΆαŸ” αž›αžΎαžŸαž–αžΈαž“αŸαŸ‡αž‘αŸ…αž‘αŸ€αž αž…αŸ’αž”αžΆαž”αŸ‹ iptables αž˜αž½αž™αž–αžΆαž“αŸ‹αž›αžΆαž“αž“αžΉαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž‘αžΎαž„αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αž“αžΈαž˜αž½αž™αŸ—αŸ”

αžαŸ’αž‰αž»αŸ†β€‹αž”αžΆαž“β€‹αž–αž·αž“αž·αžαŸ’αž™β€‹αž˜αžΎαž›β€‹αžšαžΏαž„β€‹αž“αŸαŸ‡β€‹αžšαžΆαž”αŸ‹β€‹αž–αžΆαž“αŸ‹β€‹αžšαž αžΌαžβ€‹αžŠαž›αŸ‹β€‹αžŠαž”αŸ‹αŸ” αž αžΎαž™αž”αž‰αŸ’αž αžΆαž‚αžΊαžαžΆαž“αŸ…αž€αž˜αŸ’αžšαž·αžαž“αŸαŸ‡αžœαžΆαž˜αžΆαž“αž”αž‰αŸ’αž αžΆαžŽαžΆαžŸαŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαž’αŸ’αžœαžΎ ssh αž‘αŸ… node αŸ” αžŠαŸ„αž™αžŸαžΆαžšαžαŸ‚αž€αž‰αŸ’αž…αž”αŸ‹αžŠαŸ‚αž›αž†αŸ’αž›αž„αž€αžΆαžαŸ‹αžαŸ’αžŸαŸ‚αžŸαž„αŸ’αžœαžΆαž€αŸ‹αž‡αžΆαž…αŸ’αžšαžΎαž“αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž˜αžΆαž“αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸαž˜αž·αž“αž›αŸ’αž’αŸ”

αž αžΎαž™αž”αž‰αŸ’αž αžΆαž“αŸαŸ‡αž€αŸαžαŸ’αžšαžΌαžœαž”αžΆαž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž•αž„αžŠαŸ‚αžš αžŠαŸ„αž™αž˜αžΆαž“αž‡αŸ†αž“αž½αž™αž–αžΈ Kubernetes αŸ” αž˜αžΆαž“αžœαžαŸ’αžαž»αž€αžΌαžαžΆαž’αž“αž’αžΆαž“αž”αŸ‚αž”αž“αŸαŸ‡αŸ” αž€αŸ†αžŽαžαŸ‹αž…αŸ†αž“αž½αž“αž’αž“αž’αžΆαž“ αž“αž·αž„αžœαžαŸ’αžαž»αžŠαŸ‚αž›αž˜αžΆαž“αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž…αž“αŸ’αž›αŸ„αŸ‡αžˆαŸ’αž˜αŸ„αŸ‡αž€αŸ’αž“αž»αž„αž…αž„αŸ’αž€αŸ„αž˜αŸ” αž™αžΎαž„αž’αžΆαž…αž”αž„αŸ’αž€αžΎαžαžœαžαŸ’αžαž» yaml αž“αŸ…αž€αŸ’αž“αž»αž„ namespace αž“αžΈαž˜αž½αž™αŸ—αž“αŸƒαž€αŸ’αžšαž»αž˜ Kubernetes αŸ” αžŠαŸ„αž™αž”αŸ’αžšαžΎαžœαžαŸ’αžαž»αž“αŸαŸ‡ αž™αžΎαž„αž’αžΆαž…αž“αž·αž™αžΆαž™αž”αžΆαž“αžαžΆ αž™αžΎαž„αž˜αžΆαž“αžŸαŸ†αžŽαžΎαž˜αž½αž™αž…αŸ†αž“αž½αž“ αž“αž·αž„αžŠαŸ‚αž“αž€αŸ†αžŽαžαŸ‹αž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹αžŠαŸ‚αž›αž”αžΆαž“αž”αŸ‚αž„αž…αŸ‚αž€αžŸαž˜αŸ’αžšαžΆαž”αŸ‹ namespace αž“αŸαŸ‡ αž αžΎαž™αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αž™αžΎαž„αž’αžΆαž…αž“αž·αž™αžΆαž™αž”αžΆαž“αžαžΆαž“αŸ…αž€αŸ’αž“αž»αž„ namespace αž“αŸαŸ‡ αžœαžΆαž’αžΆαž…αž”αž„αŸ’αž€αžΎαžαžŸαŸαžœαžΆ 10 αž“αž·αž„ 10 pods αŸ” αž αžΎαž™β€‹αž’αŸ’αž“αž€β€‹αž’αž—αž·αžœαžŒαŸ’αžαž“αŸβ€‹αžαŸ‚β€‹αž˜αŸ’αž“αžΆαž€αŸ‹β€‹αž™αŸ‰αžΆαž„β€‹αž αŸ„αž…β€‹αžŽαžΆαžŸαŸ‹β€‹αž’αžΆαž…β€‹αž‰αžΆαž€αŸ‹β€‹αžαŸ’αž›αž½αž“β€‹αž―αž„β€‹αž“αŸ…β€‹αž–αŸαž›β€‹αž›αŸ’αž„αžΆαž…αŸ” Kubernetes αž“αžΉαž„αž”αŸ’αžšαžΆαž”αŸ‹αž‚αžΆαžαŸ‹αžαžΆ "αž’αŸ’αž“αž€αž˜αž·αž“αž’αžΆαž…αž’αŸ’αžœαžΎαž˜αžΆαžαŸ’αžšαžŠαŸ’αž‹αžΆαž“αž•αžαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αžŠαž›αŸ‹αž…αŸ†αž“αž½αž“αž“αŸ„αŸ‡αž”αžΆαž“αž‘αŸ αž–αžΈαž–αŸ’αžšαŸ„αŸ‡αž’αž“αž’αžΆαž“αž›αžΎαžŸαž–αžΈαž€αžΌαžαžΆαŸ”" αž“αŸ„αŸ‡αž αžΎαž™αž‡αžΆαžœαžΆαž”αž‰αŸ’αž αžΆαžαŸ’αžšαžΌαžœαž”αžΆαž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αŸ” αž―αž€αžŸαžΆαžšαž“αŸ…αž‘αžΈαž“αŸαŸ‡.

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

αž€αžΌαžαžΆαž’αž“αž’αžΆαž“ + αž‡αž½αžšαžŠαŸ‚αž“αž€αŸ†αžŽαžαŸ‹ + RBAC
β€’ αž”αž„αŸ’αž€αžΎαžαž›αŸ†αž αžˆαŸ’αž˜αŸ„αŸ‡
β€’ αž”αž„αŸ’αž€αžΎαžαžŠαŸ‚αž“αž€αŸ†αžŽαžαŸ‹αž˜αž½αž™αž“αŸ…αžαžΆαž„αž€αŸ’αž“αž»αž„
β€’ αž”αž„αŸ’αž€αžΎαžαž“αŸ…αžαžΆαž„αž€αŸ’αž“αž»αž„αž€αžΌαžαžΆαž’αž“αž’αžΆαž“
β€’ αž”αž„αŸ’αž€αžΎαžαž‚αžŽαž“αžΈαžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αžŸαž˜αŸ’αžšαžΆαž”αŸ‹ CI
β€’ αž”αž„αŸ’αž€αžΎαžαžαž½αž“αžΆαž‘αžΈαž…αž„αžŸαž˜αŸ’αžšαžΆαž”αŸ‹ CI αž“αž·αž„αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹
β€’ αž”αžΎαž€αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αž…αžΆαŸ†αž”αžΆαž…αŸ‹αž‡αžΆαž‡αž˜αŸ’αžšαžΎαžŸ

αžŠαžΌαž…αŸ’αž“αŸαŸ‡ αžαŸ’αž‰αž»αŸ†β€‹αžŸαžΌαž˜β€‹αž™αž€β€‹αž±αž€αžΆαžŸβ€‹αž“αŸαŸ‡β€‹αžŠαžΎαž˜αŸ’αž”αžΈβ€‹αž…αŸ‚αž€β€‹αžšαŸ†αž›αŸ‚αž€β€‹αž€αžΆαžšβ€‹αž’αž—αž·αžœαžŒαŸ’αžβ€‹αžšαž”αžŸαŸ‹β€‹αžαŸ’αž‰αž»αŸ†αŸ” αž˜αžΆαž“αžšαžΏαž„αž”αŸ‚αž”αž“αŸαŸ‡αž αŸ…αžαžΆ αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžš SDK αŸ” αž“αŸαŸ‡αž‚αžΊαž‡αžΆαžœαž·αž’αžΈαž˜αž½αž™αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž…αž„αŸ’αž€αŸ„αž˜ Kubernetes αžŠαžΎαž˜αŸ’αž”αžΈαžŸαžšαžŸαŸαžšαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžœαžΆαŸ” αž’αŸ’αž“αž€αž’αžΆαž…αžŸαžšαžŸαŸαžšαžŸαŸαž…αž€αŸ’αžαžΈαžαŸ’αž›αŸ‚αž„αž€αžΆαžšαžŽαŸαžŠαŸ„αž™αž”αŸ’αžšαžΎ Ansible αŸ”

αžŠαŸ†αž”αžΌαž„αžœαžΆαžαŸ’αžšαžΌαžœαž”αžΆαž“αžŸαžšαžŸαŸαžšαž“αŸ…αž€αŸ’αž“αž»αž„ Ansible αž αžΎαž™αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž˜αž€αžαŸ’αž‰αž»αŸ†αžƒαžΎαž‰αžαžΆαž˜αžΆαž“αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžš SDK αž αžΎαž™αž”αžΆαž“αžŸαžšαžŸαŸαžšαžαž½αž“αžΆαž‘αžΈ Ansible αž‘αŸ…αž‡αžΆαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžšαŸ” αžŸαŸαž…αž€αŸ’αžαžΈαžαŸ’αž›αŸ‚αž„αž€αžΆαžšαžŽαŸαž“αŸαŸ‡αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž’αŸ’αž“αž€αž”αž„αŸ’αž€αžΎαžαžœαžαŸ’αžαž»αž˜αž½αž™αž“αŸ…αž€αŸ’αž“αž»αž„αž…αž„αŸ’αž€αŸ„αž˜ Kubernetes αžŠαŸ‚αž›αž αŸ…αžαžΆαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαŸ” αž“αŸ…αž€αŸ’αž“αž»αž„αž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆ αžœαžΆαž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž’αŸ’αž“αž€αž–αžŽαŸŒαž“αžΆαž”αžšαž·αžŸαŸ’αžαžΆαž“αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆαž“αŸαŸ‡αž“αŸ…αž€αŸ’αž“αž»αž„ yaml αŸ” αž αžΎαž™αž“αŸ…αž€αŸ’αž“αž»αž„αž”αžšαž·αž™αžΆαž€αžΆαžŸαž€αŸ’αžšαž»αž˜ αžœαžΆαž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž™αžΎαž„αž–αž·αž–αžŽαŸŒαž“αžΆαžαžΆαž™αžΎαž„αž€αŸ†αž–αž»αž„αž”αŸ‚αž„αž…αŸ‚αž€αž’αž“αž’αžΆαž“αž‡αžΆαž…αŸ’αžšαžΎαž“αŸ”

αžαž·αž…αžαž½αž… αž’αŸ’αžœαžΎαž±αŸ’αž™αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŸαŸ’αž˜αž»αž‚αžŸαŸ’αž˜αžΆαž‰αž‘αžΆαŸ†αž„αž˜αžΌαž›αž“αŸαŸ‡αž€αžΆαž“αŸ‹αžαŸ‚αž„αžΆαž™αžŸαŸ’αžšαž½αž›.

αž αžΎαž™αž“αŸ…αž€αŸ’αž“αž»αž„αž€αžΆαžšαžŸαž“αŸ’αž“αž·αžŠαŸ’αž‹αžΆαž“αŸ” αž’αŸ’αžœαžΈαžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž’αŸ’αžœαžΎαž‡αžΆαž˜αž½αž™αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž“αŸαŸ‡?
αž‘αžΈαž˜αž½αž™αŸ” αž‚αŸ„αž›αž€αžΆαžšαžŽαŸαžŸαž»αžœαžαŸ’αžαž·αž—αžΆαž– Pod αž‚αžΊαž›αŸ’αž’αŸ” αž αžΎαž™αž‘αŸ„αŸ‡αž”αžΈαž‡αžΆαž˜αž·αž“αž˜αžΆαž“αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαžŠαŸ†αž‘αžΎαž„ Kubernetes αžŽαžΆαž˜αž½αž™αž”αŸ’αžšαžΎαžœαžΆαžšαž αžΌαžαž˜αž€αžŠαž›αŸ‹αžŸαž–αŸ’αžœαžαŸ’αž„αŸƒαž“αŸαŸ‡αž€αŸαžŠαŸ„αž™ αž’αŸ’αž“αž€αž“αŸ…αžαŸ‚αžαŸ’αžšαžΌαžœαž”αŸ’αžšαžΎαž–αž½αž€αžœαžΆαž“αŸ…αž€αŸ’αž“αž»αž„αž…αž„αŸ’αž€αŸ„αž˜αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αŸ”

αž‚αŸ„αž›αž€αžΆαžšαžŽαŸαž”αžŽαŸ’αžαžΆαž‰αž˜αž·αž“αž˜αŸ‚αž“αž‚αŸ’αžšαžΆαž“αŸ‹αžαŸ‚αž‡αžΆαž˜αž»αžαž„αžΆαžšαžŠαŸ‚αž›αž˜αž·αž“αž…αžΆαŸ†αž”αžΆαž…αŸ‹αž•αŸ’αžŸαŸαž„αž‘αŸ€αžαž“αŸ„αŸ‡αž‘αŸαŸ” αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž’αŸ’αžœαžΈαžŠαŸ‚αž›αž–αž·αžαž‡αžΆαžαŸ’αžšαžΌαžœαž€αžΆαžšαž“αŸ…αž€αŸ’αž“αž»αž„αž…αž„αŸ’αž€αŸ„αž˜αŸ”

LimitRange/ResourceQuota - αžœαžΆαžŠαž›αŸ‹αž–αŸαž›αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αŸ’αžšαžΎαžœαžΆαŸ” αž™αžΎαž„αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž”αŸ’αžšαžΎαžœαžΆαžαžΆαŸ†αž„αž–αžΈαž™αžΌαžšαž™αžΆαžšαžŽαžΆαžŸαŸ‹αž˜αž€αž αžΎαž™ αž αžΎαž™αžαŸ’αž‰αž»αŸ†αžŠαžΉαž„αž…αŸ’αž”αžΆαžŸαŸ‹αžαžΆαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αž“αžΆαž€αŸ†αž–αž»αž„αž”αŸ’αžšαžΎαžœαžΆαŸ” αžœαžΆαž”αžΆαž“αž”αŸ’αžšαŸ‚αž€αŸ’αž›αžΆαž™αžαžΆαž“αŸαŸ‡αž‚αžΊαž€αž˜αŸ’αžšαžŽαžΆαžŸαŸ‹αŸ”

αž”αž“αŸ’αžαŸ‚αž˜αž–αžΈαž›αžΎαž’αŸ’αžœαžΈαžŠαŸ‚αž›αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αž›αžΎαž€αž‘αžΎαž„αž€αŸ’αž“αž»αž„αž’αŸ†αž‘αž»αž„αž–αŸαž›αžšαž”αžΆαž™αž€αžΆαžšαžŽαŸ αž˜αžΆαž“αž›αž€αŸ’αžαžŽαŸˆαž–αž·αžŸαŸαžŸαžŠαŸ‚αž›αž˜αž·αž“αž˜αžΆαž“αž―αž€αžŸαžΆαžšαžŠαŸ‚αž›αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž’αŸ’αž“αž€αžœαžΆαž™αž”αŸ’αžšαž αžΆαžšαž…αž„αŸ’αž€αŸ„αž˜αŸ” αž…αŸαž‰αž•αŸ’αžŸαžΆαž™αžαŸ’αž˜αžΈαŸ—αž“αŸαŸ‡ αž€αžΆαžšαžœαž·αž—αžΆαž‚αž™αŸ‰αžΆαž„αž‘αžΌαž›αŸ†αž‘αžΌαž›αžΆαž™αž“αŸƒαž—αžΆαž–αž„αžΆαž™αžšαž„αž‚αŸ’αžšαŸ„αŸ‡ Kubernetes.

αžšαžΏαž„αžαŸ’αž›αŸ‡αž–αž·αžαž‡αžΆαžŸαŸ„αž€αžŸαŸ… αž“αž·αž„αžˆαžΊαž…αžΆαž”αŸ‹αžŽαžΆαžŸαŸ‹αŸ” αž‡αžΆαž§αž‘αžΆαž αžšαžŽαŸ αž“αŸ…αž€αŸ’αžšαŸ„αž˜αž›αž€αŸ’αžαžαžŽαŸ’αžŒαž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹αž˜αž½αž™ cubelets αž“αŸ…αž€αŸ’αž“αž»αž„αž…αž„αŸ’αž€αŸ„αž˜ Kubernetes αž’αžΆαž…αž•αŸ’αžαž›αŸ‹αžαŸ’αž›αžΉαž˜αžŸαžΆαžšαž“αŸƒαž”αž‰αŸ’αž‡αžΈαžˆαŸ’αž˜αŸ„αŸ‡ warlocks αžŠαž›αŸ‹αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžŠαŸ‚αž›αž‚αŸ’αž˜αžΆαž“αž€αžΆαžšαž’αž“αž»αž‰αŸ’αž‰αžΆαžαŸ”

αž“αŸ…αž‘αžΈαž“αŸαŸ‡ αž˜αžΆαž“αž€αžΆαžšαžŽαŸ‚αž“αžΆαŸ†αž’αŸ†αž–αžΈαžšαž”αŸ€αž”αž”αž„αŸ’αž€αžΎαžαž‘αžΎαž„αžœαž·αž‰αž“αžΌαžœαž’αŸ’αžœαžΈαž‚αŸ’αžšαž”αŸ‹αž™αŸ‰αžΆαž„αžŠαŸ‚αž›αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αž”αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€αŸ” αž˜αžΆαž“αž―αž€αžŸαžΆαžšαžŠαŸ‚αž›αž˜αžΆαž“αž§αž‘αžΆαž αžšαžŽαŸαž•αž›αž·αžαž€αž˜αŸ’αž˜αž“αŸƒαž’αŸ’αžœαžΈαžŠαŸ‚αž› ResourceQuota αž“αž·αž„ Pod Security Policy αž˜αžΎαž›αž‘αŸ…αžŠαžΌαž…αŸ” αž αžΎαž™αž’αŸ’αž“αž€αž’αžΆαž…αž”αŸ‰αŸ‡αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž“αŸαŸ‡αŸ”

αž’αžšαž‚αž»αžŽβ€‹αžŠαž›αŸ‹β€‹αž’αŸ’αž“αž€β€‹αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž‚αŸ’αž“αžΆαŸ”

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

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