ansible-安装jdk,ansible-jdk


vim /etc/ansible/playbooks/jdk.yml

---

- name: "Playbook for jdk"
  hosts: "{{hosts_group}}"
  become: yes
  become_user: root
  roles:
    - {role: jdk}

vim /etc/ansible/playbooks/roles/jdk/tasks/main.yml,注意将jdk-8u102-linux-x64.tar.gz包放置于/opt/software/目录下。

---

- name: copy jdk package
  copy: src=/opt/software/{{jdk_archive_package}} dest=/tmp/ mode=0755
  tags:
    - jdk
    - install

- name: unarchive jdk package
  unarchive: src=/tmp/{{jdk_archive_package}} dest={{jdk_unarchive_path}} copy=no
  tags:
    - jdk
    - install

- name: create link jdk
  file: src={{jdk_unarchive_path}}/{{jdk_unarchive_dir_name}} dest={{JAVA_HOME}} state=link
  when: jdk_unarchive_path is defined and jdk_unarchive_dir_name is defined
  tags:
    - jdk
    - install

- name: create link bin/java
  file: src={{JAVA_HOME}}/bin/java dest=/usr/bin/java state=link owner=root group=root
  tags:
    - jdk
    - install

- name: create jdk env variable on /etc/profile.d/
  template: src=jdk.sh.j2 dest=/etc/profile.d/jdk.sh
  tags:
    - jdk
    - install

vim /etc/ansible/playbooks/roles/jdk/defalut/main.yml

---

jdk_archive_package: "jdk-8u102-linux-x64.tar.gz"
jdk_unarchive_dir_name: "jdk1.8.0_102"
jdk_unarchive_path: "/usr/local"
JAVA_HOME: "/usr/local/jdk"

vim /etc/ansible/playbooks/roles/jdk/templates/jdk.sh.j2

export JAVA_HOME={{JAVA_HOME}}
export PATH=$JAVA_HOME/bin:$PATH

vim /etc/ansible/hosts/test.hosts

[test]
192.168.255.124

执行

[hanli@master] /etc/ansible/playbooks$ ansible-playbook -i ../hosts/test.hosts jdk.yml -e 'hosts_group=test'

相关内容

    暂无相关文章