Bluemix 容器状态读取 'Networking'

Bluemix Container status reads 'Networking'

我正在尝试在 Bluemix 上设置一个容器,它接受 UDP 流量并使用 TCP 连接将其转发到 Logentries。 运行本地容器时,我用NetCat模拟UDP流量,看到成功显示在TCP连接的目的地。

但是,当我尝试使用 Bluemix 容器服务启动基于同一图像的容器时,该容器仍然停留在 'Networking' 状态,并且没有数据 t运行 发送到目的地.日志仅打印有关 syslog-ng.conf 文件中列出的版本的警告(本地 运行 时的警告相同),并通过命令 cf ic inspect <container-id> returns 检查容器以下关于 Networking 状态的部分:

"Path": "date",
"ResolvConfPath": "/etc/resolv.conf",
"State": {
    "ExitCode": 0,
    "FinishedAt": "0001-01-01T00:00:00Z",
    "Ghost": "",
    "Pid": 1,
    "Running": true,
    "StartedAt": "2015-10-14T19:45:43.000000000Z",
    "Status": "Networking"
},

需要注意的一件事是,由于以下错误,我不得不将名称服务器更改为 8.8.8.8(Google 的 DNS)以进行必要的域名解析:

Error resolving hostname; host='data.logentries.com'
Error initializing message pipeline;
Error resolving hostname; host='data.logentries.com'
Error initializing message pipeline;

你可以在https://github.com/oinopion/syslog-ng-logentries找到我最初采用的Docker图像的源代码。

所以我的问题是:

  1. Bluemix 容器的 'Networking' 状态是什么意思?
  2. 为什么我的容器可以在本地运行,但不能在 Bluemix 上运行?
  1. 容器是否能够从端点获得响应?

您只需将 UDP 流量转发到 Logentries,无需切换到 TCP。

'Networking' 状态意味着正在为您的容器创建网络,以便可以访问容器的 public 和私有 IP 并将其路由到您的实例。当容器卡在网络上时,这通常是基础设施的问题,而不是您所做的任何事情。

请尝试删除您的容器并重新创建它,看看是否可以解决问题。如果不是,那么您将需要向 Bluemix 提交支持票证(通过 Bluemix UI 上的支持 link 'Get Help')让 IBM Containers 团队调查您的 Container 出现问题的原因。

也许可以将 syslog-ng 配置为直接连接到与摄取节点关联的 IP 之一。

任何一击都应该有效。

data.logentries.com.    105 IN  A   54.217.225.23
data.logentries.com.    105 IN  A   54.217.226.18
data.logentries.com.    105 IN  A   54.246.89.117
data.logentries.com.    105 IN  A   54.217.226.8
data.logentries.com.    105 IN  A   79.125.113.75

data.logentries.com。 105 在 A 54.228.220.150

Docker Bluemix 上的容器尚不支持传入的 UDP 流量路由。据我所知,此功能已计划用于未来的更新。 这就是您的容器在本地运行良好,但远程收不到流量的原因。