この問題#71を確認しましたが、kube-apiserverが実行されていない場合はクレデンシャルを追加できないようですが、プライベートイメージを手動でプルし、kubeletを再起動した後もエラーが発生します。
PullImage "docker.kesci.com:5000/kube-apiserver:latest" from image service failed: rpc error: code = Unknown desc = Error response from daemon: Get https://**my.private.image.registry**/v2/kube-apiserver/manifests/latest: no basic auth credentials
kubeadmバージョン( kubeadm version
):
環境:
kubectl version
):Client Version: version.Info{Major:"1", Minor:"7", GitVersion:"v1.7.5", GitCommit:"17d7182a7ccbb167074be7a87f0a68bd00d58d97", GitTreeState:"clean", BuildDate:"2017-08-31T09:14:02Z", GoVersion:"go1.8.3", Compiler:"gc", Platform:"linux/amd64"}
NAME="Ubuntu"
VERSION="16.04.3 LTS (Xenial Xerus)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 16.04.3 LTS"
VERSION_ID="16.04"
HOME_URL="http://www.ubuntu.com/"
SUPPORT_URL="http://help.ubuntu.com/"
BUG_REPORT_URL="http://bugs.launchpad.net/ubuntu/"
VERSION_CODENAME=xenial
UBUNTU_CODENAME=xenial
uname -a
):Linux ip-172-31-28-254 4.4.0-92-generic #115-Ubuntu SMP Thu Aug 10 09:04:33 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
/etc/kubernetes/manifests/kube-apiserver.yaml
構成のイメージを手動で置き換えたところ、kubeletでエラーcontainer start failed: ErrImagePull: rpc error: code = Unknown desc = Error response from daemon: Get https://my.private.image.registry/v2/kube-apiserver/manifests/latest: no basic auth credentials
が発生しました。クレデンシャルが構成されていないようです。そのため、手動でイメージをDockerプルします。
docker pull my.private.image.registry/kube-apiserver:latest
とrun service kubelet restart
でも、このエラーが発生します。
kubeletサポートは、クレデンシャルを手動で構成するか、ローカルでプルされたイメージを認識できます。
/etc/kubernetes/manifests/kube-apiserver.yaml
イメージをプライベートレジストリイメージに置き換えます。
私の解決策:dockerはイメージをプルし、imagePullPolicyをNeverに設定してから、kubeletを再起動します。
この状況でkubeadmがどのように行動することを期待しますか? 公式画像を使用しており、カスタムリポジトリはサポートしていません。 カスタムイメージを使用するためのユースケースは何ですか?
@ggaaooppeennggこれを試してみてください:
imageRepository
オプションを設定するように注意しながら、 kubeadm init --config yourconfigfile
使用しますその点に注意してください:
@jamiehannafordパフォーマンスの問題を掘り下げ、トレースログを追加して、チェックできるようにします。
最も参考になるコメント
@ggaaooppeennggこれを試してみてください:
imageRepository
オプションを設定するように注意しながら、kubeadm init --config yourconfigfile
使用しますその点に注意してください:
詳細については、 https://kubernetes.io/docs/admin/kubeadm/をご覧ください。