Respostas:
kubectl describe pods
listará todos os eventos associados ao pod, incluindo o recebimento de imagens e o início de contêineres. Pode ser de ajuda.
No meu caso, o acesso do docker à Internet foi bloqueado. Foi resolvido usando um proxy ( usando o comentário de sandylss ):
minikube stop
minikube delete
export http_proxy=http://user:pass@ip:port
export https_proxy=http://user:pass@ip:port
export no_proxy=192.168.99.0/24
minikube start --logtostderr --v=0 --bootstrapper=localkube --vm-driver hyperv
--hyperv-virtual-switch "Primary Virtual Switch" --docker-env HTTP_PROXY=$http_proxy \
--docker-env HTTPS_PROXY=$https_proxy --docker-env NO_PROXY=$no_proxy
export no_proxy=$no_proxy,$(minikube ip)
export NO_PROXY=$no_proxy,$(minikube ip)
Em seguida, para verificar se o docker tem acesso à Internet, execute:
$ docker pull tutum/hello-world
no cluster (conecte-se ao cluster usando minikube ssh
); interrompa o processo se ele iniciar o download.
Meu segundo problema foi a conexão lenta à Internet. Desde que as imagens docker necessários são da ordem de 100 MB, ambos os contentores Docker e vagens Kubernetes permaneceu em \pause
e ContainerCreating
afirma por 30 minutos.
Para verificar se a janela de encaixe está baixando as imagens, execute:
$ ls -l /var/lib/docker/tmp
no cluster, que mostra os arquivos de imagem temporários que estão sendo baixados, caso contrário, esvazie.
Se você estiver desenvolvendo no minikube e usando VPN, o docker pode usar sua VPN via violinista . Ou seja, o docker será conectado à porta ip: do violinista, e o violinista será conectado à VPN. Caso contrário, a VPN não será compartilhada entre seu host e a VM do minikube.
A única vez que acertei isso foi porque minhas declarações de recursos foram acidentalmente muito muito pequenas.
recursos: limites: CPU: 1000m de memória: 1024M solicitações: CPU: 1000m de memória: 1024M
vs
recursos: limites: CPU: 1000m de memória: 1024m solicitações: CPU: 1000m de memória: 1024m
capitalizar que m faz uma diferença muito grande no uso de recursos. Eu estava preso no ContainerCreating porque não havia fornecido memória suficiente ao meu contêiner.
ContainerCreating
...