ansible自动部署hadoop
1、ansible all -m shll -a "chdir=/opt mkdir hadoop" 创建放置安装包目录
2、ansible all -m copy -a "src=/root/packet/ dest=/opt/hadoop" 批量下发部署包
3、ansible all -m shell -a "chdir=/opt/hadoop tar xf jdk-8u171-linux-x64.tar.gz" 解压jdk压缩包
4、ansible all -m shell -a "chdir=/opt/hadoop tar xf hadoop-2.7.6.tar.gz" 解压hadoop压缩包
5、配置jdk环境变量
环境变量写入/etc/bashrc,/etc/profile 是为了其他依赖应用执行时找到JAVA_HOME,原因如下:
- login shell加载环境变量的顺序是:① /etc/profile ② ~/.bash_profile ③ ~/.bashrc ④ /etc/bashrc
- non-login shell加载环境变量的顺序是: ① ~/.bashrc ② /etc/bashrc
- ~/.bash_profile 是交互式、login 方式进入 bash 运行的,意思是只有用户登录时才会生效。
- ~/.bashrc 是交互式 non-login 方式进入 bash 运行的,用户不一定登录,只要以该用户身份运行命令行就会读取该文件。
export JAVA_HOME=/opt/hadoop/jdk1.8.0_171
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
6、ansible all -m shell -a "rpm -qa | grep java"
ansible all -m yum -a "name=java state=removed" 卸载java命令
7、ansible all -m copy -a "src=/etc/bashrc dest=/etc"
ansible all -m copy -a "src=/etc/profile dest=/etc" 批量分发jdk环境变量
8、ansible all -m shell -a "source /etc/bashrc" 刷新配置文件
ansible all -m shell -a "source /etc/profile"
9、ansible -m shell -a "java -version" 查看jdk版本


浙公网安备 33010602011771号