第三章:hadoop安装配置,jps命令不能使用。apt-get命令不能下载jdk,缺少依赖包,设置静态ip后不能上网,ubuntu防火墙,ssh无密码登录

第三章:hadoop安装配置,jps命令不能使用。apt-get命令不能下载jdk,缺少依赖包,设置静态ip后不能上网,ubuntu防火墙,ssh无密码登录第三章:hadoop安装配置,jps命令不能使用。apt-get命令不能下载jdk,缺少依赖包,设置静态ip后不能上网,ubuntu防火墙,ssh无密码登录

大家好,又见面了,我是你们的朋友全栈君。

首先安装jdk

使用apt-get命令安装jdk,因为缺少依赖所以先下载依赖包,

执行命令:sudo apt-get -f install

安装提示执行所需的操作,

接着执行命令:

sudo apt-get update
sudo apt-get install default-jre
sudo apt-get install default-jdk

再执行

java -version

可查询jdk版本,最新的是jdk8,因此下载的也是jdk8

—————————————–

执行途中遇到问题:

1,没有secureCRT没有rz上传命令,

执行命令:apt-get install lrzsz

2,crt远程链接一段时间超时

2.1、在客户端配置

#vi /etc/ssh/ssh_config(注意不是/etc/ssh/sshd_config文件),后面添加

?

1

2

Host *

ServerAliveInterval 30

这表示要让所有的ssh连接自动加上此属性;如果要指定服务端,如下:

使用-o的参数ServerAliveInterval来设置一个防止超时的时间

?

1

ssh-o ServerAliveInterval=30 IP地址

2.2在服务端配置

编辑服务器 /etc/ssh/sshd_config,最后增加

?

1

2

ClientAliveInterval 60

ClientAliveCountMax 1

这 样,SSH Server 每 60 秒就会自动发送一个信号给 Client,而等待 Client 回应

2.3在securtCRT上设置:options–>Global Options–>general–>default Session–>Edit Default Settings–>

 

 

如上图设置,每秒钟发送一次请求表示链接没有断掉。

—————————————————————

接着配置jdk环境变量

进入到home目录下

执行命令  :

vim /etc/profile

在文件最后,输入一下内容:

export JAVA_HOME=”(你的jdk安装目录,一般为/usr/bin/jvm/java-6-sun)”

export CLASSPATH=”.:$JAVA_HOME/lib:$CLASSPATH”

export PATH =”$JAVA_HOME/:$PATH”

————————-配置ssh免密码登录————-

(1)确认能够联网,执行命令

sudo apt-get install ssh

接着,步骤如下: 
1、cd ~,进入到我的home目录 
2、cd .ssh/ 
3、ssh-keygen -t rsa (四个回车) 
执行完这个命令后,会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥) 
4、cp id_rsa.pub authorized_keys

这样就行了,但是测试ssh locahost的时候提示permission denied(publickey.gssapi-with-mic)

需要做下面修改:

vim  /etc/ssh/sshd_config

· 1

对比下面的内容,如果和你的不符合,就改成下面的,如果你那里的那一行前面有#号,就把#号去掉(可能顺序会和下面的不一样)

PermitRootLogin yes

PasswordAuthentication yes

HostKey /etc/ssh/ssh_host_rsa_key

RSAAuthentication yes

PubkeyAuthentication yes

AuthorizedKeysFile    .ssh/authorized_keys

重启ssh服务:sudo /etc/init.d/ssh restart

检验ssh是否安装成功:ssh -version 

显示:Bad escape character ‘rsion’.表示安装成功

输入:ssh localhost

如下,说明安装成功:

 

—————————————–下载,安装hadoop—————————–

首先下载hadoop:http://hadoop.apache.org/releases.html#Download

找到如下位置:

点开箭头位置下载tar包,小编这里下载的是hadoop-3.0.0的

rz命令上传到用户目录下,尽量不要使用root用户,小编如下:

 

这里做一个伪分布式的:

需要修改hadoop的几个配置文件,进入到/home/xiaoye/hadoop-3.0.0/etc/hadoop目录

可以看到许多的配置文件。

1,修改hadoop-env.sh

设置jdk的安装目录,(export JAVA_HOME=”/usr/lib/jvm/java-1.8.0-openjdk-amd64″)

 

2,修改core-site.xml

<configuration>

        <property>

                <name>hadoop.tmp.dir</name>

                <value>/home/xiaoye/hadoop-3.0.0/tmp</value>

        </property>

        <property>

                <name>fs.default.name</name>

                <value>hdfs://localhost:9000</value>

        </property>

</configuration>

 

加入红框里的内容即可,value的值要确定有相应的目录哦,可自己mkdir

3,修改hdfs-site.xml

<configuration>

        <property>

                <name>dfs.datanode.data.dir</name>

                <value>/home/xiaoye/hadoop-3.0.0/hadoop/data</value>

        </property>

        <property>

                <name>dfs.namenode.name.dir</name>

                <value>/home/xiaoye/hadoop-3.0.0/hadoop/name</value>

        </property>

        <property>

                <name>dfs.http.address</name>

                <value>0.0.0.0:8100</value>

        </property>

        <property>

                <name>dfs.replication</name>

                <value>1</value>

        </property>

</configuration>

 

同上,value值要新建相应的目录。

4,修改mapred-site.xml

<configuration>

        <property>

                <name>mapred.job.tracker</name>

                <value>localhost:9001</value>

        </property>

</configuration>

 

———————————————-启动hadoop——————————

先格式化hdfs文件系统:进入到hadoop-3.0.0目录下,命令:

./bin/hadoop namenode -format

接着启动hadoop,进入到sbin目录下,命令:

./start-all.sh

启动完成后,输入命令:jps 查看节点启动情况

加上jps总共有6个节点进程说明启动成功,

在windows浏览器上输入你虚拟机的ip地址:8100就能够访问hdfs的页面了。

 

—————————————-遇到问题———————–

1,jps命令不能使用,即不存在的情况,并报如下错

The program ‘jps’ can be found in the following packages:

      * openjdk-6-jdk

      * openjdk-7-jdk

      Ask your administrator to install one of them

       

       输入以下命令结解决:sudo apt-get install openjdk-7-jdk

如果报openjdk-8-jdk

          openjdk-9-jdk

则输入一下解决:sudo apt-get install openjdk-8-jdk

具体看你安装的jdk版本

2,缺少依赖包,以及无法通过apt-get命令下载jdk

尤其实在下载jdk的时候,许多网友给的答案是通过sudo apt-get install sun-java6-jdk 这个命令下载的,可是在我这里不能用,在根据报错信息修改的过程中,尝试过各种方法,比如更好下载路径为网易,阿里,163等,但是都不行,接着报错apt -get i386等信息错误,小编一开始以为是下载ubuntu版本是64位的,使用上述命令下载的是32位的jdk,导致不兼容,但是无法解决。最后百度到这个命令:apt-get -f install 就能够下载所有依赖了

接着执行:

接着执行命令:

sudo apt-get update
sudo apt-get install default-jre

sudo apt-get install default-jdk

能够下载最新的jdk版本。

此外,更好的选择有:

1. 

Installing Oracle JDK

2. 

sudo apt-get install python-software-properties
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update

3. 

Oracle JDK 6(旧版本)
sudo apt-get install oracle-java6-installer
Oracle JDK 7(较新的稳定版本)
sudo apt-get install oracle-java7-installer
Oracle JDK 8(最新预览版本)
sudo apt-get install oracle-java8-installer

4. 

5. 

Managing Java

6. 

sudo update-alternatives –config java
有 2 个候选项可用于替换 java (提供 /usr/bin/java)。

7. 

3,ip连接一段时间会自动断开。执行ifconfig命令是不显示ip

这个上面已说明,不再详述

4,设置静态ip后,无法上网,并有时在重启虚拟机后也不能上网

这个是小编的在设置静态ip是没有设置好的缘故,也记下来。

完整的设置静态ip的过程如下。

命令:vim /etc/network/interfaces

修改 

# interfaces(5) file used by ifup(8) and ifdown(8)

auto lo

iface lo inet loopback

 

auto ens33

iface ens33 inet static

address 192.168.72.131

netmask 255.255.255.0

gateway 192.168.72.3

dns-nameservers 114.114.114.114

dns的114.114.114.114要跟小编的一样,这个应该公网的服务器。

 

当然dns也可以在/etc/resolv.conf文件中修改,但是每次重启修改的内容好像会消失。

 

对于ip地址的设置可参照如下讲解

—————————————-ip地址,网关,子网掩码,dns设置—————————————————————

1.查看/设置下NAT的网络

打开VMware Workstation,

点击编辑——虚拟网络编辑器,查看NAT模式的网络。

 

如下图示,如果你对自动分配的子网IP不喜欢的可以点击还原默认设置,不过还是会自动分配的,不能自己设置的。

 

点击NAT设置,查看子网IP子网掩码以及查看和设置网关IP

 

点击DHCP设置,可以查看并设置自动分配的IP范围,后面用到手动分配的IP就是在这些IP中。

 

2.设置虚拟机的IP

点击VMware Workstation虚拟机——>设置,打开虚拟机设置

 

设置网络连接为NAT连接方式

 

开启虚拟机,进入图形界面,点击右上方的网络上下箭头符号,其中图示wired connection 1就是当前使用的网络。如果有其他的网络可以连接到其他的网络中

我们点击下面的Edit Connections进入IP设置。

 

选择要编辑的IP,点击Edit,进入网络设置界面

 

选择IPv4 Settings,进入网络设置界面,选择Method的方式:

automatic为自动分配,我们为了是我们的网络固定化,选择Manual;

点击下面的Add添加网络包括设置Address(IP地址)NetMask和 Gateway

其中Address为虚拟网络编辑器NAT界面DHCP中的IP范围,Netmask为DHCP中的子网掩码,Gateway为NAT设置里面的网关。

 

设置完成后,保存退出,点击右上角的网络上下箭头,点击Disconnect,然后再选择我们设置的网络,这里选择的是wired connection 1。

相当于重新加载下网络配置文件访问网络。

现在我们查看下网络的IP;

 

ping下宿主机的IP,不是NAT的网络,(而是主机本身的IP),Ping一下百度

 

PING 宿主机的IP和百度的结果

 

联网效果:

 

———————————————————–结束————————————————————

5,ubuntu安装好后显示“device not managed”

1. 编辑/etc/NetworkManager/NetworkManager.conf:

sudo gedit /etc/NetworkManager/NetworkManager.conf
将其中的managed=false改为managed=true

2.重启network-manager service:

sudo service network-manager restart

6,不通版本的hadoop的conf的配置文件目录放置不一样,需要找找

7,启动hadoop后,可使用netstat -nltp命令查看访问端口和ip

8,无法启动namenode,./start-all.sh后发现只有namenode命令没有启动,其他四个都启动了,这是出现的情况有很多,建议看logs日志找到错误再百度。

9,ubuntu,防火墙启动关闭命令:

sudo ufw version防火墙版本: 
ufw 0.29-4ubuntu1 
Copyright 2008-2009 Canonical Ltd.

ubuntu 系统默认已安装ufw.

1.安装

sudo apt-get install ufw

2.启用

sudo ufw enable

sudo ufw default deny

运行以上两条命令后,开启了防火墙,并在系统启动时自动开启。关闭所有外部对本机的访问,但本机访问外部正常。

3.开启/禁用

sudo ufw allow|deny [service]

10.启动hadoop时,就是执行./start-all.sh命令是,出现localhost权限不够

这是ssh无密码登录设置失败的原因,可试试的解决方案是,重新设置用户密码,就是先删掉用户.ssh目录下的所有文件,再执行命令 passwd。再重新执行上面的ssh密码登录部分。

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/106189.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • OpenWrt添加启动脚本

    OpenWrt添加启动脚本

  • 未来取代计算机电脑,还在用电脑?未来几年它可能被手机取代

    未来取代计算机电脑,还在用电脑?未来几年它可能被手机取代据统计,家用计算机中九成的用户平时只做网页浏览、文档处理、简单的图像处理、游戏等操作,很少使用专业的设计和分析软件。所以家用计算机并不需要太高的配置,如果打游戏,一块好点的显卡就够了。在计算能力方面,随着手机硬件配置逐步增强,除了应付手机本身的各种应用,计算资源已经显得富裕起来,使得手机代替部分计算机成为可能。网络方面,提速减费政策后,无论有线网络还是无线网络的带宽都已不是问题,4G网络的费用也在…

  • ScriptManager局部刷新「建议收藏」

    ScriptManager局部刷新「建议收藏」ScriptManager和UpdatePanel控件联合使用可以实现页面异步局部更新的效果。其中的UpdatePanel就是设置页面中异步局部更新区域,它必须依赖于ScriptManager存在,因为ScriptManger控件提供了客户端脚本生成与管理UpdatePanel的功能。几个重要的属性:ScriptManager控件的EnablePartialRendering属性:true…

  • java三种单例模式的实现[通俗易懂]

    java三种单例模式的实现[通俗易懂]java三种单例模式的实现一、单例模式介绍单例模式是最基础的程序设计模式之一,在java上表现为,单例模式下,一个单例对象的类只能存在一个,其职责只能由这个类产生的单例完成。优点:显而易见只用一个实例可以节省系统资源,对于一些需要经常创建销毁的对象而言,使用单例模式提高了系统性能缺点:获取单例对象时不能直接通过其构造方法获取,而是要通过它开放的创建方法来获取,可读性会稍差一点使用案例:比如加载某配置文件的程序对象可以是单例的,该对象在获取了配置信息后,其他需要信息的对象可以通过该单例对象获取到信息

  • mybatis的常用动态sql标签

    mybatis的常用动态sql标签一.定义sql语句select标签属性介绍:id:唯一的标识符.parameterType:传给此语句的参数的全路径名或别名例:com.test.poso.User或userresultType:语句返回值类型或别名。注意,如果是集合,那么这里填写的是集合的泛型,而不是集合本身(resultType与resultMap不能并用)<selectid=…

  • 在vs code中进行本地调试和开启本地服务器

    在vs code中进行本地调试和开启本地服务器在vs code中进行本地调试和开启本地服务器

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号