Google Container Registry是否会出现问题?

时间:2015-06-17 08:16:31

标签: docker google-cloud-platform google-kubernetes-engine google-container-registry

我在使用容器优化的VM时遇到了问题。我使用以下命令启动实例:

gcloud compute instances create "$instance_name" \
    --tags "http-server" \
    --image container-vm \
    --scopes storage-rw,logging-write \
    --metadata-from-file google-container-manifest="m2.yml" \
    --zone "$my_zone" \
    --machine-type "$my_machine_type"

其中m2.yml是:

version: v1beta2
containers:
  - name: nginx
    image: nginx

当我ssh到实例并查看/var/log/docker.log时,我看到了:

time="2015-06-17T07:42:59Z" level=error msg="Handler for GET /containers/{name:.*}/json returned error: no such id: kubelet" 
time="2015-06-17T07:42:59Z" level=error msg="HTTP Error: statusCode=404 no such id: kubelet" 
time="2015-06-17T07:42:59Z" level=info msg="GET /version" 
time="2015-06-17T07:42:59Z" level=info msg="+job version()" 
time="2015-06-17T07:42:59Z" level=info msg="-job version() = OK (0)" 
time="2015-06-17T07:42:59Z" level=info msg="GET /containers/docker-daemon/json" 
time="2015-06-17T07:42:59Z" level=info msg="+job container_inspect(docker-daemon)" 
no such id: docker-daemon
time="2015-06-17T07:42:59Z" level=info msg="-job container_inspect(docker-daemon) = ERR (1)" 
time="2015-06-17T07:42:59Z" level=error msg="Handler for GET /containers/{name:.*}/json returned error: no such id: docker-daemon" 
time="2015-06-17T07:42:59Z" level=error msg="HTTP Error: statusCode=404 no such id: docker-daemon" 

实例上没有运行容器,docker images -a说:

REPOSITORY                       TAG                 IMAGE ID            CREATED              VIRTUAL SIZE
gcr.io/google_containers/pause   0.8.0               2c40b0526b63        11 weeks ago         241.7 kB
<none>                           <none>              56ba5533a2db        11 weeks ago         241.7 kB
<none>                           <none>              511136ea3c5a        2.009460 years ago   0 B

容器引擎是否遇到问题或我做错了什么?

UPDATE1

我尝试了an example

version: v1 kind: Pod spec: containers: - name: simple-echo image: gcr.io/google_containers/busybox command: ['nc', '-p', '8080', '-l', '-l', '-e', 'echo', 'hello world!'] imagePullPolicy: Always ports: - containerPort: 8080 hostPort: 8080 protocol: TCP restartPolicy: Always dnsPolicy: Default

并且日志中仍然存在错误:

evgeny@instance:~$ cat /var/log/docker.log | grep error
time="2015-06-18T16:28:56Z" level=error msg="Handler for GET /containers/{name:.*}/json returned error: no such id: kubelet" 
time="2015-06-18T16:28:56Z" level=error msg="HTTP Error: statusCode=404 no such id: kubelet" 
time="2015-06-18T16:28:56Z" level=error msg="Handler for GET /containers/{name:.*}/json returned error: no such id: docker-daemon" 
time="2015-06-18T16:28:56Z" level=error msg="HTTP Error: statusCode=404 no such id: docker-daemon" 
time="2015-06-18T16:28:56Z" level=error msg="Handler for GET /images/{name:.*}/json returned error: No such image: gcr.io/google_containers/busybox" 
time="2015-06-18T16:28:56Z" level=error msg="HTTP Error: statusCode=404 No such image: gcr.io/google_containers/busybox" 
time="2015-06-18T16:28:56Z" level=error msg="Handler for GET /containers/{name:.*}/json returned error: no such id: docker" 
time="2015-06-18T16:28:56Z" level=error msg="HTTP Error: statusCode=404 no such id: docker" 
time="2015-06-18T16:28:56Z" level=error msg="Handler for GET /images/{name:.*}/json returned error: No such image: gcr.io/google_containers/busybox" 
time="2015-06-18T16:28:56Z" level=error msg="HTTP Error: statusCode=404 No such image: gcr.io/google_containers/busybox" 
  

我即将通过反馈表单发送反馈,但提交失败时显示:relay__en.js?authuser=1:182 Uncaught TypeError: Cannot set property 'vmFeedbackData' of undefined。这样的故事。

2 个答案:

答案 0 :(得分:2)

最新的容器vm映像不支持v1beta2 kubernetes API。您需要更新清单以使用v1beta3或v1(以及相应的yaml更改)。

最新版本的container vm documentation显示了使用v1 API的yaml示例。

答案 1 :(得分:0)

我遇到了类似的问题,解决方案结果是我试图使用

securityContext:
  privileged: true

Kubernetes在不使用Google容器群集(即google-container-manifest或{{因此,它永远不会将图像正确加载到实例上。

删除该属性解决了我的问题。