共计 9540 个字符,预计需要花费 24 分钟才能阅读完成。
一、安装 JDK
1、用户可以在 Oracle JDK 的官网下载相应版本的 JDK,本例以 JDK 1.6 为例,官网地址为 http://www.oracle.com/tech-network/java/javase/downloads/index.html。
2、配置环境变量,在 /etc/profile 增加以下代码。
1 #Seeting JDK JDK 环境变量
2 export JAVA_HOME=/opt/java/jdk/jdk1.7.0_79
3 export JRE_HOME=${JAVA_HOME}/jre
4 export CLASSPATH=${JAVA_HOME}/lib
5 export PATH=${JAVA_HOME}/bin:$PATH
输入 java -version 命令查看是否安装成功
二、配置 SSH
一般 linux 系统都自带了 SSH 服务,如果没有 SSH 服务需要自己安装
1、查看是否安装 SSH: ps
-e |
grep
ssh
如果没有显示 sshd,说明没有安装 ssh 服务
2、通过“sudo
apt-get
install
openssh-server
”安装
$ sudo apt-get install openssh-server
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
有一些软件包无法被安装。如果您用的是 unstable 发行版,这也许是
因为系统无法达到您要求的状态造成的。该版本中可能会有一些您需要的软件
包尚未被创建或是它们已被从新到 (Incoming) 目录移出。下列信息可能会对解决问题有所帮助:下列软件包有未满足的依赖关系:openssh-server : 依赖: openssh-client (= 1:6.6p1-2Ubuntu1)
E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。
这是因为,openssh-server 是依赖于 openssh-clien 的, 那 ubuntu 不是自带了 openssh-client 吗? 原由是自带的 openssh-clien 与所要安装的 openssh-server 所依赖的版本不同, 这里所依赖的版本是1:6.6p1-2ubuntu1,所以要安装对应版本的 openssh-clien, 来覆盖掉 ubuntu 自带的。
$ sudo apt-get install openssh-client=1:6.6p1-2ubuntu1
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
建议安装的软件包:libpam-ssh keychain monkeysphere
下列软件包将被【降级】:openssh-client
升级了 0 个软件包,新安装了 0 个软件包,降级了 1 个软件包,要卸载 0 个软件包,有 0 个软件包未被升级。需要下载 566 kB 的软件包。解压缩后会消耗掉 0 B 的额外空间。您希望继续执行吗?[Y/n] y
获取:1 http://cn.archive.ubuntu.com/ubuntu/ trusty/main openssh-client amd64 1:6.6p1-2ubuntu1 [566 kB]
下载 566 kB,耗时 2 秒 (212 kB/s)
dpkg:警告:downgrading openssh-client from 1:6.6p1-2ubuntu2 to 1:6.6p1-2ubuntu1
(正在读取数据库 ... 系统当前共安装有 200015 个文件和目录。)
Preparing to unpack .../openssh-client_1%3a6.6p1-2ubuntu1_amd64.deb ...
Unpacking openssh-client (1:6.6p1-2ubuntu1) over (1:6.6p1-2ubuntu2) ...
Processing triggers for man-db (2.6.7.1-1) ...
正在设置 openssh-client (1:6.6p1-2ubuntu1) ...
可以看到, 提示了系统中 openssh-client 被降级, 这样再安装 openssh-server 就可以成功了!
3、查看 SSH 目录 /etc/ssh 下是否有密钥文件
如果没有这两个文件,需要自己生成。输入以下命令。
#ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key
#ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
生成密钥文件时,会提示输入密码,这里我们不输入密码,默认按回车
可以用“passwd 用户”来修改 ssh 的登录密码。
4、启动 ssh
/etc/init.d/ssh status 查看 ssh 状态
/etc/init.d/ssh start 启动 ssh
/etc/init.d/ssh restart 重启 ssh
5、测试 ssh 是否安装成功
三、配置 SSH 免密码登录
1、输入 ssh-keygen -t rsa
2、将 id_rsa.pub 文件 写入 authorized_keys
cat id_rsa.pub >> ~/.ssh/authorized_keys
查看 /root/.ssh 目录
3、装 id_rsa.pub 文件发送到远程机器上
scp id_rsa.pub root@172.20.14.144:/home
cat /home/id_rsa.pub >> /root/.ssh/authorized_keys
这样 ssh 登录远程机器就不需要密码了。
更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2016-08/134637p2.htm
四、安装 Hadoop
1、下载安装 Hadoop2.2.0
2、解压 tar 包
$ sudo tar-vxzf hadoop-2.2.0.tar.gz -C /usr/local
$ cd /usr/local
$ sudo mv hadoop-2.2.0 hadoop
$ sudo addgroup hadoop 添加 hadoop 组
$ sudo adduser -ingroup hadoop hadoop 添加 hadoop 用户
$ sudo chown -R hduser:hadoop hadoop 授权
3、查看 Hadoop 包是 32 位还是 64 位
4、配置 Hadoop 环境变量
$ gedit /etc/profile
export HADOOP_INSTALL=/usr/local/hadoop
export PATH=$PATH:$HADOOP_INSTALL/bin
export PATH=$PATH:$HADOOP_INSTALL/sbin
export HADOOP_MAPRED_HOME=$HADOOP_INSTALL
export HADOOP_COMMON_HOME=$HADOOP_INSTALL
export HADOOP_HDFS_HOME=$HADOOP_INSTALL
export YARN_HOME=$HADOOP_INSTALL
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib/native"
5、编辑配置文件
1)、进入 Hadoop 所在目录 /usr/local/hadoop/etc/hadoop。
2)、配置 core-site.xml 文件
<configuration>/* 这里的值指的是默认的 HDFS 路径 */
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>/* 缓冲区大小:io.file.buffer.size 默认是 4KB*/
<property>
<name>io.file.buffer.size</name>
<value>131072</value>
</property>/* 临时文件夹路径 */
<property>
<name>hadoop.tmp.dir</name>
<value>file:/home/tmp</value>
<description>Abase for other temporary directories. </description>
</property>
<property>
<name>hadoop.proxyuser.hduser.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.hduser.groups</name>
<value>*</value>
</property>
</configuration>
3)、配置 hdfs-site.xml
创建 namenode 和 datanode 目录,执行以下命令
$ mkdir /hdfs/namenode
$ mkdir /hdfs/datanode
配置 hdfs-site.xml 文件
<configuration>
<!--
<property>
<name>dfs.namenode.rpc-address</name>
<value>master:9000</value>
</property>-->
<!--
<property>
<name>dfs.namenode.http-address</name>
<value>master:50070</value>
<description>dfs namenode web ui 的地址 </description>
</property>-->
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>master:9001</value><!--???-->
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/hdfs/namenode</value>
</property>
<!--配置 datanode 的数据存储目录-->
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/hdfs/datanode</value>
</property>
<!--配置副本数-->
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<!--将 dfs.webhdfs.enabled 属性设置为 true,否则就不能使用 webhdfs 的 LISTSTATUS、LISTFILESTATUS 等需要列出文件、文件夹状态的命令,因为这些信息都是由 namenode 保存的-->
<property>
<name>dfs.webhdfs.enabled</name>
<value>true</value>
</property>
</configuration>
4)、配置 hadoop-env.sh 和 yarn-env.sh 文件
加入环境变量:export JAVA_HOME=/opt/java/jdk/jdk1.7.0_79/
5)、配置 yarn-site.xml 文件
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>/*resourcemanager 的地址 */
<property>
<name>yarn.resourcemanager.address</name>
<value>master:8032</value>
</property>/* 调度器的端口 */
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value> master:8030</value>
</property>/*resource-tracker 端口 */
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>master:8031</value>
</property>/*resourcemanager 管理器端口 */
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>master:8033</value>
</property>/*ResourceManager 的 Web 端口,监控 job 的资源调度 */
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>master:8088</value>
</property>
</configuration>
6)、配置 mapred-site.xml 文件 伪分布式不用配
<configuration>/*hadoop 对 map-reduce 运行框架一共提供了 3 种实现,在 mapred-site.xml 中通过 "mapreduce.framework.name" 这个属性来设置为 "classic"、"yarn" 或者 "local"*/
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>/*MapReduce JobHistory Server 地址 */
<property>
<name>mapreduce.jobhistory.address</name>
<value>master:10020</value>
</property>/*MapReduce JobHistory Server Web UI 地址 */
<property>
<name>mapreduce.jobhistory.webapp.address</name>
<value>master:19888</value>
</property>
</configuration>
7)、配置masters,
slaves
sudo gedit /usr/local/hadoop/etc/hadoop/masters 添加:localhost(或master 必须配置 hosts 文件)
sudo gedit /usr/local/hadoop/etc/hadoop/slaves
添加:localhost
8)、配置 hosts 文件 (可不配置)
gedit /etc/hosts 添加如下内容
192.168.0.161 master
192.168.0.156 slave1
9)、格式化 Namenode(在 Hadoop 根目录下)
./bin/hadoop namenode -format
10)、启动 hadoop(在 hadoop 根目录下)
./sbin/start-all.sh
11)、查看 hadoop 是否启动功能
五、测试 hadoop
1、hadoop 根目录下创建文件夹
hadoop fs -mkdir /test
2、查看 hadoop 目录文件
更多 Hadoop 相关信息见Hadoop 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=13
本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-08/134637.htm
一、安装 JDK
1、用户可以在 Oracle JDK 的官网下载相应版本的 JDK,本例以 JDK 1.6 为例,官网地址为 http://www.oracle.com/tech-network/java/javase/downloads/index.html。
2、配置环境变量,在 /etc/profile 增加以下代码。
1 #Seeting JDK JDK 环境变量
2 export JAVA_HOME=/opt/java/jdk/jdk1.7.0_79
3 export JRE_HOME=${JAVA_HOME}/jre
4 export CLASSPATH=${JAVA_HOME}/lib
5 export PATH=${JAVA_HOME}/bin:$PATH
输入 java -version 命令查看是否安装成功
二、配置 SSH
一般 linux 系统都自带了 SSH 服务,如果没有 SSH 服务需要自己安装
1、查看是否安装 SSH: ps
-e |
grep
ssh
如果没有显示 sshd,说明没有安装 ssh 服务
2、通过“sudo
apt-get
install
openssh-server
”安装
$ sudo apt-get install openssh-server
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
有一些软件包无法被安装。如果您用的是 unstable 发行版,这也许是
因为系统无法达到您要求的状态造成的。该版本中可能会有一些您需要的软件
包尚未被创建或是它们已被从新到 (Incoming) 目录移出。下列信息可能会对解决问题有所帮助:下列软件包有未满足的依赖关系:openssh-server : 依赖: openssh-client (= 1:6.6p1-2Ubuntu1)
E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。
这是因为,openssh-server 是依赖于 openssh-clien 的, 那 ubuntu 不是自带了 openssh-client 吗? 原由是自带的 openssh-clien 与所要安装的 openssh-server 所依赖的版本不同, 这里所依赖的版本是1:6.6p1-2ubuntu1,所以要安装对应版本的 openssh-clien, 来覆盖掉 ubuntu 自带的。
$ sudo apt-get install openssh-client=1:6.6p1-2ubuntu1
正在读取软件包列表... 完成
正在分析软件包的依赖关系树
正在读取状态信息... 完成
建议安装的软件包:libpam-ssh keychain monkeysphere
下列软件包将被【降级】:openssh-client
升级了 0 个软件包,新安装了 0 个软件包,降级了 1 个软件包,要卸载 0 个软件包,有 0 个软件包未被升级。需要下载 566 kB 的软件包。解压缩后会消耗掉 0 B 的额外空间。您希望继续执行吗?[Y/n] y
获取:1 http://cn.archive.ubuntu.com/ubuntu/ trusty/main openssh-client amd64 1:6.6p1-2ubuntu1 [566 kB]
下载 566 kB,耗时 2 秒 (212 kB/s)
dpkg:警告:downgrading openssh-client from 1:6.6p1-2ubuntu2 to 1:6.6p1-2ubuntu1
(正在读取数据库 ... 系统当前共安装有 200015 个文件和目录。)
Preparing to unpack .../openssh-client_1%3a6.6p1-2ubuntu1_amd64.deb ...
Unpacking openssh-client (1:6.6p1-2ubuntu1) over (1:6.6p1-2ubuntu2) ...
Processing triggers for man-db (2.6.7.1-1) ...
正在设置 openssh-client (1:6.6p1-2ubuntu1) ...
可以看到, 提示了系统中 openssh-client 被降级, 这样再安装 openssh-server 就可以成功了!
3、查看 SSH 目录 /etc/ssh 下是否有密钥文件
如果没有这两个文件,需要自己生成。输入以下命令。
#ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key
#ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
生成密钥文件时,会提示输入密码,这里我们不输入密码,默认按回车
可以用“passwd 用户”来修改 ssh 的登录密码。
4、启动 ssh
/etc/init.d/ssh status 查看 ssh 状态
/etc/init.d/ssh start 启动 ssh
/etc/init.d/ssh restart 重启 ssh
5、测试 ssh 是否安装成功
三、配置 SSH 免密码登录
1、输入 ssh-keygen -t rsa
2、将 id_rsa.pub 文件 写入 authorized_keys
cat id_rsa.pub >> ~/.ssh/authorized_keys
查看 /root/.ssh 目录
3、装 id_rsa.pub 文件发送到远程机器上
scp id_rsa.pub root@172.20.14.144:/home
cat /home/id_rsa.pub >> /root/.ssh/authorized_keys
这样 ssh 登录远程机器就不需要密码了。
更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2016-08/134637p2.htm