大数据方向

linux出现command not found,主要是两种原因造成:

1、该命令所属的程序未安装。

2、未配置环境变量。

今天在配置hadoop环境变量时,修改~/.bashrc 文件导致常用命令如ls,vi,vim,mv
等全部提示command not found。原因是改~/.bashrc 时把环境变量改坏了。

解决方法:

1、# export PATH=$PATH:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

        临时加入PATH环境变量,恢复vim等命令,但重启后会失效。

2、将: export PATH=$PATH:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

        加入此前修改的~/.bashrc 中。

重启机器,可验证解决完成。


问题:当在HA集群在使用start-dfs.sh启动时,namenode开启后必定有一个namenode消失,
日志文件如下:
Error: recoverUnfinalizedSegments failed for required journal (JournalAndStream
(mgr=QJM to [192.168.249.130:8485, 192.168.249.131:8485, 192.168.249.132:8485], 
stream=null)) org.apache.hadoop.hdfs.qjournal.client.QuorumException: Got too many 
exceptions to achieve quorum size 2/3. 3 exceptions thrown: 192.168.249.132:8485: 
Call From master/192.168.249.130 to slave2:8485 failed on connection exception: 
java.net.ConnectException: 拒绝连接; For more details see:  http://wiki.apache.org/
hadoop/ConnectionRefused 192.168.249.130:8485: Call From master/192.168.249.130 to
 master:8485 failed on connection exception: java.net.ConnectException: 拒绝连接;
 For more details see:  http://wiki.apache.org/hadoop/ConnectionRefused
192.168.249.131:8485: Call From master/192.168.249.130 to slave1:8485 failed on 
connection exception: java.net.ConnectException: 拒绝连接; For more details see: 
 http://wiki.apache.org/hadoop/ConnectionRefused     

原因分析:当在使用start-dfs.sh命令开启集群守护进程时,由于namenode的开启顺序在
journalnode之前,日志中就会产生namenode连接journalnode超时错误提示。

(在zookeeper服务端,QuorumPeerMain守护进程启动的情况下)
解决方案1:再次在namenode消失的节点单独开启namenode
    $ hadoop-daemon.sh start namenode
解决方案2:使用stop-dfs.sh关闭其余守护进程后,
    1.在每个集群开启journalnode      
    2.在namenode节点开启namenode
    3.在每个slave节点开启datanode
    4.在每个节点开启zkfc
解决方案3:修改core-site.xml文件,内容如下:    
<property>
     <name>ipc.client.connect.max.retries</name>
     <value>100</value>
     <description>Indicates the number of retries a client will make to establish
        a server connection.
     </description>
</property>
<property>
    <name>ipc.client.connect.retry.interval</name>
    <value>10000</value>
    <description>Indicates the number of milliseconds a client will wait for
       before retrying to establish a server connection.
    </description>
</property>
修改配置文件后可以直接使用start-dfs.sh启动
注意:一般在实际集群操作不这样使用,因为在集群的开启时,守护进程开启是有先后顺序的,
而不是通过这样的命令直接全部开启。

Python抓取网页输出为乱码,网页编码为gb2312,但解码时仍然出错:

解决问题:处理的字符的确是gbk或gb2312的,但是其中夹杂的部分特殊字符,是gbk编码
中所没有的如果有些特殊字符是GB18030中有的,但是是gbk中没有的。则用gbk去解码,
去所不支持的字符,也比如会出错。所以,此种情况,可以尝试用和当前编码(gbk)
所兼容的但所包含字符更多的编码(gb18030)去解码,或许就可以了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值