Creación de la instancia de Db2 utilizando el operador autónomo Db2U
Puede crear una instancia de IBM® Db2® que utilice el operador autónomo Db2U desde la consola de Red Hat® OpenShift® o desde la CLI.
- Esta tarea se correlaciona con el siguiente rol de Ansible : db2. Para obtener más información, consulte Instalación deIBM Maximo Application Suite con la colección Ansible.
- cuando instalas Db2 en IBM Cloud® y use IBM File Storage para IBM Cloud Siga los pasos que se describen en el siguiente tema para habilitar no_root_squash. Para obtener más información, consulte Configuración de IBM Cloud File Storage.
Antes de empezar
Si su entorno necesita cumplir con FIPS (Federal Information Processing Standard), en IBM Maximo Application Suite 8.10.1 o posterior, debe instalar una nueva instancia de Db2 dentro de un clúster de Red Hat OpenShift que esté habilitado para FIPS. El cifrado IPsec debe estar habilitado al instalar el clúster y la configuración de JDBC debe utilizar la conexión non-SSL
.
Para más información, ver Configuración de cifrado IPsec.
sh-4.4$ java -Dsemeru.fips=true Ciphers
Default Cipher
* TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA
* TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256
* TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
* TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384
* TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
* TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
* TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
* TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
* TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA
* TLS_ECDH_ECDSA_WITH_AES_128_CBC_SHA256
* TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA
* TLS_ECDH_ECDSA_WITH_AES_256_CBC_SHA384
* TLS_ECDH_RSA_WITH_AES_128_CBC_SHA
* TLS_ECDH_RSA_WITH_AES_128_CBC_SHA256
* TLS_ECDH_RSA_WITH_AES_256_CBC_SHA
* TLS_ECDH_RSA_WITH_AES_256_CBC_SHA384
Instalación utilizando la consola web de Red Hat OpenShift Container Platform
Procedimiento
- En el banner, pulse Importar YAML (
). Especifique el siguiente YAML:
--- apiVersion: cert-manager.io/v1 kind: Issuer metadata: name: "db2u-ca-issuer" namespace: "db2u" spec: selfSigned: {}
- Pulse Crear para suministrar el emisor del certificado de CA autofirmado.
- En el banner, pulse Importar YAML (
). Especifique el siguiente YAML:
--- apiVersion: cert-manager.io/v1 kind: Certificate metadata: name: "db2u-ca-certificate" namespace: "db2u" spec: secretName: "db2u-ca" duration: "175200h0m0s" renewBefore: "2160h0m0s" issuerRef: name: "db2u-ca-issuer" kind: Issuer isCA: true keyAlgorithm: rsa keySize: 4096 keyEncoding: pkcs8 usages: - cert sign - digital signature - key encipherment - server auth commonName: "ca.db2u" organization: - "IBM Maximo Application Suite" subject: countries: - GB streetAddresses: - London localities: - London organizationalUnits: - IBM Maximo Application Suite DB2U
- Pulse el botón Crear para suministrar el certificado de CA autofirmado para Db2.
- En el banner, pulse Importar YAML (
). Especifique el siguiente YAML. Este YAML crea el emisor del certificado de servidor de Db2 . Este emisor hace referencia al secreto que se crea a partir del emisor del certificado de CA en el paso anterior.
--- apiVersion: cert-manager.io/v1 kind: Issuer metadata: name: "db2u-issuer" namespace: "db2u" spec: ca: secretName: "db2u-ca"
- Verifique que el secreto db2u-ca existe y, a continuación, pulse Crear.
- En el banner, pulse Importar YAML (
). Especifique el siguiente YAML:
--- apiVersion: cert-manager.io/v1 kind: Certificate metadata: name: "db2u-certificate" namespace: "db2u" spec: secretName: "db2u-certificate" duration: "175200h0m0s" renewBefore: "2160h0m0s" issuerRef: name: "db2u-issuer" kind: Issuer usages: - cert sign - digital signature - key encipherment - server auth commonName: "db2u" dnsNames: - "db2u-manage-db2u.apps.cluster1.example-cluster.com" - "*.db2u-manage-db2u.apps.cluster1.example-cluster.com" - "c-db2u-manage-db2u-engn-svc.db2u.svc" - "*.c-db2u-manage-db2u-engn-svc.db2u.svc" organization: - "IBM Maximo Application Suite" subject: countries: - GB streetAddresses: - London localities: - London organizationalUnits: - IBM Maximo Application Suite DB2U
Nota: Para los nombres DNS, incluyasvc
yroutes
que se utilizan. Sustitúyalas por información de entorno real:{{db2_instance_name}}-{{db2_namespace}}.{{cluster_subdomain}}
*.{{db2_instance_name}}-{{db2_namespace}}.{{cluster_subdomain}}
c-{{db2_instance_name}}-db2u-engn-svc.{{ db2_namespace }}.svc
*.c-{{db2_instance_name}}-db2u-engn-svc.{{ db2_namespace }}.svc
- Pulse el botón Crear para crear el certificado de servidor de Db2 .
- En el banner, pulse Importar YAML (
). Especifique el siguiente YAML:
--- apiVersion: db2u.databases.ibm.com/v1 kind: Db2uCluster metadata: name: "db2u-manage" namespace: "db2u" spec: account: privileged: true addOns: graph: enabled: false rest: enabled: false version: "11.5.7.0-cn4" size: 1 environment: dbType: db2wh database: name: "BLUDB" settings: dftTableOrg: "ROW" ssl: secretName: "db2u-certificate" certLabel: "CN=db2u" instance: registry: DB2_4K_DEVICE_SUPPORT: "ON" DB2AUTH: 'OSAUTHDB,ALLOW_LOCAL_FALLBACK,PLUGIN_AUTO_RELOAD' DB2_FMP_RUN_AS_CONNECTED_USER: 'NO' DB2_WORKLOAD: MAXIMO mln: total: 1 license: accept: true podConfig: db2u: resource: db2u: requests: cpu: "2" memory: "12Gi" limits: cpu: "6" memory: "18Gi" storage: - name: meta type: create spec: storageClassName: "ocs-storagecluster-cephfs" accessModes: - ReadWriteMany resources: requests: storage: "100Gi" - name: data type: template spec: storageClassName: "ocs-storagecluster-ceph-rbd" accessModes: - ReadWriteOnce resources: requests: storage: "500Gi" - name: backup type: create spec: accessModes: - ReadWriteMany resources: requests: storage: "500Gi" storageClassName: "ocs-storagecluster-cephfs" - name: activelogs spec: accessModes: - ReadWriteOnce resources: requests: storage: "100Gi" storageClassName: "ocs-storagecluster-ceph-rbd" type: template - name: tempts spec: accessModes: - ReadWriteOnce resources: requests: storage: "100Gi" storageClassName: "ocs-storagecluster-ceph-rbd" type: template
- Pulse el botón Crear para crear la instancia de CR db2ucluster .
- Verifique que db2ucluster se haya creado correctamente.Pulse la página Inicio > Buscar , seleccione el proyecto db2u y busque el tipo de recurso Db2uCluster. Filtre la palabra clave de nombre de servicio con db2u-manage. A continuación, pulse sus detalles y espere hasta que esté enReadystate. El proceso puede tardar 10 minutos en completarse.
- Compruebe la información de inicio de sesión, URL, contraseña y ca crt de la instancia Db2.
Compruebe el servicio interno.
En la página Inicio > Buscar , seleccione el proyecto db2u y busque el tipo de recurso Service. Filtre la palabra clave de nombre de servicio con db2u-engn-svc. En los resultados de búsqueda, muestra el nombre de servicio similar a c-db2wh-xxxx-db2u-engn-svc.
Dentro del cluster, la URL JDBC es:jdbc:db2://c-db2u-manage-db2u-engn-svc.db2u.svc:50001/BLUDB:sslConnection=true;
Nota: El nombre de la instancia de Db2 es el que se proporciona en el archivo YAML db2ucluster . No es un nombre de instancia generado.Cuando instale Maximo Application Suite 8.10 o posterior en un clúster Red Hat OpenShift habilitado para FIPS, configure la URL JDBC para utilizar una conexión no SSL.- Editar elJdbcConfig archivo de administración >CustomResourceDefinitions y buscar
JdbcCfg
. - Cambie
sslEnabled
porfalse
. - Cambie
url
para utilizar el puertonon-ssl
.
Compruebe la contraseña de la instancia de Db2 para el usuario predeterminado de Db2 db2inst1.
Pulse Inicio > Buscar, seleccione el proyecto db2u y busque el tipo de recurso Secret. Filtre la palabra clave de nombre de servicio con -instancepassword. En los resultados de búsqueda, muestra el nombre de servicio similar a c-db2u-manage-instancepassword. A continuación, revele su contraseña.
El usuario y la contraseña de JDBC que se utilizan para acceder a la instancia de Db2 son:usuario: db2inst1 contraseña: xxx
Nota: Tenga en cuenta las opciones de autenticación de para Db2U cuando trabaje con la autenticación de usuario de Db2 .Compruebe el TLS interno que se utiliza para el acceso SSL de JDBC :
Pulse Inicio > Buscar, seleccione el proyecto db2u y busque el tipo de recurso Secret. Filtre la palabra clave de nombre de servicio con db2u-certificate. A continuación, revele su ca.crt.
- Editar elJdbcConfig archivo de administración >CustomResourceDefinitions y buscar
Instalación utilizando la interfaz de línea de mandatos (CLI) de Red Hat OpenShift
Procedimiento
- Cree un archivo YAML del catálogo del operador Db2U denominado db2catalog.yaml.
--- apiVersion: operators.coreos.com/v1alpha1 kind: CatalogSource metadata: name: ibm-db2uoperator-catalog namespace: openshift-marketplace spec: sourceType: grpc image: icr.io/cpopen/ibm-db2uoperator-catalog:latest imagePullPolicy: Always displayName: IBM Db2U Catalog publisher: IBM updateStrategy: registryPoll: interval: 45m
- Aplicar el archivo db2catalog.yaml al clúster de Red Hat OpenShift.
oc apply -f db2catalog.yaml
- Verifique el estado del origen de catálogo:
oc get catalogsource -n openshift-marketplace ibm-db2uoperator-catalog -o jsonpath='{.status.connectionState.lastObservedState} {"\n"}'
- Cree un espacio de nombres denominado db2u:
oc new-project db2u
- Cree el archivo OperandRequest YAML db2u-operator.yaml para instalar el operador Db2u :
--- apiVersion: operator.ibm.com/v1alpha1 kind: OperandRequest metadata: name: db2u-request namespace: "db2u" spec: requests: - operands: - name: ibm-db2u-operator registry: common-service registryNamespace: ibm-common-services
- Aplicar el archivo db2u-operator.yaml al clúster de Red Hat OpenShift.
oc apply -f db2u-operator.yaml
- Verifique que el operador Db2U se haya creado y se esté ejecutando correctamente:
oc get sub -n ibm-common-services ibm-db2u-operator -o jsonpath='{.status.installedCSV} {"\n"}'
Salida de ejemplodb2u-operator.v1.1.13
oc get csv -n ibm-common-services db2u-operator.v1.1.13 -o jsonpath='{ .status.phase } : {.status.message} {"\n"}'
Salida de ejemploSatisfactorio: la estrategia de instalación se ha completado sin errores
oc get deployments -n ibm-common-services db2u-operator-manager -o jsonpath="{.status.availableReplicas} {'\n'}"
Salida de ejemplo1
- Para suministrar el emisor de certificado de CA autofirmado, cree un archivo YAML de emisor de CA denominado caissuer.yaml.
--- apiVersion: cert-manager.io/v1 kind: Issuer metadata: name: "db2u-ca-issuer" namespace: "db2u" spec: selfSigned: {}
- Aplicar el archivo caissuer.yaml al clúster de Red Hat OpenShift.
oc apply -f caissuer.yaml
- Para suministrar el certificado de CA autofirmado para Db2, cree un archivo YAML de certificado de CA denominado cacert.yaml.
--- apiVersion: cert-manager.io/v1 kind: Certificate metadata: name: "db2u-ca-certificate" namespace: "db2u" spec: secretName: "db2u-ca" duration: "175200h0m0s" renewBefore: "2160h0m0s" issuerRef: name: "db2u-ca-issuer" kind: Issuer isCA: true keyAlgorithm: rsa keySize: 4096 keyEncoding: pkcs8 usages: - cert sign - digital signature - key encipherment - server auth commonName: "ca.db2u" organization: - "IBM Maximo Application Suite" subject: countries: - GB streetAddresses: - London localities: - London organizationalUnits: - IBM Maximo Application Suite DB2U
- Verifique que el certificado de CA se haya creado correctamente.
oc get certificates -n db2u NAME READY SECRET AGE EXPIRATION db2u-ca-certificate True db2u-ca 26s 2042-05-04T08:26:02Z
- Cree el archivo YAML issuer.yaml para crear el emisor de certificados del servidor Db2 . Este emisor hace referencia al secreto que se crea a partir del emisor del certificado de CA en el paso anterior.
--- apiVersion: cert-manager.io/v1 kind: Issuer metadata: name: "db2u-issuer" namespace: "db2u" spec: ca: secretName: "db2u-ca"
- Aplicar issuer.yaml al clúster de Red Hat OpenShift.
oc apply -f issuer.yaml
- Cree el archivo YAML certificate.yaml para suministrar el certificado de servidor de Db2 :
--- apiVersion: cert-manager.io/v1 kind: Certificate metadata: name: "db2u-certificate" namespace: "db2u" spec: secretName: "db2u-certificate" duration: "175200h0m0s" renewBefore: "2160h0m0s" issuerRef: name: "db2u-issuer" kind: Issuer usages: - cert sign - digital signature - key encipherment - server auth commonName: "db2u" dnsNames: - "db2u-manage-db2u.apps.cluster1.example-cluster.com" - "*.db2u-manage-db2u.apps.cluster1.example-cluster.com" - "c-db2u-manage-db2u-engn-svc.db2u.svc" - "*.c-db2u-manage-db2u-engn-svc.db2u.svc" organization: - "IBM Maximo Application Suite" subject: countries: - GB streetAddresses: - London localities: - London organizationalUnits: - IBM Maximo Application Suite DB2U
Nota: Para los nombres DNS, incluya svc y routes que se utilizan. Sustitúyalas por información de entorno real:{{db2_instance_name}}-{{db2_namespace}}.{{cluster_subdomain}}
*.{{db2_instance_name}}-{{db2_namespace}}.{{cluster_subdomain}}
c-{{db2_instance_name}}-db2u-engn-svc.{{ db2_namespace }}.svc
*.c-{{db2_instance_name}}-db2u-engn-svc.{{ db2_namespace }}.svc
- Aplicar certificate.yaml al clúster de Red Hat OpenShift.
oc apply -f certificate.yaml
- Cree el archivo YAML db2cluster.yaml para crear el clúster de Db2 :
--- apiVersion: db2u.databases.ibm.com/v1 kind: Db2uCluster metadata: name: "db2u-manage" namespace: "db2u" spec: account: privileged: true addOns: graph: enabled: false rest: enabled: false version: "11.5.7.0-cn4" size: 1 environment: dbType: db2wh database: name: "BLUDB" settings: dftTableOrg: "ROW" ssl: secretName: "db2u-certificate" certLabel: "CN=db2u" instance: registry: DB2_4K_DEVICE_SUPPORT: "ON" DB2AUTH: 'OSAUTHDB,ALLOW_LOCAL_FALLBACK,PLUGIN_AUTO_RELOAD' DB2_FMP_RUN_AS_CONNECTED_USER: 'NO' DB2_WORKLOAD: MAXIMO mln: total: 1 license: accept: true podConfig: db2u: resource: db2u: requests: cpu: "2" memory: "12Gi" limits: cpu: "6" memory: "18Gi" storage: - name: meta type: create spec: storageClassName: "ocs-storagecluster-cephfs" accessModes: - ReadWriteMany resources: requests: storage: "100Gi" - name: data type: template spec: storageClassName: "ocs-storagecluster-ceph-rbd" accessModes: - ReadWriteOnce resources: requests: storage: "500Gi" - name: backup type: create spec: accessModes: - ReadWriteMany resources: requests: storage: "500Gi" storageClassName: "ocs-storagecluster-cephfs" - name: activelogs spec: accessModes: - ReadWriteOnce resources: requests: storage: "100Gi" storageClassName: "ocs-storagecluster-ceph-rbd" type: template - name: tempts spec: accessModes: - ReadWriteOnce resources: requests: storage: "100Gi" storageClassName: "ocs-storagecluster-ceph-rbd" type: template
- Aplicar db2cluster.yaml al clúster de Red Hat OpenShift.
oc apply -f db2cluster.yaml
- Verifique el estado del clúster Db2U :
oc get db2ucluster -n db2u db2u-manage -o jsonpath='{.status.state} {"\n"}'
- Compruebe el nombre de usuario, la URL y la contraseña de la instancia Db2.Compruebe el servicio interno:
oc get svc -n db2u | grep -i engn-svc
Salida de ejemploc-db2u-manage-db2u-engn-svc NodePort 172.30.120.206 < none> 50000:30601/TCP,50001:30036/TCP
Dentro del cluster, la URL JDBC es:jdbc:db2://c-db2u-manage-db2u-engn-svc.db2u.svc:50001/BLUDB:sslConnection=true;
Nota:db2u-manage
es el nombre de instancia de la instancia de Db2 .Cuando instale Maximo Application Suite 8.10 o posterior en un clúster Red Hat OpenShift habilitado para FIPS, configure la URL JDBC para utilizar una conexión no SSL.- Editar elJdbcConfig archivo de administración >CustomResourceDefinitions y buscar
JdbcCfg
. - Cambie
sslEnabled
porfalse
. - Cambie
url
para utilizar el puertonon-ssl
.
Compruebe la contraseña de la instancia de Db2 para el usuario de Db2 predeterminado db2inst1:oc extract secret/c-db2u-manage-instancepassword -n db2u --keys=password --to=-
Salida de ejemplo# contraseña PcJ1fKYfFdA5AtA
El usuario y la contraseña de JDBC que se utilizan para acceder a la instancia de Db2 son:usuario: db2inst1 password: PcJ1fKYfFdA5AtA
Compruebe el ca.crt utilizado para conectar el puerto SSL de JDBC :oc extract secret/db2u-certificate -n db2u --keys=ca.crt --to=-
Salida de ejemplo# ca.crt -----BEGIN CERTIFICATE----- MIIDuzCCAqOgAwIBAgIQf4KcTIk5y8EEZeiUti0EOTANBgkqhkiG9w0BAQsFADBt MQswCQYDVQQGEwJHQjEPMA0GA1UEBxMGTG9uZG9uMQ8wDQYDVQQJEwZMb25kb24x KjAoBgNVBAsTIUlCTSBNYXhpbW8gQXBwbGljYXRpb24gU3VpdGUgREIyVTEQMA4G A1UEAxMHY2EuZGIydTAeFw0yMjA1MDkxOTA2MjZaFw00MjA1MDQxOTA2MjZaMG0x CzAJBgNVBAYTAkdCMQ8wDQYDVQQHEwZMb25kb24xDzANBgNVBAkTBkxvbmRvbjEq MCgGA1UECxMhSUJNIE1heGltbyBBcHBsaWNhdGlvbiBTdWl0ZSBEQjJVMRAwDgYD VQQDEwdjYS5kYjJ1MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAopzw Gz6FFCc1dsPAYJuxx7KnNsNJqyHCabo+VgQG4QkNzyMCwP2YmZZbvi7iajC+U2O/ dMME06LeHdcBFsmkRE7dYcGw8YewsQ8mRTwYveP92h/yLUGzQ8IuhRZ70HZ5ozgt 4Cs5K0p0zqnkkOBbFltJZkWdnGerEnu025LUcwEfJlsV3LmBTuOodKNLQ6VW5MWF 6HrLK4I2jPfPFno1v/9V+rtRUiFXZSEwsmO2imQTgVw9yM+oLZx4be05hYlfWE3c nwVfHkygZKVxIsbd4zm/U7k/oHaEhIPt9gyWXLA3pjdYo2jGXX2btp8xS8UcuI1w Qew0QtrK6Kc56CgobwIDAQABo1cwVTAOBgNVHQ8BAf8EBAMCAqQwEwYDVR0lBAww CgYIKwYBBQUHAwEwDwYDVR0TAQH/BAUwAwEB/zAdBgNVHQ4EFgQUmk4PmrKaFUWO 18/P9Zgs6J9Tv9IwDQYJKoZIhvcNAQELBQADggEBAEmgttI/N5/9lSDRH8AVTMyr prOQYvt9Wsm5hYvHIkulDtFMpkg6SZ7HzUnRIiGBzlXqC7TvAiQLauacpOJciBoq Wgkh5OgBBldl/KZS8CuNk/KEym+DPw+cb8LrllpPNW/nKuc/0I8mDNsEv8zwkYki yymaTSr+MmNjztz+iqtmiOnWLVome721x1lbEmcWUo6oxQxU9MbPmJiJOPzkcDx7 dZi087RuJ9aQxDkhzDwhZEUssGFDbql+tlXZxy1DtE2spVAxXBai6wqScUceK8sE geUcQRO4VjMEb4RTrOb8QjJOVOeOqE71nARyWTEjcVscHstgRrpcGnSlAVfLE7w= -----END CERTIFICATE-----
- Editar elJdbcConfig archivo de administración >CustomResourceDefinitions y buscar