Hi

Sounds like active vs passive mode problem. That in one of these modes
there is random ports numbers in use by the FTP server that the client
(Camel) should use. And you likely dont have network ports open for
random ports in a openshift/kubernetes cluster.

For example there is this guide
http://slacksite.com/other/ftp.html

So if possible try to switch mode and check what networking ports you allow


On Sat, Jul 15, 2017 at 11:46 AM, Flemming Harms
<[email protected]> wrote:
> Hi Folks
>
> I have a simple Camel(2.19.1) route running on a OpenShift instances with
> the single purpose is to download a file from a FTP server. But it fails
> like every 2. or 3. time with this exception below.
>
> If I run it locally it work every single
>
> ftp://xxx.xxx.xxx.xxx/?username=myuser&password={{ftp.
> password}}&passiveMode=true&fileName=lager${date:now:dd-
> MM-yyyy}.csv&scheduler=quartz2&scheduler.cron=0+0+04+*+*+?&
> disconnect=false&timeout=120000
> <ftp://xxx.xxx.xxx.xxx/?username=myuser&password=%7B%7Bftp.password%7D%7D&passiveMode=true&fileName=lager$%7Bdate:now:dd-MM-yyyy%7D.csv&scheduler=quartz2&scheduler.cron=0+0+04+*+*+?&disconnect=false&timeout=120000>
>
> Any suggestions how to overcome this issue?
>
> Thanks
>
> 227 Entering Passive Mode (xxx,xxx,xxx,xxx,xxx,86)
>  Permission denied (connect failed). Code: 227]
> org.apache.camel.component.file.GenericFileOperationFailedException: File
> operation failed: 227 Entering Passive Mode (xxx,xxx,xxx,xxx,xxx,86)
>  Permission denied (connect failed). Code: 227
>         at org.apache.camel.component.file.remote.FtpOperations.retriev
> eFileToStreamInBody(FtpOperations.java:386)
>         at org.apache.camel.component.file.remote.FtpOperations.retriev
> eFile(FtpOperations.java:318)
>         at org.apache.camel.component.file.GenericFileConsumer.processE
> xchange(GenericFileConsumer.java:408)
>         at org.apache.camel.component.file.remote.RemoteFileConsumer.pr
> ocessExchange(RemoteFileConsumer.java:137)
>         at org.apache.camel.component.file.GenericFileConsumer.processB
> atch(GenericFileConsumer.java:218)
>         at org.apache.camel.component.file.GenericFileConsumer.poll(Gen
> ericFileConsumer.java:182)
>         at org.apache.camel.impl.ScheduledPollConsumer.doRun(ScheduledP
> ollConsumer.java:174)
>         at org.apache.camel.impl.ScheduledPollConsumer.run(ScheduledPol
> lConsumer.java:101)
>         at org.apache.camel.pollconsumer.quartz2.QuartzScheduledPollCon
> sumerJob.execute(QuartzScheduledPollConsumerJob.java:61)
>         at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
>         at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(
> SimpleThreadPool.java:573)
> Caused by: java.net.ConnectException: Permission denied (connect failed)
>         at java.net.PlainSocketImpl.socketConnect(Native Method)
>         at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSock
> etImpl.java:350)
>         at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPl
> ainSocketImpl.java:206)
>         at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocket
> Impl.java:188)
>         at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
>         at java.net.Socket.connect(Socket.java:589)
>         at org.apache.commons.net.ftp.FTPClient._openDataConnection_(
> FTPClient.java:894)
>         at org.apache.commons.net.ftp.FTPClient._retrieveFile(FTPClient
> .java:1854)
>         at org.apache.commons.net.ftp.FTPClient.retrieveFile(FTPClient.
> java:1845)
>         at org.apache.camel.component.file.remote.FtpOperations.retriev
> eFileToStreamInBody(FtpOperations.java:369)
>         ... 10 more
>
>
> /Flemming



-- 
Claus Ibsen
-----------------
http://davsclaus.com @davsclaus
Camel in Action 2: https://www.manning.com/ibsen2

Reply via email to