3

I am attempting to setup a container on Bluemix that accepts UDP traffic and forwards it using a TCP connection to Logentries. When running the container locally, I used NetCat to simulate UDP traffic and saw it successfully displayed at the destination of the TCP connection.

However, when I attempt to start a container based off the same image with Bluemix containers service, the container remains stuck in a 'Networking' state and no data is transmitted to the destination. The logs only print a warning about the version listed in the syslog-ng.conf file (same warning when ran locally), and inspection of the container by command cf ic inspect <container-id> returns the following portion about the Networking state:

"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"
},

One thing to note is that I had to change the nameserver to 8.8.8.8 (Google's DNS) for necessary domain name resolution, due to the following error:

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

You can find the source code of the Docker image I originally adopted at https://github.com/oinopion/syslog-ng-logentries.

So my questions are:

  1. What does the 'Networking' state of a Bluemix container mean?
  2. Why does my container work locally but not on Bluemix?
vhu
  • 12,244
  • 11
  • 38
  • 48
pcrock
  • 33
  • 4

5 Answers5

2

'Networking' state means that the networking is being created for your Container so that the public and private IPs for your Container can be accessed and routed to your instance. When a container gets stuck on Networking then it is typically a problem with the infrastructure rather than anything you have done.

Please try to remove your container and recreate it to see if this should solve it. If not then you will need to open a support ticket to Bluemix (via the support link 'Get Help' on the Bluemix UI) to have the IBM Containers team investigate why your Container is having issues.

whitfiea
  • 1,943
  • 10
  • 15
2

Docker containers on Bluemix doesn't support incoming UDP traffic routing yet. This feature is already planned for future updates as far as I know. This is the reason your container works fine locally, but remotely doesn't receive traffic.

v.bontempi
  • 1,562
  • 1
  • 9
  • 10
0
  1. Is the container able to get a response from the endpoint?
Albert
  • 24
  • 1
0

You can just forward UDP traffic to Logentries, there is no need to switch to TCP.

John
  • 1
  • No, logentries requires a particular IP address of the sender no matter using TCP or UDP: see https://logentries.com/doc/input-plaintcpudp/ – shawnzhu Nov 05 '15 at 17:33
0

Maybe configure syslog-ng to connect directly to one of the IP's associated to an ingestion node.

Any of the blow should work.

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 IN A 54.228.220.150