अधिक सुरक्षित उत्तर
स्वीकृत उत्तर हेल्म को पूर्ण व्यवस्थापक अभिगम देता है जो सबसे अच्छा समाधान सुरक्षा वार नहीं है। थोड़े और काम के साथ, हम हेल्म की पहुँच को एक विशेष नामस्थान तक सीमित कर सकते हैं। हेल्म प्रलेखन में अधिक जानकारी ।
$ kubectl create namespace tiller-world
namespace "tiller-world" created
$ kubectl create serviceaccount tiller --namespace tiller-world
serviceaccount "tiller" created
एक भूमिका को परिभाषित करें जो Tiller को सभी संसाधनों को प्रबंधित करने की अनुमति देता है tiller-world
जैसे role-tiller.yaml
:
kind: Role
apiVersion: rbac.authorization.k8s.io/v1
metadata:
name: tiller-manager
namespace: tiller-world
rules:
- apiGroups: ["", "batch", "extensions", "apps"]
resources: ["*"]
verbs: ["*"]
फिर भागो:
$ kubectl create -f role-tiller.yaml
role "tiller-manager" created
में rolebinding-tiller.yaml
,
kind: RoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
name: tiller-binding
namespace: tiller-world
subjects:
- kind: ServiceAccount
name: tiller
namespace: tiller-world
roleRef:
kind: Role
name: tiller-manager
apiGroup: rbac.authorization.k8s.io
फिर भागो:
$ kubectl create -f rolebinding-tiller.yaml
rolebinding "tiller-binding" created
बाद में आप नाम स्थान helm init
में Tiller स्थापित करने के लिए चला सकते हैं tiller-world
।
$ helm init --service-account tiller --tiller-namespace tiller-world
अब अपने वातावरण चर के साथ सभी आदेशों को उपसर्ग करें --tiller-namespace tiller-world
या सेट TILLER_NAMESPACE=tiller-world
करें।
अधिक भविष्य प्रमाण जवाब
टिलर का इस्तेमाल बंद कर दें। हेल्म 3 टिलर की आवश्यकता को पूरी तरह से हटा देता है। यदि आप Helm 2 का उपयोग कर रहे हैं, तो आप helm template
अपने Helm चार्ट से yaml उत्पन्न करने के लिए उपयोग कर सकते हैं और फिर kubectl apply
अपने कुबेरनेट क्लस्टर में ऑब्जेक्ट्स को लागू करने के लिए चला सकते हैं।
helm template --name foo --namespace bar --output-dir ./output ./chart-template
kubectl apply --namespace bar --recursive --filename ./output -o yaml
--clusterrole=cluster-admin
, जो निश्चित रूप से अनुमतियों की समस्याओं को ठीक करेगा, लेकिन हो सकता है कि आप जो फिक्स नहीं चाहते हैं। अपने स्वयं के सेवा खाते, (क्लस्टर) भूमिकाएँ बनाना बेहतर है, और (क्लस्टर) रोलबाइंडिंग जो आपकी आवश्यक अनुमतियों के साथ हैं।