복붙노트

[HADOOP] httpfs 오류 상태 카테고리 READ는 상태 대기 모드에서 지원되지 않습니다.

HADOOP

httpfs 오류 상태 카테고리 READ는 상태 대기 모드에서 지원되지 않습니다.

hadoop apache 2.7.1에서 작업 중이며 클러스터가 3 개 노드로 구성되어 있습니다.

nn1 nn2 dn1

nn1은 dfs.default.name이므로 마스터 이름 노드입니다.

나는 모든 서비스를 다시 시작한 후 httpfs를 설치하고 시작했다. nn1이 활성 상태이고 nn2가 대기 상태이면이 요청을 보낼 수 있습니다.

http://nn1:14000/webhdfs/v1/aloosh/oula.txt?op=open&user.name=root

내 브라우저에서이 파일을 열거 나 저장하는 대화 상자가 나타납니다.하지만 nn1에서 실행중인 이름 노드를 죽인 다음 고 가용성으로 인해 다시 정상적으로 시작하면 nn1이 대기 상태가되고 nn2가 활성화됩니다.

그래서 httpfs는 nn1이 대기 상태가 되더라도 같은 요청을 보내더라도 작동 할 것입니다.

http://nn1:14000/webhdfs/v1/aloosh/oula.txt?op=open&user.name=root

나에게 오류를 준다.

{"RemoteException":{"message":"Operation category READ is not supported in state standby","exception":"RemoteException","javaClassName":"org.apache.hadoop.ipc.RemoteException"}}

httpfs가 nn1 대기 상태를 극복하고 파일을 가져 오지 않아야합니까? 구성이 잘못 되었나요? 아니면 다른 이유가 있습니까?

내 핵심 사이트는

<property>
       <name>hadoop.proxyuser.root.hosts</name>
                <value>*</value>
       </property>

        <property>
                <name>hadoop.proxyuser.root.groups</name>
                <value>*</value>
        </property>

해결법

  1. ==============================

    1.HttpF는 아직 고 가용성을 인식하지 못하는 것 같습니다. 이는 클라이언트가 현재 Active Namenode로 연결하는 데 필요한 누락 된 구성으로 인한 것일 수 있습니다.

    HttpF는 아직 고 가용성을 인식하지 못하는 것 같습니다. 이는 클라이언트가 현재 Active Namenode로 연결하는 데 필요한 누락 된 구성으로 인한 것일 수 있습니다.

    core-site.xml의 fs.defaultFS 등록 정보가 올바른 이름 서비스 ID로 구성되어 있는지 확인하십시오.

    아래에 hdfs-site.xml이 있다면

    <property>
      <name>dfs.nameservices</name>
      <value>mycluster</value>
    </property>
    

    core-site.xml에서는 다음과 같아야합니다.

    <property>
      <name>fs.defaultFS</name>
      <value>hdfs://mycluster</value>
    </property>
    

    또한 어떤 NameNode가 현재 활성이고 클라이언트 요청을 제공하고 있는지 판별하기 위해 DFS 클라이언트가 사용할 Java 클래스의 이름을 구성하십시오.

    이 속성을 hdfs-site.xml에 추가하십시오.

    <property>
      <name>dfs.client.failover.proxy.provider.mycluster</name>            
      <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
    </property>
    

    모든 노드에 등록 정보를 추가 한 후 이름 노드와 HttpF를 다시 시작하십시오.

  2. from https://stackoverflow.com/questions/43340226/httpfs-error-operation-category-read-is-not-supported-in-state-standby by cc-by-sa and MIT license