Fix RBAC role for kube-proxy in Kubemark

This commit is contained in:
Shyam Jeedigunta 2017-01-16 20:42:20 +01:00
parent 8fa23586cf
commit 491c26feca
3 changed files with 27 additions and 7 deletions

View File

@ -44,7 +44,7 @@
"/heapster" "/heapster"
], ],
"args": [ "args": [
"--source=kubernetes:https://{{MASTER_IP}}:443?inClusterConfig=0&useServiceAccount=0&auth=/kubeconfig/kubeconfig" "--source=kubernetes:https://{{MASTER_IP}}:443?inClusterConfig=0&useServiceAccount=0&auth=/kubeconfig/kubelet.kubeconfig"
], ],
"volumeMounts": [ "volumeMounts": [
{ {
@ -66,7 +66,7 @@
"/eventer" "/eventer"
], ],
"args": [ "args": [
"--source=kubernetes:https://104.197.233.84:443?inClusterConfig=0&useServiceAccount=0&auth=/kubeconfig/kubeconfig" "--source=kubernetes:https://104.197.233.84:443?inClusterConfig=0&useServiceAccount=0&auth=/kubeconfig/kubelet.kubeconfig"
], ],
"volumeMounts": [ "volumeMounts": [
{ {

View File

@ -76,7 +76,7 @@
"command": [ "command": [
"/bin/sh", "/bin/sh",
"-c", "-c",
"./kubemark.sh --morph=kubelet $(CONTENT_TYPE) --v=2 1>>/var/logs/kubelet_$(MY_POD_NAME).log 2>&1" "./kubemark.sh --morph=kubelet --kubeconfig=/kubeconfig/kubelet.kubeconfig $(CONTENT_TYPE) --v=2 1>>/var/logs/kubelet_$(MY_POD_NAME).log 2>&1"
], ],
"volumeMounts": [ "volumeMounts": [
{ {
@ -124,7 +124,7 @@
"command": [ "command": [
"/bin/sh", "/bin/sh",
"-c", "-c",
"./kubemark.sh --morph=proxy $(CONTENT_TYPE) --v=2 1>>/var/logs/kube_proxy_$(MY_POD_NAME).log 2>&1" "./kubemark.sh --morph=proxy --kubeconfig=/kubeconfig/kubeproxy.kubeconfig $(CONTENT_TYPE) --v=2 1>>/var/logs/kube_proxy_$(MY_POD_NAME).log 2>&1"
], ],
"volumeMounts": [ "volumeMounts": [
{ {

View File

@ -175,8 +175,8 @@ gcloud compute ssh "${MASTER_NAME}" --zone="${ZONE}" --project="${PROJECT}" \
sudo chmod a+x /home/kubernetes/start-kubemark-master.sh && \ sudo chmod a+x /home/kubernetes/start-kubemark-master.sh && \
sudo bash /home/kubernetes/start-kubemark-master.sh" sudo bash /home/kubernetes/start-kubemark-master.sh"
# create kubeconfig for Kubelet: # Create kubeconfig for Kubelet.
KUBECONFIG_CONTENTS=$(echo "apiVersion: v1 KUBELET_KUBECONFIG_CONTENTS=$(echo "apiVersion: v1
kind: Config kind: Config
users: users:
- name: kubelet - name: kubelet
@ -195,6 +195,25 @@ contexts:
name: kubemark-context name: kubemark-context
current-context: kubemark-context" | base64 | tr -d "\n\r") current-context: kubemark-context" | base64 | tr -d "\n\r")
# Create kubeconfig for Kubeproxy.
KUBEPROXY_KUBECONFIG_CONTENTS=$(echo "apiVersion: v1
kind: Config
users:
- name: kube-proxy
user:
token: ${KUBE_PROXY_TOKEN}
clusters:
- name: kubemark
cluster:
insecure-skip-tls-verify: true
server: https://${MASTER_IP}
contexts:
- context:
cluster: kubemark
user: kube-proxy
name: kubemark-context
current-context: kubemark-context" | base64 | tr -d "\n\r")
KUBECONFIG_SECRET="${RESOURCE_DIRECTORY}/kubeconfig_secret.json" KUBECONFIG_SECRET="${RESOURCE_DIRECTORY}/kubeconfig_secret.json"
cat > "${KUBECONFIG_SECRET}" << EOF cat > "${KUBECONFIG_SECRET}" << EOF
{ {
@ -205,7 +224,8 @@ cat > "${KUBECONFIG_SECRET}" << EOF
}, },
"type": "Opaque", "type": "Opaque",
"data": { "data": {
"kubeconfig": "${KUBECONFIG_CONTENTS}" "kubelet.kubeconfig": "${KUBELET_KUBECONFIG_CONTENTS}",
"kubeproxy.kubeconfig": "${KUBEPROXY_KUBECONFIG_CONTENTS}"
} }
} }
EOF EOF