Hello Robert, Thank you for the help, *tried to access method org.apache.hadoop.yarn.client.**ConfiguredRMFailoverProxyProvi* was the root of the issue.
I managed to fix issue with the "hadoop version is 2.4.1", it was because previous flink version I was using referred to org.apache.flink:flink-shaded-hadoo*p2* and now it became org.apache.flink:flink-shaded-hadoo*p-2*, hence I had an incorrect jar "org.apache.flink:flink-shaded-hadoop-2:jar:2.4.1-*9.0"* in my runtime. I excluded it from classpath and added correct version org.apache.flink:flink-shaded-hadoop-2:jar:2.7.5-*10.0* that helped to solve > *Caused by: java.lang.IllegalAccessError: tried to access method > org.apache.hadoop.yarn.client.**ConfiguredRMFailoverProxyProvi* > *der.getProxyInternal()Ljava/*lang/Object; from class > org.apache.hadoop.yarn.client.RequestHedgingRMFailoverProxyProvider And the job now runs without an error. As for message saying, YarnJobClusterEntrypoint (Version: 1.7.0.. it turned out that flink takes it's version from META-INF/MANIFEST.FM, which in case you use a shaded uber jar will be the version of your application and not flink. Best Regards Vitaliy On Tue, Mar 31, 2020 at 9:46 AM Robert Metzger <rmetz...@apache.org> wrote: > Hey Vitaliy, > > Check this documentation on how to use Flink with Hadoop: > https://ci.apache.org/projects/flink/flink-docs-release-1.10/ops/deployment/hadoop.html > For your setup, I would recommend referencing the Hadoop jars from your > Hadoop vendor by setting > > export HADOOP_CLASSPATH=`hadoop classpath` > > Is it possible that the files on your cluster are Flink 1.7.0 files, while > your Flink job maven project has Flink 1.10 dependencies? > On your server, what version do the flink jar files in lib/ have? > > If your are launching Flink like this... > > ./bin/flink run -m yarn-cluster -p 4 -yjm 1024m -ytm 4096m ./my/project.jar > > ... it will use the files in lib/ for starting Flink. > > Best, > Robert > > > On Mon, Mar 30, 2020 at 5:39 PM Vitaliy Semochkin <vitaliy...@gmail.com> > wrote: > >> Hello Robert, >> Thank you for quick response! >> Indeed logs says the hadoop version is 2.4.1 this is probably because of >> >> https://github.com/apache/flink/blob/b17a597dec80e590db2beedda446aa3cae9920dd/pom.xml#L96 >> How can I make 1.10 to work with my current hadoop version? >> >> Regarding flink reporting in logs its 1.7.0 >> org.apache.flink.runtime.entrypoint.ClusterEntrypoint - Starting >> YarnJobClusterEntrypoint (Version: 1.7.0 >> while I'm using 1.10 and this is application cluster (everything is >> bundled and we don't have session cluster running). >> Here are the whole dependencies list: >> mvn dependency:tree | grep flink | cut -d'-' -f2- >> org.apache.flink:flink-yarn_2.11:jar:1.10.0:runtime >> org.apache.flink:flink-clients_2.11:jar:1.10.0:compile >> org.apache.flink:flink-optimizer_2.11:jar:1.10.0:compile >> org.apache.flink:flink-shaded-hadoop-2:jar:2.4.1-9.0:runtime >> org.apache.flink:force-shading:jar:1.10.0:compile >> org.apache.flink:flink-runtime_2.11:jar:1.10.0:runtime >> org.apache.flink:flink-core:jar:1.10.0:compile >> org.apache.flink:flink-annotations:jar:1.10.0:compile >> org.apache.flink:flink-metrics-core:jar:1.10.0:compile >> org.apache.flink:flink-java:jar:1.10.0:compile >> org.apache.flink:flink-queryable-state-client-java:jar:1.10.0:runtime >> org.apache.flink:flink-hadoop-fs:jar:1.10.0:runtime >> org.apache.flink:flink-shaded-netty:jar:4.1.39.Final-9.0:compile >> org.apache.flink:flink-shaded-guava:jar:18.0-9.0:compile >> org.apache.flink:flink-shaded-asm-7:jar:7.1-9.0:compile >> org.apache.flink:flink-shaded-jackson:jar:2.10.1-9.0:compile >> org.apache.flink:flink-jdbc_2.11:jar:1.10.0:compile >> org.apache.flink:flink-hbase_2.11:jar:1.10.0:compile >> org.apache.flink:flink-runtime-web_2.11:jar:1.10.0:compile >> As you can see all flink related libs are 1.10. >> >> Can you please tell which class in flinks identifies the version(I'll try >> to debug it locally)? >> >> Regards, >> Vitaliy >> >> >> On Mon, Mar 30, 2020 at 5:10 PM Robert Metzger <rmetz...@apache.org> >> wrote: >> >>> Hey Vitaliy, >>> is it okay for you if we keep the discussion on the list, so that others >>> can chime in to help, and that Google can index the conversation, in case >>> somebody else has a similar problem? >>> >>> I just checked, and Flink on YARN in Flink 1.10 does set the >>> property correctly. Maybe in Flink 1.7, accessing the logs in the web ui >>> was not yet supported. >>> >>> You said in your email, that you are using Flink 1.10, however, your >>> logs state that you are running Flink 1.7.0. >>> It also seems that you have the Hadoop 2.4.1 dependencies of Flink, but >>> your Hadoop environment is Hadoop 2.7.3. I believe this error is caused by >>> that version mismatch: >>> >>> Caused by: java.lang.IllegalAccessError: tried to access method >>>> org.apache.hadoop.yarn.client.ConfiguredRMFailoverProxyProvider.getProxyInternal()Ljava/lang/Object; >>>> from class >>>> org.apache.hadoop.yarn.client.RequestHedgingRMFailoverProxyProvider >>> >>> >>> >>> >>> On Mon, Mar 30, 2020 at 1:58 PM Vitaliy Semochkin <vitaliy...@gmail.com> >>> wrote: >>> >>>> Hello Robert, >>>> >Where exactly are you seeing the "Log file environment variable >>>> 'log.file' is not set." message? >>>> I get this message when I check yarn logs. >>>> >>>> >Can you post some context around it? (is this shown from the command >>>> line? what are the arguments? is it shown in a file? >>>> I'm creating an application cluster from a java application using flink >>>> 1.10. I didn't have this issue with 1.8.1 version, >>>> however when I upgraded configuration slightly changed, e.g. >>>> ClusterSpecification taskManagerMemoryMB is now ignored, and should be set >>>> via fink Configuration. >>>> (though it's value still validated, but no longer used after that). >>>> My main issue, is that Application seems to fail to start properly, it >>>> seems that JobMaster fails to connect to ResourceManager, but I can't >>>> figure out why. >>>> The yarn log is attached. >>>> >>>> I'll appreciate if you tell me to which direction I should dig. >>>> >>>> Regards, >>>> Vitaliy >>>> >>>> >>>> On Mon, Mar 30, 2020 at 12:00 PM Robert Metzger <rmetz...@apache.org> >>>> wrote: >>>> >>>>> Hey, >>>>> which Flink version are you using? >>>>> >>>>> Where exactly are you seeing the "Log file environment variable >>>>> 'log.file' is not set." message? Can you post some context around it? (is >>>>> this shown from the command line? what are the arguments? is it shown in a >>>>> file? >>>>> >>>>> Usually, the "log.file" property is used to pass the name of the log >>>>> file into the log4j configuration. If this property is not set, I have to >>>>> assume that you are using modified or custom scripts, or you are executing >>>>> Flink in an environment that fails to set the property. >>>>> >>>>> When running Flink on YARN, the JobManager logs are stored on the >>>>> machine running the JobManager. The logs accessible through "yarn logs" >>>>> are >>>>> the same as you would see in the JM interface. >>>>> >>>>> Best, >>>>> Robert >>>>> >>>>> >>>>> >>>>> On Sun, Mar 29, 2020 at 11:22 PM Vitaliy Semochkin < >>>>> vitaliy...@gmail.com> wrote: >>>>> >>>>>> Hello Yun, >>>>>> >>>>>> I see this error reported by: >>>>>> *org.apache.flink.runtime.webmonitor.WebMonitorUtils* - *JobManager >>>>>> log files are unavailable in the web dashboard. Log file location not >>>>>> found >>>>>> in environment variable 'log.file' or configuration key 'Key: >>>>>> 'web.log.path' , default: null (fallback keys: >>>>>> [{key=jobmanager.web.log.path, isDeprecated=true}])'.* >>>>>> >>>>>> I wonder where the JobManager files are stored in case running on a >>>>>> YARN cluster? >>>>>> Are these logs same to those I get via yarn logs -applicationId? >>>>>> >>>>>> Regards, >>>>>> Vitaliy >>>>>> >>>>>> >>>>>> >>>>>> On Sun, Mar 29, 2020 at 8:24 PM Yun Tang <myas...@live.com> wrote: >>>>>> >>>>>>> Hi Vitaliy >>>>>>> >>>>>>> Property of 'log.file' would be configured if you have uploaded >>>>>>> 'logback.xml' or 'log4j.properties' [1]. >>>>>>> The file would contain logs of job manager or task manager which is >>>>>>> decided by the component itself. And as you can see, this is only a >>>>>>> local >>>>>>> file path, I am afraid this cannot understand hdfs paths. >>>>>>> >>>>>>> >>>>>>> [1] >>>>>>> https://github.com/apache/flink/blob/ae3b0ff80b93a83a358ab474060473863d2c30d6/flink-runtime/src/main/java/org/apache/flink/runtime/clusterframework/BootstrapTools.java#L420 >>>>>>> >>>>>>> Best >>>>>>> Yun Tang >>>>>>> ------------------------------ >>>>>>> *From:* Vitaliy Semochkin <vitaliy...@gmail.com> >>>>>>> *Sent:* Sunday, March 29, 2020 4:32 >>>>>>> *To:* user <user@flink.apache.org> >>>>>>> *Subject:* Log file environment variable 'log.file' is not set. >>>>>>> >>>>>>> Hi, >>>>>>> >>>>>>> When I launch Flink Application Cluster I keep getting a message >>>>>>> " Log file environment variable 'log.file' is not set." >>>>>>> >>>>>>> I use console logging via log4j >>>>>>> and I read logs via yarn logs -applicationId .... >>>>>>> >>>>>>> What's the purpose of log.file property? >>>>>>> What this file will contain and on which host should I search for >>>>>>> the log? >>>>>>> Does this property understands hdfs paths? >>>>>>> >>>>>>> Regards, >>>>>>> Vitaliy >>>>>>> >>>>>>