Personalizza il piano di migrazione per i server JBoss

Ti consigliamo di esaminare il file del piano di migrazione risultante dalla creazione di una migrazione. Personalizza il file prima di eseguire la migrazione. I dettagli del piano di migrazione vengono utilizzati per estrarre gli artefatti dei container dei carichi di lavoro dall'origine.

Questa sezione descrive i contenuti della migrazione e i tipi di personalizzazioni che potresti prendere in considerazione prima di eseguire la migrazione e generare artefatti di deployment.

Prima di iniziare

Questo documento presuppone che tu abbia già creato una migrazione e disponga del file del piano di migrazione.

Modifica il piano di migrazione

Dopo aver copiato e analizzato il file system, puoi trovare il piano di migrazione nella nuova directory creata nel percorso di output specificato: ANALYSIS_OUTPUT_PATH/config.yaml.

Modifica il piano di migrazione in base alle esigenze e salva le modifiche.

Struttura del piano di migrazione

Il piano di migrazione per un carico di lavoro JBoss ha la seguente struttura, che puoi personalizzare come descritto nelle sezioni seguenti.

# Server name. Edit this to change the artifacts naming.
serverName: jboss-server
# JBoss home directory.
home: /opt/jboss/wildfly
# Parent Wildfly image for the generated container image.
fromImage: docker.io/jboss/wildfly:10.1.0.Final
# JBoss home directory in the target image.
targetImageHome: /opt/wildfly
# Configuration file path from source VM.
configurationFile: /opt/jboss/wildfly/standalone/configuration/standalone.xml
# Ports list to expose on the generated container image.
ports:
- name: management-http
  port: 9990
- name: management-https
  port: 9993
- name: ajp
  port: 8009
- name: http
  port: 8080
- name: https
  port: 8433
- name: txn-recovery-environment
  port: 4712
- name: txn-status-manager
  port: 4713
# List of deployments files to copy.
deployments:
  directory: /opt/jboss/wildfly/standalone/deployments
  applications:
  - test.war
# List of modules to copy in rsync filter format.
# Note: files under '/system/layers/base/' are JBoss/Wildfly binaries and should be copied only if they have been modified.
modules:
- '- system/layers/base'
# External paths required for running the JBoss server or apps.
additionalFiles: []
# Sensitive data which is filtered out of the container image.
# If includeSensitiveData is set to true the sensitive data is mounted on the container.
sensitiveData:
  includeSensitiveData: false
  sensitiveDataPaths:
  - /opt/jboss/wildfly/standalone/configuration/application-roles.properties
  - /opt/jboss/wildfly/standalone/configuration/application-users.properties
  - /opt/jboss/wildfly/standalone/configuration/application.keystore
  - /opt/jboss/wildfly/standalone/configuration/mgmt-groups.properties
  - /opt/jboss/wildfly/standalone/configuration/mgmt-users.properties

Per aggiungere le informazioni necessarie, rivedi i dettagli del piano di migrazione e i commenti guida.

In particolare, prendi in considerazione le modifiche apportate alle sezioni seguenti.

Specifica l'immagine Docker

Nel piano di migrazione, generiamo un tag immagine della community Docker basato sulla versione di JDBC. La versione di JBoss viene rilevata e convertita in una versione principale (le versioni secondarie non sono supportate). Se non rileviamo una versione JBoss, fromImage conterrà una stringa vuota.

Nel piano di migrazione, il campo fromImage rappresenta il tag immagine Docker utilizzato come base dell'immagine container.

Le versioni di JBoss originali rilevate sulla VM di origine sono contenute in discovery-report.yaml, che viene generato dal rilevamento iniziale.

Se vuoi cambiare l'immagine della community Docker o fornire la tua immagine Docker, puoi modificare il tag fromImage nel tuo piano di migrazione utilizzando il seguente formato:

# Parent Wildfly image for the generated container image.
 fromImage: docker.io/jboss/wildfly:10.1.0.Final

Il campo targetImageHome specifica il percorso della home directory JBoss nell'immagine di destinazione e viene derivato dal campo fromImage. Non è necessario modificare il valore di questo campo, a meno che non utilizzi un'immagine JBoss con un valore Home di JBoss diverso.

Specifica le applicazioni

Per escludere le applicazioni dall'immagine container, rimuovile dall'elenco delle applicazioni.

Specifica moduli

L'elenco module contiene un elenco di moduli JBoss esistenti contrassegnati con un segno più o un segno meno. Solo i moduli contrassegnati con un segno più verranno aggiunti all'immagine container generata. I moduli contrassegnati con un segno meno, ad esempio (/system/layers/base), sono già presenti nell'immagine della community e non verranno sovrascritti a meno che non li contrassegni di nuovo con un segno più.

Configura la migrazione dei dati sensibili

Per caricare i dati sensibili nel repository, devi impostare il campo includeSensitiveData del piano di migrazione su true. I secret sono stati caricati in secrets.yaml.

Il campo sensitiveDataPaths specifica gli elenchi di file da filtrare dal piano di migrazione. Questi file potrebbero contenere informazioni sensibili come certificati, archivi secret, utenti e password utilizzati da JBoss. Se rimuovi un percorso del file dal campo sensitiveDataPaths, il file viene caricato nell'immagine.

Passaggi successivi