2014-11-13 3 views
1

나는 logstash 1.4.1를 실행하고 그것을 실행에 나는 점점 콘솔에 다음과 같은 오전 :Logstash 너무 많은 파일이 열렸습니까?

failed to open /home/Desktop/Input/2014-11-03/abc.log: Permission denied - /home/Desktop/Input/2014-11-03/abc.log {:level=>:warn} 
    failed to open /home/Desktop/Input/2014-10-14/abc.log: Permission denied - /home/Desktop/Input/2014-10-14/abc.log {:level=>:warn} 
    failed to open /home/Desktop/2014-10-16/abc.log: Permission denied - /home/Desktop/Input/2014-10-16/abc.log {:level=>:warn} 

.............. 

    log4j, [2014-11-13T16:20:04.583] WARN: org.elasticsearch.discovery.zen: [logstash-HP-Pro-3330-MT-7573-11818] failed to connect to master [[Kyle Gibney][eM0ZmUkAQpaXd6_n4JWjzA][-HP-Pro-3330-MT][inet[/xx.xx..xx..xx:9300]]], retrying... 
    org.elasticsearch.transport.ConnectTransportException: [Kyle Gibney][inet[/xx.xx.xx.xx:9300]] General node connection failure 
     at org.elasticsearch.transport.netty.NettyTransport.connectToNode(NettyTransport.java:668) 
     at org.elasticsearch.transport.netty.NettyTransport.connectToNode(NettyTransport.java:615) 
     at org.elasticsearch.transport.TransportService.connectToNode(TransportService.java:129) 
     at org.elasticsearch.discovery.zen.ZenDiscovery.innerJoinCluster(ZenDiscovery.java:338) 
     at org.elasticsearch.discovery.zen.ZenDiscovery.access$500(ZenDiscovery.java:79) 
     at org.elasticsearch.discovery.zen.ZenDiscovery$1.run(ZenDiscovery.java:286) 
     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) 
     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) 
     at java.lang.Thread.run(Thread.java:744) 
    Caused by: org.elasticsearch.common.netty.channel.ChannelException: Failed to open a socket. 
     at org.elasticsearch.common.netty.channel.socket.nio.NioClientSocketChannel.newSocket(NioClientSocketChannel.java:43) 
     at org.elasticsearch.common.netty.channel.socket.nio.NioClientSocketChannel.<init>(NioClientSocketChannel.java:82) 
     at org.elasticsearch.common.netty.channel.socket.nio.NioClientSocketChannelFactory.newChannel(NioClientSocketChannelFactory.java:212) 
     at org.elasticsearch.common.netty.channel.socket.nio.NioClientSocketChannelFactory.newChannel(NioClientSocketChannelFactory.java:82) 
     at org.elasticsearch.common.netty.bootstrap.ClientBootstrap.connect(ClientBootstrap.java:212) 
     at org.elasticsearch.common.netty.bootstrap.ClientBootstrap.connect(ClientBootstrap.java:182) 
     at org.elasticsearch.transport.netty.NettyTransport.connectToChannels(NettyTransport.java:702) 
     at org.elasticsearch.transport.netty.NettyTransport.connectToNode(NettyTransport.java:647) 
     ... 8 more 
    Caused by: java.net.SocketException: Too many open files 
     at sun.nio.ch.Net.socket0(Native Method) 
     at sun.nio.ch.Net.socket(Net.java:423) 
     at sun.nio.ch.Net.socket(Net.java:416) 
     at sun.nio.ch.SocketChannelImpl.<init>(SocketChannelImpl.java:104) 
     at sun.nio.ch.SelectorProviderImpl.openSocketChannel(SelectorProviderImpl.java:60) 
     at java.nio.channels.SocketChannel.open(SocketChannel.java:142) 
     at org.elasticsearch.common.netty.channel.socket.nio.NioClientSocketChannel.newSocket(NioClientSocketChannel.java:41) 
     ... 15 more 

그래서 특정 임계 개까지 그 임계 후 파일을 거부 그 제공의 허가 후 파일을 열고 말하고 logstash 너무 많은 파일이 열렸습니다.

아이디어가 있으십니까?

+0

사용 루트를 다시 시작합니다 : : 또 다른 방법은 아래와 같이 ulimit를 명령을 사용하는 것입니다 http://www.elasticsearch.org/tutorials/too-many-open-files/ –

+0

원래 게시물의 대화가 마음에 들지 않았나요? –

+0

@Allain : 이전 버전에서는 -vv로 logstash를 실행 중이었고 콘솔에 너무 많은 파일 오류가 표시되지 않았으므로 이번에는 -v (자세한 정보 표시)로 실행하고 너무 많은 파일의 새로운 오류가 나타났습니다. 따라서 새로운 질문. –

답변

2

리눅스 사용자를 위해 파일 핸들의 한계를 확인해야합니다. 한 곳에서 확인할 수 있습니다 :

cat /etc/security/limits.conf 

하드 및 소프트 제한을 정의합니다. ES를 ulimit를 -l unlimited``에

ulimit -a | grep nofiles ##Or ulimit -n 
+0

나는'ulimit -n'을하고'1024'을 제공한다 –

+1

즉, 프로세스가 1024 개의 파일 만 열 수있다 (연결이나 logstash 파일 등 모든 것이 파일이다) – SMA

관련 문제