最近酒店到期,所以忙于租房找房子,搬家,晚上下班的空余时间,写完这一篇。
这里我就选用一台虚拟机来作为配置的例子,将包上传到linux虚拟机。为了统一管理,我将jdk解压到了/usr/java/目录下,如图2-1。
修改文件/etc/profile,在文件末尾加入
export JAVA_HOME=/usr/java/jdk1.8.0_191
PATH=$PATH:$JAVA_HOME/bin
修改文件后要source /etc/profile,之后输入java -version就可以验证是否配置成功了。
安装ssh,可以先通过命令查看要安装的ssh是哪个,yum list | grep ssh;之后选择安装 yum install -y openssh-clients.x86_64;之后就是连接一下自己验证一下是否安装成功。
在自己的家目录中输入ll -a,如图2-3,可以看到有个文件为.ssh
下面正式配置免密登录,首先输入密钥生成器的命令:
ssh-keygen -t rsa
如图2-4,执行完以上命令后会生成公钥和私钥文件,作为管理节点,可以将公钥给别人就行了,紧接着,要进行以下命令,追加重定向到一个认证文件中,以达到免密登录,输入完追加命令后,第二条命令是验证是否免密登录成功。
cat id_rsa.pub >> authorized_keys
ssh localhost
为了花里胡哨,我在/opt创建了一个目录叫xige,我将hadoop解压于此,如图2-3.
解压完成后,就是配置hadoop环境变量,跟jdk的环境变量配置同理,不同的是,不仅要配置bin,而且还要配置sbin,直接在/etc/profile文件下追加环境变量,包括jdk的环境变量,配置完成后记得要source一下。
export JAVA_HOME=/usr/java/jdk1.8.0_191
export HADOOP_HOME=/opt/xige/hadoop-2.7.5
PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
进入目录/opt/xige/hadoop-2.7.5/etc/hadoop,可以在这目录下看到很多配置文件。
1)修改hadoop-env.sh文件,目的是告诉jdk的在哪里。
#找到这一变量,输入正确的JAVA_HOME
export JAVA_HOME=/usr/java/jdk1.8.0_191
2)如果仅仅是使用文件系统的话,修改完上面第一个文件就够了,但是为了以后,就顺便修改一下计算框架文件的环境变量(mapred-env.sh)和资源管理的环境变量(yarn-env.sh)
3)修改core-site.xml(规定的是主节点进程的配置信息)
fs.defaultFS
hdfs://master:9000
hadoop.tmp.dir
/var/junxi/hadoop/local
4)修改hdfs-site.xml(规定从节点的配置信息,配置SecondaryNameNode)
dfs.replication
1
dfs.namenode.secondary.http-address
master:50090
5)修改slaves文件(从节点的信息,规定哪些节点是datanode)
master
格式化的目的是对之前的配置信息进行生效,比如,本来最开始我们配置存放的元数据和块信息的目录是不存在的,只有配置过后,会自动生成。直接输入命令:
hdfs namenode -format
成功之后,如图2-4
格式化成功完成后,启动,start-dfs.sh,如图2-5,可以看到所有配置的服务都启动成功了。
在浏览器地址栏输入这台linux的地址加端口号50070,如图2-6.表面搭建伪分布式成功。之后的hdfs命令那些太简单了,就不演示了,在之后的项目中会慢慢演示的了。