Actualización del sistema operativo de una máquina virtual

Las máquinas virtuales de Oracle Data Infrastructure Cloud@Customer tienen dnf configurado a través de Oracle OS Management Hub. En este artículo, se describe cómo aplicar actualizaciones de paquetes de Oracle Linux desde la máquina virtual mediante dnf. Este procedimiento no actualiza el software de Oracle Grid Infrastructure u Oracle AI Database. Para estas actualizaciones, consulte Actualización de la infraestructura de grid de un cluster de VM y Actualización de un directorio raíz de base de datos.

Las máquinas virtuales de Oracle Data Infrastructure Cloud@Customer incluyen Ksplice para actualizaciones de seguridad de espacio de usuario y núcleo soportadas sin reiniciar la máquina virtual. Ksplice está desactivado por defecto. Utilice los scripts de Configuración de Actualizaciones Automáticas de Ksplice para activarlo.

Antes de empezar

Aplicar actualizaciones de paquetes del sistema operativo

  1. Conéctese a la máquina virtual mediante SSH.

  2. Compruebe si hay actualizaciones disponibles:

    sudo dnf check-update

    El comando dnf muestra las actualizaciones de paquetes disponibles de los repositorios activados en la máquina virtual. Revise la lista y confirme que los repositorios activados son adecuados para esta VM.

  3. Para actualizar todos los paquetes instalados para los que hay actualizaciones disponibles, ejecute:

    sudo dnf upgrade

    Revise la transacción propuesta y confírmela para continuar.

    Para actualizar un paquete y las dependencias necesarias, especifique el nombre del paquete. Por ejemplo, para actualizar el paquete bash, ejecute:

    sudo dnf upgrade bash

    Para obtener más información sobre los comandos dnf, consulte DNF Command References y Updating Software on Oracle Linux.

  4. Si se actualizaron muchos paquetes, Oracle recomienda reiniciar la máquina virtual para que los paquetes principales se ejecuten con las versiones actualizadas. Para comprobar si es necesario reiniciar, ejecute:

    sudo dnf needs-restarting -r
  5. Si es necesario reiniciar, reinicie la máquina virtual durante la ventana de mantenimiento planificada y verifique que sus aplicaciones y bases de datos estén disponibles posteriormente.

Configurar un repositorio de Oracle Linux adicional

Oracle OS Management Hub (OSMH) gestiona la configuración del repositorio en /etc/yum.repos.d/osmh.repo. No agregue repositorios a este archivo. Agregue cualquier repositorio adicional en un archivo de repositorio independiente.

  1. En Oracle Linux Yum Server, obtenga la URL del repositorio para la versión de Oracle Linux de la máquina virtual.

  2. Convierta la URL para que la máquina virtual la utilice:

    • Sustituya yum.oracle.com por ${oci_osmh_yum}, la variable dnf proporcionada en la máquina virtual.
    • Elimine index.html del final de la URL.
    • Mantenga el resto de la ruta del repositorio sin cambios.

    Por ejemplo, una dirección URL con este formato:

    https://yum.oracle.com/repo/OracleLinux/OL8/<repository>/x86_64/index.html

    se convierte en:

    https://${oci_osmh_yum}/repo/OracleLinux/OL8/<repository>/x86_64/
  3. Cree o edite un archivo de repositorio independiente, como /etc/yum.repos.d/additional.repo, y agregue una entrada de repositorio con nombre único. Por ejemplo:

    [additional_repo]
    name=<repository_name>
    baseurl=https://${oci_osmh_yum}/repo/OracleLinux/OL8/<repository>/x86_64/
    sslverify=1
    gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle
    gpgcheck=1
    enabled=1
  4. Refresque los metadatos del repositorio y verifique el repositorio:

    sudo dnf --refresh repoinfo additional_repo

Configurar un repositorio de terceros

Utilice la URL del repositorio y la clave GPG proporcionadas por el proveedor de software de terceros. Algunos proveedores proporcionan un RPM que configura el archivo de repositorio e instala o configura la clave GPG. Si el proveedor proporciona uno, siga la documentación del proveedor para instalarlo y configurarlo. De lo contrario, agregue el repositorio en un archivo .repo independiente; no lo agregue a /etc/yum.repos.d/osmh.repo. Sustituya las siguientes URL de ejemplo por las URL de clave y repositorio reales del proveedor.

Acceso de red: se debe acceder a los repositorios de terceros a través de la red de cliente de la VM. Asegúrese de que se pueda acceder a los hosts del repositorio de terceros a través de esa red y de que se hayan configurado las rutas, el DNS y el acceso de firewall necesarios. Si la red de cliente requiere un proxy, defina la opción proxy del repositorio en el proxy de red de cliente aprobado. Para el acceso directo, defina proxy= en la entrada del repositorio para desactivar un proxy heredado de /etc/dnf/dnf.conf para la integración de Oracle OS Management Hub. Para obtener más información, consulte la Referencia de configuración de DNF.

  1. Cree un archivo de repositorio, como /etc/yum.repos.d/third-party.repo, y agregue una entrada de repositorio con nombre único:

    [third_party_example]
    name=Example third-party repository
    baseurl=https://repo.example.com/oraclelinux/8/$basearch/
    proxy=
    enabled=1
    gpgcheck=1
    gpgkey=https://repo.example.com/keys/RPM-GPG-KEY-example
    sslverify=1

    Mantenga activada la comprobación de firmas de paquetes y utilice la clave GPG publicada por el proveedor.

  2. Refresque los metadatos del repositorio y verifique el repositorio:

    sudo dnf --refresh repoinfo third_party_example

Para obtener más información, consulte Gestión de repositorios de software personalizados.

Configurar actualizaciones automáticas de Ksplice

Ksplice puede aplicar actualizaciones de seguridad de espacio de usuario y núcleo soportadas sin reiniciar. Los siguientes scripts activan o desactivan las actualizaciones automáticas de Ksplice en las máquinas virtuales. Ejecute el script adecuado y, a continuación, introduzca kernel, userspace o all cuando se le solicite. La selección por defecto es kernel.

Cuando está activada, las actualizaciones automáticas de Ksplice comprueban y aplican las actualizaciones disponibles para el componente seleccionado cuando se inicia la máquina virtual y una vez al día a partir de entonces. Esto mantiene actualizados los paquetes de núcleo y espacio de usuario admitidos sin necesidad de reiniciar.

Nota: Para que las actualizaciones de espacio de usuario de Ksplice se apliquen correctamente, primero instale los paquetes glibc y openssl compatibles con Ksplice. Ejecute el siguiente comando para actualizar los paquetes del sistema desde los repositorios activados:

sudo dnf update glibc openssl

Activar actualizaciones automáticas:

sudo /opt/oracle/datainfracc/utils/enable_automatic_ksplice_updates.sh

Desactivar actualizaciones automáticas:

sudo /opt/oracle/datainfracc/utils/disable_automatic_ksplice_updates.sh

Para obtener más información, consulte Configuring Ksplice Enhanced Client for Offline Mode y Configuring Ksplice Uptrack Clients for Offline Mode.