0
從一個窗格中,我試圖使用kubernetes api獲取有關服務的信息。直到幾個星期前,它工作得很好。我不確定發生了什麼變化。下面是我使用的代碼:爲什麼從pod調用Kubernetes api時會出現「未經授權」?
SERVICE_NAME="rabbitmq"
KUBE_TOKEN=`cat /var/run/secrets/kubernetes.io/serviceaccount/token`
KUBE_BASE_API_URL="https://${KUBERNETES_SERVICE_HOST}:${KUBERNETES_PORT_443_TCP_PORT}/api/v1/namespaces/${KUBERNETES_POD_NAMESPACE}"
KUBE_AUTH_HEADER="Authorization: Bearer $KUBE_TOKEN"
SERVICE_INFO=$(/usr/bin/curl -sSk -H "${KUBE_AUTH_HEADER}" "$KUBE_BASE_API_URL/endpoints/$SERVICE_NAME")
我用填充向下API的KUBERNETES_POD_NAMESPACE
環境變量。的SERVICE_INFO
值是Unauthorized
,如果是相關的或不是我不知道,但我注意到當我試圖平https://kubernetes
,我得到ping: unknown host https://kubernetes
。但是,我相信kube-dns運行得很好,因爲它查找了http://rabbitmq
就好了。
我在Kubernetes v1.1.1上,我正在使用運行CoreOS的本地機器。