lean_delivery.java

rozwój roli java

Licencja Status budowy Galaxy Ansible Ansible

Podsumowanie

Ta rola Ansible ma następujące funkcje dla:

OpenJDK

  • Instalacja JRE, JDK
  • Dodatkowa możliwość instalacji z openjdk-fallback, repozytoriów, s3, internetu, chocolatey, źródła lokalnego.

Java Oracle:

  • Instalacja JRE, JDK, Server-JRE
  • Dodatkowa możliwość instalacji z s3, internetu, źródła lokalnego.

ZASTRZEŻENIE: korzystanie z dowolnej wersji tej roli oznacza, że zaakceptowałeś Umowę Licencyjną Oracle Binary Code dla Java SE.

SAPJVM

  • Instalacja JDK
  • Dodatkowa możliwość instalacji z sapjvm-fallback, s3, internetu, źródła lokalnego.

ZULU

  • Instalacja JDK
  • Dodatkowa możliwość instalacji z zulu-fallback, s3, internetu, źródła lokalnego, chocolatey.

Adoptium

  • Instalacja JDK, JRE
  • Dodatkowa możliwość instalacji z adoptium-fallback, repozytoriów, internetu, źródła lokalnego, s3, chocolatey.

SapMachine

  • Instalacja JDK, JRE
  • Dodatkowa możliwość instalacji z sapmachine-fallback, internetu, źródła lokalnego, chocolatey (tylko najnowsza wersja), s3.

Alibaba Dragonwell 8 JDK

  • Instalacja JDK
  • Alibaba Dragonwell 8 odpowiada OpenJDK 8 i jest kompatybilne ze standardem Java SE
  • Tylko platforma Linux/x86_64
  • Dodatkowa możliwość instalacji z dragonwell8-fallback, internetu, źródła lokalnego, s3.

Amazon Corretto

  • Instalacja JDK 8 i 11
  • Instalacja JRE 8 (tylko Amazon Linux 2)
  • Dodatkowa możliwość instalacji z fallback, internetu, źródła lokalnego, s3.

Wymagania


  • Wersja Ansible do instalacji: 2.7
  • Obsługiwane wersje OpenJDK:
    • 8
      • EL 6: repozytoria, tarball
      • EL 7: repozytoria, tarball
      • EL 8: repozytoria, tarball
      • Ubuntu bionic: repozytoria, tarball
      • Debian stretch: repozytoria, tarball
      • Windows: tarball
    • 11
      • EL 6: tarball
      • EL 7: repozytoria, tarball
      • Ubuntu bionic: repozytoria, 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
  • Obsługiwane wersje Java Oracle:
    • 7
    • 8
    • 11
    • 12
  • Obsługiwane wersje sapjvm:
    • 7
    • 8
  • Obsługiwane wersje zulu:
    • 8
    • 11
    • 17
  • Obsługiwane wersje Adoptium:
    • 8
    • 11
    • 12
    • 13
  • Obsługiwane wersje SapMachine:
    • 11
      • EL 7: fallback
      • EL 8: fallback
      • Ubuntu bionic: fallback
      • Debian stretch: fallback
      • Windows: chocolatey (tylko najnowsza wersja, nie obsługuje zmiennych 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 (tylko najnowsza wersja, nie obsługuje zmiennych java_minor_version), fallback
  • Obsługiwane wersje Alibaba Dragonwell:
    • 8.0.0
    • 8.1.1
  • Obsługiwane wersje Amazon Corretto:
    • 8
    • 11
  • Obsługiwane systemy operacyjne:
    • Ubuntu
      • bionic
      • xenial
      • trusty
    • Debian
      • stretch
      • buster
    • Amazon Linux
    • Amazon Linux 2
    • EL (RHEL/CentOS)
      • 6
      • 7
      • 8
    • Windows
      • 10
      • 2016
      • 2019

Zmienne roli

  • java_distribution Typ dystrybucji Java, jeden z:

    • openjdk (domyślny)

    • oracle_java

    • sapjvm

    • zulu

    • adoptium

    • sapmachine

    • dragonwell8

    • corretto

      Uwaga: ta zmienna jest wymagana w przypadku instalacji innej dystrybucji niż 'openjdk'.

  • java_package Typ pakietu Java.

    Dostępne:

    • jdk (domyślny)
    • jre
  • transport Źródło transportu artefaktów. Użyj fallback (obsługiwane dystrybucje: OpenJDK, SAPJVM, Adoptium, SapMachine, ZULU, Alibaba Dragonwell, Amazon Corretto), repozytoria (obsługiwane dystrybucje: OpenJDK, Adoptium, Amazon Corretto), local, web lub s3 zgodnie z wymaganiami.

    Dostępne:

    • repositories Instalacja java z repozytoriów systemowych (yum lub apt, tylko Linux)

    • web Pobieranie artefaktu z niestandardowego adresu url

    • chocolatey Menedżer pakietów specyficzny dla Windows (obsługiwane OpenJDK: JDK 11, 12 lub JRE 8, SapMachine, ZULU, Adoptium)

    • local Lokalny artefakt przechowywany na ansible master (może być używany jako cache dla innych transportów)

    • s3 Pobieranie artefaktu z koszyka s3 (tylko klienci Linux, dla systemu Windows należy użyć innych transportów)

    • fallback Pobieranie artefaktów z oficjalnych stron (dostępne dla dystrybucji: openjdk, sapjvm, zulu, adoptium, sapmachine, dragonwell8, corretto).
      To jest domyślna wartość dla zmiennej transport

      Uwaga Używanie transportu s3 wymaga zainstalowania określonych pakietów na docelowym hoście:

      • 'botocore'
      • 'boto'
      • 'boto3' Te pakiety nie są zawarte w danej roli. Należy je zainstalować wcześniej.
  • java_tarball_install - parametr boolowski do wyboru między instalacją tarball a pakietem. Domyślnie true, jeśli transport nie jest ustawiony na repositories.

  • java_major_version - główna wersja OpenJDK (8,11,17) lub oracle-java (6,7,8, 11 itd.). Domyślnie 12.

  • java_minor_version - wersja podrzędna oracle-java. Dla wersji 8.202 podrzędna będzie 202 (domyślnie). Dla OpenJDK ta zmienna nie jest potrzebna do ręcznej konfiguracji.

  • java_arch Architektura pakietu. (Przy instalacji OpenJDK z repozytoriów ta zmienna może być używana tylko dla RHEL)

    Dostępne:

    • x64 dla x86_64 (domyślny)
    • i586 dla x86
  • java_path Gdzie pakiet java będzie zainstalowany. Uwaga Nie używaj tej zmiennej, jeśli transport = wybrane repozytoria.

    Domyślne wartości zależą od dystrybucji systemu operacyjnego:

    • RedHat: /usr/java (/usr/lib/jvm z repozytoriów)
    • Debian: /usr/lib/jvm
    • Windows: C:\Program Files\Java
  • java_download_path: Lokalny folder do pobierania artefaktów

    Domyślnie dla Linux: /tmp

    Domyślnie dla Windows: Zmienna środowiskowa TEMP

  • transport_web URI dla artefaktu http/https np. "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" (na przykład OpenJDK 11)

  • transport_local Ścieżka do lokalnego artefaktu np. "/tmp/jdk-8u172-linux-x64.tar.gz"

  • transport_s3_bucket - nazwa koszyka s3

    domyślnie: s3_bucket

  • transport_s3_path - ścieżka do folderu łatki w koszyku

    domyślnie: /folder

  • transport_s3_aws_access_key - klucz aws. Należy go ustawić jako parametr lub zmienna środowiskowa zgodnie z https://docs.ansible.com/ansible/latest/modules/aws_s3_module.html

    domyślnie: {{ lookup('env','AWS_ACCESS_KEY') }}

  • transport_s3_aws_secret_key - tajny klucz aws. Należy go ustawić jako parametr lub zmienna środowiskowa zgodnie z https://docs.ansible.com/ansible/latest/modules/aws_s3_module.html

    domyślnie: {{ lookup('env','AWS_SECRET_KEY') }}

Skonfiguruj Adoptium

  • adoptium_impl Implementacja Adoptium
    • hotspot (domyślna)
    • openj9

Skonfiguruj ścieżki do plików wykonywalnych

  • java_setup_path - aby włączyć ustawienie ścieżki binarnej. Jeśli true, binaria java są dodawane do ścieżek systemowych, profil jest aktualizowany, a alternatywy są ustawiane. Jeśli ustawione na false - nie zostaną dokonane żadne aktualizacje ustawień systemowych, z wyjątkiem tych wykonywanych przez scenariusze pakietów.
    domyślnie: true

Skonfiguruj priorytet alternatyw

  • java_alternative_priority - konfiguracja priorytetu. Przydatna, jeśli potrzebujesz ustawić niski priorytet. domyślnie: 100

Skonfiguruj politykę nielimitowaną

  • java_unlimited_policy_enabled - aby zastosować politykę nielimitowaną

    domyślnie: false

  • java_unlimited_policy_transport Źródło transportu artefaktów. Użyj fallback, local, web lub s3 dla bardziej przewidywalnych wyników.
    domyślnie: fallback

    Dostępne:

    • web Pobieranie artefaktu z niestandardowego adresu url
    • local Lokalny artefakt przechowywany na ansible master
    • s3 artefakt w koszyku s3
  • java_unlimited_policy_transport_web URI dla artefaktu http/https np. "http://my-storage.com/jce_policy-8.zip"

  • java_unlimited_policy_transport_local Ścieżka do lokalnego artefaktu np. "/tmp/jce_policy-8.zip"

  • java_unlimited_policy_transport_s3_bucket - nazwa koszyka s3

    domyślnie: s3_bucket

  • java_unlimited_policy_transport_s3_path - ścieżka do folderu łatki w koszyku

    domyślnie: /folder

Kilka przykładów instalacji aktualnej roli

ansible-galaxy install lean_delivery.java

Przykład Playbooka

Instalacja OpenJDK 17 z openjdk-fallback (domyślne zachowanie roli):

- name: Instalacja java openjdk
  hosts: all

  roles:
    - role: lean_delivery.java
      java_major_version: 17

Instalacja OpenJDK 8 z repozytoriów:

- name: Instalacja java openjdk
  hosts: all

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

Instalacja OpenJDK 11 z internetu:

- name: Instalacja java openjdk
  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

Instalacja Oracle java 8 z pliku lokalnego:

- name: Instalacja java oracle
  hosts: all

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

Instalacja Oracle java 8 z koszyka S3:

Przed zainstalowaniem należy przygotować hosta do użycia modułu aws_s3 https://docs.ansible.com/ansible/latest/modules/aws_s3_module.html#requirements

- name: Instalacja 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

Instalacja OpenJDK 11.0.2 na hoście Windows z win_chocolatey:

- name: Instalacja java
  hosts: windows

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

Instalacja SAPJVM 8 z sapjvm-fallback:

- name: Instalacja sapjvm
  hosts: all

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

Instalacja ZULU 17 z zulu-fallback:

- name: Instalacja zulu
  hosts: all

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

Instalacja Adoptium 8-openj9-jre z adoptium-fallback:

- name: Instalacja Adoptium
  hosts: all

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

Instalacja SapMachine sapmachine-jre-10 z sapmachine-fallback:

- name: Instalacja SapMachine
  hosts: all

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

Instalacja Alibaba Dragonwell 8 z dragonwell8-fallback:

- name: Instalacja Alibaba Dragonwell8
  hosts: all

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

Instalacja Amazon Corretto JDK 8 z corretto-fallback:

- name: Instalacja Amazon Corretto
  hosts: all

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

Instalacja Amazon Corretto JDK 11 z repozytoriów na Amazon Linux 2:

- name: Instalacja Amazon Corretto
  hosts: all

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

Instalacja Amazon Corretto JDK 11 na Ubuntu 18.04 z internetu:

- name: Instalacja 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

Licencja

Apache

Informacje o autorze

autorzy:

Zainstaluj
ansible-galaxy install lean_delivery.java
Licencja
apache-2.0
Pobrania
635.6k
Właściciel
Simplify by using!