Ansible入门篇(三):JDK自动化安装

JDK是各个组件所依赖的基础环境。

目录结构如下,后文将不再展示

[root@s130 ansible]# tree /opt/ansible/
├── bootstrap.yml
├── hosts
├── roles
│   ├── files
│   │   ├── elasticsearch.tar.gz
│   │   ├── hadoop.tar.gz
│   │   ├── jdk.tar.gz
│   │   ├── kafka.tar.gz
│   │   ├── scala.tar.gz
│   │   ├── spark.tar.gz
│   │   └── zookeeper.tar.gz
│   ├── templates
│   │   ├── application.conf.j2
│   │   ├── core-site.xml.j2
│   │   ├── elasticsearch.in.sh.j2
│   │   ├── elasticsearch.yml.j2
│   │   ├── hadoop-env.sh.j2
│   │   ├── hdfs-site.xml.j2
│   │   ├── producer.properties.j2
│   │   ├── server.properties.j2
│   │   ├── slaves.hadoop.j2
│   │   ├── slaves.spark.j2
│   │   ├── spark-env.sh.j2
│   │   └── zoo.cfg.j2
│   └── vars
│       └── main.yml
└── yml
    ├── create_kafka_topic.yml
    ├── createTable.yml
    ├── dockerInstall.yml
    ├── esStart.yml
    ├── esStop.yml
    ├── hadoopStart.yml
    ├── hadoopStop.yml
    ├── install.yml
    ├── kafkaStart.yml
    ├── kafkaStop.yml
    ├── sparkStart.yml
    ├── sparkStop.yml
    ├── sshKey.yml
    ├── start.yml
    ├── stop.retry
    ├── stop.yml
    ├── zookeeperStart.yml
    └── zookeeperStop.yml

JDK安装包下载


JAVA官网下载对应版本的JDK,本文以JKD8为例。

将下载好的jdk-8u181-linux-x64.tar.gz上传到/opt/ansible/roles/files目录下,本文将所有tar安装包都进行了重命名操作,比如将jdk-8u181-linux-x64.tar.gz解压后重命名为jdk并打成jdk.tar.gz包

 

编写主机hosts

编辑/opt/ansible/hosts文件添加部署JKD机器IP

[jdk8]
172.18.18.120 
172.18.18.121 
172.18.18.122 

 

编写参数配置main.yml

编辑/opt/ansible/roles/vars/main.yml文件,添加变量

BigdataDir: /opt/hzgc

 

编写执行文件jdk.yml

编辑新建/opt/ansible/yml/jdk.yml文件,添加内容如下:

- hosts: jdk8
  remote_user: root
  roles:
  - roles

 

  tasks:
   - name: mkdir jdk directory 
#创建安装目录
     file: path={{BigdataDir}} state=directory mode=0755
   - name: copy and unzip jdk 
#解压安装
     unarchive: src={{AnsibleDir}}/roles/files/jdk.tar.gz dest={{BigdataDir}}
   - name: set env 
#设置环境变量
     lineinfile: dest=/etc/profile insertafter="{{item.position}}" line="{{item.value}}" state=present
     with_items:
     - {position: EOF, value: "export JAVA_HOME={{BigdataDir}}/jdk"}
     - {position: EOF, value: "export PATH=$JAVA_HOME/bin:$PATH"}
   - name: chmod bin 
#修改执行权限
     file: dest={{BigdataDir}}/jdk/bin mode=0755 recurse=yes
   - name: enforce env 
#刷新环境变量
     shell: source /etc/profile

 

执行JDK安装部署 

ansible-playbook -i hosts  yml/jdk.yml 

检查JDK是否安装成功:java -version

 

文章目录:

  • 5
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值