Configuración de IBM Transformation Advisor

Al instalar Transformation Advisor se aplican valores por defecto a los parámetros de configuración. La persistencia es una configuración que tendrá que establecer usted mismo, dependiendo de las opciones de persistencia disponibles en su entorno.

Consulte el documento Configurar el almacenamiento para más detalles. Dependiendo de su entorno y preferencias, puede personalizar su Transformation Advisor la instalación. La siguiente es una lista de todas las opciones de configuración disponibles en Transformation Advisor a las que se puede acceder en el recurso personalizado YAML.

Ver Instalación sobre cómo acceder al recurso personalizado YAML.

Muchas de estas opciones (como se indica) están destinadas a la resolución de problemas avanzada y sólo deben ser utilizadas por expertos.

Parámetro Descripción Valor predeterminado
networkPolicy.enabled Habilita networkPolicy en el clúster. Resolución de problemas avanzada. true
networkPolicy.egreso Habilite y configure EgressNetworkpolicy. Desactivación automática cuando no se utiliza OpenShift SDN CNI. con los destinos de salida predeterminados permitidos.
route.enabled Habilita la ruta para llegar al servicio. Resolución de problemas avanzada. true
route.hostname Nombre de host para ruta. Descubierto y establecido por el operador de TA
tls.enabled Habilita TLS entre contenedores. Resolución de problemas avanzada. true
tls.caCert Certificado CA para TLS (consulte Instrucciones para crear un certificado de cliente ) establecido por icpa-installer
authentication.disabled.liberty Desactiva la autenticación para el servidor Liberty. Resolución de problemas avanzada. falso
authentication.disabled.ui Inhabilite la autenticación para la IU. Resolución de problemas avanzada. falso
authentication.ocp.authIssuerEndpoint Punto final del emisor de autenticación. Descubierto y establecido por el operador de TA
authentication.ocp.apiEndpoint Punto final de API de autenticación. Descubierto y establecido por el operador de TA
authentication.ocp.secretName Nombre de secreto para la autenticación interna. transformation-advisor-secret
authentication.oidc.endpointPort Puerto de punto final de autenticación OIDC Descubierto y establecido por el operador de TA
authentication.thirdparty.identityRequestEndpoint Punto final de solicitud de identidad de terceros No establecido
authentication.thirdparty.identityRequestEndpointPath Ruta del punto final de solicitud de identidad de terceros No establecido
authentication.thirdparty.identityRequestEndpointScope Alcance del punto final de solicitud de identidad de terceros No establecido
authentication.thirdparty.identityRequestEndpointStatePrefix Prefijo de estado del punto final de solicitud de identidad de terceros No establecido
authentication.thirdparty.tokenRequestEndpoint Punto final de solicitud de token de terceros No establecido
authentication.thirdparty.tokenRequestEndpointPath Ruta del punto final de solicitud de token de terceros No establecido
authentication.thirdparty.tokenVerificationEndpoint Punto final de verificación de terceros No establecido
authentication.thirdparty.tokenVerificationEndpointPath Ruta del punto final de verificación de terceros No establecido
couchdb.image Etiqueta de imagen de Couchdb Descubierto y establecido por el operador de TA
couchdb.imagePullSecret Secreto de extracción de imagen. Permite acceder al registro de derechos. El nombre debe ser ibm-entitlement-key. Consulte Planificación para obtener más detalles. Ninguno
couchdb.security.cipherSuites Suites de cifrado que deben estar soportadas (separadas por espacios en blanco) ECDHE-RSA-AES256-GCM-SHA384 ECDHE-RSA-AES128-GCM-SHA256 TLS_AES_256_GCM_SHA384 TLS_CHACHA20_POLY1305_SHA256
couchdb.security.tlsVersions Lista de versiones de protocolo SSL/TLS permitidas (separadas por espacios en blanco) tlsv1.2
couchdb.resources.requests.memory Solicita memoria (los recursos se podrían modificar en función de la disponibilidad. Los valores por defecto son mínimos) 1Gi
couchdb.resources.requests.cpu CPU de solicitudes 500m
couchdb.resources.limits.memory Limita la memoria 8Gi
couchdb.resources.limits.cpu Limita la CPU 16000m
couchdb.livenessProbe.initialDelaySeconds Retardo inicial en segundos del análisis de ejecución de contenedor (Los análisis pueden modificarse en función del rendimiento del clúster. Sin embargo, los valores por defecto funcionan en la mayoría de los casos. Resolución de problemas avanzada.) 60
couchdb.livenessProbe.timeoutSeconds Tiempo de espera de sondeo de actividad de contenedor en segundos. Resolución de problemas avanzada. 3
couchdb.livenessProbe.periodSeconds Periodo de sondeo de actividad de contenedor en segundos. Resolución de problemas avanzada. 5
couchdb.livenessProbe.failureThreshold Umbral de anomalía del sondeo de actividad del contenedor. Resolución de problemas avanzada. 6
couchdb.readinessProbe.initialDelaySeconds Retardo inicial del sondeo de preparación del contenedor en segundos. Resolución de problemas avanzada. 5
couchdb.readinessProbe.timeoutSeconds Tiempo de espera del sondeo de preparación de contenedor en segundos. Resolución de problemas avanzada. 3
couchdb.readinessProbe.periodSeconds Periodo del sondeo de preparación de contenedor en segundos. Resolución de problemas avanzada. 5
couchdb.readinessProbe.failureThreshold Umbral de anomalía del sondeo de preparación del contenedor. Resolución de problemas avanzada. 6
neo4j.image Referencia de imagen NEO4J Descubierto y establecido por el operador de TA
neo4j.imagePullSecret Secreto de extracción de imagen. Permite acceder al registro de derechos. El nombre debe ser ibm-entitlement-key. Consulte Planificación para obtener más detalles. Ninguno
neo4j.resources.requests.memory Solicita memoria (los recursos se podrían modificar en función de la disponibilidad. Los valores por defecto son mínimos) 1Gi
neo4j.resources.requests.cpu CPU de solicitudes 500m
neo4j.resources.limits.memory Limita la memoria 8Gi
neo4j.resources.limits.cpu Limita la CPU 16000m
neo4j.livenessProbe.initialDelaySeconds Retardo inicial en segundos del análisis de ejecución de contenedor (Los análisis pueden modificarse en función del rendimiento del clúster. Sin embargo, los valores por defecto funcionan en la mayoría de los casos. Resolución de problemas avanzada.) 60
neo4j.livenessProbe.timeoutSeconds Tiempo de espera de sondeo de actividad de contenedor en segundos. Resolución de problemas avanzada. 3
neo4j.livenessProbe.periodSeconds Periodo de sondeo de actividad de contenedor en segundos. Resolución de problemas avanzada. 5
neo4j.livenessProbe.failureThreshold Umbral de anomalía del sondeo de actividad del contenedor. Resolución de problemas avanzada. 6
neo4j.readinessProbe.initialDelaySeconds Retardo inicial del sondeo de preparación del contenedor en segundos. Resolución de problemas avanzada. 5
neo4j.readinessProbe.timeoutSeconds Tiempo de espera del sondeo de preparación de contenedor en segundos. Resolución de problemas avanzada. 3
neo4j.readinessProbe.periodSeconds Periodo del sondeo de preparación de contenedor en segundos. Resolución de problemas avanzada. 5
neo4j.readinessProbe.failureThreshold Umbral de anomalía del sondeo de preparación del contenedor. Resolución de problemas avanzada. 6
persistence.enabled Persistencia activada (Si se desactiva, todos los datos se perderán si se reinicia el contenedor DB). true
persistence.couchdb.accessMode Modalidad de acceso de Couchdb. ReadWriteOnce
persistence.couchdb.size Tamaño de almacenamiento de Couchdb. 8Gi
persistence.couchdb.useDynamicProvisioning Utilice el suministro dinámico. No cambiar. true
persistence.couchdb.existingClaim Reclamación pv existente (Normalmente, PVC existente se utiliza para señalar los datos existentes) ""
persistence.couchdb.storageClassName Nombre de clase de almacenamiento de Couchdb (p.e. "rook-ceph-cephfs-internal") ""
persistence.couchdb.supplementalGroups Grupos suplementarios de Couchdb (generalmente utilizados para NFS) []
persistence.neo4j.accessMode Neo4j modo de acceso. ReadWriteOnce
persistence.neo4j.size Neo4j tamaño de almacenamiento. 8Gi
persistence.neo4j.useDynamicProvisioning Utilice el suministro dinámico. No cambiar. true
persistence.neo4j.existingClaim Reclamación pv existente (Normalmente, PVC existente se utiliza para señalar los datos existentes) ""
persistence.neo4j.storageClassName Neo4j nombre de la clase de almacenamiento (por ejemplo, "rook-ceph-cephfs-internal") ""
persistence.neo4j.supplementalGroups Neo4j grupos complementarios (Suelen utilizarse para NFS ) []
transadv.image Etiqueta de imagen del servidor de Transadv Liberty. Resolución de problemas avanzada.
transadv.imagePullSecret Secreto de extracción de imagen. Permite acceder al registro de derechos. El nombre debe ser ibm-entitlement-key. Consulte Planificación para obtener más detalles.
transadv.security.cipherSuites Suites de cifrado que deben estar soportadas (separadas por espacios en blanco) TLS_AES_256_GCM_SHA384 TLS_CHACHA20_POLY1305_SHA256 TLS_AES_128_GCM_SHA256 TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 TLS_DHE_RSA_WITH_AES_128_CBC_SHA256 TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 TLS_DHE_RSA_WITH_AES_256_CBC_SHA256 TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
transadv.publicUrl URL público del servidor Transadv Descubierto y establecido por TA
transadv.image.logLevel Nivel de registro del servidor Transadv información
transadv.resources.requests.memory Memoria de solicitudes 1Gi
transadv.resources.requests.cpu CPU de solicitudes 500m
transadv.resources.limits.memory Limita la memoria 8Gi
transadv.resources.limits.cpu Limita la CPU 16000m
transadv.livenessProbe.initialDelaySeconds Retardo inicial del sondeo de actividad del contenedor es segundos. Resolución de problemas avanzada. 60
transadv.livenessProbe.timeoutSeconds Tiempo de espera de sondeo de actividad de contenedor en segundos. Resolución de problemas avanzada. 3
transadv.livenessProbe.periodSeconds Periodo de sondeo de actividad de contenedor en segundos. Resolución de problemas avanzada. 5
transadv.livenessProbe.failureThreshold Umbral de anomalía del sondeo de actividad del contenedor. Resolución de problemas avanzada. 6
transadv.readinessProbe.initialDelaySeconds Retardo inicial del sondeo de preparación del contenedor en segundos. Resolución de problemas avanzada. 60
transadv.readinessProbe.timeoutSeconds Tiempo de espera del sondeo de preparación de contenedor en segundos. Resolución de problemas avanzada. 3
transadv.readinessProbe.periodSeconds Periodo del sondeo de preparación de contenedor en segundos. Resolución de problemas avanzada. 5
transadv.readinessProbe.failureThreshold Umbral de anomalía del sondeo de preparación del contenedor. Resolución de problemas avanzada. 6
transadvui.image Etiqueta de imagen de IU de Transadv. Resolución de problemas avanzada.
transadvui.imagePullSecret Secreto de extracción de imagen. Permite acceder al registro de derechos. El nombre debe ser ibm-entitlement-key. Consulte Planificación para obtener más detalles.
transadvui.image.logLevel Nivel de registro de la IU de Transadv información
transadvui.useSecureCookie Utilizar una cookie segura para Transadv UI true
transadvui.resources.requests.memory Memoria de solicitudes 1Gi
transadvui.resources.requests.cpu CPU de solicitudes 500m
transadvui.resources.limits.memory Limita la memoria 4Gi
transadvui.resources.limits.cpu Limita la CPU 16000m
transadvui.livenessProbe.initialDelaySeconds Retardo inicial del sondeo de actividad del contenedor es segundos. Resolución de problemas avanzada. 60
transadvui.livenessProbe.timeoutSeconds Tiempo de espera de sondeo de actividad de contenedor en segundos. Resolución de problemas avanzada. 5
transadvui.livenessProbe.periodSeconds Periodo de sondeo de actividad de contenedor en segundos. Resolución de problemas avanzada. 30
transadvui.livenessProbe.failureThreshold Umbral de anomalía del sondeo de actividad del contenedor. Resolución de problemas avanzada. 6
transadvui.readinessProbe.initialDelaySeconds Retardo inicial del sondeo de preparación del contenedor en segundos. Resolución de problemas avanzada. 5
transadvui.readinessProbe.timeoutSeconds Tiempo de espera del sondeo de preparación de contenedor en segundos. Resolución de problemas avanzada. 5
transadvui.readinessProbe.periodSeconds Periodo del sondeo de preparación de contenedor en segundos. Resolución de problemas avanzada. 30
transadvui.readinessProbe.failureThreshold Umbral de anomalía del sondeo de preparación del contenedor. Resolución de problemas avanzada. 6

Configuración del instalador CASE

Opciones para la acción de instalación:

oc ibm-pak launch \
    $CASE_NAME \
    --version $CASE_VERSION \
    --inventory v2InstallProduct \
    --namespace $TA_PROJECT \
    --action install \
    --args "[OPTIONS]"
 
--licenseType <true|false>          : REQUIRED: Must be used and set to a valid license type.
--acceptLicense <true|false>        : REQUIRED: Must be used and set to true to proceed with install.
--installIbmCatalog <true|false>    : OPTIONAL: If set to true, the IBM operator catalog will be installed if it is not already. Default is false.
--secret <secret>                   : OPTIONAL: Specify a secret to use to pull the Tranformation Advisor images from entitle registry.
--registry <registry>               : OPTIONAL: Specified entitled registry, e.g. cp.icr.io.
--user <user>                       : OPTIONAL: Specify user to access the entitled registry.
--pass <password>                   : OPTIONAL: Specify password for user to access entitled registry.
--persistence <true|false>          : OPTIONAL: If persistence is required for Transformation Advisor (Default is true).
--accessMode <accessMode>           : OPTIONAL: storage accessMode. Default is ReadWriteOnce.
--persistenceClaimCouchDB <claim>   : OPTIONAL: Use an existing persistence claim for CouchDB.
--persistenceClaimNeo4j <claim>     : OPTIONAL: Use an existing persistence claim for Neo4j.
--storageClass <storage class>      : OPTIONAL: Recommended way use persistence with Transformation Advisor. Specify a valid storage class to use.
--supplementalGroups [gid,...]      : OPTIONAL: May be used if using file system based storage to ensure database container has read/write permission for the storage.
--hostName <hostname>               : OPTIONAL: hostname to access cluster. Transformation Advisor will discover and set this value. It should not need to be changed for most environments.
--apiEndpoint <apiEndpoint>         : OPTIONAL: API url for the cluster. Transformation Advisor will discover and set this value. It should not need to be changed for most environments.
--authIssuerEndpoint <aiEndpoint>   : OPTIONAL: Auth issuer endpoint for the cluster. Transformation Advisor will discover and set this value. It should not need to be changed for most environments.
--publicUrlServer                   : OPTIONAL: See docs for more information. Transformation Advisor will discover and set this value. It should not need to be changed for most environments.
--publicUrlUI                       : OPTIONAL: See docs for more information. Transformation Advisor will discover and set this value. It should not need to be changed for most environments.
--customCACert <file path>          : OPTIONAL: Specify file to use as custom CA cert.
--authConfigFile <file path>        : OPTIONAL: Specify file to use to configure third party authentication.
--namespaceScoped <true|false>      : OPTIONAL: If ommitted, defaults to false. This will make the operator to be insalled into openshift-operators namespace and manage all the namespaces, operand will go into namespace specified by --namespace attribute. If set to true, operator and operand are installed into namespace specified by --namespace attribute.
--taHelp                            : OPTIONAL: Display options available
 

Opciones para la acción de desinstalación:

oc ibm-pak launch \
    $CASE_NAME \
    --version $CASE_VERSION \
    --case ibm-transadv \
    --inventory v2InstallProduct \
    --namespace $TA_PROJECT \
    --action uninstall \
    --args "[OPTIONS]"
 
--uninstallIbmCatalog <true|false>    : OPTIONAL: If set to true, the IBM operator catalog will be uninstalled. Default is false.
--uninstallTaCatalog <true|false>     : OPTIONAL: If set to true, the IBM operator catalog will be uninstalled. Default is false.
 

Configurar la autenticación de terceros

Para configurar la autenticación de terceros, siga los pasos que se indican a continuación:

Actualización de terceros OAuthClient o OAuthApp

Es necesario configurar la redirección URL para permitir la redirección OAuthClient o OAuthApp a Transformation Advisor Ruta UI.

La URL redirección es " your-ta-ui-route/auth/callback

Por ejemplo, https://ta.apps.ken.cp.fyre.ibm.com/auth/callback, donde https://ta.apps.ken.cp.fyre.ibm.com es la Transformation Advisor Ruta de la interfaz de usuario.

Puede obtener esta ruta desde la interfaz de usuario de OCP en la navegación: " Networking -> Routes -> ta-ui-route -> Location

Configuración de MFA

La integración de la autenticación multifactor (MFA) con Red Hat OpenShift Container Platform refuerza la seguridad al exigir a los usuarios que verifiquen su identidad mediante varios métodos, como una contraseña, un código de un solo uso (OTP) u otros factores de verificación admitidos. Red Hat OpenShift no aplica MFA de forma nativa. Para obtener más información, consulte Cómo integrar la autenticación multifactor para la autenticación en OpenShift 4.

ID de cliente y secreto

Antes de Transformation Advisor 3.4.0 es necesario actualizar el ID y el secreto del cliente OAuthClient's o OAuthApp's en la configuración de la instancia mediante las propiedades y Transformation Advisor mediante las propiedades authentication.oidc.clientId y authentication.oidc.clientSecret.

Transformation Advisor 3.4.0 o después, necesita suministrar al cliente Id y secreto de cliente en un secreto transformation-advisor-secret antes de instalar Transformation Advisor. Este es el mandato:

oc create secret generic transformation-advisor-secret \
--from-literal=clientId=your-clientId-value \
--from-literal=clientSecret=your-clientSecret-value
 

Alternativamente, puede actualizar su secreto después de la instalación de Transformation Advisor. Este es el mandato:

oc patch secret transformation-advisor-secret \
-p '{"data":{"'"clientId"'": "'"your-clientId-value"'", "'"clientSecret"'": "'"your-clientSecret-value"'"}}' --type=merge
 

A continuación, puede que tenga que eliminar los pods Servidor y UI, para que los nuevos valores secretos puedan aplicarse a los pods.

Nota: La dirección transformation-advisor-secret se utiliza para otras credenciales internas. Esas otras credenciales se generan automáticamente, si no están ya presentes en el secreto, en el momento en que se crea la Transformation Advisor instancia.

Actualizar la política de red de salida

Asegúrese de añadir los puntos finales utilizados por el tercero a la política de red de salida. Instrucción disponible en: Política de red de salida (ENP)

Configuración de la autenticación de terceros - Instalación de la interfaz de usuario

IAM

Transformation Advisor puede configurarse para utilizar IBM Identity and Access Management (IAM) como fuente de autenticación.

  1. Realice el registro de OpenID Connect (OIDC) siguiendo las instrucciones aquí: https://www.ibm.com/docs/en/cpfs?topic=sign-automated-client-registration-method-3

  2. Siguiendo el proceso del paso 1, se creará un secreto que contendrá las direcciones clientId y clientSecret. Añada clientId y clientSecret al Transformation Advisor secreto ( como se especifica en la propiedad: authentication.ocp.secretName).

  3. Actualice los Transformation Advisor valores de configuración de la siguiente manera:

      description: "IAM"
      identityRequestEndpoint: "https://cp-console.<OCP domain>:443"
      identityRequestEndpointPath: "/idprovider/v1/auth/authorize"
      identityRequestEndpointScope: "openid+profile+email"
      identityRequestEndpointStatePrefix: ""
      tokenRequestEndpoint: "https://cp-console.<OCP domain>:443"
      tokenRequestEndpointPath: "/idprovider/v1/auth/token"
      tokenVerificationEndpoint: "https://cp-console.<OCP domain>:443"
      tokenVerificationEndpointPath: "/idprovider/v1/auth/userInfo"
 

Github OAuth

A continuación se muestra un ejemplo de la configuración necesaria en el objeto de configuración thirdparty para utilizar Github OAuth:

      description: "github"
      identityRequestEndpoint: "https://github.com"
      identityRequestEndpointPath: "/login/oauth/authorize"
      identityRequestEndpointScope: "openid+offline"
      identityRequestEndpointStatePrefix: ""
      tokenRequestEndpoint: "https://github.com"
      tokenRequestEndpointPath: "/login/oauth/access_token"
      tokenVerificationEndpoint: "https://api.github.com"
      tokenVerificationEndpointPath: "/user"
 

Recuadro OAuth

A continuación se muestra un ejemplo de la configuración necesaria en el objeto de configuración thirdparty para utilizar Box OAuth:

      description: "box"
      identityRequestEndpoint: "https://account.box.com"
      identityRequestEndpointPath: "/api/oauth2/authorize"
      identityRequestEndpointScope: "root_readonly"
      identityRequestEndpointStatePrefix: ""
      tokenRequestEndpoint: "https://api.box.com"
      tokenRequestEndpointPath: "/oauth2/token"
      tokenVerificationEndpoint: "https://api.box.com"
      tokenVerificationEndpointPath: "/2.0/users/me"
 

Configuración de la autenticación de terceros - CASE install

Especifique un archivo de configuración de autenticación de terceros utilizando la opción --authConfigFile con la acción CASE install .

El siguiente es un ejemplo de ese archivo que utiliza GitHub OAuth:

No cambie el formato del archivo.

# set to true to disable authentication on UI server
TA_AUTH_UI_DISABLED=false
# set to true to disable authentication on Liberty server
TA_AUTH_LIBERTY_DISABLED=false

# OAuth2 Server client id
TA_AUTH_OIDC_CLIENT_ID=xxx
# OAuth2 Server client secret
TA_AUTH_OIDC_CLIENT_SECRET=xxx

# endpoint to request identity of the OAuth2 Server, no tailing /
TA_AUTH_IDENTITY_REQUEST_ENDPOINT=https://github.com
# path of the endpoint to request identity to OAuth2 Server, with heading /
TA_AUTH_IDENTITY_REQUEST_ENDPOINT_PATH=/login/oauth/authorize
# OAuth2 scope
TA_AUTH_IDENTITY_REQUEST_ENDPOINT_SCOPE=openid+offline
# some OAuth2 state requires minimum length, default to empty
TA_AUTH_CALLBACK_STATE_PREFIX_PADDING=

# endpoint to request token of the OAuth2 Server, no tailing /
TA_AUTH_TOKEN_REQUEST_ENDPOINT=https://github.com
# path of the endpoint to request token of the OAuth2 Server, with heading /
TA_AUTH_TOKEN_REQUEST_ENDPOINT_PATH=/login/oauth/access_token

# endpoint to verify tokens of the OAuth2 Server, no tailing /
TA_AUTH_TOKEN_VERIFICATION_ENDPOINT=https://api.github.com
# path to the endpoint to verify tokens of the OAuth2 Server, with heading /
TA_AUTH_TOKEN_VERIFICATION_ENDPOINT_PATH=/user
 

Habilitar BYOK (Bring Your Own Key)

Puede traer su propio certificado (denominado cert en el resto de la sección) y la clave utilizada para TLS interno.

Suponiendo que:

  1. el certificado público sea public.crt y la clave privada sea private.pem.
  2. Transformation Advisor está o se instalará en el espacio de nombres ta .

A continuación se muestra un ejemplo de cómo obtener un par de certificado y clave, debiendo estar el certificado y la clave propios en el mismo formato:

openssl req -newkey rsa:2048 -nodes -keyout private.pem -x509 -days 730 -out public.crt -subj "/C=IE/ST=Cork/L=Cork/O=IBM/CN=internal.ta.ibm.com" -addext "subjectAltName=DNS:ta-couchdb.<namespace>.svc,DNS:*.ta-couchdb.<namespace>.svc,DNS:*.ta-couchdb.<namespace>.svc.cluster.local,DNS:ta-couchdb.<namespace>.svc.cluster.local
 

Después de obtener su propio par de certificado y clave, siga los pasos para habilitar su propio certificado y clave:

  1. Cambie al espacio de nombres ta , o cree uno si no ha instalado Transformation Advisor.

       # switch the project
       oc project ta
     

    o

       # create ta ns if it's not already there
       oc create ns ta
     
  2. Elimine el Transformation Advisor secreto transformation-advisor-secret, si existe.

    oc delete secret transformation-advisor-secret
     
  3. Si realiza la instalación mediante el instalador de CASE , pase --customCACert <public.crt> donde <public.crt> es la vía de acceso completa al archivo public.crt .

    Si realiza la instalación mediante la interfaz de usuario de OpenShift, actualice la propiedad caCert en el YAML de recurso personalizado. Consulte Instalación para obtener más información sobre el acceso al recurso personalizado YAML desde la interfaz de usuario.

    A continuación, se muestra un ejemplo de caCert en el YAML de recurso personalizado:

          tls:
            enabled: true
            caCert: |
              -----BEGIN CERTIFICATE-----
              MIIDKjCCAhICCQCjbqTC95dw+jANBgkqhkiG9w0BAQsFADBXMQswCQYDVQQGEwJJ
              RTENMAsGA1UECAwEQ29yazENMAsGA1UEBwwEQ29yazEMMAoGA1UECgwDSUJNMRww
              GgYDVQQDDBNpbnRlcm5hbC50YS5pYm0uY29tMB4XDTIwMDEyMDEzMjkxMVoXDTIy
              MDExOTEzMjkxMVowVzELMAkGA1UEBhMCSUUxDTALBgNVBAgMBENvcmsxDTALBgNV
              BAcMBENvcmsxDDAKBgNVBAoMA0lCTTEcMBoGA1UEAwwTaW50ZXJuYWwudGEuaWJt
              LmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKMIGfSptUnimmxZ
              IdVK6uLscJQetel+MX7u4viIaBwdd/IGDE7GHDHEYYFmEfv+gYbVT1+EAkdiLtHG
              SutUMPxpbUyv1xCW+9z3nDInHKzZxHMJJwB5j4+oVq+XkdXzZu2hwuoc0aA7Ek3r
              L6FFPIQi9bcmayuOa7HRpH43+86JuJF8tcx1MrDxWzBJraZNuvDVLs574qr/eM2d
              x5N+qkJqwOy94k0eH+x7kAKRp6vBEcVR+I/HHYDZSnC4UNEX8I/NbCS3wMUXysC9
              lcC2vsIKrCRSn9Fu/ixWwlGy6QV1my4H6ZPtvJV56fcS42523KTDbT628Xa9B3/p
              cX0WZWMCAwEAATANBgkqhkiG9w0BAQsFAAOCAQEADIyp9A4p46DZ6brEbL0e+wWf
              bnnymf1QZWcz4xrrMW2CcKBmRqFIPFPBpSEbCKlsFaZex5863z7dsa5SU7fHRdHF
              Yk9t8mGu2B+yZF6nW4biPmezaDLPi9VUomxcd+/rxWKhZJIufWXxs22AOhNQHeeK
              PSjP8RPCh1Gny7kC3jUz1Q/wd4QF/OGeu+Xf5jhERpJPfjKMtPMPJPGiPYSqhYQM
              VA6G83nZVlPDtnFJ28AzZU2/YtvCzhU66Ua5PjbSG1w6QsXZt/lE3E9utcJ+MNQi
              3JwrLp4/97cupXsGmPPmkvH50LB8ex/N/ra6QOLGLm0gU218yXu7KezOfZNkTw==
              -----END CERTIFICATE-----
     

    Puede copiar y pegar manualmente en la ubicación. Recuerde que la sangría es importante. Hay 2 espacios adicionales para cada línea del certificado con respecto a la línea de caCert.

  4. Vuelva a crear el Transformation Advisor secreto.

        # create key.p12
        openssl pkcs12 -export -inkey private.pem -in public.crt -name default -out key.p12 -passout pass:plain-text-password
    
        # base64 encode private.pem and public.crt
        base64 -w 0 ./private.pem > private-base64
        base64 -w 0 ./public.crt > public-base64
        # on Mac
        # base64 ./private.pem > private-base64
        # base64 ./public.crt > public-base64
    
        # create key and initial vector for AES-CBC-256 (P)
        # key length for aes256 is 256 bits around 32 characters
        TA_TEMP_KEY=`LC_CTYPE=C tr -dc A-Za-z0-9_ < /dev/urandom | head -c 32 | xargs`
        # key length for aes256 is 128 bits around 16 characters
        TA_TEMP_IV=`LC_CTYPE=C tr -dc A-Za-z0-9_ < /dev/urandom | head -c 16 | xargs`
    
        # create transformation-advisor-secret
        oc create secret generic transformation-advisor-secret \
        --from-literal=db_username='plain-text-username' --from-literal=secret='plain-text-password' \
        --from-file=ta_public_key=./public-base64 --from-file=ta_private_key=./private-base64 \
        --from-literal=ta_aes_key=$TA_TEMP_KEY --from-literal=ta_aes_iv=$TA_TEMP_IV \
        --from-file=key.p12=key.p12
     

Ahora puede continuar con la instalación.

Nota: La dirección transformation-advisor-secret se utiliza para otras credenciales internas. Esas otras credenciales se generan automáticamente, si no están ya presentes en el secreto, en el momento en que se crea la Transformation Advisor instancia.

Crear un secreto de extracción de imágenes para extraer las imágenes de registro autorizadas

Para poder utilizar Transformation Advisor es necesario conceder permisos de acceso al registro autorizado, lo que se consigue creando un Image Pull Secret y apuntando a él en la instalación. El nombre del secreto debe ser ibm-entitlement-key. Es necesario crear un secreto en el mismo espacio de nombres en el que está instalada la instancia del producto o de forma global.

Consulte el documento Acceso a las imágenes del Registro de Imágenes para obtener más información al respecto. A continuación se indica cómo apuntar al secreto desde Transformation Advisor página de configuración de instancias:

couchdb:
  imagePullSecret: ibm-entitlement-key

neo4j:
  imagePullSecret: ibm-entitlement-key
  
transadv:
  imagePullSecret: ibm-entitlement-key

transadvui:
  imagePullSecret: ibm-entitlement-key
 

Proporcione sus propias credenciales para acceder a Transformation Advisor a la base de datos interna de

Transformation Advisor crea credenciales aleatorias para comunicarse con las bases de datos internas ( CouchDB y Neo4j ) cuando se instala por primera vez.

Sin embargo, es posible proporcionar sus propias credenciales para este fin.

Las credenciales se guardan en un objeto Kubernetes secret (llamado transformation-advisor-secret por defecto), que puede crearse de la siguiente manera:

TA_TEMP_KEY=`LC_CTYPE=C tr -dc A-Za-z0-9_ < /dev/urandom | head -c 32 | xargs`
TA_TEMP_IV=`LC_CTYPE=C tr -dc A-Za-z0-9_ < /dev/urandom | head -c 16 | xargs`

oc -n <YOUR_TA_INSTANCE_NAMESPACE> create secret generic <YOUR_SECRET_NAME> \
  --from-literal=db_username=<YOUR_COUCHDB_USERNAME> \
  --from-literal=secret=<YOUR_COUCHDB_PASSWORD> \
  --from-literal=db_nonadmin_user=<YOUR_COUCHDB_NONADMIN_USERNAME> \
  --from-literal=db_nonadmin_secret=<YOUR_COUCHDB_NONADMIN_PASSWORD> \
  --from-literal=neo4j_username=<YOUR_NEO4J_USERNAME> \
  --from-literal=neo4j_secret=<YOUR_NEO4J_PASSWORD> \
  --from-literal=neo4j_auth=neo4j/<YOUR_NEO4J_PASSWORD>
 

Lea la sección Re-create the TA secret de este documento para ver cómo crear los archivos public-base64 y private-base64 .

Puede proporcionar su nombre secreto en el momento de la instalación de una Transformation Advisor instancia en: .authentication.ocp.secretName

Editar suites de cifrado y versiones TLS

Los conjuntos de cifrado se establecen automáticamente para Neo4j y el contenedor de interfaz de usuario.

Para el servidor y el contenedor CouchDB, puede establecerlos manualmente modificando esas variables en el momento de la instalación: couchdb.security.cipherSuites y transadv.security.cipherSuites.

Busca los valores por defecto en la tabla anterior. Añada el suyo propio como cadena separada por espacios en blanco.

Del mismo modo, las versiones TLS pueden establecerse manualmente para el contenedor CouchDB. La variable para ello es ' couchdb.security.tlsVersions. Consulte la tabla anterior para conocer los valores por defecto.