zoukankan      html  css  js  c++  java
  • ansible自动安装jdk

    脚本功能:安装jdk

    测试环境:CentOS6.7

    说明:

    1、卸载系统自带的openjdk,重新安装Oracle jdk,支持Hotspot,性能更好,更稳定。

    2、jdk软件包按文档说明进行定制(按要求重新压缩下)

     1 ---
     2 - name: JDK install and configuration
     3   hosts: '{{ host }}'
     4   
     5   tasks:
     6     - name: remove the openjdk
     7       yum: name=*-openjdk-* state=absent
     8     - name: remove the gcj
     9       yum: name=*gcj* state=absent
    10     - name: set the JAVA_HOME environment
    11       lineinfile: dest=/etc/profile regexp="^JAVA_HOME=" line="JAVA_HOME=/usr/local/java"
    12     - name: set the PATH environment
    13       lineinfile: dest=/etc/profile regexp="^PATH=$PATH:$JAVA_HOME" line="PATH=$PATH:$JAVA_HOME/bin"
    14     - name: set the CLASSPATH environment
    15       lineinfile: dest=/etc/profile regexp="^CLASSPATH=" line="CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/sapjco3.jar"
    16     - name: set the JRE_HOME environment
    17       lineinfile: dest=/etc/profile regexp="^JRE_HOME" line="JRE_HOME=$JAVA_HOME/jre"
    18     - name: set the LD_LIBRARY_PATH environment
    19       lineinfile: dest=/etc/profile regexp="^LD_LIBRARY_PATH" line="LD_LIBRARY_PATH=dir:$LD_LIBRARY_PATH:$JAVA_HOME/jre/lib/amd64/server"
    20     - name: export the JAVA_HOME LD_LIBRARY_PATH PATH
    21       lineinfile: dest=/etc/profile regexp="^export JAVA_HOME" line="export JAVA_HOME LD_LIBRARY_PATH PATH"
    22     - name: download the jdk to remote host
    23       get_url: url={{ url }} dest=/tmp/jdk.tar.gz
    24     - name: absent old java
    25       file: path=/usr/local/java state=absent
    26     - name: Create the java install dir
    27       file: path=/usr/local/java state=directory
    28     - name: install the jdk
    29       shell: cd /tmp && tar xzf /tmp/jdk.tar.gz -C /usr/local/java
    View Code

    使用方法:

    ansible-playbook jdk-install.yml --extra-vars "{'host':'192.168.111.112', 'url':'http://download.oracle.com/...../jdk1.8.0_112.tar.gz'}"

    软件下载:

    请到Oracle官网下载,并将软件包打包为如下图所示形式:

    人们永远没有足够的时间把它做好,但永远有足够的时间重新来过。 可是,因为并不是总有机会重做一遍,你必须做得更好,换句话说, 人们永远没有足够的时间去考虑到底是不是想要它,但永远有足够的时间去为之后悔。 ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ 浅掘千口井,不如深挖一口井!当知识支撑不了野心时,那就静下心来学习吧!运维技术交流QQ群:618354452

    个人微信公众号,定期发布技术文章和运维感悟。欢迎大家关注交流。

  • 相关阅读:
    loadView和viewDidLoad的官方API的一些解释
    面向对象IOS编程中的聚合与耦合
    史上最全的iOS面试题及答案
    oc的基本数据的转换
    NSDateFormatter时间函数
    图片点击放大,再次点击返回原视图.完美封装,一个类一句代码即可调用.IOS完美实现
    同一ViewController内如果有两处AlertView要用代理Delegate怎么写法
    简单实现---下拉刷新 --使用UITableViewController中的refreshControl属性
    简单实现---上拉加载刷新---
    洛谷2863 [Usaco06JAN]牛的舞会
  • 原文地址:https://www.cnblogs.com/miaocbin/p/8029588.html
Copyright © 2011-2022 走看看