I am running logstash 6.4.2 (no modifications). I am getting gssapi not found in my scenario below. I am research now how to install gssapi. I would appreciate any information at all on doing this. I have found the ruby gem online for gssapi, but I already see one dependency (ffi) that I do not see in logstash, logstash has ffi-java gem. webhdfs plugin is logstash-output-webhdfs (3.0.6). Please share any information.
I am using webhdfs plugin for logstash and need to use kerberos for auth. After I got everything setup in logstash I get this error on startup: My logstash configuration is after.
[ERROR] 2019-06-10 20:07:00.873 [LogStash::Runner] Logstash - java.lang.IllegalStateException: Logstash stopped processing because of an error: (LoadError) no such file to load -- gssapi
However, I see a bunch of threads on the web where people install it all sorts of ways and even after they install it, things do not work because some sorts of init scripts have not been run, etc.
Is there anywhere that has the proper directions to install gssapi for the logstash installation?
I am using a very vanilla logstash configuration for this:
I am also using a docker container for logstash and cannot deviate from that in this environment if that makes a difference in configuration steps for gssapi.
Here is an update -> I have the following modifications (yes its still messy, but you will get the idea) to get me to the point where I get another known error:
RUN cat /etc/resolv.conf &&
yum clean all &&
yum update -y && yum install sudo gcc make -y &&
yum clean all &&
curl https://curl.haxx.se/download/curl-7.61.0.tar.gz -o curl-7.61.0.tar.gz &&
tar xvzf curl-7.61.0.tar.gz && cd curl-7.61.0 &&
export GEM_HOME=/usr/share/logstash/vendor/bundle/jruby/2.3.0 &&
/usr/share/logstash/vendor/jruby/bin/jruby /usr/share/logstash/vendor/jruby/bin/gem install -V /usr/share/logstash/ffi-1.11.1.gem &&
/usr/share/logstash/vendor/jruby/bin/jruby /usr/share/logstash/vendor/jruby/bin/gem install -V /usr/share/logstash/gssapi-1.3.0.gem
RUN cat Gemfile > Gemfile2
RUN printf 'gem "ffi"\ngem "gssapi"' >> Gemfile2
RUN cp Gemfile2 Gemfile
./configure --with-darwinssl && make && \
echo "Running make install! " && make install
RUN echo "logstash ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers
USER logstash
And now when I run the webhdfs plugin I get the same error as this post (that has an interesting solution that I am trying now. If this does not work I have to punt, and would advise logstash staff to include this thread in their docs (in some different format), because this is not working with defined gssapi directions.
So that fix above got past that problem and hit a new one ->
[INFO ] 2019-06-13 18:31:37.995 [Converge PipelineAction::Create] pipeline - Starting pipeline {:pipeline_id=>"main", "pipeline.workers"=>112, "pipeline.batch.size"=>500, "pipeline.batch.delay"=>50}
[ERROR] 2019-06-13 18:31:38.581 [[main]-pipeline-manager] webhdfs - Webhdfs check request failed. (namenode: , Exception: gss_init_sec_context did not return GSS_S_COMPLETE: Unspecified GSS failure. Minor code may provide more information
No Kerberos credentials available (default cache: KEYRING:persistent:1000)
)
[ERROR] 2019-06-13 18:31:38.585 [[main]-pipeline-manager] pipeline - Error registering plugin {:pipeline_id=>"main", :plugin=>"#LogStash::OutputDelegator:0x10f3889c", :error=>"gss_init_sec_context did not return GSS_S_COMPLETE: Unspecified GSS failure. Minor code may provide more information\nNo Kerberos credentials available (default cache: KEYRING:persistent:1000)\n", :thread=>"#<Thread:0x1cf29a7d run>"}
[ERROR] 2019-06-13 18:31:38.588 [[main]-pipeline-manager] pipeline - Pipeline aborted due to error {:pipeline_id=>"main", :exception=>#<WebHDFS::KerberosError: gss_init_sec_context did not return GSS_S_COMPLETE: Unspecified GSS failure. Minor code may provide more information
No Kerberos credentials available (default cache: KEYRING:persistent:1000)
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.