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.
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.
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
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).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:
- el certificado público sea
public.crty la clave privada seaprivate.pem. - 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:
Cambie al espacio de nombres
ta, o cree uno si no ha instalado Transformation Advisor.# switch the project oc project tao
# create ta ns if it's not already there oc create ns taElimine el Transformation Advisor secreto
transformation-advisor-secret, si existe.oc delete secret transformation-advisor-secretSi 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
caCerten 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
caCerten 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.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.
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.