Actualizaciones manuales

Los siguientes pasos de actualización manual se pueden usar en caso de que falle la actualización automática.

1. Actualización manual de PANW

En este paso se actualizan los siguientes componentes operativos.

Ámbito Componentes accionables
Infraestructura PANW

Esta actualización provoca interrupciones mínimas en el tráfico de las conexiones externas, con un tiempo de inactividad de aproximadamente un minuto. Estas actualizaciones son manuales. PANW funciona en modo de alta disponibilidad (HA).

1.1. Definiciones

Las versiones del software de firewall de Palo Alto se muestran en el formato X.Y.Z.

Versión de software Formato
Lanzamiento de una FUNCIÓN X.Y
Versión de MANTENIMIENTO BASE X.Y.0
ÚLTIMA VERSIÓN DE MANTENIMIENTO de una versión de función determinada X.Y.Z: Z es la última versión de mantenimiento de la futura versión X.Y.

1.2. Procedimiento de actualización

1.2.1. Ruta de actualización

Antes de continuar, identifica el caso que describe tus necesidades: caso 1, caso 2 o caso 3.

  • Caso 1: X.Y es la versión de destino.
  • Caso 2: X.Y no es la versión de destino.
  • Caso 3: La versión del cortafuegos es X.Y, donde X.Y es la última versión FEATURE de X.

En las siguientes descripciones de los casos 1, 2 y 3 se indica qué rutas de actualización corresponden a cada uno.

Caso Descripción y acción
Caso 1
X.Y es la versión a la que quieres actualizar (no la versión de destino).
Descarga e instala la versión de MANTENIMIENTO específica para X.Y: X.Y(Z2).
Caso 2
X.Y no es la versión a la que quieres actualizar (no es la versión de destino).
Descarga e instala la ÚLTIMA versión de mantenimiento de X.Y: X.Y.Z1
Descarga la versión BASE MAINTENANCE: X.(Y+1).0

Si X.(Y+1) es la versión FEATURE de destino,
Si X.(Y+1) no es la versión de la FUNCIÓN objetivo,
  • Repite el caso 2 hasta que se cumpla y, a continuación, aplica el caso 1.
  • Si X.(Y+1) es la última versión FEATURE de X, ve al caso 3.
Caso 3
La versión del cortafuegos es X.Y, donde X.Y es la última versión de la función de X.
Descarga la versión BASE MAINTENANCE: (X+1).0.0
Vuelve al caso 1.

Para obtener información sobre la ruta de actualización, además de la que se proporciona aquí, consulta https://www.paloaltonetworks.com/.

1.2.2. Configuración de la actualización

Distributed Cloud usa dos cortafuegos. Antes de iniciar una actualización, comprueba que ambos firewalls tengan la misma versión. Si no es así, realiza las actualizaciones necesarias para igualar sus versiones antes de empezar a actualizar ambas a la siguiente versión de destino. Hazlo cada vez que tengas previsto realizar una actualización.

  1. Asegúrese de que ambos cortafuegos funcionan correctamente:
    1. En el panel de control, comprueba que la alta disponibilidad (HA) esté en verde.
    2. Verifica que no haya enlaces inactivos en la red.
  2. Crea una copia de seguridad de las configuraciones de ambos cortafuegos.

  3. Ve a Dispositivo > Alta disponibilidad.

  4. Busca la pestaña Comandos operativos cerca del principio de la página Dispositivo y haz clic en ella.

    1. Busque Alta disponibilidad en el panel de navegación y haga clic en él.
    2. Cuando aparezca la opción Suspender dispositivo local para alta disponibilidad, haz clic en ella.

    Suspender dispositivo local para HA

    Imagen 1. Suspender la alta disponibilidad

  5. Verifica que el estado devuelto del cortafuegos local sea suspended.

    Verificar

    Imagen 2. Verificar que el cortafuegos está suspendido

  6. Actualiza el cortafuegos.

  7. Para recuperarse del estado suspended, haga clic en Hacer que el dispositivo local esté disponible para alta disponibilidad.

    Hacer que la alta disponibilidad esté disponible

    Imagen 3. Hacer que la alta disponibilidad esté disponible

    Vuelve al primer paso y repite el proceso con el segundo cortafuegos, siguiendo la ruta de actualización.

1.3. Detalles del procedimiento de actualización de ejemplo

  1. Comprueba la versión actual de PAN-OS.

    show system info | match sw-version
    

    Si el PAN-OS no tiene la versión de software de destino, actualiza el dispositivo.

  2. Sigue el procedimiento de actualización específico de la ruta que se indica.

  3. Para verificar tu ruta, consulta la ruta de actualización en el sitio web paloaltonetworks.com en https://docs.paloaltonetworks.com/pan-os/10-1/pan-os-upgrade/upgrade-pan-os/upgrade-the-firewall-pan-os/determine-the-upgrade-path.html desde tu ordenador local antes de continuar.

  4. Asegúrate de que el dispositivo esté registrado y tenga licencia.

  5. Busca el firmware más reciente para extraerlo:

    gdcloud artifacts tree ${ARTIFACTS_ROOT}/oci | grep "gdch-firewall"
    

    El nombre del archivo contiene la versión de compilación. Ejemplo:

    │   │   └── gdch-firewall/os:1.10.0-gdch.1426
    

    En el ejemplo anterior, la versión de compilación es 1.10.0-gdch.1426.

  6. Copia el nombre del archivo y extrae el firmware. Por ejemplo:

    1. Copia gdch-firewall/os:1.10.0-gdch.1426 como nombre de archivo. Usa este valor para sustituir FIRMWARE_FILENAME en el siguiente comando:

      export FW_FIRMWARE_TAR_FILENAME=FIRMWARE_FILENAME
      
    2. Extrae el firmware de la imagen OCI:

      gdcloud artifacts extract ${ARTIFACTS_ROOT}/oci firmware \
          --image-name=${FW_FIRMWARE_TAR_FILENAME:?}
      

      Sustituye FW_FIRMWARE_TAR_FILENAME por el nombre del archivo tar del firmware del cortafuegos.

    3. Extrae el firmware:

      tar -xvf firmware/gdch-firewall/os.tar.gz
      
  7. Reúne el archivo del SO actualizado y súbelo al dispositivo firewall para iniciar la actualización.

consola

  1. Establece la conectividad IP con el firewall y tu ordenador local, y ve a la interfaz de usuario.
  2. Para subir el software al cortafuegos, selecciona Dispositivo > Software y haz clic en Subir, situado al final de la página.

    Subir actualizaciones dinámicas

    Imagen 4. Subir actualizaciones de software

  3. Una vez que se haya subido el software, aparecerá como disponible en la tabla y se mostrará una acción para instalarlo.

  4. Descarga las últimas actualizaciones dinámicas de la categoría Aplicaciones (menú desplegable) en https://support.paloaltonetworks.com/Updates/DynamicUpdates.

  5. Suba Dynamic Updates al cortafuegos haciendo clic en Upload (Subir). Puede que solo tengas que seguir este paso una vez.

  6. Instala lo que se ha subido del archivo: haz clic en Instalar desde archivo.

    Instalar desde un archivo

    Imagen 5. Selecciona Instalar desde archivo.

  7. Busca la columna encabezada por la palabra ACCIÓN en la figura 6. En esa columna, selecciona Instalar para instalar el software. El cortafuegos se reiniciará.

    Actualizado

    Imagen 6. Columna Acción que muestra la opción de instalar

  8. Vaya a la página PANEL DE CONTROL para ver el panel Información general. Busca Versión de software y comprueba que el valor asociado a ella ha cambiado con respecto al valor de la versión original. De esta forma, se verifica el cambio de versión.

    Verificar en el panel de control

    Imagen 7. La versión del software muestra el cambio

  9. Repite estos pasos según sea necesario en función de la ruta de actualización.

kubectl

Sigue estas instrucciones de la línea de comandos para actualizar PAN-OS cuando no tengas acceso a Internet:

  1. Copia el firmware con SCP:

    scp import software from ubuntu@<host>:/home/ubuntu/gdcloud_v8/images/PanOS_5200-XX.XX.XX
    

  2. Solicita la versión del software del sistema que necesites:

    request system software install version XX.XX.XX
    

    De esta forma, se genera el ID de trabajo que se usará en el siguiente paso. A continuación, se muestra un mensaje de salida de ejemplo:

    Software install job enqueued with jobid 2. Run 'show jobs id 2' to monitor its
    status. Please reboot the device after the installation is done.
    
  3. Monitoriza el estado del trabajo:

    show jobs id 2
    
  4. Reinicia PAN-OS después de la instalación:

    request restart system
    

    Si no puedes actualizar PAN-OS y no has cometido ningún error, licencia PAN-OS y actualízalo con actualizaciones dinámicas. Asegúrate de que las claves de licencia estén en el archivo o directorio cell.yaml. Consulta Comprobar las configuraciones.

  5. Para instalar una actualización dinámica, busca la versión más reciente de la actualización dinámica en el portal de PAN o en la ubicación de la unidad.

  6. Copia el contenido para el cortafuegos con SCP:

    # scp import content from
    ubuntu@<host_ip>::/home/ubuntu/gdcloud_v8/images/panupv2-all-contents-8580-7429
    
  7. Instala el contenido:

    request content upgrade install  skip-content-validity-check yes file panupv2-all-contents-8580-7429
    
  8. Sube PAN-OS a la máquina host:

    1. Conecta tu portátil al conmutador de gestión que se encuentra en el mismo rack que la máquina host.
    2. Asigna una dirección IP a tu portátil desde la red de gestión vlan97.
    3. Copia de forma segura PAN-OS del portátil a la máquina host:

      scp ~/Downloads/Pan* ubuntu@10.251.243.79:~
      Warning: Permanently added '10.251.243.79' (ED25519) to the list of known hosts.
      ubuntu@10.251.243.79's password:
      

2 Activa la actualización automática del HSM

En este paso se actualizan los siguientes componentes operativos.

Ámbito Componentes accionables
Infraestructura HSM

Para actualizar el HSM, debes crear un HSMUpgradeRequest y comprobar periódicamente el estado de la solicitud de actualización.

Se generan automáticamente una o varias CTMClusterUpgradeRequests para actualizar cada HSMCluster a la siguiente versión de firmware en la ruta de actualización hasta alcanzar la versión de firmware de destino. La actualización del HSM no interrumpe el servicio y tarda unas dos horas.

La duración del tiempo de inactividad de esta actualización depende de la integración. Un HSM configurado con varias direcciones puede someterse a actualizaciones continuas sin interrupciones.

  1. Asigna el valor KUBECONFIG al archivo kubeconfig del clúster de administrador raíz.

    export KUBECONFIG=ROOT_ADMIN_KUBECONFIG
    
  2. Crea un HSMUpgradeRequest recurso personalizado. Crea un hsmupgrade.yaml e incluye el CurrentGDCHVersion y el TargetGDCHVersion.

    Ejemplo de recurso personalizado:

    apiVersion: "upgrade.private.gdc.goog/v1alpha1"
    kind: HSMUpgradeRequest
    metadata:
       name:  HSM_UPGRADE_REQUEST_NAME
       namespace: gpc-system
    spec:
       currentGDCHVersion: "1.10.X-gdch-xxx"
       targetGDCHVersion: "1.11.y-gdch.yyyy"
    
  3. Aplica el nuevo recurso personalizado:

    kubectl --kubeconfig=${KUBECONFIG:?} apply -f hsmupgrade.yaml
    
  4. Monitoriza la actualización del HSM consultando el Status de los recursos HSMUpgradeRequest y CTMClusterUpgradeRequest creados.

    kubectl --kubeconfig=${KUBECONFIG:?} describe HSMUpgradeRequest HSM_UPGRADE_REQUEST_NAME -n gpc-system
    

    Ejemplo de Status salida de un HSMUpgradeRequest completado:

    Status:
    Conditions:
     Last Transition Time:  2023-08-03T18:20:50Z
     Message:
     Observed Generation:   1
     Reason:                PullFirmwareImages
     Status:                True
     Type:                  FirmwareImagesPulled
     Last Transition Time:  2023-08-03T18:20:50Z
     Message:               CTM upgrade request to version:2_12_0 is in progress
     Observed Generation:   1
     Reason:                CTMClusterUpgradeInProgress
     Status:                True
     Type:                  InProgress
     Last Transition Time:  2023-08-03T18:41:54Z
     Message:               CTM upgrade request to target version:2_12_0 completed
     Observed Generation:   1
     Reason:                AllCTMClusterUpgradeRequestsCompleted
     Status:                True
     Type:                  AllComplete
    
    kubectl --kubeconfig=${KUBECONFIG:?} get ctmclusterupgraderequests -n gpc-system
    
    kubectl --kubeconfig=${KUBECONFIG:?} describe ctmclusterupgraderequests CTM_CLUSTER_UPGRADE_REQUEST_NAME -n gpc-system
    

    Ejemplo de Status salida de un CTMClusterUpgradeRequest completado:

    Status:
    Conditions:
     Last Transition Time:  2023-09-11T18:08:25Z
     Message:               CTM pre upgrade checks succeed. The system is eligible to upgrade.
     Observed Generation:   1
     Reason:                CTMPreUpgradeChecksReady
     Status:                True
     Type:                  PreUpgradeCheckCompleted
     Last Transition Time:  2023-09-11T18:18:31Z
     Message:               HSM backup completed. The system is ready to upgrade.
     Observed Generation:   2
     Reason:                HSMBackupCompleted
     Status:                True
     Type:                  BackupCompleted
     Last Transition Time:  2023-09-11T18:18:31Z
     Message:               Starting HSM upgrades for cluster.
     Observed Generation:   2
     Reason:                hsmclusterClusterUpgradeInProgress
     Status:                True
     Type:                  ClusterUpgradeInProgress
     Last Transition Time:  2023-09-11T19:46:22Z
     Message:
     Observed Generation:   2
     Reason:                ReconcileCompleted
     Status:                True
     Type:                  AllComplete
    
    

3. Actualización manual de ONTAP

Si vas a realizar una actualización manual en un sistema con un clúster de almacenamiento, sigue estos pasos:

Obtén la imagen de actualización del SO con el método 1 12.4.1 o con el método 2 12.4.2. Estos muestran la misma secuencia de pasos, ya que solo usas uno de ellos:

3.1. - Método de recogida 1

Usa este método para obtener los paquetes actualizables de gdch.tar.gz.

  1. Si estás en una máquina host y tienes acceso al paquete de lanzamiento, obtén la imagen del registro de Harbor:

    # Download the upgrade OS package
    OCI_PATH=$ARTIFACTS_ROOT/oci
    gdcloud artifacts extract $OCI_PATH storage --image-name=gpc-system-storage/storage:9.13.1P1
    
    tar -xvzf storage/gpc-system-storage/storage.tar.gz
    

    Si la extracción falla, intenta buscar el archivo correcto con: sh gdcloud artifacts extract $OCI_PATH tree | grep storage

  2. Busca el archivo en storage/9.13.1P1.tar.

  3. Recopila el archivo del SO de actualización y súbelo al sitio de almacenamiento para iniciar la actualización. Si ONTAP aún no está instalado, sirve esos archivos en el bootstrapper y haz que el nodo extraiga la imagen.

3.2. - Método de recogida de feeds 2

Si el clúster de administrador raíz ya está en funcionamiento, puedes obtener la imagen de actualización directamente del registro de artefactos de GDC.

  1. Obtén una imagen de Artifact Registry:

    https://gpc-istio-ingressgateway-IP/artifacts/serve/base64url encoding of the artifact reference
    
  2. Descarga el archivo de actualización:

    IMAGE_BASE64_URL=$(echo "gpc-system-storage/storage:ontap" | base64)
    
    # The OS file is located at:
    https://gpc-istio-ingressgateway-IP/artifacts/serve/IMAGE_BASE64_URL
    

La referencia del artefacto es gpc-system-storage/storage:ontap..

  1. Visita la URL, que se indica como https://gpc-istio-ingressgateway-IP/artifacts/serve/IMAGE_BASE64_URL, y descarga el paquete del SO de forma local.
  2. Reúne el archivo del SO de actualización y súbelo al sitio de almacenamiento para iniciar la actualización.

3.3. Subir una imagen a ONTAP

  1. Abre la URL de gestión de ONTAP y busca la página Resumen.
  2. Haz clic en el botón Actualización de ONTAP.

    Hacer clic en el botón Actualizar ONTAP

    Imagen 8. Botón Actualizar de ONTAP

  3. Haz clic en +Añadir imagen y sube la imagen que hayas obtenido con el método de obtención 1 o el método de obtención 2.

    Haz clic en el botón +Añadir actualización de imagen.

    Imagen 9. Botón +Añadir imagen

3.4. Comprobación preparatoria de la actualización de ONTAP

Después de subir la imagen, haz clic en Actualizar para iniciar la comprobación previa. Aparece un mensaje de advertencia, como se ve en la siguiente imagen, que dice "Actualizar con advertencias".

Haz clic en el botón Actualizar con advertencias.

Imagen 10. Botón para actualizar con advertencias

Cuando veas el mensaje de advertencia, haz lo siguiente:

  1. Comprueba que no haya ningún elemento de acción que debas llevar a cabo. Comprueba que no haya ningún elemento que pueda afectar a la actualización.
  2. Realiza la siguiente comprobación preparatoria:

    • Verifica que el clúster y los nodos estén en buen estado y que la conmutación por error del almacenamiento esté configurada.
    • Verifica que no haya alertas en el sistema de almacenamiento.
    • Verifica que el uso de la CPU y del disco sea inferior al 50% en la ventana de actualización.
    • Verifica que no haya trabajos en ejecución en el sistema de almacenamiento.
      Por ejemplo, los trabajos de volumen y agregación pueden estar en ejecución o en cola. Espera a que terminen.

    • Comprueba que el DNS esté activo (si se ha configurado).

    • Comprueba que todas las interfaces de red estén en el nodo doméstico. Si no es así, vuelve a colocarlos en los nodos de la casa.

    • Si se ha configurado SnapMirror, asegúrate de que esté suspendido en el momento de la actualización.

    • Sigue las recomendaciones de actualización del sistema de almacenamiento para todos los procedimientos.

3.5. Iniciar la actualización

  1. En el clúster de administrador raíz, crea un objeto de API de Kubernetes y usa la CLI kubectl para aplicarlo al clúster de administrador raíz:

    apiVersion: upgrade.storage.private.gdc.goog/v1alpha1
    kind: FileStorageUpgradeRequest
    metadata:
     name: test
     namespace: gpc-system
    spec:
     fileStorageUpgradeMode: Manual
     storageClusterRef:
       name: $StorageClusterName
       namespace: gpc-system
     targetVersion: 9.10.1
    
  2. Haz clic en Actualizar con advertencias.

    Haz clic en el botón Actualizar con advertencias.

    Imagen 11. Botón Actualizar con advertencias

3.6. Actualizar en un sistema en blanco

Si por algún motivo se ha restablecido el almacenamiento de ONTAP y aún no hay ningún clúster, debes actualizar los nodos uno a uno. Para hacerlo, sigue estos pasos:

  1. Descarga la versión más reciente del software ONTAP. La convención de nomenclatura de archivos es similar a la del siguiente ejemplo: 9.13.1P1_ONTAP_image.tgz.
  2. Crea un directorio para alojar el archivo de imagen de ONTAP.

    mkdir files
    mv 9.13.1P1_ONTAP_image.tgz files
    
  3. Aloja la imagen en el bootstrapper con Python 3.

    # create a webserver with python
    python3 -m http.server -d files
    Serving HTTP on 0.0.0.0 port 8000 (http://0.0.0.0:8000/) ...
    
  4. Usa la CLI system node reboot para reiniciar el nodo.

  5. Pulsa Control+C para interrumpir el ciclo de arranque. Cuando veas el menú de arranque, selecciona la opción 7: Instalar software nuevo primero. El menú de arranque tiene este aspecto:

    > system node reboot
    
    Warning: Are you sure you want to reboot node "ag-ad-stge02-02"?
    {y|n}: y
    
    # interrupt the boot cycle using Ctrl-C
    
    *******************************
    *                             *
    * Press Ctrl-C for Boot Menu. *
    *                             *
    *******************************
    ^CBoot Menu will be available.
    
    Please choose one of the following:
    
    (1)  Normal Boot.
    (2)  Boot without /etc/rc.
    (3)  Change password.
    (4)  Clean configuration and initialize all disks.
    (5)  Maintenance mode boot.
    (6)  Update flash from backup config.
    (7)  Install new software first.
    (8)  Reboot node.
    (9)  Configure Advanced Drive Partitioning.
    (10) Set Onboard Key Manager recovery secrets.
    (11) Configure node for external key management.
    Selection (1-11)? 7
    

    El resultado es similar al siguiente:

    This procedure is not supported for Non-Disruptive Upgrade on an HA pair.
    The software will be installed to the alternate image, from which the node is
    not currently running. Do you want to continue? {y|n} y
    
    In order to download the package, a temporary network interface needs to be
    configured.
    
    Select the network port you want to use for the download (for example, 'e0a')
    
  6. Configura la dirección IP en la interfaz e0M. A continuación, reinicia el nodo.

    Select the network port you want to use for the download (for example, 'e0a')
    > e0M
    
    The node needs to reboot for this setting to take effect.  Reboot now? {y|n}
    (selecting yes will return you automatically to this install wizard) y
    
    Rebooting...
    
    ## Configure the mgmt interface (e0M)
    
    In order to download the package, a temporary network interface needs to be
    configured.
    
    Enter the IP address for port e0M: 172.22.115.131
    Enter the netmask for port e0M: 255.255.255.0
    Enter IP address of default gateway: 172.22.115.1
    
    What is the URL for the package? http://172.22.112.67:8000/files/9.13.1P1_ONTAP_image.tgz
    What is the user name on "172.22.112.67", if any?
    
  7. Usa la version CLI para confirmar la versión de software actual. La salida será similar a la siguiente:

    > version
    NetApp Release 9.13.1P1: Tue Jul 25 10:19:28 UTC 2023
    

    3.7. Actualizar la MTU de las LIFs del agente de copia de seguridad

El sistema de copia de seguridad y restauración usa LIFs en ONTAP. El valor de MTU debe ser inferior al máximo de 9000. El agente de copia de seguridad se encarga de ello. Una vez que ONTAP esté en funcionamiento y en buen estado, reduce el tamaño de la unidad de transmisión máxima (MTU) de las LIFs del agente de backup:

net port broadcast-domain modify -broadcast-domain backup-agent-network -mtu 8000

Para comprobar que se ha completado correctamente, ejecuta el siguiente comando:

net port broadcast-domain show -broadcast-domain backup-agent-network

Debería ver el nuevo valor de MTU, que es 8000.

4. Actualización manual de la infraestructura principal de Operations Suite

Este proceso de actualización solo se aplica a la actualización de la versión 1.12.x a la 1.13.0.

4.1 Realizar copias de seguridad

  1. Realiza una copia de seguridad de la VM siguiendo las instrucciones que se indican en las instrucciones de configuración de Operation Center.
  2. Crea una copia de seguridad de la unidad H:\operations_center. (Esta acción permite revertir la actualización).
  3. Crea una copia de seguridad de C:\dsc, C:\operations_center\ y C:\config\ en CONFIG1. Esta copia de seguridad proporciona una referencia al crear la nueva configuración config.ps1.

4.2 Actualizar máquinas virtuales

  1. Obtén el directorio de instalación.

    1. Descarga el paquete de componentes de OIC siguiendo las instrucciones de la sección Descargar archivos.

    2. Extrae el directorio operations_center del archivo prod_IT_component_bundle.tar.gz descargado.

      tar -zxvf prod_IT_component_bundle.tar.gz ./release/operations_center
      
    3. Sustituye H:\operations_center por el directorio extraído en el paso anterior.

  2. Actualiza config.ps1 con datos específicos del sitio

    El archivo de configuración config.ps1 proporciona toda la información necesaria para crear y configurar el entorno de infraestructura de Operations Suite (OI). Para actualizar el archivo de configuración, debe recopilar toda la información siguiente. La copia de seguridad del archivo config.ps1 es una buena referencia para evitar que se sobrescriban los ajustes por error. Importante: No continúes hasta que config.ps1 se haya completado correctamente.

    • El resultado de la configuración de red de la herramienta occonfigtool, especialmente el archivo ocinfo.common.opscenter.local.txt. Los nombres de las redes, como OCCORE-SERVERS que se mencionan en los pasos siguientes, hacen referencia a la columna Name de ese documento.
    • El nombre de dominio y la dirección IP del servidor DNS de cada celda de GDC que gestiona este OI. Estos datos están disponibles en los resultados del cuestionario de información del cliente (CIQ).

    Haz todos los cambios en el host BM01 como Administrator.

  3. Copia el código de ejemplo de configuración correcto para el tipo de implementación:

    1. Si OIC se implementa inicialmente como sitio único, copia H:\operations_center\dsc\config.single-site-example.ps1 en H:\operations_center\config\config.ps1.
    2. Si OIC se implementa inicialmente como multisitio, copia H:\operations_center\dsc\config.multi-site-example.ps1 en H:\operations_center\config\config.ps1.
  4. Con Powershell ISE, valida y actualiza los valores de config.ps1.

    1. Actualiza HardwareVersion a menos que el valor predeterminado (3.0) sea correcto.

    2. Actualiza PrimarySiteCode a menos que el valor predeterminado (DC1) sea correcto.

    3. El código de sitio se usa en muchos nombres. Busca y sustituye todas las instancias de DC1 por el código de sitio correcto. Utiliza la búsqueda sin distinguir entre mayúsculas y minúsculas. Revisa cada cambio, ya que puede que algunos no sean necesarios. Por ejemplo, si el código de sitio es AB1, el nombre de host DC1-DC1 debe cambiar a AB1-DC1, no a AB1-AB1.

    4. Actualiza DnsDomain si el valor predeterminado no es correcto. Si se cambia este valor, busca y sustituye opscenter.local en todo el archivo config.ps1. Hay varias ubicaciones en las que ese valor predeterminado está codificado.

    5. Actualiza los objetos de DnsConditionalForwarder con información específica del sitio. Debe haber al menos un objeto de reenvío. Elimina los ejemplos innecesarios.

      Para obtener información específica de un sitio del clúster de administrador raíz, usa lo siguiente:

      export KUBECONFIG=ROOT_ADMIN_KUBECONFIG
      kubectl get -n dns-system service gpc-coredns-external-udp -o jsonpath='{.status.loadBalancer.ingress[0].ip}{"\n"}'
      1. Domain: nombre de dominio DNS de la celda de GDC. Por ejemplo, dns.delegatedSubdomain en ciq.yaml.
      2. Master: una lista de IPs de servidores DNS (normalmente, solo una). Busca en cellcfg el tipo DNSReservation. Si se ha desplegado la celda de GDC, busca en el espacio de nombres dns-system del clúster de administración raíz la dirección IP EXTERNA del servicio gpc-coredns-external-udp y el nombre de dominio completo de la celda: bert.sesame.street.

      3. En las implementaciones multisitio, hay un objeto de tabla hash por celda.

    6. No cambies el contenido de los objetos Users, Groups y GroupPolicy.

    7. Actualiza DNSServers para que contenga las dos direcciones IP asignadas a los controladores de dominio principal y secundario, como <SITE>-DC1 y <SITE>-DC2.

    8. Actualiza NTPServers para que sea una lista de las direcciones IP de SyncServer de los recursos personalizados TimeServer del administrador raíz. Puedes obtener este conjunto de direcciones IP mediante lo siguiente:

      kubectl get timeserver -A -o json | jq '.items[].address'
      

      Debes dar formato a estas direcciones IP en NTPServers, tal como se muestra en el siguiente ejemplo:

      NtpServers = @(
        '10.251.80.2',
        '10.251.80.3',
        '10.251.80.4',
        '10.251.80.5'
      )
      
    9. Actualiza el valor predeterminado de SubnetPrefix, es decir, 24, con el valor del prefijo de subred proporcionado por el cliente para la subred OCCORE-SERVERS si es necesario.

    10. Actualiza el valor predeterminado de DefaultGateway con la puerta de enlace predeterminada proporcionada por el cliente para la subred OCCORE-SERVERS.

    11. Busque y actualice el valor predeterminado de WorkstationCider con el valor proporcionado por el cliente para la subred OC-WORKSTATIONS en la notación CIDR de IPv4.

    12. Busca y sustituye el prefijo de subred de ejemplo 172.21.0. por el prefijo de subred OCCORE-SERVERS proporcionado por el cliente.

    13. Busca y sustituye el prefijo de subred de ejemplo 172.21.2. por el prefijo de subred OCCORE-JUMPHOSTS proporcionado por el cliente.

    14. Busca y sustituye el prefijo de subred de ejemplo 172.21.32. por el prefijo de subred OC-WORKSTATIONS proporcionado por el cliente.

    15. Busca y sustituye el mensaje del día de ejemplo legalnoticecaption con el valor Pref caption por el texto proporcionado por el cliente.

    16. Busca y sustituye el valor del mensaje del día de ejemplo legalnoticetext de Pref text por el texto que te haya proporcionado el cliente.

    17. Valida cada objeto "node" y actualízalo si es necesario.

      1. NodeName: asegúrate de que el nombre de host sea correcto. Algunos nombres se usan en muchos lugares, como los controladores de dominio. Si cambias un nombre aquí, comprueba si es necesario cambiarlo en otro lugar de la configuración.
      2. IPv4Addr: debe ser la dirección IP del host. Normalmente, el último octeto no se debe cambiar. Es posible que algunos se hayan actualizado durante la búsqueda y sustitución de la red que se ha realizado en pasos anteriores.

      3. HyperVHost: este valor debe ser la dirección IP del servidor Hyper-V que aloja esta máquina virtual. Puedes obtener la dirección IP de cada servidor BM?? en la sección "Servidores Hyper-V" de la configuración. No cambies la asignación del host de Hyper-V en este campo, ya que no todos los hosts de Hyper-V pueden admitir todos los tipos de VM. Solo tienes que cambiar el nombre de host de Hyper-V por su dirección IP correspondiente.

    18. Actualiza todas las estrofas de los nodos con splunk_indexer para incluir un disco secundario grande. Cada estrofa debe incluir estas líneas:

      ExtraDiskSize   = 5120GB # No quotes -- PowerShell converts this to an integer.
      ExtraDiskFolder = 'H:\Hyper-V\Virtual Hard Disks'
      
    19. Valida los detalles de la segunda interfaz de red en todos los nodos con Role=jumphost. Usa los detalles de la subred OCCORE-JUMPHOSTS para esta interfaz. Marca las opciones siguientes:

      1. JumphostIPv4Cidr
      2. JumphostDefaultGateway
    20. Actualiza la estrofa específica de ADFS en el nodo donde Role=adfs.

      1. Sustituye todas las instancias de bert.sesame.street y GDCH.sesame.street por el valor Domain correcto de una de las estrofas de la sección DnsConditionalForwarder de la configuración.
      2. Sustituye la palabra Bert (sin distinguir entre mayúsculas y minúsculas) por el identificador corto de la celda de GDC que se está configurando para usar ADFS.
    21. Actualiza los ámbitos de DHCP para que coincidan con el plan de IP del cliente según sea necesario. En cada ámbito, comprueba que los siguientes valores sean correctos. Los nombres de los ámbitos coinciden con los nombres utilizados en el plan de red ocinfo.common.opscenter.local.txt, por lo que debe usar lo siguiente en la validación:

      1. ScopeId
      2. IpStartRange
      3. IpEndRange
      4. Router
      5. SubnetMask
    22. Confirma que los valores coinciden con los valores de la copia de seguridad config1.ps1.

    23. Asegúrate de guardar el archivo.

  5. Actualización de la VM CONFIG1

    La actualización CONFIG1 se realiza en BM01 para mantener la coherencia con la instalación inicial. El resto de las actualizaciones se realizarán desde CONIFIG1 una vez que se haya actualizado.

    1. Copia el directorio operations_center en la VM CONFIG1

    2. En el host BM01, abre una consola de PS como Administrador.

    3. Ejecuta la secuencia de comandos Copy-ConfigHostFiles.ps1 para organizar los archivos que necesita la máquina virtual CONFIG1.

      # CD to the script's directory
      cd H:\operations_center\dsc
      
      # Staging files for CONFIG1 VM
      .\Copy-ConfigHostFiles.ps1 `<SITE>-CONFIG1`
      
    4. Inhabilitar la sincronización de hora de Hyper-V

      1. Inicia sesión en el host BM01 como administrador.

      2. Abre PowerShell en Windows como administrador y ejecuta el siguiente comando:

      # Disabling Hyper-V Time Sync
      Disable-VMIntegrationService -VMName `<SITE>-CONFIG1` -Name 'Time Synchronization'
      
    5. Ejecutar la secuencia de comandos de actualización de CONFIG1

      .\Update-RemoteHost.ps1 -ComputerName DC1-CONFIG1 -Credentials $domain_admin_creds -SetLcm -RemoveExisting
      
    6. Una vez que se ejecute la secuencia de comandos, se reiniciará la VM CONFIG1.

    7. Validación de CONFIG1 VM

      1. En el host BM01, usa Escritorio remoto (RDP) para acceder a la IP de la VM CONFIG1 e inicia sesión como Marvin. Ejemplo: mstsc /v 192.168.100.99

      2. Como usuario Marvin, abre una consola de PS con Ejecutar como administrador.

      3. Para comprobar que el entorno de compilación está listo, ejecuta Build-Mof.ps1, que genera archivos MOF (Managed Object Format) para todos los equipos de OI.

      # Running Build-MOf.ps1
      cd C:\dsc
      ./Build-Mof.ps1
      
  6. Actualizar CA-ISSUING y CA-WEB

    1. En CONFIG1, como Marvin, ejecuta las siguientes secuencias de comandos para configurar la VM CA-ISSUING. powershell $la_creds = Get-Credential -Message "Provide local admin credentials for CA- VMs" ./Update-RemoteHost.ps1 -ComputerName <SITE>-CA-ISSUING1 -Credentials $la_creds -SetLcm -RemoveExisting

    2. En CONFIG1, como Marvin, ejecuta las siguientes secuencias de comandos para configurar el servidor CA-WEB1.

    $la_creds = Get-Credential -Message "Provide local admin credentials for CA- VMs"
    .\Update-RemoteHost.ps1 -ComputerName <SITE>-CA-WEB1 -Credential $la_creds SetLcm -RemoveExisting
    
  7. Actualizar CA_ROOT

    1. Enciende CA-ROOT1.

      1. Inicia sesión en el host BM01 como administrador.

      2. Abre PowerShell en Windows como administrador y ejecuta el siguiente comando:

      Start-VM -Name <SITE>-CA-ROOT1
      
    2. En la máquina virtual CONFIG1, inicializa la máquina virtual CA-ROOT1.

      .\Update-RemoteHost.ps1  -ComputerName <SITE>-CA-ROOT1 -Credential $la_creds SetLcm -RemoveExisting
      
    3. Si la VM CA_ROOT no se ha reiniciado después de ejecutar la secuencia de comandos anterior, reiníciala manualmente.

    w32tm /query /peers
    
    #Peers: 1
    
    Peer: DC2-DC1.hq.local
    State: Active
    Time Remaining: 31.2997107s
    Mode: 3 (Client)
    Stratum: 1 (primary reference - syncd by radio clock)
    PeerPoll Interval: 6 (64s)
    HostPoll Interval: 6 (64s)
    
  8. Actualizar máquinas virtuales DHCP

    1. En CONFIG1, como usuario de marvin, actualiza las máquinas virtuales DHCP. Empieza con DHCP2 y, después, con DHCP1.

      • Configura DHCP2:
      .\Update-RemoteHost.ps1 -ComputerName <SITE>-DHCP2 -Credential $da_creds SetLCM -RemoveExisting
      
      • Configurar DHCP1
      .\Update-RemoteHost.ps1 -ComputerName <SITE>-DHCP1 -Credential $da_creds SetLCM -RemoveExisting
      
  9. Actualizar controladores de dominio

    1. En CONFIG1 como usuario marvin, actualiza el controlador de dominio principal.
    .\Update-RemoteHost.ps1 -ComputerName <SITE>-DC1 -Credential $da_creds SetLCM -RemoveExisting
    
    1. Validar la sincronización de la hora con SyncServer

      1. Conéctate a <SITE>-DC1 mediante RDP como administrador de dominio.
      2. Abre una ventana de Powershell como administrador.
      3. Ejecuta el siguiente comando para validar la configuración de la hora.

        # Checking time status
        w32tm /query /status /verbose
        
      4. Ejecuta los siguientes comandos para probar la resincronización de la hora:

        # Testing time resyncronization
        w32tm /resync
        
        # Desired output
        Sending resync command to local computer
        The command completed successfully.
        
      5. Vuelve a comprobar que la configuración de la hora sea correcta y no contenga errores.

        # Checking time status
        w32tm /query /status /verbose
      
    2. Actualiza la segunda VM de DC (<SITE>-DC2) en BM02

      1. Inicia sesión en CONFIG1 con su cuenta de administrador local marvin.
      2. Abre un terminal de PowerShell como administrador y ejecuta la siguiente secuencia de comandos.
      cd c:\dsc
      
      .\Update-RemoteHost.ps1 -ComputerName <SITE>-DC2 -Credential $da_creds -SetLCM -RemoveExisting
      
      
      1. El servidor se reinicia. ESPERA 15 minutos o a que se complete la replicación de AD.

      2. Validar la replicación de AD

      3. Una vez que el segundo controlador de dominio esté activo y operativo, ejecuta los siguientes comandos desde uno de los controladores de dominio para validar la replicación de Active Directory:

      repadmin /replsummary
      
      1. Valida los resultados siguiendo las instrucciones de #validate-ad-replication.
  10. Actualizar las VMs de Microsoft Configuration Manager

    En la ventana de PowerShell de marvin de DC1-CONFIG1, configura y ejecuta la configuración de DSC:

    .\Update-RemoteHost.ps1 -ComputerName <SITE>-MCMDB1 -Credential $da_creds -SetLCM -RemoveExisting
    
    .\Update-RemoteHost.ps1 -ComputerName <SITE>-MCM1 -Credential $da_creds -SetLCM -RemoveExisting
    
    .\Update-RemoteHost.ps1 -ComputerName <SITE>-MCM2 -Credential $da_creds -SetLCM -RemoveExisting
    
  11. Actualizar máquinas virtuales de Splunk

    En la ventana de PowerShell de marvin de DC1-CONFIG1, configura y ejecuta la configuración de DSC:

     .\Update-RemoteHost.ps1 -ComputerName <SITE>-splunk-heavyfwd -Credential $da_creds -SetLCM -RemoveExisting
    
     .\Update-RemoteHost.ps1 -ComputerName <SITE>-splunk-indexer -Credential $da_creds -SetLCM -RemoveExisting
    
     .\Update-RemoteHost.ps1 -ComputerName <SITE>-splunk-manager -Credential $da_creds -SetLCM -RemoveExisting
    
     .\Update-RemoteHost.ps1 -ComputerName <SITE>-splunk-searchhead -Credential $da_creds -SetLCM -RemoveExisting
    
     .\Update-RemoteHost.ps1 -ComputerName <SITE>-universal -Credential $da_creds -SetLCM -RemoveExisting
    
  12. Actualizar máquinas virtuales de Nessus

    En la ventana de PowerShell de marvin de DC1-CONFIG1, configura y ejecuta la configuración de DSC:

     .\Update-RemoteHost.ps1 -ComputerName <SITE>-NESSUS1 -Credential $da_creds -SetLCM -RemoveExisting
    
     .\Update-RemoteHost.ps1 -ComputerName <SITE>-NESSUS2 -Credential $da_creds -SetLCM -RemoveExisting