Esecuzione di MDI Lineage Migration Toolkit
Le seguenti istruzioni descrivono la migrazione a IBM Manta Data Lineage versione 5.3.0 e successive. Prima di eseguire l' Migration Toolkit MDI Lineage, è necessario completare tutti i passaggi indicati nella sezione dei prerequisiti.
Prerequisiti
root o da un utente con diritti sudo.Accedi a Cloud Pak for Data come utente con il nodo OCP ( Red Hat OpenShift Container Platform ).
# Login to OCP HOST with root or a user with sudo access # OCP hostname should start with "api." # OCP_USERNAME should be "root" or a user with sudo access OCP_HOST=<ocp hostname> OCP_USERNAME=<ocp username> ssh ${OCP_USERNAME}@${OCP_HOST}Se non hai effettuato l'accesso come utente
root, avvia unaBASHshell conrootprivilegi.sudo bashVerifica se il tuo ambiente Cloud Pak for Data è stato aggiornato alla versione 5.3.x.
NAMESPACE=<namespace> oc get wkc wkc-cr -n ${NAMESPACE} | grep wkc-cr | awk '{print $2}' oc get wkc wkc-cr -n ${NAMESPACE} -o yaml | grep "wkcUpgradeStatus: Completed"Durante l'aggiornamento di Cloud Pak for Data, viene eseguita la migrazione delle connessioni. Verifica lo stato della migrazione delle connessioni.
NAMESPACE=<namespace> oc get pods -n ${NAMESPACE} --sort-by=.metadata.creationTimestamp | tac | grep "post-install-upgrade-dsd-connections-job" | head -n 1Un esempio di output:
post-install-upgrade-dsd-connections-job-fd67n 0/1 Completed 0 2dScarica ed estrai l'interfaccia a riga di comando (
cpd-cli). Per ulteriori informazioni, consulta la sezione "Installazione dell'interfaccia a riga di comando di IBM Software Hub " (cpd-cli).Aggiungere la directory
PATHcpd-cli a:# Ensure that cpd-cli is in the PATH export PATH=${PATH}:<cpd-cli-location>Verifica la classe di archiviazione del tuo cluster Cloud Pak for Data :
oc get storageclass --all-namespacesCrea una richiesta di volume persistente (PVC) in base alla classe di archiviazione del tuo cluster Cloud Pak for Data. Vedi la sezione " Preparazione all'utilizzo dell'utilità di esportazione e importazione di IBM Software Hub.
Crea
cpd-cliun profilo per l'utente amministratore di Cloud Pak for Data. Vedi, Creazione di un profilo per utilizzare i comandicpd-clidi gestione.Verifica se
cpd-clil'utente e il profilo sono stati creati:cpd-cli config users list cpd-cli config profiles listAvviare l'utilità di esportazione e importazione. Vedi: Inizializzazione dell'utilità di esportazione e importazione.
Scarica il documento "MDI Lineage Migration Toolkit " dal sito Fix Central. Inserisci le tue credenziali di accesso a IBM quando richiesto.
Copiare il file MDI Lineage Migration Toolkit nel
${MDIWORK_DIR}cluster Cloud Pak for Data.MDIWORK_DIR=/tmp/mdiwork mkdir -p ${MDIWORK_DIR} cd ${MDIWORK_DIR}Imposta il
MDI_MIG_PATCH_NAMEsu:MDI_MIG_PATCH_NAME=mdi-lineage-migration-patch_5264.zipInstalla la patch MDI Lineage Migration Toolkit :
# set the namespace PROJECT_CPD_INST_OPERANDS=<namespace> # set OCP node hostname and OCP port OCP_URL=<https://<ocp> hostname>:<ocp port> NAMESPACE=${PROJECT_CPD_INST_OPERANDS} cd ${MDIWORK_DIR} unzip ${MDI_MIG_PATCH_NAME} chmod -R 755 mdi-lineage-migration-patch cd mdi-lineage-migration-patch ./install-mdi-lineage-migration-config-spec.sh -u <username> -p <password> -url ${OCP_URL} -n ${NAMESPACE}
Requisiti preliminari per un ambiente isolato fisicamente
Accedi alla console OpenShift come amministratore del cluster.
Preparare le credenziali di autenticazione per accedere al repository di produzione IBM. Utilizza lo stesso
auth.jsonfile utilizzato per il download di CASE e il mirroring delle immagini, oppure crea unauth.jsonfile contenente le credenziali per accedereicr.ioa e al tuo registro privato locale. Per ulteriori informazioni sul fileauth.json, consultare la sezione "Sintassi del file di autenticazione del Registro di sistema".Un esempio di percorso di directory:
${HOME}/.airgap/auth.jsonUn esempio di creazione di un
auth.jsonfile:{ "auths": { "cp.icr.io":{"email":"unused","auth":"<base64 encoded id:apikey>"}, "<private registry hostname>":{"email":"unused","auth":"<base64 encoded id:password>"} } }Installa skopeo:
yum install skopeoConfermare il percorso del registro privato locale in cui copiare le immagini dell'hotfix:
oc describe pod <hotfix image pod> | grep -i "image:"Un esempio:
oc describe pod catalog-api | grep Image: Image: cp.icr.io/cp/cpd/catalog-api@sha256:03c88c69b986f24d39e4556731c0d171169d2bd91b0fb22f6367fd51c9020e64Ottieni i dettagli relativi alla fonte del registro privato locale:
oc get imageContentSourcePolicy oc describe imageContentSourcePolicy [cloud-pak-for-data-mirror]Un esempio di output:
- mirrors: - ${PRIVATE_REGISTRY_LOCATION}/cp/ source: cp.icr.io/cp/cpdPer ulteriori informazioni sul mirroring delle immagini, consultare la guida "Mirroring IBM Software Hub images to a private container registry ".
Utilizza il
skopeocomando per copiare le immagini patch dal registro di produzione di IBM al registro privato locale. Utilizzando il fileauth.jsonappropriato, copia le immagini delle patch dal registro di produzione IBM al registro del cluster OpenShift.- Per la versione di 5.3.0, utilizzare il seguente comando:
DOCKER_IMAGE_ID=6c39dabf5931e20d32e16516ae1ce74b030eea7af5ed552e9e4b1038e7852b97 skopeo copy --all --authfile "<folder path>/auth.json" \ --dest-tls-verify=false --src-tls-verify=false \ docker://cp.icr.io/cp/cpd/mdi-lineage-migration@sha256:${DOCKER_IMAGE_ID} \ docker://${PRIVATE_REGISTRY_LOCATION}/cp/cpd/mdi-lineage-migration@sha256:${DOCKER_IMAGE_ID}- Utilizza il seguente comando per la versione 5.3.1 :
DOCKER_IMAGE_ID=ed185bc3b3e4c2c2bdd3fa91990d0e396b6b0ffb76b76443244e2afa8af649a2 skopeo copy --all --authfile "<folder path>/auth.json" \ --dest-tls-verify=false --src-tls-verify=false \ docker://cp.icr.io/cp/cpd/mdi-lineage-migration@sha256:${DOCKER_IMAGE_ID} \ docker://${PRIVATE_REGISTRY_LOCATION}/cp/cpd/mdi-lineage-migration@sha256:${DOCKER_IMAGE_ID}
Esecuzione della migrazione
Il comando migration deve essere eseguito come root o da un utente con accesso sudo. Vedi la sezione " Prerequisiti per l'esecuzione dell' Migration Toolkit MDI ".
Aggiungi
cpd-clila directory aPATH:export PATH=${PATH}:<cpd-cli-location>Recupera l'elenco dei profili.
cpd-cli config profiles listImposta un nome per il profilo utilizzando un valore dall'elenco dei profili.
CPD_PROFILE_NAME=<cpd-profile-name>Impostare le variabili d'ambiente per i seguenti parametri obbligatori:
NAMESPACE=<namespace> CP4D_HOST=<cp4d hostname> MIGRATION_USERNAME=<migration username> MIGRATION_USER_APIKEY=<migration user apikey> MIGRATION_INSTANCE_NAME=<migration instance name> DSD_ADMIN_USERNAME=<dsd admin username> LINEAGE_ADMIN_USERNAME=<lineage admin username> LOG_LEVEL=debug MDIWORK_DIR=/tmp/mdiworkPer
MIGRATION_USERNAMEil parametro, assegnare all'utente l'autorizzazione " Gestisci progetti ". Questo utente è anche denominato "utente di migrazione".Per
MIGRATION_USER_APIKEYil parametro, inserire la chiave API dell'utente di migrazione.Per
DSD_ADMIN_USERNAMEil parametro, assegnare all'utente le autorizzazioni " Crea definizioni di origine dati " e "Gestisci definizioni di origine dati ". Questo utente deve essere aggiunto al gruppo Platform assets catalog con il ruolo di amministratore.Per
LINEAGE_ADMIN_USERNAMEil parametro, inserire il nome utente dell'amministratore di sistema. L'utente amministratore di sistema deve disporre almeno delle seguenti autorizzazioni: Amministrazione della piattaforma, Gestione dei cataloghi, Gestione degli utenti, Gestione dell'individuazione delle risorse, Accesso alla tracciabilità dei dati, Gestione della tracciabilità dei dati.Se si desidera che la migrazione utilizzi l'utente amministratore di sistema per creare e gestire le definizioni delle origini dati, è possibile specificare lo stesso nome utente amministratore di sistema sia per il parametro
DSD_ADMIN_USERNAMEcheLINEAGE_ADMIN_USERNAMEper il parametro.Se desideri eseguire la migrazione in modalità debug, imposta
LOG_LEVEL=debug. Altrimenti, impostaLOG_LEVEL=info.
Crea un file
YAMLdei parametri di migrazione:MIGRATION_USER_BEARER_TOKEN=$(curl -i -s -k -X POST "https://${CP4D_HOST}/icp4d-api/v1/authorize" -H "Accept: application/json" -H "Content-Type: application/json" -d "{\"username\":\"${MIGRATION_USERNAME}\",\"api_key\":\"${MIGRATION_USER_APIKEY}\"}" | grep '"token":' | grep -o '"token":\S*"' | awk -F , '{print$1}' | awk -F : '{print$2}' | tr -d '"') cd ${MDIWORK_DIR} cat <<EOF > mdi-lineage-mig-params.yaml mdi-lineage-migration-aux: MIGRATION_INSTANCE_NAME: ${MIGRATION_INSTANCE_NAME} MIGRATION_USER_BEARER_TOKEN: ${MIGRATION_USER_BEARER_TOKEN} DSD_ADMIN_USERNAME: ${DSD_ADMIN_USERNAME} LINEAGE_ADMIN_USERNAME: ${LINEAGE_ADMIN_USERNAME} EOFEsegui l'esportazione utilizzando il file
YAMLdei parametri di migrazione:cd ${MDIWORK_DIR} cpd-cli export-import export create -c mdi-lineage-migration -n ${NAMESPACE} --profile=${CPD_PROFILE_NAME} --backoff-limit=0 -f mdi-lineage-mig-params.yaml ${MIGRATION_INSTANCE_NAME} --log-level=${LOG_LEVEL}Controlla lo stato dell'esportazione e verifica che la migrazione sia stata completata:
cpd-cli export-import export status -n ${NAMESPACE} ${MIGRATION_INSTANCE_NAME} --profile=${CPD_PROFILE_NAME}Un esempio di output:
cpd-cli export-import export status -n ${NAMESPACE} ${MIGRATION_INSTANCE_NAME} --profile=${CPD_PROFILE_NAME} Name: 14febtest02 Job Name: cpd-ex-14febtest02 Active: 0 Succeeded: 1 Failed: 0 Start Time: Fri, 14 Feb 2025 00:18:42 -0800 Completed At: Fri, 14 Feb 2025 00:21:20 -0800 Duration: 2m38sOttieni l'elenco delle importazioni:
cpd-cli export-import import list --profile=${CPD_PROFILE_NAME}Eliminare l'importazione esistente se individuata nel passaggio precedente:
OLD_IMPORT_NAME=<name of the existing import> cpd-cli export-import import delete ${OLD_IMPORT_NAME} -n ${NAMESPACE} --profile=${CPD_PROFILE_NAME}Esegui l'importazione:
cd ${MDIWORK_DIR} cpd-cli export-import import create -n ${NAMESPACE} --profile=${CPD_PROFILE_NAME} -f mdi-lineage-mig-params.yaml ${MIGRATION_INSTANCE_NAME}im1 --backoff-limit 0 --log-level=${LOG_LEVEL} --from-export ${MIGRATION_INSTANCE_NAME}Controlla lo stato dell'importazione e verifica che la migrazione sia stata completata:
cpd-cli export-import import status -n ${NAMESPACE} ${MIGRATION_INSTANCE_NAME}im1 --profile=${CPD_PROFILE_NAME}Un esempio di output:
cpd-cli export-import import status -n ${NAMESPACE} ${MIGRATION_INSTANCE_NAME}im1 --profile=${CPD_PROFILE_NAME} Name: 14febtest02im1 Job Name: cpd-im-14febtest02 Active: 0 Succeeded: 1 Failed: 0 Start Time: Fri, 14 Feb 2025 00:18:42 -0800 Completed At: Fri, 14 Feb 2025 00:24:20 -0800 Duration: 5m38s