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
- Scopri come eseguire la migrazione.