హెల్మ్ కుబెర్నెటెస్ కోసం ఒక ప్యాకేజీ మేనేజర్, అలాంటిదే apt-get
ఉబుంటు కోసం. ఈ నోట్లో మేము డిఫాల్ట్గా ఇన్స్టాల్ చేయబడిన టిల్లర్ సేవతో హెల్మ్ (v2) యొక్క మునుపటి సంస్కరణను చూస్తాము, దీని ద్వారా మేము క్లస్టర్ను యాక్సెస్ చేస్తాము.
క్లస్టర్ను సిద్ధం చేద్దాం; దీన్ని చేయడానికి, ఆదేశాన్ని అమలు చేయండి:
kubectl run --rm --restart=Never -it --image=madhuakula/k8s-goat-helm-tiller -- bash
ప్రదర్శన
- మీరు అదనంగా ఏదైనా కాన్ఫిగర్ చేయకుంటే, హెల్మ్ v2 టిల్లర్ సేవను ప్రారంభిస్తుంది, ఇది పూర్తి క్లస్టర్ అడ్మినిస్ట్రేటర్ హక్కులతో RBAC కలిగి ఉంటుంది.
- నేమ్స్పేస్లో ఇన్స్టాలేషన్ తర్వాత
kube-system
కనిపిస్తుందిtiller-deploy
, మరియు పోర్ట్ 44134ని కూడా తెరుస్తుంది, 0.0.0.0కి కట్టుబడి ఉంటుంది. దీనిని టెల్నెట్ ఉపయోగించి తనిఖీ చేయవచ్చు.
$ telnet tiller-deploy.kube-system 44134
- ఇప్పుడు మీరు టిల్లర్ సేవకు కనెక్ట్ చేయవచ్చు. టిల్లర్ సేవతో కమ్యూనికేట్ చేస్తున్నప్పుడు కార్యకలాపాలను నిర్వహించడానికి మేము హెల్మ్ బైనరీని ఉపయోగిస్తాము:
$ helm --host tiller-deploy.kube-system:44134 version
- నేమ్స్పేస్ నుండి కుబెర్నెట్స్ క్లస్టర్ రహస్యాలను పొందడానికి ప్రయత్నిద్దాం
kube-system
:
$ kubectl get secrets -n kube-system
- ఇప్పుడు మేము మా స్వంత చార్ట్ను సృష్టించవచ్చు, దీనిలో మేము నిర్వాహక హక్కులతో పాత్రను సృష్టిస్తాము మరియు డిఫాల్ట్ సేవా ఖాతాకు ఈ పాత్రను కేటాయిస్తాము. ఈ సేవా ఖాతా నుండి టోకెన్ని ఉపయోగించి, మేము మా క్లస్టర్కు పూర్తి ప్రాప్యతను పొందాము.
$ helm --host tiller-deploy.kube-system:44134 install /pwnchart
- ఇప్పుడు ఎప్పుడు
pwnchart
అమలు చేయబడింది, డిఫాల్ట్ సేవా ఖాతాకు పూర్తి పరిపాలనా ప్రాప్యత ఉంది. రహస్యాలను ఎలా పొందాలో మరోసారి చూద్దాంkube-system
kubectl get secrets -n kube-system
ఈ స్క్రిప్ట్ని విజయవంతంగా అమలు చేయడం అనేది టిల్లర్ని ఎలా అమర్చబడిందనే దానిపై ఆధారపడి ఉంటుంది; కొన్నిసార్లు నిర్వాహకులు వేర్వేరు అధికారాలతో ప్రత్యేక నేమ్స్పేస్లో దీన్ని అమలు చేస్తారు. హెల్మ్ 3 అటువంటి దుర్బలత్వాలకు గురికాదు ఎందుకంటే... అందులో టిల్లర్ లేదు.
అనువాదకుని గమనిక: క్లస్టర్లో ట్రాఫిక్ను ఫిల్టర్ చేయడానికి నెట్వర్క్ విధానాలను ఉపయోగించడం ఈ రకమైన దుర్బలత్వాల నుండి రక్షించడంలో సహాయపడుతుంది.
మూలం: www.habr.com