java

java роль

Лицензия Статус сборки Galaxy Ansible Ansible

Резюме

Эта роль Ansible имеет следующие возможности для:

OpenJDK

  • Установка JRE, JDK
  • Дополнительная возможность установки из openjdk-fallback, репозиториев, s3, веб, chocolatey, локального источника.

Oracle Java:

  • Установка JRE, JDK, Server-JRE
  • Дополнительная возможность установки из s3, веб, локального источника.

ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ: использование любой версии этой роли подразумевает, что вы согласны с Лицензионным соглашением Oracle на бинарный код для Java SE.

SAPJVM

  • Установка JDK
  • Дополнительная возможность установки из sapjvm-fallback, s3, веб, локального источника.

ZULU

  • Установка JDK
  • Дополнительная возможность установки из zulu-fallback, s3, веб, локального источника, chocolatey.

Adoptium

  • Установка JDK, JRE
  • Дополнительная возможность установки из adoptium-fallback, репозиториев, веб, локального источника, s3, chocolatey.

SapMachine

  • Установка JDK, JRE
  • Дополнительная возможность установки из sapmachine-fallback, веб, локального источника, chocolatey (только последняя версия), s3.

Alibaba Dragonwell 8 JDK

  • Установка JDK
  • Alibaba Dragonwell 8 соответствует OpenJDK 8 и совместим со стандартом Java SE
  • Только для платформы Linux/x86_64
  • Дополнительная возможность установки из dragonwell8-fallback, веб, локального источника, s3.

Amazon Corretto

  • Установка JDK 8 и 11
  • Установка JRE 8 (только для Amazon Linux 2)
  • Дополнительная возможность установки из fallback, веб, локального источника, s3.

Требования


  • Версия Ansible для установки: 2.7
  • Поддерживаемые версии OpenJDK:
    • 8
      • EL 6: репозитории, tarball
      • EL 7: репозитории, tarball
      • EL 8: репозитории, tarball
      • Ubuntu bionic: репозитории, tarball
      • Debian stretch: репозитории, tarball
      • Windows: tarball
    • 11
      • EL 6: tarball
      • EL 7: репозитории, tarball
      • Ubuntu bionic: репозитории, tarball
      • Debian stretch: tarball
      • Windows: tarball
    • 12
      • EL 6: tarball
      • EL 7: tarball
      • EL 8: tarball
      • Ubuntu bionic: tarball
      • Debian stretch: tarball
      • Windows: tarball
    • 13
      • EL 6: tarball, fallback
      • EL 7: tarball, fallback
      • EL 8: tarball, fallback
      • Ubuntu bionic: tarball, fallback
      • Debian stretch: tarball, fallback
      • Windows: tarball, fallback
  • Поддерживаемые версии Oracle Java:
    • 7
    • 8
    • 11
    • 12
  • Поддерживаемые версии SAPJVM:
    • 7
    • 8
  • Поддерживаемые версии ZULU:
    • 8
    • 11
    • 17
  • Поддерживаемые версии Adoptium:
    • 8
    • 11
    • 12
    • 13
  • Поддерживаемые версии SapMachine:
    • 11
      • EL 7: fallback
      • EL 8: fallback
      • Ubuntu bionic: fallback
      • Debian stretch: fallback
      • Windows: chocolatey (только последняя версия, не поддерживает переменные java_minor_version), fallback
    • 12
      • EL 7: tarball
      • EL 8: tarball
      • Ubuntu bionic: tarball
      • Debian stretch: tarball
      • Windows: tarball
    • 13
      • EL 7: fallback
      • EL 8: fallback
      • Ubuntu bionic: fallback
      • Debian stretch: fallback
      • Windows: chocolatey (только последняя версия, не поддерживает переменные java_minor_version), fallback
  • Поддерживаемые версии Alibaba Dragonwell:
    • 8.0.0
    • 8.1.1
  • Поддерживаемые версии Amazon Corretto:
    • 8
    • 11
  • Поддерживаемые ОС:
    • Ubuntu
      • bionic
      • xenial
      • trusty
    • Debian
      • stretch
      • buster
    • Amazon Linux
    • Amazon Linux 2
    • EL (RHEL/CentOS)
      • 6
      • 7
      • 8
    • Windows
      • 10
      • 2016
      • 2019

Переменные роли

  • java_distribution Тип дистрибутива Java, один из:

    • openjdk (по умолчанию)

    • oracle_java

    • sapjvm

    • zulu

    • adoptium

    • sapmachine

    • dragonwell8

    • corretto

      Внимание: эта переменная обязательна при установке другого дистрибутива, отличного от 'openjdk'.

  • java_package Тип пакета Java.

    Доступные:

    • jdk (по умолчанию)
    • jre
  • transport Источник транспорта артефакта. Используйте fallback (поддерживаются дистрибутивы OpenJDK, SAPJVM, Adoptium, SapMachine, ZULU, Alibaba Dragonwell, Amazon Corretto), repositories (поддерживаются дистрибутивы OpenJDK, Adoptium, Amazon Corretto), local, web или s3 в зависимости от ваших требований.

    Доступные:

    • repositories Установка java из системных репозиториев (yum или apt, только для Linux)

    • web Получение артефакта из пользовательского веб-URL

    • chocolatey Специфический для Windows менеджер пакетов (Поддерживаемый OpenJDK: JDK 11, 12 или JRE 8, SapMachine, ZULU, Adoptium)

    • local Локальный артефакт, хранящийся на ansible master (может использоваться как кэш для другого транспорта)

    • s3 Скачивание артефакта из корзины s3 (только для клиентов Linux, для Windows следует использовать другие транспорты)

    • fallback получение артефактов с официальных сайтов (доступно для дистрибутивов: openjdk, sapjvm, zulu, adoptium, sapmachine, dragonwell8, corretto).
      Это значение по умолчанию для переменной transport

      Внимание использование транспорта s3 требует установки специфических пакетов на целевом хосте:

      • 'botocore'
      • 'boto'
      • 'boto3' Эти пакеты не включены в данную роль. Вам следует установить их предварительно.
  • java_tarball_install - логический параметр для выбора между установкой из tarball и пакета. По умолчанию 'true', если transport не repositories.

  • java_major_version - основная версия OpenJDK (8, 11, 17) или oracle-java (6, 7, 8, 11 и т.д.) По умолчанию 12.

  • java_minor_version - младшая версия oracle-java. Для версии 8.202 младшая версия будет 202 (по умолчанию). Для OpenJDK эта переменная не требуется для ручной настройки.

  • java_arch Архитектура пакета. (При установке OpenJDK из репозиториев эта переменная может использоваться только для RHEL )

    Доступные:

    • x64 для x86_64 (по умолчанию)
    • i586 для x86
  • java_path Куда будет установлен пакет java. Внимание Не используйте эту переменную, если выбран транспорт = репозитории

    значения по умолчанию зависят от дистрибутива ОС:

    • RedHat: /usr/java (/usr/lib/jvm из репозиториев)
    • Debian: /usr/lib/jvm
    • Windows: C:\Program Files\Java
  • java_download_path: Локальная папка для загрузки артефактов

    По умолчанию для Linux: /tmp

    По умолчанию для Windows: Переменная среды TEMP

  • transport_web URI для http/https артефакта, например "http://my-storage.com/jdk-8u172-linux-x64.tar.gz"

  • transport_web: "https://download.java.net/java/GA/jdk11/9/GPL/openjdk-11.0.2_linux-x64_bin.tar.gz" (например, OpenJDK 11)

  • transport_local Путь для локального артефакта, например "/tmp/jdk-8u172-linux-x64.tar.gz"

  • transport_s3_bucket - имя корзины s3

    по умолчанию: s3_bucket

  • transport_s3_path - путь к папке патча в корзине

    по умолчанию: /folder

  • transport_s3_aws_access_key - aws ключ. Необходимо установить в качестве параметра или переменной окружения в соответствии с https://docs.ansible.com/ansible/latest/modules/aws_s3_module.html

    по умолчанию: {{ lookup('env','AWS_ACCESS_KEY') }}

  • transport_s3_aws_secret_key - aws секретный ключ. Необходимо установить в качестве параметра или переменной окружения в соответствии с https://docs.ansible.com/ansible/latest/modules/aws_s3_module.html

    по умолчанию: {{ lookup('env','AWS_SECRET_KEY') }}

Настройка Adoptium

  • adoptium_impl Реализация Adoptium
    • hotspot (по умолчанию)
    • openj9

Настройка путей исполняемых файлов

  • java_setup_path - для включения настройки пути бинарных файлов. Если true, бинарные файлы java добавляются в системные пути, профиль обновляется и устанавливаются альтернативы. Если установить на false - никаких обновлений системных настроек не будет, кроме тех, что выполняются сценариями пакетов.
    по умолчанию: true

Настройка приоритета альтернатив

  • java_alternative_priority - настройка приоритета. Полезно, если вам нужно настроить низкий приоритет. по умолчанию: 100

Настройка неограниченной политики

  • java_unlimited_policy_enabled - для применения неограниченной политики

    по умолчанию: false

  • java_unlimited_policy_transport Транспорт источника артефакта. Используйте fallback, local, web или s3 для более предсказуемого результата.
    по умолчанию: fallback

    Доступные:

    • web Получение артефакта из пользовательского веб-URL
    • local Локальный артефакт, хранящийся на ansible master
    • s3 артефакт в корзине s3
  • java_unlimited_policy_transport_web URI для http/https артефакта, например "http://my-storage.com/jce_policy-8.zip"

  • java_unlimited_policy_transport_local Путь для локального артефакта, например "/tmp/jce_policy-8.zip"

  • java_unlimited_policy_transport_s3_bucket - имя корзины s3

    по умолчанию: s3_bucket

  • java_unlimited_policy_transport_s3_path - путь к папке патча в корзине

    по умолчанию: /folder

Примеры установки текущей роли

ansible-galaxy install lean_delivery.java

Пример плейбука

Установка OpenJDK 17 из openjdk-fallback (поведение роли по умолчанию):

- name: Установка openjdk java
  hosts: all

  roles:
    - role: lean_delivery.java
      java_major_version: 17

Установка OpenJDK 8 из репозиториев:

- name: Установка openjdk java
  hosts: all

  roles:
    - role: lean_delivery.java
      transport: repositories
      java_major_version: 8

Установка OpenJDK 11 из веб:

- name: Установка openjdk java
  hosts: all

  roles:
    - role: lean_delivery.java
      java_major_version: 11
      java_tarball_install: true
      transport: web
      transport_web: https://download.java.net/java/GA/jdk11/9/GPL/openjdk-11.0.2_linux-x64_bin.tar.gz

Установка Oracle java 8 из локального файла:

- name: Установка oracle java
  hosts: all

  roles:
    - role: lean_delivery.java
      java_distribution: oracle_java
      transport: local
      transport_local: /tmp/jdk-8u181-linux-x64.tar.gz

Установка Oracle java 8 из корзины S3:

Перед установкой следует подготовить хост для использования модуля aws_s3 https://docs.ansible.com/ansible/latest/modules/aws_s3_module.html#requirements

- name: Установка java
  hosts: all
  
  roles:
    - role: lean_delivery.java
        java_distribution: oracle_java
        java_package: jre
        java_major_version: 8
        transport: s3
        transport_s3_bucket: java-s3-bucket
        transport_s3_path: /java/jre-8u181-linux-x64.tar.gz

Установка OpenJDK 11.0.2 на Windows хосте с использованием win_chocolatey:

- name: Установка java
  hosts: windows

  roles:
    - role: lean_delivery.java
      java_package: jdk
      transport: chocolatey
      java_major_version: 11
      java_minor_version: 0.2

Установка SAPJVM 8 из sapjvm-fallback:

- name: Установка sapjvm
  hosts: all

  roles:
    - role: lean_delivery.java
      java_distribution: sapjvm
      transport: fallback
      java_major_version: 8

Установка ZULU 17 из zulu-fallback:

- name: Установка zulu
  hosts: all

  roles:
    - role: lean_delivery.java
      java_distribution: zulu
      transport: fallback
      java_major_version: 17
      java_package: jdk

Установка Adoptium 8-openj9-jre из adoptium-fallback:

- name: Установка Adoptium
  hosts: all

  roles:
    - role: lean_delivery.java
      java_distribution: adoptium
      transport: fallback
      java_package: jre
      adoptium_impl: openj9
      java_major_version: 8

Установка SapMachine sapmachine-jre-10 из sapmachine-fallback:

- name: Установка SapMachine
  hosts: all

  roles:
    - role: lean_delivery.java
      java_distribution: sapmachine
      transport: fallback
      java_package: jre
      java_major_version: 10

Установка Alibaba Dragonwell 8 из dragonwell8-fallback:

- name: Установка Alibaba Dragonwell8
  hosts: all

  roles:
    - role: lean_delivery.java
      java_distribution: dragonwell8
      transport: fallback
      java_major_version: 8

Установка Amazon Corretto JDK 8 из corretto-fallback:

- name: Установка Amazon Corretto
  hosts: all

  roles:
    - role: lean_delivery.java
      java_distribution: corretto
      transport: fallback
      java_major_version: 8

Установка Amazon Corretto JDK 11 из репо на Amazon Linux 2:

- name: Установка Amazon Corretto
  hosts: all

  roles:
    - role: lean_delivery.java
      java_distribution: corretto
      transport: repositories
      java_major_version: 11

Установка Amazon Corretto JDK 11 на Ubuntu 18.04 из веб:

- name: Установка Amazon Corretto
  hosts: all

  roles:
    - role: lean_delivery.java
      java_distribution: corretto
      transport: web
      transport_web: https://d3pxv6yz143wms.cloudfront.net/11.0.5.10.1/amazon-corretto-11.0.5.10.1-linux-x64.tar.gz

Лицензия

Apache

Информация об авторе

авторы:

Установить
ansible-galaxy install lean-delivery/ansible-role-java
Лицензия
apache-2.0
Загрузки
592829
Владелец
Simplify by using!