Linux en español
Ubuntu
Tutoriales

Realizar instalaciones de servidor automatizadas con Ubuntu 20.04 LTS

5 minutos de lectura

Tabla de contenidos

Introducción

El instalador del servidor para 20.04 admite un nuevo modo de operación: instalación automatizada, instalación automática para abreviar. También es posible que conozca esta función como instalación desatendida o sin intervención o preestablecida.

HIT Closer

La instalación automática le permite responder a todas esas preguntas de configuración con anticipación con una configuración de instalación automática y permite que el proceso de instalación se ejecute sin ninguna interacción.

Diferencias con la preselección del instalador de Debian

los preseeds son la forma de automatizar un instalador basado en debian-installer (también conocido como di).

las instalaciones automáticas para el nuevo instalador del servidor difieren de las preselecciones en las siguientes formas principales:

  • el formato es completamente diferente (configuración de inicio de nube, generalmente yaml, frente a formato de selecciones de configuración de debconf)
  • cuando la respuesta a una pregunta no está presente en una preselección, di se detiene y le pide al usuario que ingrese. las instalaciones automáticas no son así: de manera predeterminada, si hay alguna configuración de instalación automática, el instalador toma la configuración predeterminada para cualquier pregunta sin respuesta (y falla si no hay una configuración predeterminada).
    • Puede designar secciones particulares en la configuración como “interactivas”, lo que significa que el instalador aún se detendrá y preguntará sobre ellas.

Proporcionar la configuración de instalación automática

La configuración de instalación automática se proporciona a través de la configuración de inicio en la nube, que es casi infinitamente flexible. En la mayoría de los escenarios, la forma más fácil será proporcionar datos de usuario a través de nocloud 2 fuente de datos.

La configuración de instalación automática debe proporcionarse bajo la autoinstallclave en la configuración. Por ejemplo:

#cloud-config
autoinstall:
  version: 1
  ...

Ejecutar una instalación automática verdaderamente automática

Incluso si se encuentra una configuración de instalación automática completamente no interactiva, el instalador del servidor solicitará confirmación antes de escribir en los discos a menos que autoinstallesté presente en la línea de comando del núcleo. Esto es para dificultar la creación accidental de una memoria USB que formateará una máquina en la que está conectada durante el arranque. Muchas instalaciones automáticas se realizarán a través de netboot, donde la línea de comando del núcleo está controlada por la configuración de netboot, ¡solo recuerde ponerla autoinstallallí!

Inicio rápido

¿Entonces solo quieres probarlo? Bueno, tenemos la página para ti.

Crear una configuración de instalación automática

Cuando se instala cualquier sistema utilizando el instalador del servidor, se crea un archivo de instalación automática para repetir la instalación en /var/log/installer/autoinstall-user-data.

El complemento descrito aquí todavía no existe

Alternativamente, hay un complemento, autoinstall-editorque puede usarse para editar o crear desde cero una configuración de instalación automática (en realidad, es en su mayoría el mismo código que el que ejecuta la instalación en modo interactivo).

# start editing new config file
$ autoinstall-editor
# dump out to stdout a complete autoinstall config  with default answers everywhere
$ autoinstall-editor --create > my-autoinstall.yaml
# edit existing autoinstall config
$ autoinstall-editor my-autoinstall.yaml

La estructura de una configuración de autoinstalación

La configuración de instalación automática tiene documentación completa .

Técnicamente hablando, la configuración no se define como un formato de texto, pero la configuración de inicio de nube generalmente se proporciona como YAML, por lo que esa es la sintaxis que utiliza la documentación.

Una configuración mínima es:

version: 1
identity:
    hostname: hostname
    username: username
    password: $crypted_pass

Aquí hay un archivo de ejemplo que muestra la mayoría de las características:

version: 1
reporting:
    hook:
        type: webhook
        endpoint: http://example.com/endpoint/path
early-commands:
    - ping -c1 198.162.1.1
locale: en_US
keyboard:
    layout: en
    variant: uk
network:
    network:
        version: 2
        ethernets:
            enp0s25:
               dhcp4: yes
            enp3s0: {}
            enp4s0: {}
        bonds:
            bond0:
                dhcp4: yes
                interfaces:
                    - enp3s0
                    - enp4s0
                parameters:
                    mode: active-backup
                    primary: enp3s0
proxy: http://squid.internal:3128/
apt:
    primary:
        - arches: [default]
        - uri: http://repo.internal/
    sources:
        my-ppa.list:
            source: "deb http://ppa.launchpad.net/curtin-dev/test-archive/ubuntu $RELEASE main"
            keyid: B59D 5F15 97A5 04B7 E230  6DCA 0620 BBCF 0368 3F77
storage:
    layout:
        name: lvm
identity:
    hostname: hostname
    username: username
    password: $crypted_pass
ssh:
    install-server: yes
    authorized-keys:
      - $key
    allow-pw: no
snaps:
    - name: go
      channel: 1.14/stable
      classic: true
debconf-selections: |
    bind9      bind9/run-resolvconf    boolean false
packages:
    - libreoffice
    - dns-server^
user-data:
    disable_root: false
late-commands:
    - sed -ie 's/GRUB_TIMEOUT=.*/GRUB_TIMEOUT=30/' /target/etc/default/grub
error-commands:
    - tar c /var/log/installer | nc 192.168.0.1 1000

Muchas teclas y valores corresponden directamente a las preguntas que hace el instalador (por ejemplo, la selección del teclado). Consulte la referencia para obtener detalles de aquellos que no.

Manejo de errores

El progreso a través del instalador se informa a través del reportingsistema, incluidos los errores. Además, cuando ocurre un error fatal, error-commandsse ejecutan y el rastreo se imprime en la consola. El servidor solo espera.

Posibles direcciones futuras

Es posible que deseemos ampliar las “especificaciones de coincidencia” de los discos para cubrir otras formas de seleccionar discos.

5/5 - (2 votos)

Entradas relaccionadas

Cómo actualizar a Ubuntu 20.04 LTS (Spoiler: es fácil)

Linux en Español

Activar HTTP2 en plesk

Diego García Cuesta

Cómo reiniciar nginx en Debian

Diego García Cuesta

Creación y usos de alias de comando en linux

Diego García Cuesta

Cómo ver los intentos fallidos de inicio de sesión SSH en Linux

Diego García Cuesta

Comando su en Linux (Cambiar de Usuario)

Diego García Cuesta

Este sitio web utiliza cookies para mejorar su experiencia. Asumiremos que está de acuerdo con esto, pero puede optar por no participar si lo desea. Aceptar Leer más

Política de privacidad y cookies