|
Este documento ha sido traducido utilizando tecnología de traducción automática. Si bien nos esforzamos por proporcionar traducciones precisas, no ofrecemos garantías sobre la integridad, precisión o confiabilidad del contenido traducido. En caso de discrepancia, la versión original en inglés prevalecerá y constituirá el texto autorizado. |
Personalizar la instalación de SUSE® Rancher Prime: OS Manager
SUSE® Rancher Prime: OS ManagerLas imágenes del sistema operativo instaladas de (Elemental) se pueden personalizar de diferentes maneras.
Una opción es remasterizar las imágenes del sistema operativo del contenedor utilizando simplemente un docker build. Las imágenes de SL Micro son imágenes de contenedor regulares, por lo que es absolutamente posible crear una nueva imagen utilizando un Dockerfile basado en SLE Micro. Consulta la sección Construir imágenes de sistema operativo personalizadas para más detalles; esta es la opción preferida.
Alternativamente, también es posible proporcionar recursos adicionales y configuración adicional dentro del medio de instalación para que, durante la instalación o eventualmente en el momento del arranque, se puedan incluir binarios adicionales, como controladores o archivos de configuración extra.
Esta sección se centra en cómo personalizar el proceso de instalación a partir de una imagen de sistema operativo dada.
Opciones de personalización
La instalación de Elemental se puede personalizar de tres maneras diferentes y no excluyentes. Primero, incluyendo archivos cloud-config adicionales en el sistema instalado; segundo, incluyendo un archivo cloud-config adicional en el medio de instalación; y finalmente, añadiendo un archivo de configuración de cliente Elemental personalizado (/etc/elemental/config.yaml).
-
Los archivos cloud-config adicionales incluidos en el sistema instalado son útiles para ejecutar operaciones personalizadas en el momento del arranque. Consulta el Referencia de Cloud Config.
-
Los archivos cloud-config adicionales en el medio de instalación son útiles para ejecutar operaciones personalizadas en el momento de la instalación o para personalizar el entorno de instalación para satisfacer ciertas necesidades específicas.
-
Un archivo de configuración de cliente Elemental personalizado se encuentra, por defecto, en
/etc/elemental/config.yamly también se puede dividir en múltiples archivos yaml en el directorio/etc/elemental/config.d. Consulta la referencia del archivo de configuración.
Un patrón común es combinar las tres formas descritas anteriormente dependiendo de las necesidades específicas.
Añadiendo archivos cloud-config adicionales dentro del sistema operativo instalado
Para incluir archivos cloud-config adicionales durante la instalación, deben añadirse a los datos de instalación en el recurso MachineRegistration. La forma más sencilla de lograrlo es añadiendo el cloud-config deseado directamente como parte de la sección dedicada de MachineRegistration. Consulta el ejemplo a continuación
apiVersion: elemental.cattle.io/v1beta1
kind: MachineRegistration
metadata:
name: my-nodes
namespace: fleet-default
spec:
...
config:
...
cloud-config:
stages:
boot:
- name: "Adding 'admin' user"
users:
admin:
passwd: mysecretpasswd
Alternativamente, la ruta de los archivos cloud-config también se puede referenciar explícitamente, por lo que la configuración no necesita residir estrictamente dentro del recurso MachineRegistration. La sección config-urls de MachineRegistration se utiliza para este propósito exacto. Consulta la página de referencia de MachineRegistration.
config-urls es una lista de literales de cadena donde cada elemento es una URL HTTP o una ruta local que apunta a un archivo cloud-config. La ruta local se evalúa durante la instalación, por lo que debe existir dentro del medio de instalación, comúnmente una imagen ISO.
Por defecto, los sistemas en vivo Elemental montan la raíz ISO en /run/initramfs/live, que también es la ruta predeterminada establecida para config-url en MachineRegistrations. Consulta el ejemplo a continuación:
apiVersion: elemental.cattle.io/v1beta1
kind: MachineRegistration
metadata:
name: my-nodes
namespace: fleet-default
spec:
...
config:
...
elemental:
...
install:
...
config-urls:
- "/run/initramfs/live/oem/custom_config.yaml"
Las ISOs en vivo de Elemental, al arrancar, tienen la raíz ISO montada en /run/initramfs/live. De acuerdo con eso, se espera que la ISO del ejemplo anterior incluya el archivo /oem/custom_config.yaml.
|
|
Añadir archivos cloud-config adicionales dentro del medio de instalación
Añadir archivos cloud-config adicionales dentro del medio de instalación puede ser necesario para configurar el entorno de instalación (por ejemplo, establecer la conectividad de red para registrar) o para proporcionar algunos ganchos de instalación para ejecutar lógica personalizada durante la propia instalación.
En Elemental, los recursos SeedImage son los responsables de manejar el medio de instalación. Por lo tanto, el lugar más sencillo para incluir datos adicionales de cloud-config es dentro del medio de instalación, añadiéndolos a la sección cloud-config. Al hacerlo, el cloud-config dado ya será evaluado desde el primer arranque del medio de instalación y también será respetado durante la fase de instalación en caso de que se proporcione algún gancho de instalación. Considere el ejemplo siguiente:
apiVersion: elemental.cattle.io/v1beta1
kind: SeedImage
metadata:
name: custom-seed
namespace: fleet-default
spec:
...
cloud-config:
stages:
post-install:
- name: "Run custom script after installation"
commands:
- |
echo "This is a custom script"
echo "For instance, this could be used to handle extra drives for an LVM group"
boot:
- name: "Add proxy setup for the installation media"
files:
- path: /etc/sysconfig/proxy
permissions: 0664
content: |
PROXY_ENABLED="yes"
HTTP_PROXY=http://<MY_PROXY>:<MY_PORT>
HTTPS_PROXY=https://<MY_PROXY>:<MY_PORT>
NO_PROXY="localhost, 127.0.0.1"
Archivo de configuración personalizado del cliente SUSE® Rancher Prime: OS Manager
cliente Elemental install, upgrade y reset se pueden configurar con un archivo de configuración personalizado ubicado por defecto en /etc/elemental/config.yaml. Si tienes múltiples archivos yaml, necesitas añadirlos en el directorio /etc/elemental/config.d.
El siguiente ejemplo establece una partición adicional durante la instalación:
install:
extra-partitions:
- size: 10240
fs: ext4
label: EXTRA_PARTITION
Para que esté disponible en el momento de la instalación, esto se podría hacer añadiendo el archivo extra como parte del cloud-config del recurso SeedImage, como se describe en la sección anterior de esta página. Considera el ejemplo:
apiVersion: elemental.cattle.io/v1beta1
kind: SeedImage
metadata:
name: custom-seed
namespace: fleet-default
spec:
...
cloud-config:
stages:
boot:
- name: "Add Elemental client configuration file"
files:
- path: /etc/elemental/config.d/extra-partition.yaml
permissions: 0664
content: |
install:
extra-partitions:
- size: 10240
fs: ext4
label: EXTRA_PARTITION