小编oul*_*ekh的帖子

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
Run Code Online (Sandbox Code Playgroud)

从我的浏览器和打开或保存此文件的对话框出现,但当我杀死在nn1上运行的名称节点并正常启动它然后由于高可用性nn1变为待机状态并且nn2变为活动状态.

所以这里httpfs应该工作,即使nn1变得待命,但现在发送相同的请求

http://nn1:14000/webhdfs/v1/aloosh/oula.txt?op=open&user.name=root
Run Code Online (Sandbox Code Playgroud)

给了我错误

{"RemoteException":{"message":"Operation category READ is not supported in state standby","exception":"RemoteException","javaClassName":"org.apache.hadoop.ipc.RemoteException"}}
Run Code Online (Sandbox Code Playgroud)

httpfs不应该克服nn1待机状态并带上文件吗?是因为配置错误,还是有其他原因?

我的核心网站是

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

        <property>
                <name>hadoop.proxyuser.root.groups</name>
                <value>*</value>
        </property>
Run Code Online (Sandbox Code Playgroud)

hadoop httpfs

6
推荐指数
1
解决办法
2万
查看次数

curl:(5)无法解析代理:DELETE; 未知错误

我在centos 7上使用hadoop apache 2.7.1,我想通过使用webhdfs命令删除file(file1)。

curl -i -x DELETE "http://192.168.25.21:50070/webhdfs/v1/hadoophome/file1/?user.name=root&op=DELETE&recursive=true"
Run Code Online (Sandbox Code Playgroud)

但我收到此错误:

curl: (5) Could not resolve proxy: DELETE; Unknown error
Run Code Online (Sandbox Code Playgroud)

我编辑了bashrc文件,如下所示:

export http_proxy=""
export https_proxy=""
export ftp_proxy=""
Run Code Online (Sandbox Code Playgroud)

并获取文件以保存更改

 source ~/.bashrc
Run Code Online (Sandbox Code Playgroud)

但是有同样的错误。

所以我试图在culr命令中没有设置代理

curl -i -x --noproxy localhost  DELETE "http://192.168.25.21:50070/webhdfs/v1/hadoophome/file1/?user.name=root&op=DELETE&recursive=true"
Run Code Online (Sandbox Code Playgroud)

出现此错误:

curl: (5) Could not resolve proxy: --noproxy; Unknown error
Run Code Online (Sandbox Code Playgroud)

我应如何编辑以排除此代理?

谢谢。

hadoop centos7 hadoop-2.7.2

4
推荐指数
1
解决办法
5482
查看次数

./zkServer.sh status联系服务时出错.它可能没有运行

我已经安装了zookeeper 3.4.9版本

我的zoo.cfg文件配置如下

initLimit=10

syncLimit=5

dataDir=/usr/local/zookeeper/

clientPort=2181

DataLogDir=/usr/local/log/

server.1=hadoop-master:2888:3888

server.2=hadoop-slave-1:2889:3889

server.3=hadoop-slave-2:2890:3890
Run Code Online (Sandbox Code Playgroud)

当然我已经在三个节点中启动了myid文件/usr/local/zookeeper/data/myid

它包含hadoop-master服务器中的值1和hadoop-slave-1中的值2

和hadoop-slave-2中的3个

我的奴隶文件如下

hadoop-slave-1

hadoop-slave-2

hadoop-master
Run Code Online (Sandbox Code Playgroud)

我已经./zkServer.sh start在所有三个节点中发出了命令,它给了我输出

ZooKeeper JMX enabled by default

Using config: /usr/local/zookeeper-3.4.9/bin/../conf/zoo.cfg

Starting zookeeper ... STARTED
Run Code Online (Sandbox Code Playgroud)

但发出命令 ./zkServer.sh status

给了我输出

Using config: /usr/local/zookeeper-3.4.9/bin/../conf/zoo.cfg

Error contacting service. It is probably not running.
Run Code Online (Sandbox Code Playgroud)

为什么我得到这个输出?

并且jps命令不会查看

QuorumPeerMain
Run Code Online (Sandbox Code Playgroud)

我的.bashrc档案是

export JAVA_HOME=/usr/local/java-1.7.0/

export PATH=$PATH:$JAVA_HOME/bin

export HADOOP_HOME=/usr/local/hadoop/

export HADOOP_MAPRED_HOME=$HADOOP_HOME

export HADOOP_COMMON_HOME=$HADOOP_HOME

export HADOOP_HDFS_HOME=$HADOOP_HOME

export YARN_HOME=$HADOOP_HOME

export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native

export HADOOP_OPTS="$HADOOP_OPTS …
Run Code Online (Sandbox Code Playgroud)

hadoop apache-zookeeper

2
推荐指数
2
解决办法
8659
查看次数

标签 统计

hadoop ×3

apache-zookeeper ×1

centos7 ×1

hadoop-2.7.2 ×1

httpfs ×1