Personalizza il piano di migrazione per i server JBoss

Dovresti esaminare il file del piano di migrazione generato 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 del contenitore del carico 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 avere il 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, esamina i dettagli e le linee guida del tuo piano di migrazione commenti.

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

Specifica l'immagine Docker

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

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

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

Se vuoi modificare l'immagine della community Docker o fornire la tua immagine Docker, puoi modificare il tag fromImage nel 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 di JBoss nell'immagine di destinazione e viene dedotto dal campo fromImage. Non è necessario modificare il valore di questo campo a meno che non utilizzi un'immagine JBoss con un Valore della casa JBoss.

Specifica le applicazioni

Per escludere le applicazioni dall'immagine container, rimuovile dall'applicazione dall'elenco di lettura.

Specifica i moduli

L'elenco module contiene un elenco dei moduli JBoss esistenti contrassegnati da un segno più o meno. Solo i moduli contrassegnati da un segno più verranno aggiunti alla l'immagine container generata. I moduli contrassegnati da un segno meno, ad esempio (/system/layers/base), sono già presenti nell'immagine della scheda 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 dati sensibili nel repository, devi impostare il campo includeSensitiveData nel piano di migrazione su true. I secret vengono caricati in secrets.yaml.

Il campo sensitiveDataPaths consente di specificare gli elenchi di file da cui escludere i file di migrazione. Questi file potrebbero contenere informazioni sensibili come certificati, secret store, utenti e password utilizzati da JBoss. Se rimuovi un percorso file dal campo sensitiveDataPaths, il file viene caricato nell'immagine.

Passaggi successivi