[ 
https://issues.apache.org/jira/browse/FLINK-33423?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

zhengzhili updated FLINK-33423:
-------------------------------
    Description: 
YarnClusterClientFactory. getClusterDescriptor method   Unable to load the 
configuration for yarn .  The reason is that it is called 
HadoopUtils.getHadoopConfiguration and this method only loading HDFS 
configuration.

First,YarnClusterClientFactory#getClusterDescriptor This method call 
Utils.getYarnAndHadoopConfiguration method
{quote}private YarnClusterDescriptor getClusterDescriptor(Configuration 
configuration)  { 

final YarnClient yarnClient = YarnClient.createYarnClient(); 

final YarnConfiguration yarnConfiguration = 
Utils.getYarnAndHadoopConfiguration(configuration); 
yarnClient.init(yarnConfiguration); yarnClient.start(); return new 
YarnClusterDescriptor( configuration, yarnConfiguration, yarnClient, 
YarnClientYarnClusterInformationRetriever.create(yarnClient), false); }
{quote}
It then calls Utils# getYarnAndHadoopConfiguration method, in the call 
HadoopUtils# getHadoopConfiguration methods will only when loading the Hadoop 
configuration unable to load the configuration for Yarn.
{quote}    public static YarnConfiguration getYarnAndHadoopConfiguration(
            org.apache.flink.configuration.Configuration flinkConfig) 
Unknown macro: \{         final YarnConfiguration yarnConfig = 
getYarnConfiguration(flinkConfig);         
yarnConfig.addResource(HadoopUtils.getHadoopConfiguration(flinkConfig));        
 return yarnConfig;     }
{quote}
Finally, it calls the HadoopUtils#addHadoopConfIfFound method, which does not 
load the yarn-site configuration
{quote}private static boolean addHadoopConfIfFound(
            Configuration configuration, String possibleHadoopConfPath)
Unknown macro: \{         boolean foundHadoopConfiguration = false;         if 
(new File(possibleHadoopConfPath).exists()) Unknown macro}
            if (new File(possibleHadoopConfPath + "/hdfs-site.xml").exists())
Unknown macro: \{                 configuration.addResource(                    
     new org.apache.hadoop.fs.Path(possibleHadoopConfPath + "/hdfs-site.xml")); 
                LOG.debug(                         "Adding "                    
             + possibleHadoopConfPath                                 + 
"/hdfs-site.xml to hadoop configuration");                 
foundHadoopConfiguration = true;             }
        }
        return foundHadoopConfiguration;
    }
{quote}
 

 

 

  was:
YarnClusterClientFactory. getClusterDescriptor method   Unable to load the 
configuration for yarn .  The reason is that it is called 
HadoopUtils.getHadoopConfiguration and this method only loading HDFS 
configuration.

First,YarnClusterClientFactory#getClusterDescriptor This method call 
Utils.getYarnAndHadoopConfiguration method
{quote}private YarnClusterDescriptor getClusterDescriptor(Configuration 
configuration) 
{ 
final YarnClient yarnClient = YarnClient.createYarnClient(); final 
YarnConfiguration yarnConfiguration = 
Utils.getYarnAndHadoopConfiguration(configuration); 
yarnClient.init(yarnConfiguration); yarnClient.start(); return new 
YarnClusterDescriptor( configuration, yarnConfiguration, yarnClient, 
YarnClientYarnClusterInformationRetriever.create(yarnClient), false); }{quote}
It then calls Utils# getYarnAndHadoopConfiguration method, in the call 
HadoopUtils# getHadoopConfiguration methods will only when loading the Hadoop 
configuration unable to load the configuration for Yarn.
{quote}    public static YarnConfiguration getYarnAndHadoopConfiguration(
            org.apache.flink.configuration.Configuration flinkConfig) 
Unknown macro: \{         final YarnConfiguration yarnConfig = 
getYarnConfiguration(flinkConfig);         
yarnConfig.addResource(HadoopUtils.getHadoopConfiguration(flinkConfig));        
 return yarnConfig;     }{quote}
Finally, it calls the HadoopUtils#addHadoopConfIfFound method, which does not 
load the yarn-site configuration
{quote}private static boolean addHadoopConfIfFound(
            Configuration configuration, String possibleHadoopConfPath)
Unknown macro: \{         boolean foundHadoopConfiguration = false;         if 
(new File(possibleHadoopConfPath).exists()) Unknown macro}
            if (new File(possibleHadoopConfPath + "/hdfs-site.xml").exists())
Unknown macro: \{                 configuration.addResource(                    
     new org.apache.hadoop.fs.Path(possibleHadoopConfPath + "/hdfs-site.xml")); 
                LOG.debug(                         "Adding "                    
             + possibleHadoopConfPath                                 + 
"/hdfs-site.xml to hadoop configuration");                 
foundHadoopConfiguration = true;             }
        }
        return foundHadoopConfiguration;
    }
{quote}
 

 

 


> Resolve the problem that YarnClusterClientFactory cannot load yarn 
> configurations
> ---------------------------------------------------------------------------------
>
>                 Key: FLINK-33423
>                 URL: https://issues.apache.org/jira/browse/FLINK-33423
>             Project: Flink
>          Issue Type: Bug
>          Components: Client / Job Submission
>    Affects Versions: 1.17.1
>            Reporter: zhengzhili
>            Priority: Major
>         Attachments: 微信图片_20231101151644.png, 微信图片_20231101152359.png, 
> 微信图片_20231101152404.png, 微信截图_20231101152725.png
>
>
> YarnClusterClientFactory. getClusterDescriptor method   Unable to load the 
> configuration for yarn .  The reason is that it is called 
> HadoopUtils.getHadoopConfiguration and this method only loading HDFS 
> configuration.
> First,YarnClusterClientFactory#getClusterDescriptor This method call 
> Utils.getYarnAndHadoopConfiguration method
> {quote}private YarnClusterDescriptor getClusterDescriptor(Configuration 
> configuration)  { 
> final YarnClient yarnClient = YarnClient.createYarnClient(); 
> final YarnConfiguration yarnConfiguration = 
> Utils.getYarnAndHadoopConfiguration(configuration); 
> yarnClient.init(yarnConfiguration); yarnClient.start(); return new 
> YarnClusterDescriptor( configuration, yarnConfiguration, yarnClient, 
> YarnClientYarnClusterInformationRetriever.create(yarnClient), false); }
> {quote}
> It then calls Utils# getYarnAndHadoopConfiguration method, in the call 
> HadoopUtils# getHadoopConfiguration methods will only when loading the Hadoop 
> configuration unable to load the configuration for Yarn.
> {quote}    public static YarnConfiguration getYarnAndHadoopConfiguration(
>             org.apache.flink.configuration.Configuration flinkConfig) 
> Unknown macro: \{         final YarnConfiguration yarnConfig = 
> getYarnConfiguration(flinkConfig);         
> yarnConfig.addResource(HadoopUtils.getHadoopConfiguration(flinkConfig));      
>    return yarnConfig;     }
> {quote}
> Finally, it calls the HadoopUtils#addHadoopConfIfFound method, which does not 
> load the yarn-site configuration
> {quote}private static boolean addHadoopConfIfFound(
>             Configuration configuration, String possibleHadoopConfPath)
> Unknown macro: \{         boolean foundHadoopConfiguration = false;         
> if (new File(possibleHadoopConfPath).exists()) Unknown macro}
>             if (new File(possibleHadoopConfPath + "/hdfs-site.xml").exists())
> Unknown macro: \{                 configuration.addResource(                  
>        new org.apache.hadoop.fs.Path(possibleHadoopConfPath + 
> "/hdfs-site.xml"));                 LOG.debug(                         
> "Adding "                                 + possibleHadoopConfPath            
>                      + "/hdfs-site.xml to hadoop configuration");             
>     foundHadoopConfiguration = true;             }
>         }
>         return foundHadoopConfiguration;
>     }
> {quote}
>  
>  
>  



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to