目录
2)用Xftp工具将JDK导入到hadoop12的/opt/software文件夹下面
9)分别在hadoop13、hadoop14上执行source
1)在/home/atguigu/bin目录下创建脚本xcall.sh
JDK准备
1)卸载现有JDK(3台节点)
[lzl@hadoop12 opt]# sudo rpm -qa | grep -i java | xargs -n1 sudo rpm -e --nodeps
[lzl@hadoop13 opt]# sudo rpm -qa | grep -i java | xargs -n1 sudo rpm -e --nodeps
[lzl@hadoop14 opt]# sudo rpm -qa | grep -i java | xargs -n1 sudo rpm -e --nodeps
(1)rpm -qa:表示查询所有已经安装的软件包
(2)grep -i:表示过滤时不区分大小写
(3)xargs -n1:表示一次获取上次执行结果的一个值
(4)rpm -e --nodeps:表示卸载软件
2)用Xftp工具将JDK导入到hadoop12的/opt/software文件夹下面
点击图标打开 Xftp
左侧窗口对应 windows 文件系统,右侧窗口对应 Linux 文件系统,找到对应目录,将 JDK 拖动到右侧窗口即可完成上传。
3)在Linux系统下的opt目录中查看软件包是否导入成功
[lzl@hadoop12 software]# ls /opt/software/
看到如下结果:
jdk-8u212-linux-x64.tar.gz
4)解压JDK到/opt/module目录下
[lzl@hadoop12 software]# tar -zxvf jdk-8u212-linux-x64.tar.gz -C /opt/module/
5)配置JDK环境变量
(1)新建/etc/profile.d/my_env.sh文件
[lzl@hadoop12 module]# sudo vim /etc/profile.d/my_env.sh
添加如下内容,然后保存(:wq)退出
#JAVA_HOME
export JAVA_HOME=/opt/module/jdk1.8.0_212
export PATH=$PATH:$JAVA_HOME/bin
(2)让环境变量生效
[lzl@hadoop12 software]$ source /etc/profile.d/my_env.sh
6)测试JDK是否安装成功
[lzl@hadoop12 module]# java -version
如果能看到以下结果、则Java正常安装
java version "1.8.0_212"
7)分发JDK
[lzl@hadoop12 module]$ xsync /opt/module/jdk1.8.0_212/
8)分发环境变量配置文件
[lzl@hadoop12 module]$ sudo /home/atguigu/bin/xsync /etc/profile.d/my_env.sh
9)分别在hadoop13、hadoop14上执行source
[lzl@hadoop13 module]$ source /etc/profile.d/my_env.sh
[lzl@hadoop14 module]$ source /etc/profile.d/my_env.sh
环境变量配置说明
Linux的环境变量可在多个文件中配置,如/etc/profile,/etc/profile.d/*.sh,~/.bashrc,~/.bash_profile等,下面说明上述几个文件之间的关系和区别。
bash的运行模式可分为login shell和non-login shell。
例如,我们通过终端,输入用户名、密码,登录系统之后,得到就是一个login shell。而当我们执行以下命令ssh hadoop13 command,在hadoop13执行command的就是一个non-login shell。
这两种shell的主要区别在于,它们启动时会加载不同的配置文件,login shell启动时会加载/etc/profile,~/.bash_profile,~/.bashrc。non-login shell启动时会加载~/.bashrc。
而在加载~/.bashrc(实际是~/.bashrc中加载的/etc/bashrc)或/etc/profile时,都会执行如下代码片段,
因此不管是login shell还是non-login shell,启动时都会加载/etc/profile.d/*.sh中的环境变量。
集群所有进程查看脚本
1)在/home/atguigu/bin目录下创建脚本xcall.sh
[lzl@hadoop12 bin]$ vim xcall.sh
2)在脚本中编写如下内容
#!/bin/bash
for i in hadoop12 hadoop13 hadoop14
do
echo --------- $i ----------
ssh $i "$*"
done
3)修改脚本执行权限
[lzl@hadoop12 bin]$ chmod 777 xcall.sh
4)启动脚本
[lzl@hadoop12 bin]$ xcall.sh jps