Google Compute引擎上的云代工厂无法创建容器

时间:2016-09-23 13:58:00

标签: deployment google-compute-engine google-cloud-platform cloudfoundry

我是Cloud Foundry的新手。我已通过此指南source1source2为Google计算引擎平台添加了云代工厂。

Terraform用于创建所需的基础架构。似乎一切都很好我在部署云代工厂本身时没有遇到任何错误,并且bosh cck 命令返回没有任何问题。但是当我尝试部署我的hello world应用程序时,在 cf push 命令之后我在终端中收到了下一条错误消息:

创建容器 无法创建容器

失败

重新启动应用程序时出错:StagingError

检查日志文件后,我发现了下一条消息:

{
   "timestamp":"1474637304.026303530",
   "source":"garden-linux",
   "message":"garden-linux.loop-mounter.mount-file.mounting",
   "log_level":2,
   "data":{
      "destPath":"/var/vcap/data/garden/aufs_graph/aufs/diff/08829a3252c1d60729e3b5482b0fb109652c9ab5beff9724e4e4ae756a0bc3ce",
      "error":"exit status 32",
      "filePath":"/var/vcap/data/garden/aufs_graph/backing_stores/08829a3252c1d60729e3b5482b0fb109652c9ab5beff9724e4e4ae756a0bc3ce",
      "output":"mount: wrong fs type, bad option, bad superblock on /dev/loop0,\n       missing codepage or helper program, or other error\n       In some cases useful info is found in syslog - try\n       dmesg | tail  or so\n\n",
      "session":"2.276"
   }
}{
   "timestamp":"1474637304.026949406",
   "source":"garden-linux",
   "message":"garden-linux.pool.acquire.provide-rootfs-failed",
   "log_level":2,
   "data":{
      "error":"mounting file: mounting file: exit status 32",
      "handle":"ec6e7469-0ef0-48a8-bcd0-82f4a2ea173f-5de2e641d9284aeea209ca447ffffb6d",
      "session":"9.545"
   }
}
{
   "timestamp":"1474637304.027062416",
   "source":"garden-linux",
   "message":"garden-linux.garden-server.create.failed",
   "log_level":2,
   "data":{
      "error":"mounting file: mounting file: exit status 32",
      "request":{
         "Handle":"ec6e7469-0ef0-48a8-bcd0-82f4a2ea173f-5de2e641d9284aeea209ca447ffffb6d",
         "GraceTime":0,
         "RootFSPath":"/var/vcap/packages/rootfs_cflinuxfs2/rootfs",
         "BindMounts":[
            {
               "src_path":"/var/vcap/data/executor_cache/6942123d3462ad9d21a45729c3cae183-1474475979582384649-1.d",
               "dst_path":"/tmp/lifecycle"
            }
         ],
         "Network":"",
         "Privileged":true,
         "Limits":{
            "bandwidth_limits":{

            },
            "cpu_limits":{
               "limit_in_shares":512
            },
            "disk_limits":{
               "inode_hard":200000,
               "byte_hard":6442450944,
               "scope":1
            },
            "memory_limits":{
               "limit_in_bytes":1073741824
            }
         }
      },
      "session":"11.44187"
   }
}{
   "timestamp":"1474637304.034646988",
   "source":"garden-linux",
   "message":"garden-linux.garden-server.destroy.failed",
   "log_level":2,
   "data":{
      "error":"unknown handle: ec6e7469-0ef0-48a8-bcd0-82f4a2ea173f-5de2e641d9284aeea209ca447ffffb6d",
      "handle":"ec6e7469-0ef0-48a8-bcd0-82f4a2ea173f-5de2e641d9284aeea209ca447ffffb6d",
      "session":"11.44188"
   }
}

同时在dmesg |我接下来的尾巴:

  

[161023.238082] aufs test_add:283:garden-linux [7681]:uid / gid / perm   在/ var / VCAP /数据/花园/ aufs_graph / AUFS /比较/ d350dcd30f6d6f8b37eabe06a3b73bcea0a87f9aff4edf15f12792269fc9f97c   4294967294/4294967294 / 0755,0 / 0755 [161023.238109] aufs   au_opts_verify:1597:garden-linux [7681]:dirperm1打破了保护   通过下分支[161023.413392]设备上的权限位   wtj3qdqhig0t-0进入了混杂模式

我不确定这个问题是否相关或根本没问题,但我在这里张贴它们是为了确保,我没有错过任何内容。

我不知道如何解决这个问题以及在哪里,我应该查看terraform脚本或bosh清单文件的解决方案。我们有微服务架构,在节点j上有三个节点,在ruby上有一个节点,所以部署对我们来说是非常重要的问题。

这是我的应用程序 manifest.yml 文件:

---
applications:
- name: hello_cloud
  memory: 128M
  buildpack: https://github.com/cloudfoundry/nodejs-buildpack
  instances: 1
  random-route: true
  command: "node server.js"

我的目标是能够使用云代工厂部署应用程序。如果您有任何其他问题,或者我写了一些不清楚的东西,请随时给我写信。

1 个答案:

答案 0 :(得分:1)

此问题与garden和4.4 Linux内核之间的冲突有关。要使用示例cloudfoundry manfest,请使用以下stemcell:

bosh upload stemcell https://bosh.io/d/stemcells/bosh-google-kvm-ubuntu-trusty-go_agent?v=3262.19
bosh deploy

由于配额问题,您可能需要在重新部署之前删除cf部署。