Sustitución de certificados para Netezza Performance Server Replication Services 3.0.X.X

Aprenda a cambiar los certificados de Netezza Performance Server o a renovar los certificados que están a punto de caducar.

Acerca de esta tarea

Si desea sustituir los certificados, tenga en cuenta que es necesario un tiempo de inactividad. Planifique el procedimiento en consecuencia.

Procedimiento

  1. En Cloud Pak for Data System, desactive la supervisión de NRS por Platform Manager.
    ap apps disable NRS
  2. Detenga la replicación como se describe en Iniciar y detener la replicación en un nodo determinado y vuelva a este procedimiento.
  3. Detenga todos los sistemas de replicación en todos los nodos.
    docker stop nrs_replmgmt nrs_broker nrs_mirrormaker nrs_zookeeper
  4. Prepare sus certificados.
    • Generación de certificados autofirmados
      1. Seleccione un Cloud Pak for Data System System desde el que desee generar los archivos de autoridad de certificación (CA).
      2. Para generar nuevos certificados, cree un archivo de contraseñas para cada nodo.
        Por ejemplo:
        echo -n PASSWORD > NODE PASSWORD FILE PATH
      3. Cree una contraseña para la clave de la autoridad de certificación ( cacert.pem ) y guárdela en password_file.
        echo -n PASSWORD > CAKEY PASSWORD FILE PATH

        La contraseña no debe contener espacios en blanco ni al principio ni al final. Las contraseñas con espacios en blanco al principio o al final son rechazadas por el script nrscertmgr.

        Asegúrese de que el archivo y los certificados relacionados se colocan en un directorio conocido en todos los sistemas, por ejemplo /root/mycerts.

        Sugerencia:

        Asegúrese de incluir -n en el comando. Con este parámetro, el archivo de contraseña no tiene una nueva línea de terminación. Con una nueva línea al final del archivo de contraseñas, la configuración podría fallar.

      4. Ejecute el script nrscertmgr.
        nrscertmgr generate-cacert --passfile /path/to/cakey_password_file
        Ejemplo:
        nrscertmgr generate-cacert --passfile /path/to/cakey_password_file
        
        Running command: 'openssl req -new -subj /C=US/ST=CA/CN=localhost -newkey rsa:4096 -nodes
                -sha256 -x509 -days 3650 -keyout cakey.pem -out cacert.pem -passin pass:***'
      5. Copie cakey.pem, cacert.pem, y cakey_password_file que generó en los subpasos b y c al otro Cloud Pak for Data System.

        Asegúrese de que los archivos se colocan en un directorio conocido en todos los sistemas, por ejemplo /root/mycerts.

    • Generación de certificados personalizados:
      1. Seleccione un Cloud Pak for Data System System desde el que desee generar los archivos de autoridad de certificación (CA).
      2. Cree un archivo index.yaml.
        Rellene el archivo como en el ejemplo index.yaml :
        certs:
          cacert:
            cert: /path/to/cacert.pem
          nodes:
            replication-node-1.fqdn:
              cert: /path/to/rn1-ccertfile.pem
              key: /path/to/rn1-ckeyfile.pem
              password: /path/to/rn1-cpassword
            replication-node-2.fqdn:
              cert: /path/to/rn2-certfile.pem
              key: /path/to/rn2-ckeyfile.pem
              password: /path/to/rn2-cpassword

        Las contraseñas no deben contener espacios en blanco. Utilizar rutas absolutas.

      3. Copie index.yaml que generó en los subpasos b al otro Cloud Pak for Data System.

        Asegúrese de que los archivos se colocan en un directorio conocido en todos los sistemas, por ejemplo /root/mycerts.

  5. Despliegue los certificados.
    • Para certificados autofirmados, ejecute:
      ./nrscertmgr add-node host_fqdn /path/to/cacert.pem /path/to/cakey.pem /path/to/password --cakey-passfile /path/to/cakey_password_file --out /tmp/certs --deploy
    • Para certificados personalizados, ejecute:
      ./nrscertmgr package-certs host_fqdn /path/to/index.yaml --out /tmp/certs --deploy
  6. En cada nodo, reinicie todos los contenedores.
    docker restart nrs_replmgmt nrs_broker nrs_mirrormaker nrs_zookeeper
  7. Asegúrese de que nrs_broker está funcionando, ya que a veces puede no conectarse.
    docker ps
    Ejemplo:
    [root@exegeses1 certs]# docker ps
    
    CONTAINER ID   IMAGE                 COMMAND                  CREATED          STATUS          PORTS     NAMES
    9ce2b4fb8622   replmgmt:3.0.1.0      "/usr/bin/python3 /o…"   12 minutes ago   Up 12 minutes             nrs_replmgmt
    ea7a1492d199   mirrormaker:3.0.1.0   "/bin/sh -c $IBM_INS…"   12 minutes ago   Up 12 minutes             nrs_mirrormaker
    6214f5f44404   broker:3.0.1.0        "/bin/sh -c $IBM_INS…"   12 minutes ago   Up 12 minutes             nrs_broker
    d1ba0fbc54db   zookeeper:3.0.1.0     "/bin/sh -c $IBM_INS…"   12 minutes ago   Up 12 minutes             nrs_zookeeper
    Si nrs_broker no está funcionando, reinícielo de nuevo:
    docker restart nrs_broker

    Si nrs_broker no aparece después de estos intentos, asegúrese de que los certificados son correctos.

  8. Sustituya los certificados de nzdr por los nuevos.
    • Si utiliza certificados autofirmados, sustituya la clave de certificación de cacert en /opt/ibm/appliance/storage/nrs/nps/cert/cacert por su nueva cacert. Es el mismo archivo que utilizó en el paso 3 para /path/to/cacert.pem.
      cp /path/to/cacert /opt/ibm/appliance/storage/nrs/nps/cert/cacert

      El certificado y la clave deben utilizar el cert / clave generada para este sistema en particular que se guarda en /tmp/certs/.

      Ejemplo:
      cp /tmp/cert/hostname for this system.pem /opt/ibm/appliance/storage/nrs/nps/cert/cert
      cp /tmp/cert/hostname for this system_key.pem /opt/ibm/appliance/storage/nrs/nps/cert/key
    • Si utiliza certificados personalizados, sustituya la información de cacert en index.yaml en /opt/ibm/appliance/storage/nrs/nps/cert/cacert por la información del archivo index.yaml que utilizó en el paso 3 para /path/to/index.yaml.
      cp /path/to/cacert /opt/ibm/appliance/storage/nrs/nps/cert/cacert
      Ejemplo:
      cp /path/to/cert for this system /opt/ibm/appliance/storage/nrs/nps/cert/cert
      cp /path/to/key for this system_key.pem /opt/ibm/appliance/storage/nrs/nps/cert/key
  9. Inicie la replicación como se describe en Iniciar y detener la replicación en un nodo determinado y vuelva a este procedimiento.
  10. En Cloud Pak for Data System, active la supervisión mediante Platform Manager.
    ap apps enable NRS