Java
JDK8 下载:
https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html
下载测试账号 2696671285@qq.com / Oracle123 (百度搜索随便找的一个)。
/etc/profile中设定的变量(全局)的可以作用于任何用户;
~/.bashrc: 作用类似于/etc/bashrc, 只是针对用户自己而言,不对其他用户生效。
而~/.bashrc等中设定的变量(局部)只能继承/etc/profile中的变量,他们是"父子"关系。
简单点就是 在 /etc/profile 文件中设置的变量是全局变量。而 .bashrc文件(在用户的家目录下)则只对当前用户有用。~/.bashrc、~/.bash_file 是当前用户目录下的配置信息。修改后用 source 命令更新。
# 将master节点下的jdk-8u251-linux-x64.tar.gz 分发到其他slaves节点下的hadoop用户目录下
ansible slaves -m copy -a 'src=/home/hadoop/app/jdk-8u251-linux-x64.tar.gz dest=/home/hadoop/app/ owner=hadoop group=hadoop'
# 将jdk解压到bdp所有节点下的/app/gisbdp目录下
ansible bdp -m shell -a 'tar -xzvf /home/hadoop/app/jdk-8u251-linux-x64.tar.gz -C /app/gisbdp/'
# 创建软链接
ansible bdp -m shell -a 'ln -s /app/gisbdp/jdk1.8.0_251 /app/gisbdp/java'
# ~/.bashrc 中新增JAVA属性:
# set java environment
export JAVA_HOME=/app/gisbdp/java
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib
# 可以选择ansible下发
ansible bdp -m blockinfile -a 'path=/home/hadoop/.bashrc block="export JAVA_HOME=/app/gisbdp/java\nexport PATH=$JAVA_HOME/bin:$PATH\nexport CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib"'
# 也可以使用copy模块复制分发给slaves
ansible slaves -m copy -a 'src=/home/hadoop/.bashrc dest=/home/hadoop/.bashrc/ owner=hadoop group=hadoop'
Scala
# 将master节点下的scala-2.12.11.tgz 分发到其他slaves节点下的hadoop用户目录下
ansible slaves -m copy -a 'src=/home/hadoop/app/scala-2.12.11.tgz dest=/home/hadoop/app/ owner=hadoop group=hadoop'
# 将scala解压到bdp所有节点下的/app/gisbdp目录下
ansible bdp -m shell -a 'tar -xzvf /home/hadoop/app/scala-2.12.11.tgz -C /app/gisbdp/'
# 创建软链接
ansible bdp -m shell -a 'ln -s /app/gisbdp/scala-2.12.11 /app/gisbdp/scala'
# ~/.bashrc 中新增Scala属性:
# set scala environment
export SCALA_HOME=/app/gisbdp/scala
export PATH=$SCALA_HOME/bin:$PATH
ansible slaves -m copy -a 'src=/home/hadoop/.bashrc dest=/home/hadoop/.bashrc owner=hadoop group=hadoop'