Personalizzare 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 workload 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 gli artefatti di deployment.
Prima di iniziare
Questo documento presuppone che tu abbia già creato una migrazione e che tu abbia il file del piano di migrazione.
Modificare 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 informazioni in base alle esigenze, esamina i dettagli del piano di migrazione e i commenti guida.
Nello specifico, valuta la possibilità di apportare modifiche alle seguenti sezioni.
Specifica l'immagine Docker
Nel piano di migrazione, generiamo un tag dell'immagine della community Docker in base alla versione JBoss. La versione JBoss viene rilevata e convertita in una versione principale (le versioni minori 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 usato come base dell'immagine container.
Le versioni JBoss originali rilevate nella VM di origine sono contenute in
discovery-report.yaml
, che viene 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 JBoss home diverso.
Specifica le applicazioni
Per escludere le applicazioni dall'immagine container, rimuovile dall'elenco.
Specifica i moduli
L'elenco module
contiene un elenco dei moduli JBoss esistenti contrassegnati con un segno più o meno. Solo i moduli contrassegnati con un segno Più verranno aggiunti all'immagine contenitore 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ù.
Configurare 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
specifica gli elenchi di file da escludere dal piano 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
- Scopri come eseguire la migrazione.